OSDN Git Service

android-x86/art.git
9 years agoQuick: Fix DCE to rename SSA regs for degenerate Phis.
Vladimir Marko [Thu, 7 May 2015 14:53:41 +0000 (15:53 +0100)]
Quick: Fix DCE to rename SSA regs for degenerate Phis.

If we're inserting a new Phi and all its inputs are the same
SSA reg (for example, we allow a single-input Phi), some
subsequent insn may actually refer to that reg, so we need
to rename it to keep the graph in a consistent state.

(cherry picked from commit f60715c2c0a2398822a143ffb6b75507bffca703)

Change-Id: I46822b0db21c187601b79d2ff1a650494558772a

9 years agoFix broken checks in IsValidPartOfMemberNameUtf8Slow.
Narayan Kamath [Wed, 6 May 2015 13:55:43 +0000 (14:55 +0100)]
Fix broken checks in IsValidPartOfMemberNameUtf8Slow.

GetUtf16FromUtf8 returns a surrogate pair only if it encounters
a 4-byte UTF sequence. Three byte UTF sequences will only return the
first or second half of a pair so we need to check for that
explicitly.

bug: 20844537

Change-Id: Icb660fae77ac8a852fc768e6c1cd5766117e68e4

9 years agoIn quick compiler, force string init invoke to be fast path.
Jeff Hao [Thu, 7 May 2015 00:41:32 +0000 (17:41 -0700)]
In quick compiler, force string init invoke to be fast path.

Was running into an issue where a secondary dex file was falling back on
the quick compiler, and IsFastInvoke returned 0 because the
referrer_class was nullptr, causing the string init to be slow path. The
string init technically does not have to be fast path, but there's no
reason to duplicate the logic to call off a thread pointer on the slow
path.

Bug: 20870917
Change-Id: I47e1524d939eb7e9b1da8186092fafc6e925009e

9 years agoQuick: Inline synthetic accessors generated by jack.
Vladimir Marko [Wed, 6 May 2015 13:09:04 +0000 (14:09 +0100)]
Quick: Inline synthetic accessors generated by jack.

While javac names synthetic accessors "access$nnn", jack
names them "-getN", "-putN" and "-wrapN". For simplicity,
treat all methods starting with "-" as synthetic accessors.

Bug: 20873367

(cherry picked from commit d5f1005da7599f149b1332402c9791ef2acb8c42)

Change-Id: Ifcc77fc3c5dd44797a48632c8e16416fbc273a93

9 years agoMerge "Fix instrumentation exit stub for arm64" into mnc-dev
Sebastien Hertz [Wed, 6 May 2015 08:01:23 +0000 (08:01 +0000)]
Merge "Fix instrumentation exit stub for arm64" into mnc-dev

9 years agoFix instrumentation exit stub for arm64
Sebastien Hertz [Tue, 5 May 2015 18:03:50 +0000 (20:03 +0200)]
Fix instrumentation exit stub for arm64

Fixes bad offset to restore register x21.

Bug: 20798393
Change-Id: I030d848ab0f46043e86f53abae204463f0aaccbe

9 years agoMerge "Request full/partial GC type from VMRuntime.requestConcurrentGC()." into mnc-dev
Hiroshi Yamauchi [Tue, 5 May 2015 17:01:33 +0000 (17:01 +0000)]
Merge "Request full/partial GC type from VMRuntime.requestConcurrentGC()." into mnc-dev

9 years agoam 02d320c2: (-s ours) am 3c683c5d: Revert "HACK: Disable native stack trace dumping...
Mathieu Chartier [Tue, 5 May 2015 01:48:09 +0000 (01:48 +0000)]
am 02d320c2: (-s ours) am 3c683c5d: Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"

* commit '02d320c218be4b8877d2d6947b1c85120736558c':
  Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"

9 years agoam 3c683c5d: Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"
Mathieu Chartier [Tue, 5 May 2015 01:00:30 +0000 (01:00 +0000)]
am 3c683c5d: Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"

* commit '3c683c5d107cb43e8027d740ed579ef92a88af2e':
  Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"

9 years agoMerge "ART: Emit debug info when app is debuggable" into mnc-dev
Andreas Gampe [Mon, 4 May 2015 21:51:31 +0000 (21:51 +0000)]
Merge "ART: Emit debug info when app is debuggable" into mnc-dev

9 years agoDelete invalid DCHECK
Mathieu Chartier [Mon, 4 May 2015 18:46:25 +0000 (11:46 -0700)]
Delete invalid DCHECK

We can have large objects mapped at address 0xebad____.

(cherry picked from commit e1a0153eeecbacaa4dbdbd4650f7ba40b9c47814)

Change-Id: I9e27d4948e7e853b4af6eb1b36dbfec6d4d7a99a

9 years agoRevert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"
Mathieu Chartier [Mon, 4 May 2015 19:59:55 +0000 (19:59 +0000)]
Revert "HACK: Disable native stack trace dumping for tetra. DO NOT MERGE"

