OSDN Git Service

android-x86/art.git
8 years agoMerge "Special case system_server to not create the JIT code cache."
Nicolas Geoffray [Mon, 14 Dec 2015 13:04:04 +0000 (13:04 +0000)]
Merge "Special case system_server to not create the JIT code cache."

8 years agoMerge "ART: Rename ROR test to a shorter name." am: ceec5a3c81
Vladimir Marko [Mon, 14 Dec 2015 12:02:30 +0000 (04:02 -0800)]
Merge "ART: Rename ROR test to a shorter name." am: ceec5a3c81
am: d3523f2b46

* commit 'd3523f2b461a0051e511a22c731bfb388135a836':
  ART: Rename ROR test to a shorter name.

8 years agoMerge "Optimizing: Clean up after HRor." am: 70c1a8fade
Vladimir Marko [Mon, 14 Dec 2015 12:02:21 +0000 (04:02 -0800)]
Merge "Optimizing: Clean up after HRor." am: 70c1a8fade
am: 5105c18527

* commit '5105c185274bf09edaba8ce0bd5d8c1d3c203152':
  Optimizing: Clean up after HRor.

8 years agoMerge "ART: Rename ROR test to a shorter name."
Vladimir Marko [Mon, 14 Dec 2015 11:59:54 +0000 (03:59 -0800)]
Merge "ART: Rename ROR test to a shorter name."
am: ceec5a3c81

* commit 'ceec5a3c81925cf80a18954b2e585316450c575c':
  ART: Rename ROR test to a shorter name.

8 years agoMerge "ART: Rename ROR test to a shorter name."
Vladimir Marko [Mon, 14 Dec 2015 11:54:45 +0000 (11:54 +0000)]
Merge "ART: Rename ROR test to a shorter name."

8 years agoART: Rename ROR test to a shorter name.
Vladimir Marko [Mon, 14 Dec 2015 10:29:35 +0000 (10:29 +0000)]
ART: Rename ROR test to a shorter name.

Keeps the file names of test files within limits.
The new name is exactly as long as the next longest name.

Change-Id: I4bbfd4cf2aa402a436ba9a5bc9589aa8710b9c15

8 years agoMerge "Optimizing: Clean up after HRor."
Vladimir Marko [Mon, 14 Dec 2015 10:28:41 +0000 (02:28 -0800)]
Merge "Optimizing: Clean up after HRor."
am: 70c1a8fade

* commit '70c1a8fade2967453663d0ffed0f137f06555fff':
  Optimizing: Clean up after HRor.

8 years agoMerge "Optimizing: Clean up after HRor."
Vladimir Marko [Mon, 14 Dec 2015 10:24:12 +0000 (10:24 +0000)]
Merge "Optimizing: Clean up after HRor."

8 years agoMerge "Address some comments in image writer" am: 4113b97bd7
Mathieu Chartier [Sun, 13 Dec 2015 21:18:02 +0000 (13:18 -0800)]
Merge "Address some comments in image writer" am: 4113b97bd7
am: 885a570efd

* commit '885a570efd44bfa4e6ef78f7760903240af7a2ad':
  Address some comments in image writer

8 years agoMerge "Address some comments in image writer"
Mathieu Chartier [Sat, 12 Dec 2015 01:39:00 +0000 (17:39 -0800)]
Merge "Address some comments in image writer"
am: 4113b97bd7

* commit '4113b97bd738570fa28a450720cf14810a9f8292':
  Address some comments in image writer

8 years agoMerge "Address some comments in image writer"
Mathieu Chartier [Sat, 12 Dec 2015 01:34:00 +0000 (01:34 +0000)]
Merge "Address some comments in image writer"

8 years agoMerge "Fix call to LoadNativeLibrary" am: 2cab58141a
Dimitry Ivanov [Fri, 11 Dec 2015 23:11:48 +0000 (15:11 -0800)]
Merge "Fix call to LoadNativeLibrary" am: 2cab58141a
am: 846efa942a

* commit '846efa942a32a5615227660594ad287d48f03a26':
  Fix call to LoadNativeLibrary

8 years agoMerge "Fix call to LoadNativeLibrary"
Dimitry Ivanov [Fri, 11 Dec 2015 22:55:12 +0000 (14:55 -0800)]
Merge "Fix call to LoadNativeLibrary"
am: 2cab58141a

* commit '2cab58141a357749ea7c8d15b94750ffa3706e51':
  Fix call to LoadNativeLibrary

8 years agoMerge "Fix call to LoadNativeLibrary"
Dimitry Ivanov [Fri, 11 Dec 2015 22:23:52 +0000 (22:23 +0000)]
Merge "Fix call to LoadNativeLibrary"

8 years agoMerge "Merge commit '1b6dd57975aefbb28d66f0e58ecdf4abe56648b4' into manual_merge_1b6d...
Dimitry Ivanov [Fri, 11 Dec 2015 22:07:08 +0000 (22:07 +0000)]
Merge "Merge commit '1b6dd57975aefbb28d66f0e58ecdf4abe56648b4' into manual_merge_1b6dd57975"

