OSDN Git Service

android-x86/art.git
10 years agoRevert "Reduce stack usage for overflow checks"
Dave Allison [Thu, 14 Aug 2014 16:54:09 +0000 (16:54 +0000)]
Revert "Reduce stack usage for overflow checks"

This reverts commit 63c051a540e6dfc806f656b88ac3a63e99395429.

Change-Id: I282a048994fcd130fe73842b16c21680053c592f

10 years agoam 31ddbf0f: am a73a8b55: Move explicit GC after we are done initalizing all classes.
Mathieu Chartier [Thu, 14 Aug 2014 23:35:10 +0000 (23:35 +0000)]
am 31ddbf0f: am a73a8b55: Move explicit GC after we are done initalizing all classes.

* commit '31ddbf0f54faa6d72a3663e71ec0771ca18c08a2':
  Move explicit GC after we are done initalizing all classes.

10 years agoam f3f4742e: am 0c2a6d76: Merge "ART: Fix another potential N-th visitor issue" into...
Andreas Gampe [Thu, 14 Aug 2014 23:34:57 +0000 (23:34 +0000)]
am f3f4742e: am 0c2a6d76: Merge "ART: Fix another potential N-th visitor issue" into lmp-dev

* commit 'f3f4742e669f7b32c0cd4b9295dcc172275a39f4':
  ART: Fix another potential N-th visitor issue

10 years agoam 22ebd85f: am 564f5830: ART: Fix mac build
Andreas Gampe [Thu, 14 Aug 2014 23:34:49 +0000 (23:34 +0000)]
am 22ebd85f: am 564f5830: ART: Fix mac build

* commit '22ebd85fe7ba7776c995114f9241f9b62fb703f7':
  ART: Fix mac build

10 years agoam 50acbfe8: am c483a73c: Merge "ART: Fix class-linker handling" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 23:34:44 +0000 (23:34 +0000)]
am 50acbfe8: am c483a73c: Merge "ART: Fix class-linker handling" into lmp-dev

* commit '50acbfe83fed79263dd0af97e8767f5df6e4b6c7':
  ART: Fix class-linker handling

10 years agoam 479b244c: am f8c4ed08: ART: Fix wrong command line parameter
Andreas Gampe [Thu, 14 Aug 2014 23:34:01 +0000 (23:34 +0000)]
am 479b244c: am f8c4ed08: ART: Fix wrong command line parameter

* commit '479b244ce8fb59f63f3984389bd55528589f6474':
  ART: Fix wrong command line parameter

10 years agoam 58a2d441: am 4c37afb7: Get the native bridge library from the framework.
Calin Juravle [Thu, 14 Aug 2014 23:34:00 +0000 (23:34 +0000)]
am 58a2d441: am 4c37afb7: Get the native bridge library from the framework.

* commit '58a2d4418ffa1c811d8982182d288a5a0c23a51c':
  Get the native bridge library from the framework.

10 years agoresolved conflicts for merge of b03bd88d to lmp-dev-plus-aosp
Ian Rogers [Thu, 14 Aug 2014 23:11:33 +0000 (16:11 -0700)]
resolved conflicts for merge of b03bd88d to lmp-dev-plus-aosp

Change-Id: I10a96805dab30faea84d790c181c28c967cc038e

10 years agoam d684cbfb: Merge "Implement inlined shift long for 32bit"
Ian Rogers [Thu, 14 Aug 2014 22:32:54 +0000 (22:32 +0000)]
am d684cbfb: Merge "Implement inlined shift long for 32bit"

* commit 'd684cbfbe8abfb9aea4de27687041243217295c7':
  Implement inlined shift long for 32bit

10 years agoam 6324ca47: Merge "ART: Inline implementation of min() and max() for long in x86"
Ian Rogers [Thu, 14 Aug 2014 22:28:03 +0000 (22:28 +0000)]
am 6324ca47: Merge "ART: Inline implementation of min() and max() for long in x86"

* commit '6324ca4706de44b75e5b8ba55473766809c4f132':
  ART: Inline implementation of min() and max() for long in x86

10 years agoam ecb01120: Merge "Make OatClass and OatMethod immutable once more."
Ian Rogers [Thu, 14 Aug 2014 20:19:15 +0000 (20:19 +0000)]
am ecb01120: Merge "Make OatClass and OatMethod immutable once more."

* commit 'ecb01120ac3b16758146de6f2297ff80083668ec':
  Make OatClass and OatMethod immutable once more.

10 years agoam a7101c17: Merge "ART: Fix mac build"
Andreas Gampe [Thu, 14 Aug 2014 19:09:21 +0000 (19:09 +0000)]
am a7101c17: Merge "ART: Fix mac build"

* commit 'a7101c17fd8b3dd960d4ffde3d89b1c89134dba2':
  ART: Fix mac build