This reverts commit 471b7cb6c1b8128bb343b49198f2654f9f5b8f86.

Change-Id: Ia22615b401fd28ea94e6269f9eac5653e103a6fd

9 years agoImprove JNI registration failure logging
Mathieu Chartier [Mon, 4 May 2015 17:18:24 +0000 (10:18 -0700)]
Improve JNI registration failure logging

Print INTERNAL_FATAL instead of ERROR, print the
"Failed to register native method" message last.

(cherry picked from commit 5c02d6cd0cc7e10d30d8c26166ebaaf6d313d771)

Bug: 13885477
Change-Id: I9f1a7ea45bd926f3984b8008d84c75e676a1ed10

9 years agoFix NanoSleep and add test
Mathieu Chartier [Mon, 4 May 2015 16:53:43 +0000 (09:53 -0700)]
Fix NanoSleep and add test

Fixed a bug where tv_nsec was't between 0 and 999,999,999.

(cherry picked from commit 0b063d9ba7a11779667c0888e9f3495de0118b74)

Bug: 14450052
Change-Id: I30b29a716bfa63c6b57d589dd1102d2ca934c061

9 years agoAdd some more DISALLOW_COPY_AND_ASSIGN
Mathieu Chartier [Sun, 3 May 2015 22:20:23 +0000 (15:20 -0700)]
Add some more DISALLOW_COPY_AND_ASSIGN

May help prevent bugs maybe.

(cherry picked from commit 3130cdf29eb203be0c38d1107a65d920ec39c106)

Change-Id: Ie73d469dfcd078492ecb3aa28682b42707221202

9 years agoART: Emit debug info when app is debuggable
Andreas Gampe [Mon, 4 May 2015 15:33:31 +0000 (08:33 -0700)]
ART: Emit debug info when app is debuggable

Emit debug symbols and CFI when dex2oat is compiling with the
--debuggable flag.

Bug: 17011129
Change-Id: I0afab1e46abd819eded2b823580e766619497393

9 years agoRequest full/partial GC type from VMRuntime.requestConcurrentGC().
Hiroshi Yamauchi [Sat, 2 May 2015 00:53:32 +0000 (17:53 -0700)]
Request full/partial GC type from VMRuntime.requestConcurrentGC().

(cherry pick commit 0ae98992d348b5bf3fc85a52d81b0e5f221f20d6)

Bug: 20554807
Change-Id: I572e846e9d0347b8b2692442e55f56c08b07d395

9 years agoMerge "Let the map function compute the relative pc." into mnc-dev
Christopher Ferris [Sat, 2 May 2015 00:07:16 +0000 (00:07 +0000)]
Merge "Let the map function compute the relative pc." into mnc-dev

9 years agoLet the map function compute the relative pc.
Christopher Ferris [Fri, 1 May 2015 23:03:49 +0000 (16:03 -0700)]
Let the map function compute the relative pc.

The new packed relocations linker option creates an elf with a non-zero
load base. It's no longer an easy task to compute the relative pc yourself
so call the helper function to do it for us.

Bug: 20687795
Change-Id: If11c1a596bc79382d44e35a86d5035ab29d29864

9 years agoPrint memory maps on GC crash.
Hiroshi Yamauchi [Fri, 1 May 2015 18:50:24 +0000 (11:50 -0700)]
Print memory maps on GC crash.

Bug: 20557050

(cherry picked from commit d38ec80b163af1639fbaae382a319c73be67c560)

Change-Id: I0fc35bace77b11181f06199c121bc4e246d02100

9 years agoChange invalid root from LOG(ERROR) to LOG(INTERNAL_FATAL)
Mathieu Chartier [Fri, 1 May 2015 20:00:23 +0000 (13:00 -0700)]
Change invalid root from LOG(ERROR) to LOG(INTERNAL_FATAL)

INTERNAL_FATAL is more likely to remain in bug reports.

(cherry picked from commit 175746ac9039e9b741d3521420dcaa9c59341738)

Bug: 20736048
Change-Id: I518f079d8d1839e22b3595e807730edf36318f1d

9 years agoUpdate the remaining input index of phis after deleting an input.
Nicolas Geoffray [Mon, 27 Apr 2015 23:52:43 +0000 (00:52 +0100)]
Update the remaining input index of phis after deleting an input.

bug:20715803
bug:20690906

(cherry picked from commit 5d7b7f81ed5455893f984752c00571ef27cc97c5)

Change-Id: Ie55739601b8d6fedc830d6e19d8a053392047d34

9 years agoMerge art project from goog/master into goog/mnc-dev.
Jeff Hao [Thu, 30 Apr 2015 18:25:10 +0000 (11:25 -0700)]
Merge art project from goog/master into goog/mnc-dev.

