summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Remove deprecated WITH_HOST_DALVIK.Ian Rogers2014-06-101-3/+0
| | | | | | | | | | | | | | | | | | | | | | | Bug: 13751317 Fix the Mac build: - disable x86 selector removal that causes OS/X 10.9 kernel panics, - madvise don't need does zero memory on the Mac, factor into MemMap routine, - switch to the elf.h in elfutils to avoid Linux kernel dependencies, - we can't rely on exclusive_owner_ being available from other pthread libraries so maintain our own when futexes aren't available (we can't rely on the OS/X 10.8 hack any more), - fix symbol naming in assembly code, - work around C library differences, - disable backtrace in DumpNativeStack to avoid a broken libbacktrace dependency, - disable main thread signal handling logic, - align the stack in stub_test, - use $(HOST_SHLIB_SUFFIX) rather than .so in host make file variables. Not all host tests are passing on the Mac with this change. dex2oat works as does running HelloWorld. Change-Id: I5a232aedfb2028524d49daa6397a8e60f3ee40d3
* Fix the tools/art script about the ISA-specific dalvik cache.Hiroshi Yamauchi2014-05-011-1/+1
| | | | | Bug: 14470552 Change-Id: I71367052d2a5f0dcf66cf2dfdbc260aff4ac952e
* Art script: Use PWD for android-data and cleanup after running.Nicolas Geoffray2014-03-261-4/+7
| | | | Change-Id: I79ef402196ba875f51f924b3eeafffadc012834f
* ART change: Script is using function(), which is bash specific.Nicolas Geoffray2014-03-171-1/+1
| | | | Change-Id: Ieb2a9674c95aafadbdb26c060f186f3f2d0f5e15
* Remove oat file location in the image.Nicolas Geoffray2014-03-042-2/+46
| | | | | | | | | The oat file is now always in the same directory, and has the same name as the image file. Only difference is the extension. This also removes the need for host-prefix. Change-Id: I16d1f7aeb1d58372d41921694664e9c321afc1ad
* Fix clang to compile and run host tests.Ian Rogers2014-02-281-1/+1
| | | | | | | | | | | | | | Don't use the computed goto interpreter with clang 3.4 as it causes compilation to hang. Avoid inclusion of LLVM_(HOST|DEVICE)_BUILD_MK except for with portable as it sets clang incompatible cflags. Most fixes are self-evident, for the quick dex file method inliner the enums were being used with ostreams, so fix the enums and operator out python script to allow this. Note this change effects portable but this is untestable as portable was broken by ELF file and mc linker changes. Change-Id: Ia54348f6b1bd3f76d3b71c6e8c5f97626386b903
* Revert "Revert "Revert "Add a script for running art standalone."""Ian Rogers2014-02-142-47/+1
| | | | | | This reverts commit 4b23250f4cbf3047924c646c1a0c078394f8362d. Change-Id: Ib749a8267abf35e51552b741ba749d6ed6975f95
* Revert "Revert "Add a script for running art standalone.""Nicolas Geoffray2014-02-132-1/+47
| | | | | | This reverts commit 41dcb9f856a2051527cd595f8fe7d200066acba4. Change-Id: Ide6fa696c6fb43fe17e0993e8c9d1b588c99b1f3
* Revert "Add a script for running art standalone."Brian Carlstrom2014-02-122-47/+1
| | | | This reverts commit 1f5a90f28443886ebefcfbd531b8e41ece298cca.
* Add a script for running art standalone.Nicolas Geoffray2014-02-122-1/+47
| | | | Change-Id: I0c48856d811c40662a6e4a4782478a0bc8e0f697
* tools: use '/usr/bin/env python' instead of '/usr/bin/python'Chirayu Desai2013-11-282-2/+2
| | | | | | | | * This is how it is done in other scripts in the AOSP tree, as '/usr/bin/python' may be python3 on some distros, which isn't supported yet. Change-Id: I0d9857fc6a122f505953fddcd6244dad75b1838a
* Fix generate-operator-out.py's copyright header.Elliott Hughes2013-10-061-24/+10
| | | | | | | When I created this file I just copied the license from the first .py file I came across, without noticing it wasn't the appropriate license. Change-Id: I63ccec962a7a906a393a9889fdda35861d977e9c
* Fix up TODO: c++0x, update cpplint.Mathieu Chartier2013-08-161-182/+844
| | | | | | | | | | | | Needed to update cpplint to handle const auto. Fixed a few cpplint errors that were being missed before. Replaced most of the TODO c++0x with ranged based loops. Loops which do not have a descriptive container name have a concrete type instead of auto. Change-Id: Id7cc0f27030f56057c544e94277300b3f298c9c5
* readdir is safer than readdir_r.Elliott Hughes2013-07-191-1/+0
| | | | | | The upstream cpplint.py already made this change. Change-Id: I9614d51080557eab6730cffd476e01e7872729d0
* Fix cpplint readability/fn_size issuesBrian Carlstrom2013-07-181-0/+5
| | | | Change-Id: I1efdb07a948a2af49db1a9d21ccab16dacc03a54
* Fix cpplint whitespace/parens issuesBrian Carlstrom2013-07-181-1/+4
| | | | Change-Id: Ifc678d59a8bed24ffddde5a0e543620b17b0aba9
* Fix multiple inclusion guards to match new pathnamesBrian Carlstrom2013-07-171-2/+5
| | | | Change-Id: Id7735be1d75bc315733b1773fba45c1deb8ace43
* Create separate Android.mk for main build targetsBrian Carlstrom2013-07-121-4/+3
| | | | | | | | | | 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
* Move to new art dalvikvmBrian Carlstrom2013-06-171-3/+3
| | | | Change-Id: Ib04bc9853b7084965fa0c9899c3e5f5ac42d4ce7
* Rename art-cache to dalvik-cacheBrian Carlstrom2013-06-101-1/+1
| | | | Change-Id: I294995066aecc29fbd739c3e9e6f60934f743064
* Fix the last failing host -Xint JDWP test.Elliott Hughes2013-02-191-6/+7
| | | | | | There's a test that asserts that the bootclasspath is non-empty. Change-Id: I9cd93f658255361cdd9dd73e6ecda6da37219cb7
* Make the tools/art script appear to work from any directory.Elliott Hughes2013-01-171-0/+1
| | | | | | | | | This isn't the real fix, and it means that your oatexec will be running from $(ANDROID_BUILD_TOP) rather than your current directory, but it lets me use a modified vogar that just calls "art" instead of "dalvikvm", as long as I use absolute paths. Change-Id: Iac35fcd2114316a06780b4f1f27eee9fbe95282d
* Fix art script argument quoting.Elliott Hughes2013-01-081-1/+1
| | | | | | | $* is always a mistake, which is a shame because that's what everyone learns first. Change-Id: I0c18d13a42653cdde72b55ba7a4284e3454a5ba8
* Change art script to use execBrian Carlstrom2012-08-021-1/+1
| | | | Change-Id: I0ae2a7e35ba4bc2675836b45677aa535eccf0850
* Include held locks in SIGQUIT thread dumps.Elliott Hughes2012-06-271-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make art script work for the first timeBrian Carlstrom2012-06-251-11/+7
| | | | Change-Id: Iab8d5e1e3abf372d7a7a567bce55becdb5a139d7
* Update cpplint.py.Elliott Hughes2012-06-211-88/+323
| | | | | | From https://code.google.com/p/google-styleguide/source/browse/trunk#trunk%2Fcpplint . Change-Id: Ie9c0efe36c9af5c1fead502ae673ca6693f3cf7b
* Clean up the confusing comment-related logic a bit.Elliott Hughes2012-06-071-13/+16
| | | | | | | This still passes 034, but is a bit clearer because we get all comments out of the way early on. Change-Id: I580ebdca24a4a0738ee102536c8d5b076427264d
* Make generate-operator-out.py only skip // line commentsBrian Carlstrom2012-06-061-1/+1
| | | | Change-Id: I5d279b735b383a901fd25034fdd9202c8e97582d
* Auto-generate operator<< for enum ::art:Class::Status.Elliott Hughes2012-06-061-3/+9
| | | | | | | This requires a bit more work in the script to support enums nested inside classes. Change-Id: Id0e3561c3675214f74f47ac9f36ba82c41fa775d
* Don't explicitly request python2.4.Elliott Hughes2012-04-052-2/+2
| | | | | | This is obsolete historical cruft. Change-Id: I140a93ac04f5be0034812f90204e6f9ae36d2d5f
* Use the operator<< generator more widely.Elliott Hughes2012-04-041-10/+49
| | | | Change-Id: Iae3b8f32f49f4c91cd41c53bbafb95db071d57bb
* Fix the operator<< generation to work with "mmm" as well as "mm".Elliott Hughes2012-04-041-0/+3
| | | | Change-Id: I457a74f1be68debfd351c63f282c3579c6becda2
* Start automatically generating operator<<s for enums.Elliott Hughes2012-04-041-0/+150
| | | | Change-Id: I0f53db089b9a1ba38ce82b75ab22448877be67e0
* Remove old code to support multiple imagesBrian Carlstrom2012-02-041-8/+8
| | | | Change-Id: I29bc2f216361ac4ed0cc0fefb7e3c46ee64e0ae8
* Working dex2oat and oatexecBrian Carlstrom2011-09-061-3/+3
| | | | | | | | | | adb shell dex2oatd --dex-file=/system/framework/core.jar --image=/system/framework/boot.oat --base=0x50000000 "'--method=Ljava/lang/System;logI(Ljava/lang/String;)V'" "'--method=Ljava/lang/System;log(CLjava/lang/String;Ljava/lang/Throwable;)V'" adb shell dex2oatd --boot-dex-file=/system/framework/core.jar --boot=/system/framework/boot.oat --dex-file=/system/framework/art-test-dex-HelloWorld.jar --image=/system/framework/art-test-dex-HelloWorld.oat adb shell oatexecd -Xbootclasspath:/system/framework/core.jar -Xbootimage:/system/framework/boot.oat -classpath /system/framework/art-test-dex-HelloWorld.jar -Ximage:/system/framework/art-test-dex-HelloWorld.oat HelloWorld 09-05 17:58:18.912 2385 2385 I System : Hello, world! Change-Id: I53e534068584f0c3a837313e4d517a0e4a7154fc
* Add vogar-like --invoke-with to 'art', and fix a bug valgrind finds.Elliott Hughes2011-08-181-1/+20
| | | | | | Also add -d to run aexecd. Change-Id: I38fefd9ad2e08b42039cb2a09351b4e6e30a9c5c
* Fix the invocation interface.Elliott Hughes2011-08-151-1/+3
| | | | | | | | | | Previously, we just cast the Runtime* to a JavaVM*, which blew up as soon as the caller tried to use their supposed JavaVM*. This also implements NewObjectArray. Running aexecd on the host, this gets us as far as not having an x86 CreateInvokeStub... Change-Id: Iba5f148797d053fba1c69af99b20508ea6aff5cb
* Start implementing JNI.Elliott Hughes2011-08-111-0/+26
| | | | | | | | | | | | | | | | | This patch replaces our JniEnvironment class with the regular JNIEnv. This patch also adds support for .jar, .zip, and .apk files in the boot classpath. There's also an attempt at implementing JNIEnv::FindClass. I've also fixed a few scoped_ptr/scoped_array bugs (this kind of thing being the reason we use UniquePtr in libcore), and removed some unnecessary . The 'tools/art' script makes it easier to play with aexec on the command-line. Change-Id: Ic4f704c12e0071f17e95b6e182fdab9370ead9b0
* Import cpplint.py and make target cpplint-artBrian Carlstrom2011-07-231-0/+3126
Imported without change from http://google-styleguide.googlecode.com/svn/trunk/cpplint/cpplint.py Will start making local changes to cpplint.py in followup changes. Change-Id: I0fda185f4a9f96815739db8f862cf8537402bf3b