10 years agoam 0cde7da9: Merge "ART: Fix run-test in case of relative TMPDIR"
Andreas Gampe [Thu, 14 Aug 2014 18:47:06 +0000 (18:47 +0000)]
am 0cde7da9: Merge "ART: Fix run-test in case of relative TMPDIR"

* commit '0cde7da99fe4a0874934ccd3a28fc4bc19197ff7':
  ART: Fix run-test in case of relative TMPDIR

10 years agoam 078f4ea9: Merge "Mark ParallelGC with gcstress failing."
Nicolas Geoffray [Thu, 14 Aug 2014 18:30:55 +0000 (18:30 +0000)]
am 078f4ea9: Merge "Mark ParallelGC with gcstress failing."

* commit '078f4ea927b3259d698ca3dd542a096943e2cccd':
  Mark ParallelGC with gcstress failing.

10 years agoam 2a516974: Merge "More efficient stack walk in exception throwing."
Hiroshi Yamauchi [Thu, 14 Aug 2014 18:27:16 +0000 (18:27 +0000)]
am 2a516974: Merge "More efficient stack walk in exception throwing."

* commit '2a516974f998fb71514c3160b125032e2bcc4e04':
  More efficient stack walk in exception throwing.

10 years agoresolved conflicts for merge of dbe5f5ce to lmp-dev-plus-aosp
Andreas Gampe [Thu, 14 Aug 2014 18:00:31 +0000 (11:00 -0700)]
resolved conflicts for merge of dbe5f5ce to lmp-dev-plus-aosp

Change-Id: I85cb01de20f4c1b691db2813d21cb472db26edfc

10 years agoam a855db47: Merge "Fix intrinsic Math.abs(double) for ARM."
Vladimir Marko [Thu, 14 Aug 2014 17:57:06 +0000 (17:57 +0000)]
am a855db47: Merge "Fix intrinsic Math.abs(double) for ARM."

* commit 'a855db47575817164ed02c105d225292928940e4':
  Fix intrinsic Math.abs(double) for ARM.

10 years agoam b6c7f62b: am c85a899b: Revert "Revert "Remove GCC atomic workarounds.""
Dan Albert [Thu, 14 Aug 2014 17:47:43 +0000 (17:47 +0000)]
am b6c7f62b: am c85a899b: Revert "Revert "Remove GCC atomic workarounds.""

* commit 'b6c7f62b2c4a048003ce792d82d3aefb5bc96404':
  Revert "Revert "Remove GCC atomic workarounds.""

10 years agoam b5f27b87: am f0a37663: Initialize art::Atomic\'s value to 0.
Dan Albert [Thu, 14 Aug 2014 17:47:42 +0000 (17:47 +0000)]
am b5f27b87: am f0a37663: Initialize art::Atomic\'s value to 0.

* commit 'b5f27b87a46f754839ce2ea79d6a5d62a335aad0':
  Initialize art::Atomic's value to 0.

10 years agoam ba5137ba: (-s ours) am 63c051a5: Reduce stack usage for overflow checks
Dave Allison [Thu, 14 Aug 2014 17:47:42 +0000 (17:47 +0000)]
am ba5137ba: (-s ours) am 63c051a5: Reduce stack usage for overflow checks

* commit 'ba5137baa9bcebbc603a686ecebb664483b5257f':
  Reduce stack usage for overflow checks

10 years agoam a73a8b55: Move explicit GC after we are done initalizing all classes.
Mathieu Chartier [Thu, 14 Aug 2014 17:00:54 +0000 (17:00 +0000)]
am a73a8b55: Move explicit GC after we are done initalizing all classes.

* commit 'a73a8b55415b544355438522524a640378698d85':
  Move explicit GC after we are done initalizing all classes.

10 years agoMove explicit GC after we are done initalizing all classes.
Mathieu Chartier [Mon, 11 Aug 2014 20:52:12 +0000 (13:52 -0700)]
Move explicit GC after we are done initalizing all classes.

Previously we had the GC happen for each dex file, this added a
few seconds of time on boot.oat creation.

Bug: 16853450

(cherry picked from commit 093ef212b7db4c17ed62df5cac0c1ac3a24e691d)

Change-Id: Ia469838eff1550c175c3465a478d8081023601bd

10 years agoam 3842ad76: Merge "Fix bugs in the x86 and arm versions of generic JNI."
Nicolas Geoffray [Thu, 14 Aug 2014 16:38:10 +0000 (16:38 +0000)]
am 3842ad76: Merge "Fix bugs in the x86 and arm versions of generic JNI."

* commit '3842ad76aaeb80e0bb6b02c5f7dc4674533ef872':
  Fix bugs in the x86 and arm versions of generic JNI.

10 years agoam 7469b6c9: Merge "The image for writing needn\'t be in low 4GB."
Ian Rogers [Thu, 14 Aug 2014 16:26:38 +0000 (16:26 +0000)]
am 7469b6c9: Merge "The image for writing needn\'t be in low 4GB."

* commit '7469b6c96a7f67c9a230faede204ef6bf62b1596':
  The image for writing needn't be in low 4GB.