8 years agoMerge commit '1b6dd57975aefbb28d66f0e58ecdf4abe56648b4' into manual_merge_1b6dd57975
Dimitry Ivanov [Fri, 11 Dec 2015 22:05:08 +0000 (14:05 -0800)]
Merge commit '1b6dd57975aefbb28d66f0e58ecdf4abe56648b4' into manual_merge_1b6dd57975

8 years agoFix call to LoadNativeLibrary
Dimitry Ivanov [Fri, 11 Dec 2015 22:03:09 +0000 (14:03 -0800)]
Fix call to LoadNativeLibrary

Change-Id: Ie625cdbdf18374b2a8b0adc11758aac47e603625

8 years agoPort isolated namespace changes over to OpenJdkJvm.cc
Dmitriy Ivanov [Tue, 24 Nov 2015 01:40:11 +0000 (17:40 -0800)]
Port isolated namespace changes over to OpenJdkJvm.cc

Bug: http://b/22548808
Change-Id: I6f11102e828ee5ef4b5107590c598fd0db787fe1

8 years agoUse isolated namespaces for app native libs
Dmitriy Ivanov [Wed, 11 Nov 2015 22:18:55 +0000 (14:18 -0800)]
Use isolated namespaces for app native libs

Linker namespaces provide necessary level
of isolation for application native libraries.

The native libraries will no longer be able to
mistakenly depend on platform private libraries
like /system/lib/libssl.so

This change creates one namespace for each instance
of class-loader and uses it when loading native libraries.

For backwards compatibility with older apps we keep
using default namespace and LD_LIBRARY_PATH if target
sdk version is <= 23. (currently set to 0 for testing)

Bug: http://b/22548808
Change-Id: I64e97af7450fbf7e3740ccddda96bb2f7c52e03b
(cherry picked from commit f5a3099c509cf9b8a4ce9c3073a4db47e14a23bc)

8 years agoMerge "Use isolated namespaces for app native libs"
Dimitry Ivanov [Fri, 11 Dec 2015 20:37:43 +0000 (12:37 -0800)]
Merge "Use isolated namespaces for app native libs"
am: 98d46d2d28

* commit '98d46d2d287c8081995517770392a21b4d59d2e9':
  Use isolated namespaces for app native libs

8 years agoMerge "Use isolated namespaces for app native libs"
Dimitry Ivanov [Fri, 11 Dec 2015 20:30:30 +0000 (20:30 +0000)]
Merge "Use isolated namespaces for app native libs"

8 years agoMerge "ART: Weaken dex file verifier abstract check" am: 277da370dd
Andreas Gampe [Fri, 11 Dec 2015 19:16:20 +0000 (11:16 -0800)]
Merge "ART: Weaken dex file verifier abstract check" am: 277da370dd
am: 4b273683dc

* commit '4b273683dcc6087e70e1e4f98867c55aebed6f61':
  ART: Weaken dex file verifier abstract check

8 years agoMerge "ART: Weaken dex file verifier abstract check"
Andreas Gampe [Fri, 11 Dec 2015 19:13:18 +0000 (11:13 -0800)]
Merge "ART: Weaken dex file verifier abstract check"
am: 277da370dd

* commit '277da370dd517af0d6a27bef3b86d5f259feda62':
  ART: Weaken dex file verifier abstract check

8 years agoMerge "ART: Weaken dex file verifier abstract check"
Andreas Gampe [Fri, 11 Dec 2015 19:01:41 +0000 (19:01 +0000)]
Merge "ART: Weaken dex file verifier abstract check"

8 years agoART: Weaken dex file verifier abstract check
Andreas Gampe [Fri, 11 Dec 2015 00:23:41 +0000 (16:23 -0800)]
ART: Weaken dex file verifier abstract check