9 years agoam e70d1bc0: am 204a4a0e: am 01ce4984: Merge "Move .eh_frame to the end of ELF file."
David Srbecky [Thu, 30 Apr 2015 16:39:23 +0000 (16:39 +0000)]
am e70d1bc0: am 204a4a0e: am 01ce4984: Merge "Move .eh_frame to the end of ELF file."

* commit 'e70d1bc02c1aacc02a5ed421d15dd110ed36d947':
  Move .eh_frame to the end of ELF file.

9 years agoam c871eec8: am e47cc002: am acb3ee85: Merge "Major refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:39:22 +0000 (16:39 +0000)]
am c871eec8: am e47cc002: am acb3ee85: Merge "Major refactoring of ElfBuilder."

* commit 'c871eec8acffacffd8254ba826a243581c4c79ce':
  Major refactoring of ElfBuilder.

9 years agoam 45d56ef7: am 9207699c: am e6dbb737: Merge "Minor refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:39:20 +0000 (16:39 +0000)]
am 45d56ef7: am 9207699c: am e6dbb737: Merge "Minor refactoring of ElfBuilder."

* commit '45d56ef7773066af1fb107da3ffe20a591ec08f1':
  Minor refactoring of ElfBuilder.

9 years agoam 204a4a0e: am 01ce4984: Merge "Move .eh_frame to the end of ELF file."
David Srbecky [Thu, 30 Apr 2015 16:30:18 +0000 (16:30 +0000)]
am 204a4a0e: am 01ce4984: Merge "Move .eh_frame to the end of ELF file."

* commit '204a4a0e0b866cca956a61af113a13008214723f':
  Move .eh_frame to the end of ELF file.

9 years agoam e47cc002: am acb3ee85: Merge "Major refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:30:17 +0000 (16:30 +0000)]
am e47cc002: am acb3ee85: Merge "Major refactoring of ElfBuilder."

* commit 'e47cc002e73e2c253e0f5eea74e7c80511a5c413':
  Major refactoring of ElfBuilder.

9 years agoam 9207699c: am e6dbb737: Merge "Minor refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:30:15 +0000 (16:30 +0000)]
am 9207699c: am e6dbb737: Merge "Minor refactoring of ElfBuilder."

* commit '9207699cdc91ca858354e5008d729c1bbd3127c9':
  Minor refactoring of ElfBuilder.

9 years agoam 01ce4984: Merge "Move .eh_frame to the end of ELF file."
David Srbecky [Thu, 30 Apr 2015 16:20:59 +0000 (16:20 +0000)]
am 01ce4984: Merge "Move .eh_frame to the end of ELF file."

* commit '01ce498499eed47e87fceb8736d26fe49b2a4346':
  Move .eh_frame to the end of ELF file.

9 years agoam acb3ee85: Merge "Major refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:20:58 +0000 (16:20 +0000)]
am acb3ee85: Merge "Major refactoring of ElfBuilder."

* commit 'acb3ee85438f3168a17786dda52cfcdcd47da87d':
  Major refactoring of ElfBuilder.

9 years agoam e6dbb737: Merge "Minor refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:20:54 +0000 (16:20 +0000)]
am e6dbb737: Merge "Minor refactoring of ElfBuilder."

* commit 'e6dbb737c1dc0157ff9b4020ac5ecce08a6c99a2':
  Minor refactoring of ElfBuilder.

9 years agoMerge "Move .eh_frame to the end of ELF file."
David Srbecky [Thu, 30 Apr 2015 16:08:32 +0000 (16:08 +0000)]
Merge "Move .eh_frame to the end of ELF file."

9 years agoMove .eh_frame to the end of ELF file.
David Srbecky [Tue, 28 Apr 2015 18:43:56 +0000 (19:43 +0100)]
Move .eh_frame to the end of ELF file.

Move .eh_frame to the end together with other debug sections.
This should make it easier to remove it using standard strip tools.

Bug:20556771
Change-Id: I8303ccb053aee50d53fb193819d345c91f1e5b75

9 years agoMerge "Major refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:07:16 +0000 (16:07 +0000)]
Merge "Major refactoring of ElfBuilder."

9 years agoMerge "Minor refactoring of ElfBuilder."
David Srbecky [Thu, 30 Apr 2015 16:07:06 +0000 (16:07 +0000)]
Merge "Minor refactoring of ElfBuilder."

9 years agoam f0dd5b96: am 8b83b55d: ART: Allow oat files with duplicates classes in corner...
Andreas Gampe [Thu, 30 Apr 2015 15:34:24 +0000 (15:34 +0000)]
am f0dd5b96: am 8b83b55d: ART: Allow oat files with duplicates classes in corner case

* commit 'f0dd5b96c73e1ed75c0c6d17592c77860ba010dd':
  ART: Allow oat files with duplicates classes in corner case