10 years agoam 0e084053: Merge "ART: Fix another potential N-th visitor issue"
Andreas Gampe [Thu, 14 Aug 2014 16:21:29 +0000 (16:21 +0000)]
am 0e084053: Merge "ART: Fix another potential N-th visitor issue"

* commit '0e084053066d9d8d362c130009e9234baea12e34':
  ART: Fix another potential N-th visitor issue

10 years agoam 0c2a6d76: Merge "ART: Fix another potential N-th visitor issue" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 16:17:10 +0000 (16:17 +0000)]
am 0c2a6d76: Merge "ART: Fix another potential N-th visitor issue" into lmp-dev

* commit '0c2a6d76ccedb77e79adc68c723cd4ed8278fee9':
  ART: Fix another potential N-th visitor issue

10 years agoMerge "Mark ParallelGC with gcstress failing."
Nicolas Geoffray [Thu, 14 Aug 2014 18:05:37 +0000 (18:05 +0000)]
Merge "Mark ParallelGC with gcstress failing."

10 years agoMark ParallelGC with gcstress failing.
Nicolas Geoffray [Thu, 14 Aug 2014 17:38:41 +0000 (18:38 +0100)]
Mark ParallelGC with gcstress failing.

Change-Id: Id943286202bf5716588a61092b819d51069a2f53

10 years agoMerge "More efficient stack walk in exception throwing."
Hiroshi Yamauchi [Thu, 14 Aug 2014 17:57:08 +0000 (17:57 +0000)]
Merge "More efficient stack walk in exception throwing."

10 years agoMerge "ART: Fix another potential N-th visitor issue" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 16:11:58 +0000 (16:11 +0000)]
Merge "ART: Fix another potential N-th visitor issue" into lmp-dev

10 years agoam 564f5830: ART: Fix mac build
Andreas Gampe [Thu, 14 Aug 2014 16:08:46 +0000 (16:08 +0000)]
am 564f5830: ART: Fix mac build

* commit '564f58305961986591ccb2fff04b9ccdd430a6db':
  ART: Fix mac build

10 years agoam 70acd53d: Merge "ART: Fix mac build"
Andreas Gampe [Thu, 14 Aug 2014 16:04:10 +0000 (16:04 +0000)]
am 70acd53d: Merge "ART: Fix mac build"

* commit '70acd53dafbd74d3cd72924216e438fce820beb1':
  ART: Fix mac build

10 years agoART: Fix mac build
Andreas Gampe [Thu, 14 Aug 2014 02:54:09 +0000 (19:54 -0700)]
ART: Fix mac build

is_main_thread is unused in the case of a mac.

Bug: 15435566

(cherry picked from commit 7b1bf42dbc765524d54d45a70cb7eb1cccf0c617)

Change-Id: I9848d0156a4903ce73d20b5ce282b61ceb3039ff

10 years agoam 18052526: Merge "ART: Fix class-linker handling"
Andreas Gampe [Thu, 14 Aug 2014 15:50:34 +0000 (15:50 +0000)]
am 18052526: Merge "ART: Fix class-linker handling"

* commit '18052526d5dded6d89b3884db0831091884c04d0':
  ART: Fix class-linker handling

10 years agoam c483a73c: Merge "ART: Fix class-linker handling" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 15:43:58 +0000 (15:43 +0000)]
am c483a73c: Merge "ART: Fix class-linker handling" into lmp-dev

* commit 'c483a73cc2f9d63c1b6bccd1007117cf0d6dcd56':
  ART: Fix class-linker handling

10 years agoam f8c4ed08: ART: Fix wrong command line parameter
Andreas Gampe [Thu, 14 Aug 2014 12:20:48 +0000 (12:20 +0000)]
am f8c4ed08: ART: Fix wrong command line parameter

* commit 'f8c4ed08832ec5302c9ea8441ec8cb39b87075ab':
  ART: Fix wrong command line parameter

10 years agoam 4c37afb7: Get the native bridge library from the framework.
Calin Juravle [Thu, 14 Aug 2014 12:20:47 +0000 (12:20 +0000)]
am 4c37afb7: Get the native bridge library from the framework.

* commit '4c37afb7b207424ff788ab8d8778ea4e8d4ac324':
  Get the native bridge library from the framework.

10 years agoam 20ae1d77: Clean up native bridge
Ian Rogers [Thu, 14 Aug 2014 12:20:46 +0000 (12:20 +0000)]
am 20ae1d77: Clean up native bridge

* commit '20ae1d77463d1c3f206eac8d541124b4555464de':
  Clean up native bridge

10 years agoART: Fix wrong command line parameter
Andreas Gampe [Fri, 8 Aug 2014 19:05:10 +0000 (12:05 -0700)]
ART: Fix wrong command line parameter

Bug: 16843953

(cherry picked from commit c4a7acf505944e7d937f0670b322e12302dd38dc)

