| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I5b300d88b347b4c566186551594a30df09959e2e
|
|
|
|
|
|
| |
This is an art equivalent of https://android-review.googlesource.com/#/c/32480/3.
Change-Id: Ifc2cd21e7e92f596bced3eabae4d16f16f4095ef
|
|
|
|
|
|
|
|
|
| |
https://android-review.googlesource.com/#/c/38771/.
(The bug itself had already been fixed in art's compiler, because we always
run compiled code. I've also removed the JIT warmup code.)
Change-Id: I9d1d2b68f99dd06887146fdd05cb2e4537b4d5fc
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Continuing to flesh out support in the Quick compiler. Mostly
array-related. Also, added runtest 028-array-write to the set of
passing tests.
Change-Id: I3c8eaf4bb14e9327e4f5fc48de73c85a5d3efb54
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Handy if you have an ANR that's locking related. Quick tour:
at org.apache.harmony.dalvik.NativeTestTarget.emptyJniStaticSynchronizedMethod0(Native method)
- locked <0x60135aa8> (a java.lang.Class<org.apache.harmony.dalvik.NativeTestTarget>)
at java.lang.reflect.Method.invoke(Native method)
at C.whileTrue(Main.java:63)
at C.synchronizedOnClassString(Main.java:56)
- locked <0x60002a70> (a java.lang.Class<java.lang.String>)
at C.nestedSynchronizationWithTryCatch(Main.java:44)
- locked <0x61336b90> (a java.lang.String)
- locked <0x61336bd0> (a java.lang.String)
at C.nestedSynchronization(Main.java:35)
- locked <0x61336b18> (a java.lang.String)
- locked <0x61336b50> (a java.lang.String)
at C.synchronizedOnClassC(Main.java:30)
- locked <0x613366f8> (a java.lang.Class<C>)
at C.noLocks(Main.java:27)
at C.<clinit>(Main.java:24)
- locked <0x613366f8> (a java.lang.Class<C>)
at Main.main(Main.java:19)
A non-static synchronized native method works too:
at org.apache.harmony.dalvik.NativeTestTarget.emptyJniSynchronizedMethod0(Native method)
- locked <0x613371a8> (a org.apache.harmony.dalvik.NativeTestTarget)
...
Note that most stack traces don't look any different; the above is a
pathological example that exercises different kinds of locking. Testing
with system_server shows most threads don't hold any locks.
Future work (marked by TODO) is that explicit JNI MonitorEnter calls in
native code aren't shown.
Change-Id: I2747f5cddb4ef64b1935736f084a68fe8e4005e9
|
|
|
|
|
|
|
|
| |
Handle MOVE_RESULT, THROW and THROW_VERIFICATION_ERROR. Enable
runtests 007 and 014 to pass. Minor munging of the tests to make
them easier to selectively compile with the Quick compiler.
Change-Id: I756def54d81771b144e8ebc213cd90077e23758b
|
|
|
|
|
|
|
|
|
|
| |
Continued fleshing out of the Quick compiler. With this CL,
we're passing run-tests 006, 012, 013 and 017. Note minor
changes to the tests to allow for easy identification of methods
we want to run through the Quick path. Also, set up by default
now to dump bitcode file to /sdcard/Bitcode/
Change-Id: I77ec73a87a21064273567802ddb44c4fdf71f9fd
|
|
|
|
| |
Change-Id: I5ae03a5e52111792d2df7e83cbd89ab25777844b
|
|
|
|
|
|
| |
There are still about 1800 lint warnings, so don't get too excited...
Change-Id: I2394bd6e750b94060231378b3a7a88b87f70c757
|
|
|
|
|
|
| |
This should have been part of 57aba86f29d7e795bf7e68c65cc464d2291b6af1.
Change-Id: I570e156400e45e53f4cdd4dc72e56183267620ba
|
|
|
|
|
|
| |
The array-length instruction is likely to encounter nulls.
Change-Id: I628f5f00dfaff9414740e2f7015b9fb3d34a1bc9
|
|
|
|
|
|
| |
runtime tests.
Change-Id: I6427b09c40bc9a48e39c560f01d2be14ba115ccc
|
|
|
|
| |
Change-Id: I4306d10afe6ff893b8c5a03c82a99581813f0fbc
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Ibaf542f4332ea722be17fd4ef29689c17d8f282a
|
|/
|
|
| |
Change-Id: I63481b3f5849e0b32c041c0127b6dd41189f0acd
|
|
|
|
| |
Change-Id: Id34080d374bb8d827f142e65f3f6432d8ff6fda5
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fleshed out invoke and const-string support. Fixed a bug in Phi node
insertion.
With this CL, the "Recursive Fibonacci" and "HelloWorld" milestones are
met.
Added are a set of "HL" (for High-Level) invoke intrinsics. Until we
complete the merging of the Quick & Iceland runtime models the invoke
code sequences are slightly different. Thus, the Greenland IR needs
to represent invokes at a somewhat higher level than Iceland. The
test for fast/slow path needs to happen during the lowering of the
HLInvokeXXX intrinsics in both the Quick and Portable paths.
This will generally be the case in the short term - push fast/slow
path determination below the Greenland IR level. As unification
proceeds, we'll pull as much as makes sense into the common front end.
Change-Id: I0a18edf1be18583c0afdc3f7e10a3e4691968e77
|
| |
| |
| |
| | |
Change-Id: Ib693738e6860c29985cf2ecd6fd2ed89e9b9af0d
|
| |
| |
| |
| |
| | |
Bug: 6617283
Change-Id: I463ef1e2c09ad41af2e45f17f2f23e8d59f560e0
|
|/
|
|
|
|
|
| |
Also drop the -ea argument to the RI; we don't support assert, so it's
misleading if tests behave differently on the RI.
Change-Id: I4db66ee13fe6b778385778a783ded460b5fcf5f7
|
|
|
|
| |
Change-Id: Ib56753385c53164e65ab807bca06b1a25677676d
|
|
|
|
|
|
| |
This ensures we rerun dex2oat on each test run. We also now cleanup better on host and target.
Change-Id: I2b48c45d8a4bf7629aa6b538556fcf78fc22d0dc
|
|
|
|
| |
Change-Id: I892696e6e98be9f31a7900d10130cae204f9127a
|
|
|
|
| |
Change-Id: If7222e834602bfc1232ac199ab81e7c09c058f43
|
|
|
|
|
|
| |
Unblocking people now. A more comprehensive fix is coming from others.
Change-Id: I4a0d5a34d54d8c046f23d6824735ffc2307c08ad
|
|
|
|
|
|
| |
Test aims to test for the lost object problem. Should consistently crash incorrect (no dirty card scanning) CMS if the CMS is requested after every allocation.
Change-Id: I6161f0d678067947b60c5fadf57f5bdcb33b6749
|
|
|
|
| |
Change-Id: Ib8acb75cca2f0728297180e082a89f4f81784e75
|
|
|
|
|
|
| |
low registers.
Change-Id: I3639f7a7a9564630ae01651119fcad237a5e675d
|
|
|
|
|
|
|
|
| |
Also ensure that the new 200-reflection-errors run-test test gets run
by the "test-art" make target.
Bug: 6504175
Change-Id: I5afee8845715151d25ed4751381b6ceb8cb4eca5
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also add a missing InstanceOf check that was causing CheckJNI to kill us
if someone tried to pass an inappropriate reference type through
Method.invoke. (Amusingly, CheckJNI produced pretty much the exact detail
message that Method.invoke should have.)
Plus a new test for this stuff.
Bug: 6504175
Change-Id: Ice95eecbdba5a0927c6eaf68e56d6500dc52ad2e
|
|
|
|
|
|
|
|
|
|
|
|
| |
- div-long and rem-long were calling the wrong helper methods.
- genCmpFP was grabbing new src and destination registers instead of
using the ones it was passed. Also, it wasn't writing its result back.
- gave mul-long its own assembly helper method to help it marshall its
sources properly.
- fixed assembly of shifts for longs.
- updated IntMath's testFloatCompare to exit on the first error.
Change-Id: Iacecf07d3c7135d865728c18551c7989e7e0276b
|
|
|
|
|
|
|
| |
This is the dalvik-compatible solution to the "I don't want non-FATAL logging
in my test output" problem.
Change-Id: I51b7b883ce89604af4661696e7c7b041a0ef8211
|
|
|
|
| |
Change-Id: Id6a98e791863ef212bc9e71b62183c4bb7062137
|
|
|
|
|
|
| |
The test was using art::ReferenceMapVisitor by mistake somehow.
Change-Id: Ib509841b79240ff7753edca8238195db39b4c4a9
|
|
|
|
|
|
|
|
| |
Move the verifier to its own directory and break out major components.
Avoid compiling unused files as part of the LLVM build, increase the use
of unimplemented for LLVM.
Change-Id: Icd3b1708363fb70ae99417d06ef8669d60446533
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Do the standard reciprocal multiply trick for small division
by small constants.
Change-Id: Iad1060ccdc6ffeb7b47d45c29ba741683ad01ab9
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Extend to test direct access to fields and more exhaustively check field
modifiers for reflection.
Change-Id: I173e6e12b74e0c73d8d1001540560fd4923a9f86
|
| |/
|/|
| |
| | |
Change-Id: I13f47555966e9d48703f14e3e9a80e2d9af80c2b
|
|/
|
|
| |
Change-Id: I44ebb4cdc2f5966be51a063e3c7256ab3016c404
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can actually detect the expected case of this warning ourselves, and
not emit it. Then we can upgrade the WARNING to a FATAL.
I also tripped over the fact that the operator<< for Thread::State was out
of date, so I've moved the Thread enums up to namespace scope so the script
can automatically generate correct operator<< implementations for us. (All
the high-numbered thread states have been off by one for a couple of weeks.)
Change-Id: I5de573d33d641e5a3cba87b370e9620c8c66e633
|
|
|
|
|
|
|
| |
Also clean up the CheckJNI testing a bit. I still need to do some work so that
JniAbort catches more of the detail, but this is a step forward.
Change-Id: Ibf5e32867d56123cff902ebf602406b731f567d2
|
|
|
|
| |
Change-Id: I716df88f1ab81f7afd689b9370be449729caf918
|
|
|
|
|
|
| |
Passing IntMath test.
Change-Id: I807858515a802f2efaa4802460e5f507eb944772
|
|
|
|
| |
Change-Id: I5e669b71e11a6b794e3434e0406d891edd3fe59d
|
|
|
|
| |
Change-Id: I51c04d731d6de035328781d8ac134ad6fcf49897
|