9 years agoam 8b83b55d: ART: Allow oat files with duplicates classes in corner case
Andreas Gampe [Thu, 30 Apr 2015 15:20:11 +0000 (15:20 +0000)]
am 8b83b55d: ART: Allow oat files with duplicates classes in corner case

* commit '8b83b55de8abbc195c038789f1034107f4974597':
  ART: Allow oat files with duplicates classes in corner case

9 years agoam 53de3b19: am caf07631: am fd5f56d4: Merge "Revert "GVN final fields even with...
Nicolas Geoffray [Thu, 30 Apr 2015 11:47:14 +0000 (11:47 +0000)]
am 53de3b19: am caf07631: am fd5f56d4: Merge "Revert "GVN final fields even with side effects.""

* commit '53de3b19a3760bb5fcaa0d34f91a10cb122063ca':
  Revert "GVN final fields even with side effects."

9 years agoam caf07631: am fd5f56d4: Merge "Revert "GVN final fields even with side effects.""
Nicolas Geoffray [Thu, 30 Apr 2015 11:35:24 +0000 (11:35 +0000)]
am caf07631: am fd5f56d4: Merge "Revert "GVN final fields even with side effects.""

* commit 'caf076311e6933a79da3b5714975486ffa1efa07':
  Revert "GVN final fields even with side effects."

9 years agoMajor refactoring of ElfBuilder.
David Srbecky [Wed, 22 Apr 2015 18:40:27 +0000 (19:40 +0100)]
Major refactoring of ElfBuilder.

Simplify ElfBuilder by removing duplicated or redundant code.
Many of the repeated code patterns were replaced by just
looping over the list of all sections.

Methods Init() and Write() have been merged into one.
The split between those was rather arbitrary, but it was there
for a reason.  It allowed creation of raw sections between
the calls which may have depended on layout decisions done in
Init(), but not in Write() (e.g. knowing of offset of .text).

This has been replaced by more generic solution.
All sections are asked about their size first and complete
file layout is calculated.  Then the sections are asked to
write their content (potentially using the layout information).

This should be pure refactoring CL - the compiler should
produce bit for bit identical output as before.

Change-Id: I281d13d469801bd8288b36b360d200d98a3e92d7

9 years agoam fd5f56d4: Merge "Revert "GVN final fields even with side effects.""
Nicolas Geoffray [Thu, 30 Apr 2015 11:23:03 +0000 (11:23 +0000)]
am fd5f56d4: Merge "Revert "GVN final fields even with side effects.""

* commit 'fd5f56d4604eeeacdf6be5189187b6ef49157280':
  Revert "GVN final fields even with side effects."

9 years agoMerge "Revert "GVN final fields even with side effects.""
Nicolas Geoffray [Thu, 30 Apr 2015 11:16:06 +0000 (11:16 +0000)]
Merge "Revert "GVN final fields even with side effects.""

9 years agoRevert "GVN final fields even with side effects."
Nicolas Geoffray [Thu, 30 Apr 2015 11:15:40 +0000 (11:15 +0000)]
Revert "GVN final fields even with side effects."

This reverts commit 781733632637db98d79dfffad72bf063be3259be.

Change-Id: Id7c4591f6b8190921852044b278d11627457c570

9 years agoam ddadbf8d: am 4ffbc975: am 56784f88: Merge "GVN final fields even with side effects."
Nicolas Geoffray [Thu, 30 Apr 2015 10:56:49 +0000 (10:56 +0000)]
am ddadbf8d: am 4ffbc975: am 56784f88: Merge "GVN final fields even with side effects."

* commit 'ddadbf8d3328f810c0b59ab1f8b2685108ad048c':
  GVN final fields even with side effects.

9 years agoam 4ffbc975: am 56784f88: Merge "GVN final fields even with side effects."
Nicolas Geoffray [Thu, 30 Apr 2015 10:46:38 +0000 (10:46 +0000)]
am 4ffbc975: am 56784f88: Merge "GVN final fields even with side effects."

* commit '4ffbc975a8614ed314114895df93c345e14c8163':
  GVN final fields even with side effects.

9 years agoam 56784f88: Merge "GVN final fields even with side effects."
Nicolas Geoffray [Thu, 30 Apr 2015 10:31:49 +0000 (10:31 +0000)]
am 56784f88: Merge "GVN final fields even with side effects."

* commit '56784f887bad1219f326e9e6d110f785f31a5968':
  GVN final fields even with side effects.

9 years agoMerge "GVN final fields even with side effects."
Nicolas Geoffray [Thu, 30 Apr 2015 10:21:19 +0000 (10:21 +0000)]
Merge "GVN final fields even with side effects."

9 years agoGVN final fields even with side effects.
Nicolas Geoffray [Wed, 29 Apr 2015 15:46:27 +0000 (16:46 +0100)]
GVN final fields even with side effects.

Two accesses of a final field can be GVN'ed even if there are
side effects between them.

Change-Id: I04495ae83c7858f4216b083ad1c29851954320ad