Change-Id: Ib59e10a5d97a20ea1a013587645e0eeb204eda8d

10 years agoGet the native bridge library from the framework.
Calin Juravle [Thu, 7 Aug 2014 13:53:41 +0000 (14:53 +0100)]
Get the native bridge library from the framework.

Framework now passes the name of the native bridge to the runtime so
there's no need to do the reading in libart.

Bug: 16843953

(cherry picked from commit 421b6466977d4b1ccd453f23b7b492f219099702)

Change-Id: I9a0a8b8c64949e05c6f90bc846d68f0797640f6d

10 years agoClean up native bridge
Ian Rogers [Thu, 17 Jul 2014 18:09:10 +0000 (11:09 -0700)]
Clean up native bridge

(partially cherry picked from commit
68d8b42ddec39ec0174162d90d4abaa004d1983e)

Change-Id: I85813e97d73b1b331646dd0e880108dfbfe80f69

10 years agoART: Fix another potential N-th visitor issue
Andreas Gampe [Thu, 14 Aug 2014 06:05:38 +0000 (23:05 -0700)]
ART: Fix another potential N-th visitor issue

Bug: 16867274
Change-Id: I5466af563032041ef4a547894f40f303871302c6

10 years agoam ba10b501: Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"
Andreas Gampe [Thu, 14 Aug 2014 05:32:33 +0000 (05:32 +0000)]
am ba10b501: Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"

* commit 'ba10b501818e89b828dcb2d8b60a7c9048c06262':
  ART: Tolerate shallow call stack in VMStack_getCallingClassLoader

10 years agoam 7e9cdbbc: Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader...
Andreas Gampe [Thu, 14 Aug 2014 05:21:55 +0000 (05:21 +0000)]
am 7e9cdbbc: Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader" into lmp-dev

* commit '7e9cdbbc14c015028d4b239a09c5af33ffc2087c':
  ART: Tolerate shallow call stack in VMStack_getCallingClassLoader

10 years agoam c85a899b: Revert "Revert "Remove GCC atomic workarounds.""
Dan Albert [Thu, 14 Aug 2014 05:21:54 +0000 (05:21 +0000)]
am c85a899b: Revert "Revert "Remove GCC atomic workarounds.""

* commit 'c85a899b23327c3d5693c8dabf5b482c3fb5ded8':
  Revert "Revert "Remove GCC atomic workarounds.""

10 years agoam f0a37663: Initialize art::Atomic\'s value to 0.
Dan Albert [Thu, 14 Aug 2014 05:14:18 +0000 (05:14 +0000)]
am f0a37663: Initialize art::Atomic\'s value to 0.

* commit 'f0a37663309e468f11858bffa3221e7223cf577d':
  Initialize art::Atomic's value to 0.

10 years agoMore efficient stack walk in exception throwing.
Hiroshi Yamauchi [Wed, 13 Aug 2014 18:12:22 +0000 (11:12 -0700)]
More efficient stack walk in exception throwing.

In the exception handling code, we currently walk down the stack
twice, once to get the stack height which we use to compute frame IDs
(the bottom frame is zero), and once more to find the catch block to
jump to.

For a deep stack, this could result in very slow exception
handling. That is, if have a lot of finally or catch blocks that we
end up jumping to in a deep stack, we need to do a lot of
catch/rethrow chains. Since we'd need to walk down to the bottom each
time to compute frames IDs in each catch/rethrow, we'd need to walk
down O(N^2) frames at the worst case.

