summaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Refactor java.lang.reflect implementationBrian Carlstrom2013-08-135-10/+56
| | | | | | | | | | | Cherry-picked from commit ed41d5c44299ec5d44b8514f6e17f802f48094d1. Move to ArtMethod/Field instead of AbstractMethod/Field and have java.lang.reflect APIs delegate to ArtMethod/ArtField. Bug: 10014286. Change-Id: Iafc1d8c5b62562c9af8fb9fd8c5e1d61270536e7
* Uleb128 compression of vmap and mapping table.Ian Rogers2013-08-091-17/+17
| | | | | | Bug 9437697. Change-Id: I30bcb97d12cd8b46d3b2cdcbdd358f08fbb9947a
* Make test-art-host-run-test and test-art-host-oat run with and without ↵Brian Carlstrom2013-07-311-16/+16
| | | | | | interpreter. Change-Id: I54e7162c839910fcf8b8a394aebff2d3c807ccfb
* resolved conflicts for merge of 7934ac28 to dalvik-devBrian Carlstrom2013-07-262-24/+24
|\ | | | | | | Change-Id: I8798a6f154463d3f92f6aca62f14130aec82d273
| * Fix cpplint whitespace/comments issuesBrian Carlstrom2013-07-262-23/+23
| | | | | | | | Change-Id: Iae286862c85fb8fd8901eae1204cd6d271d69496
* | Revert "Revert "Remove non-live vregs from GC map on return.""Ian Rogers2013-07-251-2/+4
|/ | | | | | | This reverts commit 73dda0bc2adcd6a3a7d75f663a3559f8b527d485. It also fixes the problematic line in the ReferenceMap test. Change-Id: Ic3b62db7c040853a5ddfed589f6e0acff25d82b7
* am 6f485c62: Fix cpplint whitespace/indent issuesBrian Carlstrom2013-07-192-4/+4
|\ | | | | | | | | * commit '6f485c62b9cfce3ab71020c646ab9f48d9d29d6d': Fix cpplint whitespace/indent issues
| * Fix cpplint whitespace/indent issuesBrian Carlstrom2013-07-182-4/+4
| | | | | | | | Change-Id: I7c1647f0c39e1e065ca5820f9b79998691ba40b1
* | resolved conflicts for merge of df62950e to dalvik-devBrian Carlstrom2013-07-182-4/+4
|\ \ | |/ | | | | Change-Id: I78fbcfc7a2dcbeccb7557ca27302928d7d00debd
| * Fix cpplint whitespace/parens issuesBrian Carlstrom2013-07-182-4/+4
| | | | | | | | Change-Id: Ifc678d59a8bed24ffddde5a0e543620b17b0aba9
* | am 0cd7ec2d: Fix cpplint whitespace/blank_line issuesBrian Carlstrom2013-07-182-2/+2
|\ \ | |/ | | | | | | * commit '0cd7ec2dcd8d7ba30bf3ca420b40dac52849876c': Fix cpplint whitespace/blank_line issues
| * Fix cpplint whitespace/blank_line issuesBrian Carlstrom2013-07-182-2/+2
| | | | | | | | Change-Id: Ice937e95e23dd622c17054551d4ae4cebd0ef8a2
* | resolved conflicts for merge of 7940e44f to dalvik-devBrian Carlstrom2013-07-121-2/+131
|\ \ | |/ | | | | Change-Id: I6529b2fc27dfaedd2cb87b3697d049ccabed36ee
| * Create separate Android.mk for main build targetsBrian Carlstrom2013-07-121-2/+130
| | | | | | | | | | | | | | | | | | | | The runtime, compiler, dex2oat, and oatdump now are in seperate trees to prevent dependency creep. They can now be individually built without rebuilding the rest of the art projects. dalvikvm and jdwpspy were already this way. Builds in the art directory should behave as before, building everything including tests. Change-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81
* | Native allocation accountingMathieu Chartier2013-07-121-0/+65
|/ | | | | | | | | | | | Added two new functions: registerNativeAllocation and registerNativeFree. These functions should be used to let the GC know about native allocations which are held live by Java objects and released in finalizers. GC are performed or requested from within registerNativeAllocation when the total number of native bytes accounted for exceeds a certain threshold. After a GC occurs in registerNativeAllocation, finalizers are run so that the native memory is freed. Added a test which shows how to use these functions. Change-Id: I40f3c79e1c02d5008dec7d58d61c5bb97ec2fc1b
* Quickening support.Sebastien Hertz2013-06-241-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL adds quickening support for methods which are interpreted at runtime. This CL introduces a DEX-to-DEX compiler. A method is now compiled in one of the two following modes: - Native compilation: the method is compiled by the Quick or Portable backends. At runtime, the generated native target-dependent code is executed. - DEX-to-DEX compilation: the method is executed by the interpreter at runtime. Its DEX code is compiled so some instructions can be replaced by special instructions only valid at runtime. No native code is generated. The quickening adds special instructions to improve runtime performance. They are "-quick" versions of the following instructions: - iget/iput - iget-wide/iput-wide - iget-object/iput-object - invoke-virtual/range. These special instructions cannot be treated by the verifier since they lose the field/method index referencing the field/method being accessed/invoked. To prevent this, the DEX-to-DEX compiler is run only on methods of preverified classes (without verification error at compilation time). The DEX-to-DEX compiler implements quickening support using the CompilerDriver interface like the native compiler does (Quick or Portable backends). To replace instructions, the DEX-to-DEX compiler must be able to modify the mmapped DEX file. Since it can be read-only protected, the DEX-to-DEX compiler must be able to temporarily change its protection to read-write mmapped file. To achieve this, this CL adds support for changing DEX file protection with DexFile::EnableWrite and DexFile::DisableWrite methods. Besides, it also adds a dedicated lock (DexFile::modification_lock) to ensure thread-safety and avoid concurrent DEX file protection change (from a parallel DEX-to-DEX compiler on the same DEX file). Change-Id: Iaafd103b9766810d7fc94a2c424a8fafba66e26a
* am fa42b441: Move to new art dalvikvmBrian Carlstrom2013-06-183-18/+24
|\ | | | | | | | | * commit 'fa42b4410d49134a8e63dc2196be4013d286f2d6': Move to new art dalvikvm
| * Move to new art dalvikvmBrian Carlstrom2013-06-173-18/+24
| | | | | | | | Change-Id: Ib04bc9853b7084965fa0c9899c3e5f5ac42d4ce7
* | Fix Class.getModifiers for array classes.Elliott Hughes2013-06-142-2/+91
| | | | | | | | | | | | | | | | A separate libcore change is needed to fix Class.getModifiers for arrays of inner classes. Bug: https://code.google.com/p/android/issues/detail?id=56267 Change-Id: I3d95b266bb14a72b766921fe09e53fdef2f6d01b
* | am 7675e16b: Rename art-cache to dalvik-cacheBrian Carlstrom2013-06-112-2/+2
|\ \ | |/ | | | | | | * commit '7675e16bcae06c0fe258aad89b3d511037dec399': Rename art-cache to dalvik-cache
| * Rename art-cache to dalvik-cacheBrian Carlstrom2013-06-102-2/+2
| | | | | | | | Change-Id: I294995066aecc29fbd739c3e9e6f60934f743064
* | Fixed list of String methods after removal of old JIT methods.Jeff Hao2013-06-101-1/+1
| | | | | | | | Change-Id: I34a8fd56a8e2b51f5ef31d0a8e2694112f5ee2b2
* | Stage 2 of cast elision opt.Dragos Sbirlea2013-06-043-0/+59
| | | | | | | | | | | | NO code is generated for check-casts where we can statically determine the type is correct (through the instaceof-ifeq pattern). Change-Id: I4935375d7ffd4e7d4ff0aaad900c1a4de9deefaa
* | Add array of abstract classes reflection test.Ian Rogers2013-06-012-0/+14
|/ | | | | | Sanity check that toString and the modifiers are well formed. Change-Id: If8b55587c9d28db4782593a31006875985e9e5a5
* Allow passing of multitple --invoke-with.Ian Rogers2013-04-193-4/+12
| | | | | | Also fix usage message. Change-Id: I67f2168ed22ccef999c798585d73ad25c8885716
* Port AOSP dalvik change 9e11a836e0927e6ea9246b56d99e0482920b81c6 to art.Elliott Hughes2013-04-112-38/+31
| | | | | | | | The flakiness had already been worked around in art, but not backported. The new dalvik fix is cleaner anyway. Bug: https://code.google.com/p/android/issues/detail?id=54114 Change-Id: If21e493f3614a14fc5e645bf7055515b963832bb
* Interpreter entries and instrumentation as a listener.Ian Rogers2013-04-086-37/+293
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the instrumentation responsible for whether we want method entry/exit stubs, and allow it to use interpreter entry stubs when instruction by instruction instrumentation is required. Improve deoptimization so more JDWP test cases are passing. Refactor exception debug posting, in particular improve reporting in the interpreter. Improve class linker exception throwing so that broken dex files are more likely to be reported. Fixes the performance issue Bug: 8410519. Fix some error reporting lock level errors for the large object space. Make fast object verification faster. Add some debug mode robustness to finding dex PCs in GC maps. Add printf attributes to JniAbortF and fix errors. Expand run-test 044 to test return behaviors and fix issues with not throwing appropriate exceptions for proxies. Ensure causes are reported with a class linker NoClassDefFoundError and JNI NoSuchFieldError. Remove unused debugMe and updateDebuggerFromCode. There's a minor sizing tweak to the arg array builder, and an extra reference array check in the interpreter. Some clean-up of trace code. Fix reg type cache destructor if it is called after the reg type cache is shutdown (as is the case in oatdump). Change-Id: I6519c7b35df77f978d011999354c864f4918e8ce
* Add test 302-float-conversion from dalvik.Elliott Hughes2013-04-013-0/+48
| | | | Change-Id: Id742af562cc4506ee72be6d36b4ef3299b6266dd
* Always supply matching -source and -target to javac.Elliott Hughes2013-03-211-1/+1
| | | | Change-Id: I74954e78ccd11b3458113387b297714004fc03be
* Pass NULL as receiver for static methods for ArgArray builder.Jeff Hao2013-03-181-0/+11
| | | | | | | | The receiver field is ignored for static methods, and may be null, but it could be anything. Changed test 46 to make sure the value is properly handled when it is not null. Change-Id: Ide182b99c40a757e158f3587de7b413cd0cbb089
* Various performance improvements.Ian Rogers2013-03-181-0/+2
| | | | | | | | | Performance had regressed due to verify object and method invocation changes. Avoid trampolines for static calls in same class. Various inlining changes. Make verify object something that's only compiled-in in debug builds. Change-Id: Ia261a52232c3b10667c668f8adfadc0da3048bc5
* Fix object verification.Ian Rogers2013-03-161-0/+1
| | | | | | | Refactor VERIFY_OBJECT_ENABLED to become less brittle to change enum and global constant. Change-Id: Ie405106be81dce9a913730c7f46a5659582fa18b
* Disable gdb annotate support for Emacs in run-testBrian Carlstrom2013-03-061-1/+3
| | | | Change-Id: I59aa45f7bc5447391da50844bab7d61c7ce1ba67
* Merge "Remove ExtractCodeAndPrelink and switch Portable to MCLinker" into ↵Brian Carlstrom2013-03-061-1/+1
|\ | | | | | | dalvik-dev
| * Remove ExtractCodeAndPrelink and switch Portable to MCLinkerBrian Carlstrom2013-03-061-1/+1
| | | | | | | | Change-Id: Ia2459c7da6b79e0a1c0f1148c6e28ad9cbbe27a2
* | Update intrinsic inlining test.Sebastien Hertz2013-03-061-0/+42
|/ | | | | | Adds invokes of StrictMath operations to reflect compiler inlining support. Change-Id: Ibb2205a41c1e79ddbeacc2e716a9d05b723eb532
* Fix proxy return ClassCastException and add test.Ian Rogers2013-02-253-0/+76
| | | | | | | | | Add test for Bug: 8250775 that doesn't effect ART. Expand test case further. ClassCastException has no constructor expecting a cause and so using this creates a JNI failure. Switch to not using a wrapped exception as the wrapping itself wasn't adding information. Change-Id: I32dd541e1a1022089ec993fa4f4646042c5bf1fa
* Port the "abstract methods are not implementations" fix to art.Elliott Hughes2013-02-223-0/+37
| | | | | Bug: https://code.google.com/p/android/issues/detail?id=42991 Change-Id: I08e46361a9d7275bc870ee1ec38c40ae22ddf08a
* Merge "Port new test for package annotations from dalvik." into dalvik-devElliott Hughes2013-02-204-0/+26
|\
| * Port new test for package annotations from dalvik.Elliott Hughes2013-02-204-0/+26
| | | | | | | | Change-Id: I01259b342b9f6a4c5abb27d89f5d5b5f4e341819
* | run-test --gdb on host should imply dev mode.Ian Rogers2013-02-201-0/+1
|/ | | | | | Making consistent with the target. Change-Id: Iba30db648f598d3996675287fc9d404b3aa80b0d
* Fix ReferenceMap oat test.Ian Rogers2013-02-081-4/+0
| | | | | | | We no longer have a suspend test on a back-edge going to a return, so there is no reference map data to look up. Change-Id: Id1caea65cd188eb4c59eba3c1ac2681b3200726c
* Directory restructuring of object.hIan Rogers2013-01-302-4/+8
| | | | | | | | | Break object.h into constituent files. Reduce number of #includes in other GC header files. Introduce -inl.h files to avoid mirror files #include-ing each other. Check invariants of verifier RegTypes for all constructors. Change-Id: Iecf1171c02910ac152d52947330ef456df4043bc
* Move .oat files to ELF formatBrian Carlstrom2013-01-251-2/+5
| | | | | | | | | | | | | | | Generates .oat in ELF file format using MCLinker - Uses MCLinker IRBuilder to create a synthetic .o from OatWriter output. - Uses new ElfFile for prelinking to support art image optimizations. Adapted OatFile to load using dlopen, ElfFile, or memory, removing raw MemMap mechanism. Changed image code to not assume oat data will be immediately after image to allow space for ELF headers. Passes test-art and works with installd. Change-Id: Idc026eddb5de93f4b97490c405f3ed7b39589749
* Refactor StackVisitor to take a Thread*.Ian Rogers2013-01-232-15/+10
| | | | | | | | | This allows assertion checking on the thread, principally that we never try to walk the stack of an unsuspended thread. Fix bug in the OwnedMonitorVisitor where GetVReg could be called on a StackVisitor with no context. Change-Id: I06539b624b253b6fb7385e7be11a4bced1d417b2
* add jasmin dependency so that it can be used when building the tests.Tsu Chiang Chuang2013-01-173-3/+9
| | | | Change-Id: I9c4756341b9f4cbc764ac034f0c9ad4dcd13a40b
* Move IntMath into run-test.Ian Rogers2013-01-163-11/+48
| | | | | | | Remove the IntMath method_verifier_test. We can harness oatdump to give a better test. Change-Id: Id7c4417331e6311ca21efdb8aa744851b7216c98
* Merge "Don't mask OOMEs in 102-concurrent-gc." into dalvik-devIan Rogers2013-01-111-31/+28
|\
| * Don't mask OOMEs in 102-concurrent-gc.Ian Rogers2013-01-111-31/+28
| | | | | | | | Change-Id: Iccc38d5a7acf72dcca5baa5aade2df739aab3183
* | Move ExceptionTest to a run-test.Ian Rogers2013-01-113-21/+26
|/ | | | Change-Id: Ied054e1770ccc86c470dfc8d06cab39fc3e97216