9 years agoam af6535b3: am f94b250f: am 0a50264b: Merge "ART: Allow oat files with duplicates...
Sebastien Hertz [Thu, 30 Apr 2015 07:46:51 +0000 (07:46 +0000)]
am af6535b3: am f94b250f: am 0a50264b: Merge "ART: Allow oat files with duplicates classes in corner case"

* commit 'af6535b39fb8630e02cd38ca594dec1d65be90cd':
  ART: Allow oat files with duplicates classes in corner case

9 years agoam f94b250f: am 0a50264b: Merge "ART: Allow oat files with duplicates classes in...
Sebastien Hertz [Thu, 30 Apr 2015 07:34:27 +0000 (07:34 +0000)]
am f94b250f: am 0a50264b: Merge "ART: Allow oat files with duplicates classes in corner case"

* commit 'f94b250f426c7f43f9ee78e39e07d6ee13842b20':
  ART: Allow oat files with duplicates classes in corner case

9 years agoam 0a50264b: Merge "ART: Allow oat files with duplicates classes in corner case"
Sebastien Hertz [Thu, 30 Apr 2015 07:25:56 +0000 (07:25 +0000)]
am 0a50264b: Merge "ART: Allow oat files with duplicates classes in corner case"

* commit '0a50264b30a0c61099e8388015cccfa417a6bd18':
  ART: Allow oat files with duplicates classes in corner case

9 years agoam de8e618e: am f533cd0d: am dacee920: Merge "Fix missing transaction abort error...
Sebastien Hertz [Thu, 30 Apr 2015 07:22:55 +0000 (07:22 +0000)]
am de8e618e: am f533cd0d: am dacee920: Merge "Fix missing transaction abort error message"

* commit 'de8e618e3c4b9ad5437772136ba30e49c3c95781':
  Fix missing transaction abort error message

9 years agoMerge "ART: Allow oat files with duplicates classes in corner case"
Sebastien Hertz [Thu, 30 Apr 2015 07:18:07 +0000 (07:18 +0000)]
Merge "ART: Allow oat files with duplicates classes in corner case"

9 years agoam f533cd0d: am dacee920: Merge "Fix missing transaction abort error message"
Sebastien Hertz [Thu, 30 Apr 2015 07:12:06 +0000 (07:12 +0000)]
am f533cd0d: am dacee920: Merge "Fix missing transaction abort error message"

* commit 'f533cd0dd13f64c39658e944b41febbd34460fca':
  Fix missing transaction abort error message

9 years agoam dacee920: Merge "Fix missing transaction abort error message"
Sebastien Hertz [Thu, 30 Apr 2015 07:03:11 +0000 (07:03 +0000)]
am dacee920: Merge "Fix missing transaction abort error message"

* commit 'dacee9200210fca06e01e5967f7265e11b2942d4':
  Fix missing transaction abort error message

9 years agoMerge "Fix missing transaction abort error message"
Sebastien Hertz [Thu, 30 Apr 2015 06:53:35 +0000 (06:53 +0000)]
Merge "Fix missing transaction abort error message"

9 years agoART: Allow oat files with duplicates classes in corner case
Andreas Gampe [Thu, 30 Apr 2015 03:47:16 +0000 (20:47 -0700)]
ART: Allow oat files with duplicates classes in corner case

When the oat file is actually an odex file, that is, a preopted
/system app, then it is impossible to fall back to the original
APK, as that has been stripped.

When it looks like it will be impossible to successfully open the
original dex location, grudgingly allow to open the found oat file,
even if it has duplicate classes, but warn accordingly.

Bug: 20697582

(cherry picked from commit 0cba004b97245300d7f39318d5921ee8edbef1ac)

Change-Id: I1dd459563d977a2e77806eacd03e49334d5b1f14

9 years agoam f5b132e5: am 61d7ca87: ART: Whitelist DexPathList constructor
Andreas Gampe [Thu, 30 Apr 2015 03:54:07 +0000 (03:54 +0000)]
am f5b132e5: am 61d7ca87: ART: Whitelist DexPathList constructor

* commit 'f5b132e59c9ed11ac440e626322cec5bc1b13774':
  ART: Whitelist DexPathList$Element constructor

9 years agoART: Allow oat files with duplicates classes in corner case
Andreas Gampe [Thu, 30 Apr 2015 03:47:16 +0000 (20:47 -0700)]
ART: Allow oat files with duplicates classes in corner case

When the oat file is actually an odex file, that is, a preopted
/system app, then it is impossible to fall back to the original
APK, as that has been stripped.

When it looks like it will be impossible to successfully open the
original dex location, grudgingly allow to open the found oat file,
even if it has duplicate classes, but warn accordingly.

Bug: 20697582
Change-Id: I1dd459563d977a2e77806eacd03e49334d5b1f14