Instead of frames IDs ((the bottom frame is zero), we will use the
frame depth (the top frame is zero) and no longer need to walk down
the stack just to get the stack height. We walk down O(N) frames.

This was what was happening with
code.google.gson.functional.CircularReferenceTest. With this change,
the test run time went from ~120s down to ~3s on N5 and it no longer
crashes due to the thread suspension timeout.

Bug: 16800209
Change-Id: Ie815df1e3e8fb9d82e40685d4cc2b8838fd8aa07

10 years agoam e8bf3df2: Merge "Use homogeneous space compaction for non low memory devices."
Mathieu Chartier [Thu, 14 Aug 2014 02:30:15 +0000 (02:30 +0000)]
am e8bf3df2: Merge "Use homogeneous space compaction for non low memory devices."

* commit 'e8bf3df2bcc61c12a7e66b4995a083f9ed3939e0':
  Use homogeneous space compaction for non low memory devices.

10 years agoRevert "Revert "Remove GCC atomic workarounds.""
Dan Albert [Mon, 11 Aug 2014 23:38:02 +0000 (16:38 -0700)]
Revert "Revert "Remove GCC atomic workarounds.""

This reverts commit 626a2468e4e4f39db7b0f35a4fee87293e360e92.

(cherry picked from commit aab0f86e3b079598d41c3a00bfa765a7589c5110)

Change-Id: I2333b54dcfd5ee8227a6479d2e3814b25377bdfd

10 years agoInitialize art::Atomic's value to 0.
Dan Albert [Tue, 12 Aug 2014 18:48:34 +0000 (11:48 -0700)]
Initialize art::Atomic's value to 0.

art::Mutex and art::ConditionVariable were DCHECKing that the value was
zero on entering the constructor without ever initializing the value.
Since 0 is a sensible default, make it the default for art::Atomic
rather than initializing for each use.

Bug: 16301104

(cherry picked from commit 6a3f8d93ddf09b5f6667820089e488958cba8361)

Change-Id: Iab69bccac9f904111a72eff8162c7f0ca979a08a

10 years agoam a7a45aa4: Merge "Ensure alternate signal stack is minimum size."
Ian Rogers [Thu, 14 Aug 2014 01:49:58 +0000 (01:49 +0000)]
am a7a45aa4: Merge "Ensure alternate signal stack is minimum size."

* commit 'a7a45aa4349d6b7e698cddecce603fb312c55e76':
  Ensure alternate signal stack is minimum size.

10 years agoresolved conflicts for merge of 57504548 to lmp-dev-plus-aosp
Ian Rogers [Thu, 14 Aug 2014 01:23:21 +0000 (18:23 -0700)]
resolved conflicts for merge of 57504548 to lmp-dev-plus-aosp

Change-Id: I17dba9a68f3af09033cd0a5a221bb8474aa18502

10 years agoam 04a685d8: Merge "Added --gcstress and --gcverify shortcut flags to run-test"
Andreas Gampe [Thu, 14 Aug 2014 00:28:39 +0000 (00:28 +0000)]
am 04a685d8: Merge "Added --gcstress and --gcverify shortcut flags to run-test"

* commit '04a685d86cdf7d386f9dc2efc1626f04becace4e':
  Added --gcstress and --gcverify shortcut flags to run-test

10 years agoam 3e6ff5bc: Merge "Move explicit GC after we are done initalizing all classes."
Mathieu Chartier [Thu, 14 Aug 2014 00:24:56 +0000 (00:24 +0000)]
am 3e6ff5bc: Merge "Move explicit GC after we are done initalizing all classes."

* commit '3e6ff5bcf6f365fd869a5ce62235d4957c71bdbe':
  Move explicit GC after we are done initalizing all classes.

10 years agoMerge "ART: Fix mac build"
Andreas Gampe [Thu, 14 Aug 2014 15:57:39 +0000 (15:57 +0000)]
Merge "ART: Fix mac build"

10 years agoART: Fix mac build
Andreas Gampe [Thu, 14 Aug 2014 02:54:09 +0000 (19:54 -0700)]
ART: Fix mac build

is_main_thread is unused in the case of a mac.

Change-Id: Ib0658b622f261e09dbe1c7592fa802a484ba7f94

10 years agoMerge "ART: Fix class-linker handling"
Andreas Gampe [Thu, 14 Aug 2014 15:42:07 +0000 (15:42 +0000)]
Merge "ART: Fix class-linker handling"

10 years agoART: Fix class-linker handling
Andreas Gampe [Thu, 14 Aug 2014 04:49:37 +0000 (21:49 -0700)]
ART: Fix class-linker handling

ResolveMethod did not account correctly for the mutual exclusivity
of direct and static methods. In such a case we threw a NoSuchMethodError,
while the correct behavior is to throw an IncompatibleClassChangeError.

Bug: 16956477

(cherry picked from commit b5d1efa0012d31f7c52c0a2e2b70c77c8708c885)

Change-Id: Id014affe0b8a43dbd75570b123b921d5853ab135

10 years agoMerge "Ensure alternate signal stack is minimum size."
Ian Rogers [Thu, 14 Aug 2014 01:38:07 +0000 (01:38 +0000)]
Merge "Ensure alternate signal stack is minimum size."

10 years agoMerge "Move explicit GC after we are done initalizing all classes."
Mathieu Chartier [Thu, 14 Aug 2014 00:17:32 +0000 (00:17 +0000)]
Merge "Move explicit GC after we are done initalizing all classes."

10 years agoam b74ff132: Merge "Reduce stack usage for overflow checks"
Dave Allison [Thu, 14 Aug 2014 00:07:21 +0000 (00:07 +0000)]
am b74ff132: Merge "Reduce stack usage for overflow checks"

* commit 'b74ff132f217776c1ab698712bc2dbc526297288':
  Reduce stack usage for overflow checks

10 years agoMerge "Fix intrinsic Math.abs(double) for ARM."
Vladimir Marko [Thu, 14 Aug 2014 17:32:23 +0000 (17:32 +0000)]
Merge "Fix intrinsic Math.abs(double) for ARM."

10 years agoFix intrinsic Math.abs(double) for ARM.
Vladimir Marko [Thu, 14 Aug 2014 14:23:32 +0000 (15:23 +0100)]
Fix intrinsic Math.abs(double) for ARM.

Bug: 16930909
Change-Id: I1210cb3aa82a73b9e4d4df1ceddeff78ac1df42b

10 years agoam 826f1038: Merge "Use handle in one case that spans a gc-point."
Mingyao Yang [Wed, 13 Aug 2014 23:05:13 +0000 (23:05 +0000)]
am 826f1038: Merge "Use handle in one case that spans a gc-point."

* commit '826f1038187e00399a8c6e0044ad0ea29c0ba000':
  Use handle in one case that spans a gc-point.

10 years agoam 63c051a5: Reduce stack usage for overflow checks
Dave Allison [Wed, 13 Aug 2014 23:00:21 +0000 (23:00 +0000)]
am 63c051a5: Reduce stack usage for overflow checks

* commit '63c051a540e6dfc806f656b88ac3a63e99395429':
  Reduce stack usage for overflow checks

10 years agoReduce stack usage for overflow checks
Dave Allison [Fri, 25 Jul 2014 23:15:27 +0000 (16:15 -0700)]
Reduce stack usage for overflow checks

This reduces the stack space reserved for overflow checks to 12K, split
into an 8K gap and a 4K protected region.  GC needs over 8K when running
in a stack overflow situation.

Also prevents signal runaway by detecting a signal inside code that
resulted from a signal handler invokation.  And adds a max signal count to
the SignalTest to prevent it running forever.

Also reduces the number of iterations for the InterfaceTest as this was
taking (almost) forever with the --trace option on run-test.

Bug: 15435566

Change-Id: Id4fd46f22d52d42a9eb431ca07948673e8fda694

Conflicts:
compiler/optimizing/code_generator_x86_64.cc
runtime/arch/x86/fault_handler_x86.cc
runtime/arch/x86_64/quick_entrypoints_x86_64.S

10 years agoam c739de01: Merge "Avoid use of std::string where we have const char*." into lmp-dev
Ian Rogers [Wed, 13 Aug 2014 21:38:41 +0000 (21:38 +0000)]
am c739de01: Merge "Avoid use of std::string where we have const char*." into lmp-dev

* commit 'c739de01b905729b8587003a52a55b62358e979d':
  Avoid use of std::string where we have const char*.

10 years agoEnsure alternate signal stack is minimum size.
Ian Rogers [Wed, 13 Aug 2014 21:37:26 +0000 (14:37 -0700)]
Ensure alternate signal stack is minimum size.

On Mac a sigaltstack may need to be 32KB, setting it to 16KB causes
sigaltstack to fail.

Change-Id: I87f315ae2fb6be4db40a34b350ad5789ff76c113

10 years agoam eeedc3fe: am 83715081: Add allocation rate tracking to systrace.
Mathieu Chartier [Wed, 13 Aug 2014 19:08:23 +0000 (19:08 +0000)]
am eeedc3fe: am 83715081: Add allocation rate tracking to systrace.

* commit 'eeedc3fe01bfddeda348b18d388ae1f557db9db0':
  Add allocation rate tracking to systrace.

10 years agoam 9ad4c8f8: (-s ours) am b0f05b96: Add implicit checks for x86_64 architecture.
Dave Allison [Wed, 13 Aug 2014 19:08:23 +0000 (19:08 +0000)]
am 9ad4c8f8: (-s ours) am b0f05b96: Add implicit checks for x86_64 architecture.

* commit '9ad4c8f87bbecb19b171132e555bf45da417d226':
  Add implicit checks for x86_64 architecture.

10 years agoam 83715081: Add allocation rate tracking to systrace.
Mathieu Chartier [Wed, 13 Aug 2014 19:01:33 +0000 (19:01 +0000)]
am 83715081: Add allocation rate tracking to systrace.

* commit '837150818af0eee993f7d93c5a50c3c7b46f1dab':
  Add allocation rate tracking to systrace.

10 years agoAdd allocation rate tracking to systrace.
Mathieu Chartier [Wed, 13 Aug 2014 17:08:05 +0000 (10:08 -0700)]
Add allocation rate tracking to systrace.

Bug: 16956980

Change-Id: I7074f4ae0f75d1bb58e9860ded4e17ce6978d74e

10 years agoam b0f05b96: Add implicit checks for x86_64 architecture.
Dave Allison [Wed, 13 Aug 2014 18:08:06 +0000 (18:08 +0000)]
am b0f05b96: Add implicit checks for x86_64 architecture.

* commit 'b0f05b9654eb005bc8c8e15f615a7f5a312f640c':
  Add implicit checks for x86_64 architecture.

10 years agoam e39a5e1c: Merge "Execute an application even when dex2oat crashes."
Nicolas Geoffray [Wed, 13 Aug 2014 17:35:51 +0000 (17:35 +0000)]
am e39a5e1c: Merge "Execute an application even when dex2oat crashes."

* commit 'e39a5e1ced3d2b87974c646678dd719c02a9a010':
  Execute an application even when dex2oat crashes.

10 years agoMerge "ART: Fix class-linker handling" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 15:40:19 +0000 (15:40 +0000)]
Merge "ART: Fix class-linker handling" into lmp-dev