We decided to not reject dex files with non-abstract classes containing
abstract methods (even though that's broken code). Just log a warning
instead.

Reported by Nikolay Serdjuk.

Bug: 26143249
Change-Id: Iaf981dba70c7c4b9c844ad9f2806278072e3ed52

8 years agoMerge "Make \'dexdump2 -l xml\' include whether each class is an interface." am:...
Alex Light [Fri, 11 Dec 2015 18:58:13 +0000 (10:58 -0800)]
Merge "Make \'dexdump2 -l xml\' include whether each class is an interface." am: 66e43b115e
am: 8247c5fd94

* commit '8247c5fd94b61e9cbfc08a2cd453b67aa5f2a444':
  Make 'dexdump2 -l xml' include whether each class is an interface.

8 years agoMerge "Make \'dexdump2 -l xml\' include whether each class is an interface."
Alex Light [Fri, 11 Dec 2015 17:34:37 +0000 (09:34 -0800)]
Merge "Make \'dexdump2 -l xml\' include whether each class is an interface."
am: 66e43b115e

* commit '66e43b115ed53512803403d25f88bb4a37590676':
  Make 'dexdump2 -l xml' include whether each class is an interface.

8 years agoMerge "Make 'dexdump2 -l xml' include whether each class is an interface."
Alex Light [Fri, 11 Dec 2015 17:25:17 +0000 (17:25 +0000)]
Merge "Make 'dexdump2 -l xml' include whether each class is an interface."

8 years agoOptimizing: Clean up after HRor.
Vladimir Marko [Fri, 11 Dec 2015 16:34:46 +0000 (16:34 +0000)]
Optimizing: Clean up after HRor.

Change-Id: I96bd7fa2e8bdccb87a3380d063dad0dd57fed9d7

8 years agoMerge "Replace rotate patterns and invokes with HRor IR." am: 58dcb021c3
Vladimir Marko [Fri, 11 Dec 2015 16:23:00 +0000 (08:23 -0800)]
Merge "Replace rotate patterns and invokes with HRor IR." am: 58dcb021c3
am: 8cd24b9ce5

* commit '8cd24b9ce515da068f459f8c6471adb2cc4a0931':
  Replace rotate patterns and invokes with HRor IR.

8 years agoMerge "Replace rotate patterns and invokes with HRor IR."
Vladimir Marko [Fri, 11 Dec 2015 16:20:21 +0000 (08:20 -0800)]
Merge "Replace rotate patterns and invokes with HRor IR."
am: 58dcb021c3

* commit '58dcb021c3bd45718d0103844f4e6d55754e6501':
  Replace rotate patterns and invokes with HRor IR.

8 years agoMerge "Replace rotate patterns and invokes with HRor IR."
Vladimir Marko [Fri, 11 Dec 2015 16:14:56 +0000 (16:14 +0000)]
Merge "Replace rotate patterns and invokes with HRor IR."

8 years agoReplace rotate patterns and invokes with HRor IR.
Scott Wakeling [Fri, 11 Dec 2015 09:50:36 +0000 (09:50 +0000)]
Replace rotate patterns and invokes with HRor IR.

Replace constant and register version bitfield rotate patterns, and
rotateRight/Left intrinsic invokes, with new HRor IR.

Where k is constant and r is a register, with the UShr and Shl on
either side of a |, +, or ^, the following patterns are replaced:

  x >>> #k OP x << #(reg_size - k)
  x >>> #k OP x << #-k

  x >>> r OP x << (#reg_size - r)
  x >>> (#reg_size - r) OP x << r

  x >>> r OP x << -r
  x >>> -r OP x << r

Implemented for ARM/ARM64 & X86/X86_64.

Tests changed to not be inlined to prevent optimization from folding
them out. Additional tests added for constant rotate amounts.

Change-Id: I5847d104c0a0348e5792be6c5072ce5090ca2c34

8 years agoSpecial case system_server to not create the JIT code cache.
Nicolas Geoffray [Fri, 11 Dec 2015 14:59:16 +0000 (14:59 +0000)]
Special case system_server to not create the JIT code cache.

Change-Id: I34485c709b0c70b8d9c34bebcf399781aebaf11b

8 years agoMerge "Revert "Enable profiled guided compilation in dex2oat"" am: 66278646b5
Calin Juravle [Fri, 11 Dec 2015 14:10:46 +0000 (06:10 -0800)]
Merge "Revert "Enable profiled guided compilation in dex2oat"" am: 66278646b5
am: f6e504d5ff

* commit 'f6e504d5ff301048f545905c01c4734f2b583713':
  Revert "Enable profiled guided compilation in dex2oat"

8 years agoMerge "Revert "Enable profiled guided compilation in dex2oat""
Calin Juravle [Fri, 11 Dec 2015 14:07:45 +0000 (06:07 -0800)]
Merge "Revert "Enable profiled guided compilation in dex2oat""
am: 66278646b5

* commit '66278646b5b332142d1474703ac7d945dfbf7c78':
  Revert "Enable profiled guided compilation in dex2oat"

8 years agoMerge "Revert "Enable profiled guided compilation in dex2oat""
Calin Juravle [Fri, 11 Dec 2015 14:01:12 +0000 (14:01 +0000)]
Merge "Revert "Enable profiled guided compilation in dex2oat""

8 years agoRevert "Enable profiled guided compilation in dex2oat"
Calin Juravle [Fri, 11 Dec 2015 14:00:52 +0000 (14:00 +0000)]
Revert "Enable profiled guided compilation in dex2oat"

The test still have some flakiness in it which didn't reproduce locally.

This reverts commit 500c9be1f261a8a95ae7a25f4f8084f43207f313.

Change-Id: I132aff62bf03c2f926aafde6869707573bae9b36

8 years agoMerge "Mark __jit_debug_register_code as a unique symbol" am: 919b6d5fc9
Tamas Berghammer [Fri, 11 Dec 2015 13:24:59 +0000 (05:24 -0800)]
Merge "Mark __jit_debug_register_code as a unique symbol" am: 919b6d5fc9
am: db20d45fc9

* commit 'db20d45fc9cf984ea43fa3ef2556257454fefd16':
  Mark __jit_debug_register_code as a unique symbol

8 years agoMerge "Mark __jit_debug_register_code as a unique symbol"
Tamas Berghammer [Fri, 11 Dec 2015 13:22:09 +0000 (05:22 -0800)]
Merge "Mark __jit_debug_register_code as a unique symbol"
am: 919b6d5fc9

* commit '919b6d5fc9b18dd7c00f5fa8eb90411b2ca8998b':
  Mark __jit_debug_register_code as a unique symbol

8 years agoMerge "Mark __jit_debug_register_code as a unique symbol"
Tamas Berghammer [Fri, 11 Dec 2015 13:16:13 +0000 (13:16 +0000)]
Merge "Mark __jit_debug_register_code as a unique symbol"

8 years agoMerge "Set DW_AT_comp_dir for each compile unit in dwarf" am: 7b000c9d9d
Tamas Berghammer [Fri, 11 Dec 2015 11:57:32 +0000 (03:57 -0800)]
Merge "Set DW_AT_comp_dir for each compile unit in dwarf" am: 7b000c9d9d
am: 8aa6495e87

* commit '8aa6495e877f93eaa652c13cf42db5a955800399':
  Set DW_AT_comp_dir for each compile unit in dwarf

8 years agoMerge "Set DW_AT_comp_dir for each compile unit in dwarf"
Tamas Berghammer [Fri, 11 Dec 2015 11:54:02 +0000 (03:54 -0800)]
Merge "Set DW_AT_comp_dir for each compile unit in dwarf"
am: 7b000c9d9d

* commit '7b000c9d9dd34f1857bcd561daf04742bbacdd76':
  Set DW_AT_comp_dir for each compile unit in dwarf

8 years agoMerge "Set DW_AT_comp_dir for each compile unit in dwarf"
Tamas Berghammer [Fri, 11 Dec 2015 11:48:00 +0000 (11:48 +0000)]
Merge "Set DW_AT_comp_dir for each compile unit in dwarf"

8 years agoMerge "Enable profiled guided compilation in dex2oat" am: a79c717fd4
Calin Juravle [Fri, 11 Dec 2015 11:45:48 +0000 (03:45 -0800)]
Merge "Enable profiled guided compilation in dex2oat" am: a79c717fd4
am: f17b1e3158

* commit 'f17b1e3158da8deec4a3df75055402d82326780b':
  Enable profiled guided compilation in dex2oat

8 years agoMerge "Don\'t generate a slow path for strings in the dex cache." am: bf479be3a9
Nicolas Geoffray [Fri, 11 Dec 2015 11:45:38 +0000 (03:45 -0800)]
Merge "Don\'t generate a slow path for strings in the dex cache." am: bf479be3a9
am: 9a1ef8c212

* commit '9a1ef8c212736b006062e69f18be77ad7bd35d56':
  Don't generate a slow path for strings in the dex cache.

8 years agoMerge "Optimizing: Add direct calls to math intrinsics" am: 376cbcc516
Nicolas Geoffray [Fri, 11 Dec 2015 11:45:28 +0000 (03:45 -0800)]
Merge "Optimizing: Add direct calls to math intrinsics" am: 376cbcc516
am: e67b966422

* commit 'e67b966422d4f42fd7e38d938b0f2ee88b096448':
  Optimizing: Add direct calls to math intrinsics

8 years agoMerge "Enable profiled guided compilation in dex2oat"
Calin Juravle [Fri, 11 Dec 2015 11:42:42 +0000 (03:42 -0800)]
Merge "Enable profiled guided compilation in dex2oat"
am: a79c717fd4

* commit 'a79c717fd4de0d7361a51bee1e3cf4f2ff5f085a':
  Enable profiled guided compilation in dex2oat

8 years agoMark __jit_debug_register_code as a unique symbol
Tamas Berghammer [Wed, 2 Sep 2015 10:24:33 +0000 (11:24 +0100)]
Mark __jit_debug_register_code as a unique symbol

This symbol is used to notify the debugger about JIT library load/unload
events. Because of ICF, several functions with the same body put to the
same adress by the linker what causes the debugger to get notifictaion
about JIT load/unload events in several case where it isn't really happened.

This change disable ICF for the __jit_debug_register_code symbol to prevent
this behavior with keeping the symbol unique in the object file.

This is the 3rd attemp to mark the __jit_debug_register_code symbol unique
as the previous 2 failed because of some confilict with unrelated changes.

Tracking bug for making the same change for aarch64 after we switch to gold
there: b/26149442

Change-Id: I6edc45f27d5e57a66fb9d98c32a081f711565810

8 years agoMerge "Enable profiled guided compilation in dex2oat"
Calin Juravle [Fri, 11 Dec 2015 11:35:23 +0000 (11:35 +0000)]
Merge "Enable profiled guided compilation in dex2oat"

8 years agoMerge "Don\'t generate a slow path for strings in the dex cache."
Nicolas Geoffray [Fri, 11 Dec 2015 09:38:32 +0000 (01:38 -0800)]
Merge "Don\'t generate a slow path for strings in the dex cache."
am: bf479be3a9

* commit 'bf479be3a9b25b2126d2c73a3267f18ee52811fb':
  Don't generate a slow path for strings in the dex cache.

8 years agoMerge "Optimizing: Add direct calls to math intrinsics"
Nicolas Geoffray [Fri, 11 Dec 2015 09:35:47 +0000 (01:35 -0800)]
Merge "Optimizing: Add direct calls to math intrinsics"
am: 376cbcc516

* commit '376cbcc5163b3bb80811b9af6b67b6f8719db9f2':
  Optimizing: Add direct calls to math intrinsics

8 years agoMerge "Don't generate a slow path for strings in the dex cache."
Nicolas Geoffray [Fri, 11 Dec 2015 09:32:54 +0000 (09:32 +0000)]
Merge "Don't generate a slow path for strings in the dex cache."

8 years agoMerge "Optimizing: Add direct calls to math intrinsics"
Nicolas Geoffray [Fri, 11 Dec 2015 09:31:08 +0000 (09:31 +0000)]
Merge "Optimizing: Add direct calls to math intrinsics"

8 years agoMerge "Skip DumpForSigQuit if debugger is active" am: b4cc884dfe
Mathieu Chartier [Fri, 11 Dec 2015 04:09:38 +0000 (20:09 -0800)]
Merge "Skip DumpForSigQuit if debugger is active" am: b4cc884dfe
am: 5cf2c6f312

* commit '5cf2c6f312ee06c76420056dfa30776ced1162a5':
  Skip DumpForSigQuit if debugger is active

8 years agoMerge "Skip DumpForSigQuit if debugger is active"
Mathieu Chartier [Fri, 11 Dec 2015 04:07:11 +0000 (20:07 -0800)]
Merge "Skip DumpForSigQuit if debugger is active"
am: b4cc884dfe

* commit 'b4cc884dfe5bb9c1a36bdfbf6a0dfa183d8d321c':
  Skip DumpForSigQuit if debugger is active

8 years agoMerge "Skip DumpForSigQuit if debugger is active"
Mathieu Chartier [Fri, 11 Dec 2015 04:01:40 +0000 (04:01 +0000)]
Merge "Skip DumpForSigQuit if debugger is active"

8 years agoSkip DumpForSigQuit if debugger is active
Mathieu Chartier [Fri, 11 Dec 2015 01:11:07 +0000 (17:11 -0800)]
Skip DumpForSigQuit if debugger is active

Otherwise, the SIGQUIT dumping may get blocked on the mutator lock
and freeze the debugger.

Future work: Ideally we want to dump what we can instead of nothing.

Bug: 26118154

(cherry picked from commit 0b8f1bfdfc721a41d98d13e12c4c67f62f698dfc)

Change-Id: I28e5352dab3b8abce0b39850e3e58282ae454b51

8 years agoMerge "Skip DumpForSigQuit if debugger is active"
Mathieu Chartier [Fri, 11 Dec 2015 01:33:34 +0000 (01:33 +0000)]
Merge "Skip DumpForSigQuit if debugger is active"

8 years agoUse isolated namespaces for app native libs
Dmitriy Ivanov [Wed, 11 Nov 2015 22:18:55 +0000 (14:18 -0800)]
Use isolated namespaces for app native libs

Linker namespaces provide necessary level
of isolation for application native libraries.

The native libraries will no longer be able to
mistakenly depend on platform private libraries
like /system/lib/libssl.so

This change creates one namespace for each instance
of class-loader and uses it when loading native libraries.

For backwards compatibility with older apps we keep
using default namespace and LD_LIBRARY_PATH if target
sdk version is <= 23. (currently set to 0 for testing)

Bug: http://b/22548808
Change-Id: I64e97af7450fbf7e3740ccddda96bb2f7c52e03b

8 years agoSkip DumpForSigQuit if debugger is active
Mathieu Chartier [Fri, 11 Dec 2015 01:11:07 +0000 (17:11 -0800)]
Skip DumpForSigQuit if debugger is active

Otherwise, the SIGQUIT dumping may get blocked on the mutator lock
and freeze the debugger.

Future work: Ideally we want to dump what we can instead of nothing.

Bug: 26118154
Change-Id: I365612a3a34ca6d3215892e6c54b649b93365c80

8 years agoMerge "For LSE, add a few non-aliasing cases due to pre-existence." am: 84623e1802
Mingyao Yang [Fri, 11 Dec 2015 01:08:38 +0000 (17:08 -0800)]
Merge "For LSE, add a few non-aliasing cases due to pre-existence." am: 84623e1802
am: 3075a13ab2

* commit '3075a13ab2158e66e89546a2f8d33d7778cc2ede':
  For LSE, add a few non-aliasing cases due to pre-existence.

8 years agoMerge "For LSE, add a few non-aliasing cases due to pre-existence."
Mingyao Yang [Fri, 11 Dec 2015 01:05:51 +0000 (17:05 -0800)]
Merge "For LSE, add a few non-aliasing cases due to pre-existence."
am: 84623e1802

* commit '84623e18021451375248af7be44dd0717e681c1f':
  For LSE, add a few non-aliasing cases due to pre-existence.

8 years agoMerge "For LSE, add a few non-aliasing cases due to pre-existence."
Mingyao Yang [Fri, 11 Dec 2015 00:57:24 +0000 (00:57 +0000)]
Merge "For LSE, add a few non-aliasing cases due to pre-existence."

8 years agoMake 'dexdump2 -l xml' include whether each class is an interface.
Alex Light [Fri, 11 Dec 2015 00:49:47 +0000 (16:49 -0800)]
Make 'dexdump2 -l xml' include whether each class is an interface.

Change-Id: Id83ef52454596ab80b16042e58ff9d00bc5fb8ed

8 years agoFor LSE, add a few non-aliasing cases due to pre-existence.
Mingyao Yang [Thu, 3 Dec 2015 22:11:15 +0000 (14:11 -0800)]
For LSE, add a few non-aliasing cases due to pre-existence.

Create reference info for a few instructions that can return a reference.
So they will be treated as not-aliasing with future allocations.

Change-Id: Ided3db790b95f8d6f1468bbf4b7f3e6d71d81eb2

8 years agoMerge "ART: Stash a resolved method late in the verifier" am: 748047de83
Andreas Gampe [Fri, 11 Dec 2015 00:01:41 +0000 (16:01 -0800)]
Merge "ART: Stash a resolved method late in the verifier" am: 748047de83
am: 682857fece

* commit '682857fece0425362c4fb55da611e7144c9ec092':
  ART: Stash a resolved method late in the verifier

8 years agoMerge "ART: Stash a resolved method late in the verifier"
Andreas Gampe [Thu, 10 Dec 2015 23:58:19 +0000 (15:58 -0800)]
Merge "ART: Stash a resolved method late in the verifier"
am: 748047de83

* commit '748047de833061466e230baf374480a147568f73':
  ART: Stash a resolved method late in the verifier

8 years agoMerge "Output static field values in dexdump" am: 1a74dc4209
Shinichiro Hamaji [Thu, 10 Dec 2015 23:56:03 +0000 (23:56 +0000)]
Merge "Output static field values in dexdump" am: 1a74dc4209
am: 99dd068563

* commit '99dd068563bbd460f5ba8c81249e6e55e794de5e':
  Output static field values in dexdump

8 years agoMerge "Revert "ART: Check invoke-interface earlier in verifier"" am: 170e01a6b5
Andreas Gampe [Thu, 10 Dec 2015 23:55:53 +0000 (23:55 +0000)]
Merge "Revert "ART: Check invoke-interface earlier in verifier"" am: 170e01a6b5
am: 2b895fd833

* commit '2b895fd83371fb1a0cd75c7de3411cfb59f442c6':
  Revert "ART: Check invoke-interface earlier in verifier"

8 years agoMerge "ART: Refactor verifier callbacks" am: 34760f9a97
Andreas Gampe [Thu, 10 Dec 2015 23:55:43 +0000 (23:55 +0000)]
Merge "ART: Refactor verifier callbacks" am: 34760f9a97
am: 6e0e9c77b0

* commit '6e0e9c77b0b6109605eef6e5ea2c2b3de30a6ffc':
  ART: Refactor verifier callbacks

8 years agoMerge "Refactor and clean up OatWriter and Dex2Oat." am: a1b21219db
Vladimir Marko [Thu, 10 Dec 2015 23:55:34 +0000 (23:55 +0000)]
Merge "Refactor and clean up OatWriter and Dex2Oat." am: a1b21219db
am: c8d821593b

* commit 'c8d821593b753bd39c71fbf091ceaf14dd962f9f':
  Refactor and clean up OatWriter and Dex2Oat.

8 years agoMerge "Revert "Revert "Add support for LZ4 compressed image files""" am: 840d22928c
Mathieu Chartier [Thu, 10 Dec 2015 23:55:25 +0000 (23:55 +0000)]
Merge "Revert "Revert "Add support for LZ4 compressed image files""" am: 840d22928c
am: c46ecf59ba

* commit 'c46ecf59ba43e38b2b819e0b4322d62edd8e24d3':
  Revert "Revert "Add support for LZ4 compressed image files""

8 years agoMerge "Get source mapping table from stack maps." am: 836ee764c8
David Srbecky [Thu, 10 Dec 2015 23:55:15 +0000 (23:55 +0000)]
Merge "Get source mapping table from stack maps." am: 836ee764c8
am: 88d5d0c8fa

* commit '88d5d0c8fa8dbbfa3668088faa9069685b01e06a':
  Get source mapping table from stack maps.

8 years agoMerge "Output static field values in dexdump"
Shinichiro Hamaji [Thu, 10 Dec 2015 23:52:14 +0000 (15:52 -0800)]
Merge "Output static field values in dexdump"
am: 1a74dc4209

* commit '1a74dc42099bd1ea4583edabef42b5a4d6f70389':
  Output static field values in dexdump

8 years agoMerge "ART: Stash a resolved method late in the verifier"
Andreas Gampe [Thu, 10 Dec 2015 23:50:11 +0000 (23:50 +0000)]
Merge "ART: Stash a resolved method late in the verifier"

8 years agoMerge "Output static field values in dexdump"
Shinichiro Hamaji [Thu, 10 Dec 2015 23:45:02 +0000 (23:45 +0000)]
Merge "Output static field values in dexdump"

8 years agoART: Stash a resolved method late in the verifier
Andreas Gampe [Fri, 4 Dec 2015 01:27:32 +0000 (17:27 -0800)]
ART: Stash a resolved method late in the verifier

Invoke-interface should only be called on an interface method.
We cannot move the check earlier, as there are other checks
that must be done that can fail a class hard. So postpone
a push to the dex cache.

Clean up the test a bit.

Also templatize ResolveMethod with a version always checking
the invoke type, and on a cache miss check whether type target
type is an interface when an interface invoke type was given.

Bug: 21869691
Change-Id: I94cbb23339cbbb3cb6be9995775e4dcefacce7fd

8 years agoMerge "Revert "ART: Check invoke-interface earlier in verifier""
Andreas Gampe [Thu, 10 Dec 2015 21:37:39 +0000 (13:37 -0800)]
Merge "Revert "ART: Check invoke-interface earlier in verifier""
am: 170e01a6b5

* commit '170e01a6b59b3242a5afc76c3a03c00ce288150f':
  Revert "ART: Check invoke-interface earlier in verifier"

8 years agoMerge "Revert "ART: Check invoke-interface earlier in verifier""
Andreas Gampe [Thu, 10 Dec 2015 21:28:58 +0000 (21:28 +0000)]
Merge "Revert "ART: Check invoke-interface earlier in verifier""

8 years agoRevert "ART: Check invoke-interface earlier in verifier"
Andreas Gampe [Thu, 10 Dec 2015 21:25:27 +0000 (13:25 -0800)]
Revert "ART: Check invoke-interface earlier in verifier"

This reverts commit dae24142127c64551142a50423085aabdb0a6060.

It is important to check the name of the method being called.

Bug: 21869691

8 years agoAddress some comments in image writer
Mathieu Chartier [Wed, 9 Dec 2015 23:41:09 +0000 (15:41 -0800)]
Address some comments in image writer

Change-Id: I74c3192d595dc8b86d6ce3e3ca3bb32cce61872c

8 years agoMerge "ART: Refactor verifier callbacks"
Andreas Gampe [Thu, 10 Dec 2015 20:57:56 +0000 (12:57 -0800)]
Merge "ART: Refactor verifier callbacks"
am: 34760f9a97

* commit '34760f9a97e6a1733edfca1b13199f749106a30f':
  ART: Refactor verifier callbacks

8 years agoMerge "ART: Refactor verifier callbacks"
Andreas Gampe [Thu, 10 Dec 2015 20:50:26 +0000 (20:50 +0000)]
Merge "ART: Refactor verifier callbacks"

8 years agoMerge "Refactor and clean up OatWriter and Dex2Oat."
Vladimir Marko [Thu, 10 Dec 2015 20:36:44 +0000 (12:36 -0800)]
Merge "Refactor and clean up OatWriter and Dex2Oat."
am: a1b21219db

* commit 'a1b21219dbed80f8812611968b624ba8644781e3':
  Refactor and clean up OatWriter and Dex2Oat.

8 years agoMerge "Refactor and clean up OatWriter and Dex2Oat."
Vladimir Marko [Thu, 10 Dec 2015 20:29:25 +0000 (20:29 +0000)]
Merge "Refactor and clean up OatWriter and Dex2Oat."

8 years agoRefactor and clean up OatWriter and Dex2Oat.
Vladimir Marko [Thu, 10 Dec 2015 13:49:19 +0000 (13:49 +0000)]
Refactor and clean up OatWriter and Dex2Oat.

This is in preparation for early writing of dex files
to oat file.

Change-Id: I31195f3c94eb8ff676c600c60bd35ae531f457b4

8 years agoMerge "Revert "Revert "Add support for LZ4 compressed image files"""
Mathieu Chartier [Thu, 10 Dec 2015 19:24:38 +0000 (11:24 -0800)]
Merge "Revert "Revert "Add support for LZ4 compressed image files"""
am: 840d22928c

* commit '840d22928c09bf373c8f559171fdba3f7448345e':
  Revert "Revert "Add support for LZ4 compressed image files""

8 years agoMerge "Revert "Revert "Add support for LZ4 compressed image files"""
Mathieu Chartier [Thu, 10 Dec 2015 19:16:31 +0000 (19:16 +0000)]
Merge "Revert "Revert "Add support for LZ4 compressed image files"""

8 years agoRevert "Revert "Add support for LZ4 compressed image files""
Mathieu Chartier [Thu, 10 Dec 2015 17:33:21 +0000 (09:33 -0800)]
Revert "Revert "Add support for LZ4 compressed image files""

Needed to call compiler_driver_->SetSupportBootImageFixup(false).

Bug: 22858531

This reverts commit 83d4d72aa0e4170209ab50c67ba22e46b71352c1.

Change-Id: Iaed6a810a0c088f1f2c57cf2f12087f3978a3de1

8 years agoOptimizing: Add direct calls to math intrinsics
Mark Mendell [Thu, 6 Aug 2015 19:23:34 +0000 (15:23 -0400)]
Optimizing: Add direct calls to math intrinsics

Support the double forms of:
  cos, sin, acos, asin, atan, atan2, cbrt, cosh, exp, expm1,
  hypot, log, log10, nextAfter, sinh, tan, tanh

Add these entries to the vector addressed off the thread pointer. Call
the libc routines directly, which means that we have to implement the
native ABI, not the ART one. For x86_64, that includes saving XMM12-15
as the native ABI considers them caller-save, while the ART ABI
considers them callee-save.  We save them by marking them as used by the
call to the math function.  For x86, this is not an issue, as all the XMM
registers are caller-save.

Other architectures will call Java as before until they are ready to
implement the new intrinsics.

Bump the OAT version since we are incompatible with old boot.oat files.

Change-Id: Ic6332c3555c09393a17d1ad4daf62932488722fb
Signed-off-by: Mark Mendell <mark.p.mendell@intel.com>
8 years agoEnable profiled guided compilation in dex2oat
Calin Juravle [Wed, 25 Nov 2015 15:59:14 +0000 (15:59 +0000)]
Enable profiled guided compilation in dex2oat

- add parsing of the profile info saved during JIT.
- don't compile methods which are not part of the profile info.
- delete old profile hooks.
- add test for reading/writing profile. The test is disable in:
   * interpreter modes: the test needs JIT.
   * no-dex2oat/no-prebuild: we only save profiling info for the primary
     oat file. In these modes we don't create oat files and thus nothing
     is saved.

Bug:26080105

Change-Id: Ifdc63dc9d4b537fc79e54c3edc3ae3a462bc30fb

8 years agoMerge "Get source mapping table from stack maps."
David Srbecky [Thu, 10 Dec 2015 16:48:24 +0000 (16:48 +0000)]
Merge "Get source mapping table from stack maps."
am: 836ee764c8

* commit '836ee764c86892aff1dca6b0f8b27e32c7374cc7':
  Get source mapping table from stack maps.

8 years agoDon't generate a slow path for strings in the dex cache.
Nicolas Geoffray [Tue, 24 Nov 2015 18:25:35 +0000 (18:25 +0000)]
Don't generate a slow path for strings in the dex cache.

Change-Id: I1d258f1a89bf0ec7c7ddd134be9215d480f0b09a

8 years agoMerge "Get source mapping table from stack maps."
David Srbecky [Thu, 10 Dec 2015 16:42:55 +0000 (16:42 +0000)]
Merge "Get source mapping table from stack maps."

8 years agoGet source mapping table from stack maps.
David Srbecky [Tue, 8 Dec 2015 15:05:08 +0000 (15:05 +0000)]
Get source mapping table from stack maps.

Stack maps contain pc to dex mapping.
Reuse them instead of maintaining separate map.

Change-Id: Iaaec9a6bd2603eace1dfc8f4344087883d88cce3

8 years agoMerge "Fix braino when resolving an invoke-super." am: d48015603a
Nicolas Geoffray [Thu, 10 Dec 2015 15:47:45 +0000 (15:47 +0000)]
Merge "Fix braino when resolving an invoke-super." am: d48015603a
am: 0fc16a2702

* commit '0fc16a2702bc5193fb61320be79f513cf0c64838':
  Fix braino when resolving an invoke-super.

8 years agoMerge "Fix braino when resolving an invoke-super."
Nicolas Geoffray [Thu, 10 Dec 2015 15:44:55 +0000 (07:44 -0800)]
Merge "Fix braino when resolving an invoke-super."
am: d48015603a

* commit 'd48015603a54b820d287d92709825765159615f0':
  Fix braino when resolving an invoke-super.

8 years agoMerge "Fix braino when resolving an invoke-super."
Nicolas Geoffray [Thu, 10 Dec 2015 15:40:55 +0000 (15:40 +0000)]
Merge "Fix braino when resolving an invoke-super."

8 years agoFix braino when resolving an invoke-super.
Nicolas Geoffray [Thu, 10 Dec 2015 15:06:15 +0000 (15:06 +0000)]
Fix braino when resolving an invoke-super.

We should check the actual_method, and not the resolved_method,
on whether it is in the same dex file.

bug:26022686

Change-Id: I8a9b0c68e162015e0aec397545d0607482949967