9 years agoam 61d7ca87: ART: Whitelist DexPathList constructor
Andreas Gampe [Thu, 30 Apr 2015 03:35:47 +0000 (03:35 +0000)]
am 61d7ca87: ART: Whitelist DexPathList constructor

* commit '61d7ca870b7afc5400e6f7dd2952ca06ce7f7bac':
  ART: Whitelist DexPathList$Element constructor

9 years agoART: Whitelist DexPathList$Element constructor
Andreas Gampe [Thu, 30 Apr 2015 02:56:36 +0000 (19:56 -0700)]
ART: Whitelist DexPathList$Element constructor

Temporary whitelist for backwards compatibility.

Bug: 20699073
Change-Id: Iba351060441398b9377a8471f0bbe03bb77f8384

9 years agoam 8f27a1be: am 0e95910c: am eff3229f: Merge "Restore interpreter check during DoCall...
Jeff Hao [Wed, 29 Apr 2015 23:39:34 +0000 (23:39 +0000)]
am 8f27a1be: am 0e95910c: am eff3229f: Merge "Restore interpreter check during DoCall removed by string init."

* commit '8f27a1beaf79acc3f8d7d24de35d8500177866af':
  Restore interpreter check during DoCall removed by string init.

9 years agoam 0e95910c: am eff3229f: Merge "Restore interpreter check during DoCall removed...
Jeff Hao [Wed, 29 Apr 2015 23:27:44 +0000 (23:27 +0000)]
am 0e95910c: am eff3229f: Merge "Restore interpreter check during DoCall removed by string init."

* commit '0e95910ccac86c5464725c6e34d920598e42f89e':
  Restore interpreter check during DoCall removed by string init.

9 years agoam eff3229f: Merge "Restore interpreter check during DoCall removed by string init."
Jeff Hao [Wed, 29 Apr 2015 23:15:14 +0000 (23:15 +0000)]
am eff3229f: Merge "Restore interpreter check during DoCall removed by string init."

* commit 'eff3229ff3c8faead4b6d400e273ee27b7004dab':
  Restore interpreter check during DoCall removed by string init.

9 years agoMerge "Restore interpreter check during DoCall removed by string init."
Jeff Hao [Wed, 29 Apr 2015 23:03:46 +0000 (23:03 +0000)]
Merge "Restore interpreter check during DoCall removed by string init."

9 years agoRestore interpreter check during DoCall removed by string init.
Jeff Hao [Wed, 29 Apr 2015 22:58:17 +0000 (15:58 -0700)]
Restore interpreter check during DoCall removed by string init.

Also reorder test in verifier to check for string_init first.

Change-Id: I585ef3f5890819a3e233236ea85b51a03918f5dc

9 years agoam 5c4dd151: am 9b169f39: Merge "Only print IRT remove local warning if CheckJNI...
Mathieu Chartier [Wed, 29 Apr 2015 18:25:23 +0000 (18:25 +0000)]
am 5c4dd151: am 9b169f39: Merge "Only print IRT remove local warning if CheckJNI is enabled" into mnc-dev

* commit '5c4dd151f0f8f4edfd42b256da0af97f3eea28c1':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoam 9b169f39: Merge "Only print IRT remove local warning if CheckJNI is enabled" into...
Mathieu Chartier [Wed, 29 Apr 2015 18:13:32 +0000 (18:13 +0000)]
am 9b169f39: Merge "Only print IRT remove local warning if CheckJNI is enabled" into mnc-dev

* commit '9b169f39f7d3ac31571fdccea51c4e271668cced':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoam 4590ab92: am 8df0e08f: am 8c9c1ae5: Merge "Only print IRT remove local warning...
Mathieu Chartier [Wed, 29 Apr 2015 18:10:11 +0000 (18:10 +0000)]
am 4590ab92: am 8df0e08f: am 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"

* commit '4590ab928e48f60a70d6d76a329ec25419ce82ad':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoam 81ae83ed: am 395086f0: ART: Fix loop information after dead code elimination
David Brazdil [Wed, 29 Apr 2015 18:10:10 +0000 (18:10 +0000)]
am 81ae83ed: am 395086f0: ART: Fix loop information after dead code elimination

* commit '81ae83ed2e50cecd740e3f0cf8bbf816f081bd5c':
  ART: Fix loop information after dead code elimination

9 years agoam 8df0e08f: am 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI...
Mathieu Chartier [Wed, 29 Apr 2015 18:00:08 +0000 (18:00 +0000)]
am 8df0e08f: am 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"

* commit '8df0e08ff050bbcb84d711d155d8e3503ae23658':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoam 395086f0: ART: Fix loop information after dead code elimination
David Brazdil [Wed, 29 Apr 2015 17:55:36 +0000 (17:55 +0000)]
am 395086f0: ART: Fix loop information after dead code elimination

* commit '395086f0a9e0658a2d33eeade7121db55c1f5dc8':
  ART: Fix loop information after dead code elimination