10 years agoART: Fix class-linker handling
Andreas Gampe [Thu, 14 Aug 2014 04:49:37 +0000 (21:49 -0700)]
ART: Fix class-linker handling

ResolveMethod did not account correctly for the mutual exclusivity
of direct and static methods. In such a case we threw a NoSuchMethodError,
while the correct behavior is to throw an IncompatibleClassChangeError.

Bug: 16956477
Change-Id: Id014affe0b8a43dbd75570b123b921d5853ab135

10 years agoMerge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader" into lmp-dev
Andreas Gampe [Thu, 14 Aug 2014 05:18:47 +0000 (05:18 +0000)]
Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader" into lmp-dev

10 years agoART: Tolerate shallow call stack in VMStack_getCallingClassLoader
Andreas Gampe [Tue, 12 Aug 2014 01:51:53 +0000 (18:51 -0700)]
ART: Tolerate shallow call stack in VMStack_getCallingClassLoader

When the call stack does not have the three methods we expect,
the visitor will return a nullptr value.

Add a test to JniTest (and refactor the test a little for code reuse).

Bug: 16867274
Change-Id: I5fb8f91f372a41e0bc11ef9f70640834591afa53

10 years agoMerge "The image for writing needn't be in low 4GB."
Ian Rogers [Thu, 14 Aug 2014 16:20:34 +0000 (16:20 +0000)]
Merge "The image for writing needn't be in low 4GB."