9 years agoMerge "Only print IRT remove local warning if CheckJNI is enabled" into mnc-dev
Mathieu Chartier [Wed, 29 Apr 2015 17:49:33 +0000 (17:49 +0000)]
Merge "Only print IRT remove local warning if CheckJNI is enabled" into mnc-dev

9 years agoOnly print IRT remove local warning if CheckJNI is enabled
Mathieu Chartier [Wed, 29 Apr 2015 16:57:48 +0000 (09:57 -0700)]
Only print IRT remove local warning if CheckJNI is enabled

Less spammy.

(cherry picked from commit c5adebc9327bd5ca223a5faf99d904cc202a1627)

Bug: 17405090

Change-Id: Ib78d0d7bc31a88182cb9d85ddba9b469bd50324b

9 years agoam 70eb7d5b: am 401b8ea4: am ed51747a: Merge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:49:00 +0000 (17:49 +0000)]
am 70eb7d5b: am 401b8ea4: am ed51747a: Merge "Add synthesize uses at back edge."

* commit '70eb7d5be34cc7282e03c8b7f844c749b1deac35':
  Add synthesize uses at back edge.

9 years agoam 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"
Mathieu Chartier [Wed, 29 Apr 2015 17:48:03 +0000 (17:48 +0000)]
am 8c9c1ae5: Merge "Only print IRT remove local warning if CheckJNI is enabled"

* commit '8c9c1ae515f32142ab85103c5d45bd7ce4e6eb3c':
  Only print IRT remove local warning if CheckJNI is enabled

9 years agoART: Fix loop information after dead code elimination
David Brazdil [Wed, 29 Apr 2015 16:16:07 +0000 (17:16 +0100)]
ART: Fix loop information after dead code elimination

Compilation failed when only some blocks of a loop were removed during
dead code elimination.

Bug: 20680703
(cherry picked from commit 69a2804c3bb48cf4fd00a66080f613a4fd96c422)

Change-Id: If9988381236e4d8d8c3b508dfce1376b27c20d75

9 years agoMerge "Only print IRT remove local warning if CheckJNI is enabled"
Mathieu Chartier [Wed, 29 Apr 2015 17:37:47 +0000 (17:37 +0000)]
Merge "Only print IRT remove local warning if CheckJNI is enabled"

9 years agoam 401b8ea4: am ed51747a: Merge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:36:13 +0000 (17:36 +0000)]
am 401b8ea4: am ed51747a: Merge "Add synthesize uses at back edge."

* commit '401b8ea4c56678cfa0b2d3bdae5cb9e208711f88':
  Add synthesize uses at back edge.

9 years agoOnly print IRT remove local warning if CheckJNI is enabled
Mathieu Chartier [Wed, 29 Apr 2015 16:57:48 +0000 (09:57 -0700)]
Only print IRT remove local warning if CheckJNI is enabled

Less spammy.

Bug: 17405090

Change-Id: Ib78d0d7bc31a88182cb9d85ddba9b469bd50324b

9 years agoam ed51747a: Merge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:23:33 +0000 (17:23 +0000)]
am ed51747a: Merge "Add synthesize uses at back edge."

* commit 'ed51747ae96a0c7fac452e95a1607200a5494b28':
  Add synthesize uses at back edge.

9 years agoam c816a9bc: am c1849c58: am 0430fc92: Merge "ART: Fix loop information after dead...
David Brazdil [Wed, 29 Apr 2015 17:17:10 +0000 (17:17 +0000)]
am c816a9bc: am c1849c58: am 0430fc92: Merge "ART: Fix loop information after dead code elimination"

* commit 'c816a9bc86696b863bac7571214b8b0554d27ec6':
  ART: Fix loop information after dead code elimination

9 years agoMerge "Add synthesize uses at back edge."
Nicolas Geoffray [Wed, 29 Apr 2015 17:10:08 +0000 (17:10 +0000)]
Merge "Add synthesize uses at back edge."

9 years agoam c1849c58: am 0430fc92: Merge "ART: Fix loop information after dead code elimination"
David Brazdil [Wed, 29 Apr 2015 17:06:11 +0000 (17:06 +0000)]
am c1849c58: am 0430fc92: Merge "ART: Fix loop information after dead code elimination"

* commit 'c1849c58ce2a35c37f19e75038e034df47815ecd':
  ART: Fix loop information after dead code elimination

9 years agoAdd synthesize uses at back edge.
Nicolas Geoffray [Tue, 21 Apr 2015 13:28:41 +0000 (14:28 +0100)]
Add synthesize uses at back edge.

This reduces the cost of linearizing the graph (hence removing
the notion of back edge). Since linear scan allocates/spills registers
based on next use, adding a use at a back edge ensures we do count
for loop uses.

Change-Id: Idaa882cb120edbdd08ca6bff142d326a8245bd14