10 years agoThe image for writing needn't be in low 4GB.
Ian Rogers [Thu, 14 Aug 2014 15:53:12 +0000 (08:53 -0700)]
The image for writing needn't be in low 4GB.

Fix the x86-64 host build.

Change-Id: I69d30933db2d42960c4f9ffdc937cb11e9635fa0

10 years agoMerge "ART: Fix another potential N-th visitor issue"
Andreas Gampe [Thu, 14 Aug 2014 16:13:33 +0000 (16:13 +0000)]
Merge "ART: Fix another potential N-th visitor issue"

10 years agoART: Fix another potential N-th visitor issue
Andreas Gampe [Thu, 14 Aug 2014 06:05:38 +0000 (23:05 -0700)]
ART: Fix another potential N-th visitor issue

Bug: 16867274

(cherry picked from commit ab61295e55c38072095e498053b8f5bebf46ad63)

Change-Id: I5466af563032041ef4a547894f40f303871302c6

10 years agoMerge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"
Andreas Gampe [Thu, 14 Aug 2014 05:23:05 +0000 (05:23 +0000)]
Merge "ART: Tolerate shallow call stack in VMStack_getCallingClassLoader"

10 years agoART: Tolerate shallow call stack in VMStack_getCallingClassLoader
Andreas Gampe [Tue, 12 Aug 2014 01:51:53 +0000 (18:51 -0700)]
ART: Tolerate shallow call stack in VMStack_getCallingClassLoader

When the call stack does not have the three methods we expect,
the visitor will return a nullptr value.

Add a test to JniTest (and refactor the test a little for code reuse).

Bug: 16867274

(cherry picked from commit 61bf6a1c80bf797af5d7911ff71fc367fdb36742)

Change-Id: I5fb8f91f372a41e0bc11ef9f70640834591afa53

10 years agoMerge "Use homogeneous space compaction for non low memory devices."
Mathieu Chartier [Thu, 14 Aug 2014 02:11:32 +0000 (02:11 +0000)]
Merge "Use homogeneous space compaction for non low memory devices."

10 years agoUse homogeneous space compaction for non low memory devices.
Mathieu Chartier [Thu, 14 Aug 2014 01:07:31 +0000 (18:07 -0700)]
Use homogeneous space compaction for non low memory devices.

Saves nearly as much memory without needing the foreground
transition.

TODO: Pass in these flags from AndroidRuntime.cpp.

Bug: 16401001
Change-Id: Iecad0cc0c04fdf9cabe6f9d7f87c761a94b4142c

10 years agoMerge "Added --gcstress and --gcverify shortcut flags to run-test"
Andreas Gampe [Thu, 14 Aug 2014 00:19:43 +0000 (00:19 +0000)]
Merge "Added --gcstress and --gcverify shortcut flags to run-test"

10 years agoAdd implicit checks for x86_64 architecture.
Dave Allison [Wed, 16 Jul 2014 23:04:32 +0000 (16:04 -0700)]
Add implicit checks for x86_64 architecture.

This combines the x86 and x86_64 fault handlers into one.  It also
merges in the change to the entrypoints for X86_64.

Replaces generic instruction length calculator with one that only
works with the specific instructions we use.

Bug: 16256184

Change-Id: I1e8ab5ad43f46060de9597615b423c89a836035c
Signed-off-by: Chao-ying Fu <chao-ying.fu@intel.com>
10 years agoam b6625211: Merge "Fix crash in VirtualMachine.AllThreads JDWP command"
Sebastien Hertz [Wed, 13 Aug 2014 09:05:46 +0000 (09:05 +0000)]
am b6625211: Merge "Fix crash in VirtualMachine.AllThreads JDWP command"

* commit 'b66252112d45fd24eab85122fa8902afd1324542':
  Fix crash in VirtualMachine.AllThreads JDWP command

10 years agoam 697f4c63: am 4527f61c: ART: Don\'t leave rex_ & length_ uninitialized
Andreas Gampe [Wed, 13 Aug 2014 07:55:46 +0000 (07:55 +0000)]
am 697f4c63: am 4527f61c: ART: Don\'t leave rex_ & length_ uninitialized

* commit '697f4c634f772c0f4d3087ac851fc1911f122d63':
  ART: Don't leave rex_ & length_ uninitialized

10 years agoam 4527f61c: ART: Don\'t leave rex_ & length_ uninitialized
Andreas Gampe [Wed, 13 Aug 2014 07:50:56 +0000 (07:50 +0000)]
am 4527f61c: ART: Don\'t leave rex_ & length_ uninitialized

* commit '4527f61cbc1a3b01ab249181900b8ea547edaf90':
  ART: Don't leave rex_ & length_ uninitialized

10 years agoART: Don't leave rex_ & length_ uninitialized
Andreas Gampe [Wed, 13 Aug 2014 06:24:16 +0000 (23:24 -0700)]
ART: Don't leave rex_ & length_ uninitialized

Don't leave fields uninitialized in the x86-64 utils assembler.

Bug: 16993295

(cherry picked from commit 181211de89df5615395a55114fe551b08e86bc4d)

Change-Id: I2d648991fc2a6a4d5f518eb9ef0bb10857f6318a

10 years agoam c38752d5: Merge "ART: Don\'t leave rex_ & length_ uninitialized"
Andreas Gampe [Wed, 13 Aug 2014 07:38:31 +0000 (07:38 +0000)]
am c38752d5: Merge "ART: Don\'t leave rex_ & length_ uninitialized"

* commit 'c38752d535eefee3d5cd2399514bf405e9dd3827':
  ART: Don't leave rex_ & length_ uninitialized

10 years agoam 0d0bbb5b: am 13cccfa3: Merge "Fix crash in VirtualMachine.AllThreads JDWP command...
Sebastien Hertz [Wed, 13 Aug 2014 06:18:56 +0000 (06:18 +0000)]
am 0d0bbb5b: am 13cccfa3: Merge "Fix crash in VirtualMachine.AllThreads JDWP command" into lmp-dev

* commit '0d0bbb5b65a777594408178a402a833ea99e79cf':
  Fix crash in VirtualMachine.AllThreads JDWP command

10 years agoam 13cccfa3: Merge "Fix crash in VirtualMachine.AllThreads JDWP command" into lmp-dev
Sebastien Hertz [Wed, 13 Aug 2014 06:14:50 +0000 (06:14 +0000)]
am 13cccfa3: Merge "Fix crash in VirtualMachine.AllThreads JDWP command" into lmp-dev

* commit '13cccfa3ce61a41a176358ff2aa53e60d0acacd5':
  Fix crash in VirtualMachine.AllThreads JDWP command

10 years agoam 6c6c6f66: Merge "Avoid use of std::string where we have const char*."
Ian Rogers [Wed, 13 Aug 2014 05:49:26 +0000 (05:49 +0000)]
am 6c6c6f66: Merge "Avoid use of std::string where we have const char*."

* commit '6c6c6f6683cbbb180b8b8c8f55886b067320e1e8':
  Avoid use of std::string where we have const char*.

10 years agoam 1b3e5b6f: Merge "Implement GenInlinedReverseBits"
Ian Rogers [Wed, 13 Aug 2014 05:08:44 +0000 (05:08 +0000)]
am 1b3e5b6f: Merge "Implement GenInlinedReverseBits"

* commit '1b3e5b6ffbb5f1cb21e6b1128d0031d14ba056d7':
  Implement GenInlinedReverseBits

10 years agoam 33e70ef9: Merge "Fix art build script"
Ian Rogers [Wed, 13 Aug 2014 04:39:49 +0000 (04:39 +0000)]
am 33e70ef9: Merge "Fix art build script"

* commit '33e70ef9bcf916dd637c03eaad41c57c09bc4261':
  Fix art build script

10 years agoMerge "Fix crash in VirtualMachine.AllThreads JDWP command" into lmp-dev
Sebastien Hertz [Wed, 13 Aug 2014 06:09:49 +0000 (06:09 +0000)]
Merge "Fix crash in VirtualMachine.AllThreads JDWP command" into lmp-dev

10 years agoMerge "Avoid use of std::string where we have const char*." into lmp-dev
Ian Rogers [Wed, 13 Aug 2014 21:34:53 +0000 (21:34 +0000)]
Merge "Avoid use of std::string where we have const char*." into lmp-dev