9 years agoam 0430fc92: Merge "ART: Fix loop information after dead code elimination"
David Brazdil [Wed, 29 Apr 2015 16:51:50 +0000 (16:51 +0000)]
am 0430fc92: Merge "ART: Fix loop information after dead code elimination"

* commit '0430fc9216dddf6a6967cfffd37dfa99d73c2c68':
  ART: Fix loop information after dead code elimination

9 years agoMerge "ART: Fix loop information after dead code elimination"
David Brazdil [Wed, 29 Apr 2015 16:42:48 +0000 (16:42 +0000)]
Merge "ART: Fix loop information after dead code elimination"

9 years agoART: Fix loop information after dead code elimination
David Brazdil [Wed, 29 Apr 2015 16:16:07 +0000 (17:16 +0100)]
ART: Fix loop information after dead code elimination

Compilation failed when only some blocks of a loop were removed during
dead code elimination.

Bug: 20680703
Change-Id: If31025169ca493f0d7f7f2788576e98d05f03394

9 years agoam 27a3baf5: am 4c176ef5: am 0829d9de: Merge "Factor MoveArguments methods in Optimiz...
Roland Levillain [Wed, 29 Apr 2015 16:04:39 +0000 (16:04 +0000)]
am 27a3baf5: am 4c176ef5: am 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."

* commit '27a3baf5cd1652dbb889780893569620db04db0e':
  Factor MoveArguments methods in Optimizing's intrinsics handlers.

9 years agoam 4c176ef5: am 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrin...
Roland Levillain [Wed, 29 Apr 2015 15:51:07 +0000 (15:51 +0000)]
am 4c176ef5: am 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."

* commit '4c176ef5ecd5a28354b9f98e5bafb848b0399a63':
  Factor MoveArguments methods in Optimizing's intrinsics handlers.

9 years agoam 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."
Roland Levillain [Wed, 29 Apr 2015 15:38:43 +0000 (15:38 +0000)]
am 0829d9de: Merge "Factor MoveArguments methods in Optimizing\'s intrinsics handlers."

* commit '0829d9de97b92bcd575f4d5c1f717abf7405d8e2':
  Factor MoveArguments methods in Optimizing's intrinsics handlers.

9 years agoMerge "Factor MoveArguments methods in Optimizing's intrinsics handlers."
Roland Levillain [Wed, 29 Apr 2015 15:30:17 +0000 (15:30 +0000)]
Merge "Factor MoveArguments methods in Optimizing's intrinsics handlers."

9 years agoam eefd248c: am 40e18300: am 36ad3f1c: Merge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 15:05:43 +0000 (15:05 +0000)]
am eefd248c: am 40e18300: am 36ad3f1c: Merge "Add dependency on libbase."

* commit 'eefd248c90882966e54706cd85c3fc0c4d5d43e7':
  Add dependency on libbase.

9 years agoam 40e18300: am 36ad3f1c: Merge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 14:57:53 +0000 (14:57 +0000)]
am 40e18300: am 36ad3f1c: Merge "Add dependency on libbase."

* commit '40e183005ecf05938f27a9722f419e71bb0e4257':
  Add dependency on libbase.

9 years agoam 36ad3f1c: Merge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 14:44:43 +0000 (14:44 +0000)]
am 36ad3f1c: Merge "Add dependency on libbase."

* commit '36ad3f1c3c08a49680a8f5d34bba43199ab9dd5b':
  Add dependency on libbase.

9 years agoMerge "Add dependency on libbase."
Narayan Kamath [Wed, 29 Apr 2015 14:31:27 +0000 (14:31 +0000)]
Merge "Add dependency on libbase."

9 years agoAdd dependency on libbase.
Narayan Kamath [Tue, 28 Apr 2015 08:56:28 +0000 (09:56 +0100)]
Add dependency on libbase.

Used by the static libziparchive dependency on target.

Change-Id: Ib88dd67941f0679682bcae01346277ffe8d6df9b

9 years agoFactor MoveArguments methods in Optimizing's intrinsics handlers.
Roland Levillain [Tue, 28 Apr 2015 14:50:20 +0000 (15:50 +0100)]
Factor MoveArguments methods in Optimizing's intrinsics handlers.

Also add a precondition similar to the one present in code
generators, regarding static invoke related explicit clinit
check elimination in non-baseline compilations.

Change-Id: I26f4dcb5d02824d7556f90b4b0c85b08b737fa53

9 years agoam cad997f4: am abc574c1: am b6829c2e: Merge "Refactor InvokeDexCallingConventionVisi...
Roland Levillain [Wed, 29 Apr 2015 14:11:54 +0000 (14:11 +0000)]
am cad997f4: am abc574c1: am b6829c2e: Merge "Refactor InvokeDexCallingConventionVisitor in Optimizing."

* commit 'cad997f4b7df2bfa63e23ce77f9ec245e4af9d9c':
  Refactor InvokeDexCallingConventionVisitor in Optimizing.