Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
342 commits
Select commit Hold shift + click to select a range
40fc2a8
Quick compiler: aarch64 codegen & long_min literal
Sep 26, 2014
ec28221
merge in lmp-mr1-release history after reset to 0b460270d354d0f3a5839…
Sep 27, 2014
e589f27
merge in lmp-mr1-release history after reset to 0b460270d354d0f3a5839…
Sep 28, 2014
8c550e5
merge in lmp-release history after reset to 11c48fe8c541753b57f5770e5…
Sep 28, 2014
b6d5be8
merge in lmp-mr1-release history after reset to 9ac41142b3561a73339de…
Sep 29, 2014
4b52207
merge in lmp-release history after reset to 6d031046eeb5e9f62b657df06…
Sep 29, 2014
aba5c57
merge in lmp-mr1-release history after reset to 9ac41142b3561a73339de…
Sep 30, 2014
e22a4c2
merge in lmp-release history after reset to 6d031046eeb5e9f62b657df06…
Sep 30, 2014
2a225b6
merge in lmp-mr1-release history after reset to 9ac41142b3561a73339de…
Oct 1, 2014
d26bfdc
merge in lmp-release history after reset to 95a935415d44903b28326424b…
Oct 1, 2014
6edfe1a
merge in lmp-release history after reset to lmp-dev
Oct 2, 2014
cf070bd
merge in lmp-mr1-release history after reset to 2dfff04d5d072e9127347…
Oct 2, 2014
b09cbb8
merge in lmp-mr1-release history after reset to 7af1b97fb05906b8a4ec2…
Oct 4, 2014
f69f19c
merge in lmp-mr1-release history after reset to 7af1b97fb05906b8a4ec2…
Oct 5, 2014
73a170e
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 5, 2014
65f53e0
merge in lmp-mr1-release history after reset to 7af1b97fb05906b8a4ec2…
Oct 6, 2014
d211f52
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 6, 2014
497bb62
merge in lmp-mr1-release history after reset to 7af1b97fb05906b8a4ec2…
Oct 7, 2014
ab425fb
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 7, 2014
80d7f17
merge in lmp-mr1-release history after reset to 21b45c88759f04a178e6e…
Oct 8, 2014
66deb44
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 8, 2014
d0bd8d8
merge in lmp-mr1-release history after reset to 21b45c88759f04a178e6e…
Oct 9, 2014
8d63bc3
merge in lmp-release history after reset to b6404fe0bb782cbbccda88903…
Oct 9, 2014
c4b2f16
Don't call dlsym from signal context in signal chain
Sep 16, 2014
6c8c3bf
merge in lmp-mr1-release history after reset to 523cd7f94f80473e4541e…
Oct 11, 2014
35feeb4
merge in lmp-mr1-release history after reset to 523cd7f94f80473e4541e…
Oct 12, 2014
c266d29
merge in lmp-release history after reset to a4fee49a5023a3cf843159795…
Oct 12, 2014
531a158
merge in lmp-mr1-release history after reset to 93961dcd6a53bc49e5e93…
Oct 13, 2014
2cf26f3
merge in lmp-release history after reset to a4fee49a5023a3cf843159795…
Oct 13, 2014
bd6ac33
merge in lmp-mr1-release history after reset to 93961dcd6a53bc49e5e93…
Oct 14, 2014
98b5fb5
merge in lmp-release history after reset to 5d1c1bbd4c8a1727027d0ae69…
Oct 14, 2014
a726e35
merge in lmp-mr1-release history after reset to 01aec97677b3576e3b14c…
Oct 15, 2014
a61dcfb
merge in lmp-release history after reset to c54e12a413e16f90526318f1f…
Oct 15, 2014
b670d8e
merge in lmp-mr1-release history after reset to a70c14a4e0d287b409f6c…
Oct 16, 2014
f49c1fc
merge in lmp-release history after reset to edfc4ca2c8e1de6a1d42700cc…
Oct 16, 2014
d254c2b
Add way to ensure we are at the front of the sigaction chain
Oct 15, 2014
c8e800a
merge in lmp-mr1-release history after reset to 1ec2f1dc2c16559ae07d1…
Oct 18, 2014
f388614
merge in lmp-mr1-release history after reset to 1ec2f1dc2c16559ae07d1…
Oct 19, 2014
f90e2ec
merge in lmp-release history after reset to 1f24296c7c8a6501ee2388c0d…
Oct 20, 2014
a7e20fa
merge in lmp-mr1-release history after reset to 1ec2f1dc2c16559ae07d1…
Oct 20, 2014
98e7d00
merge in lmp-mr1-release history after reset to f4450a359a08c09b88cb6…
Oct 21, 2014
b265c9d
merge in lmp-release history after reset to 1f24296c7c8a6501ee2388c0d…
Oct 21, 2014
daee5eb
merge in lmp-release history after reset to 1f24296c7c8a6501ee2388c0d…
Oct 22, 2014
974a144
merge in lmp-mr1-release history after reset to 3bd08d5de1120b6488c4c…
Oct 22, 2014
0c3fae0
merge in lmp-mr1-release history after reset to 96664adff10fcfe2328ff…
Oct 23, 2014
1156630
merge in lmp-mr1-release history after reset to 506794738de41db046a80…
Oct 25, 2014
ff13e67
merge in lmp-mr1-release history after reset to 506794738de41db046a80…
Oct 26, 2014
8176c74
merge in lmp-mr1-release history after reset to 506794738de41db046a80…
Oct 27, 2014
02ccfa4
Remove boot.art/boot.oat on failure to create
bdcgoogle Oct 27, 2014
3a5d099
merge in lmp-mr1-release history after reset to 74dc0bee276f836f63be7…
Oct 28, 2014
a33d644
merge in lmp-mr1-release history after reset to f13e6d8243caaacba5f4b…
Oct 29, 2014
020110b
ART: Fix ImageSpace error message.
agampe Oct 25, 2014
e016182
Work around relocated boot.oat corruption
bdcgoogle Oct 28, 2014
0d7ccb2
merge in lmp-mr1-release history after reset to 3613c2a336fad67136365…
Oct 30, 2014
8db4a40
Fix FindDeclaredVirtualMethod(DexCache...) for miranda methods
bdcgoogle Oct 31, 2014
703ddaa
merge in lmp-mr1-release history after reset to 7d7b143480b48a0f81a29…
Nov 1, 2014
29f41aa
merge in lmp-mr1-release history after reset to 22c84690dba1c02b4f9fd…
Nov 2, 2014
1868288
merge in lmp-mr1-release history after reset to 22c84690dba1c02b4f9fd…
Nov 3, 2014
9364a23
merge in lmp-mr1-release history after reset to 471ee4410de01d2960e78…
Nov 4, 2014
f8e82d4
ART Extension
Aug 11, 2014
07b8211
ART: minor bugfix
Sep 4, 2014
2fc46c3
setting RLIMIT to INFINITY.
Sep 3, 2014
a9df257
more ART Extension
Sep 30, 2014
2b2a6ec
merge in lmp-mr1-release history after reset to 1d0611c7e6721bd9115d6…
Nov 5, 2014
1187ff2
merge in lmp-mr1-release history after reset to 1d0611c7e6721bd9115d6…
Nov 6, 2014
2dfcc6e
merge in lmp-release history after reset to lmp-dev
Nov 6, 2014
73b774e
merge in lmp-release history after reset to lmp-dev
Nov 7, 2014
9356899
merge in lmp-mr1-release history after reset to 90534189da43d03b45b3a…
Nov 8, 2014
8065afc
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 9, 2014
2566bfb
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 10, 2014
7768174
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 11, 2014
a047ad4
Fix thread priorities for unstarted threads.
narayank Oct 7, 2014
8e3f8b6
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 12, 2014
dd1e0f8
Fix bad OOM check in Thread::CreatePeer().
vmarko Nov 12, 2014
66d4cd1
Merge "Fix thread priorities for unstarted threads."
Nov 12, 2014
4a71d73
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 13, 2014
4c3f0d4
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 17, 2014
ca45725
Fix LinkFieldsComparator.
vmarko Nov 12, 2014
a8d6729
Fix ordering of fields with the same name.
vmarko Nov 17, 2014
ce9adc8
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 18, 2014
c7e377f
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 19, 2014
46d7aae
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 20, 2014
1b5b055
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 24, 2014
e03e976
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Nov 27, 2014
8d0b059
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 1, 2014
d4aa21c
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 2, 2014
37a21e5
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 3, 2014
afbc27a
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 4, 2014
640c508
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 8, 2014
9be870d
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 9, 2014
1039bf2
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 10, 2014
8a483aa
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 11, 2014
38078c6
ART: More ELF and oat file safety measures
agampe Dec 11, 2014
a1e6d9a
Increase default allocation stack size
Dec 11, 2014
f4af11f
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 22, 2014
9142818
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Dec 23, 2014
7dedb77
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 2, 2015
6ae5199
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 3, 2015
7dbe0ed
Merge tag 'android-5.0.2_r1' into merge_branch
Jan 6, 2015
377879c
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 7, 2015
580d051
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 7, 2015
0037738
Dump mutator lock for thread suspend timeout
Oct 8, 2014
ebe845f
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 12, 2015
ed5e98e
Merge "Merge tag 'android-5.0.2_r1' into merge_branch"
Jan 13, 2015
4704925
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 14, 2015
b03a273
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 15, 2015
c48a1aa
Merge "Dump mutator lock for thread suspend timeout"
Jan 16, 2015
61bd3ed
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 16, 2015
095455d
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 19, 2015
3228d7e
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 22, 2015
7476d6f
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 26, 2015
4e33a26
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 26, 2015
04699fd
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 27, 2015
3a93224
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 28, 2015
754e904
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Jan 29, 2015
2ddd5ae
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Jan 29, 2015
b2250a0
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Feb 2, 2015
4325eec
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Feb 3, 2015
c0bcde9
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Feb 9, 2015
e1db521
[Xposed] Disable host build
rovo89 Nov 6, 2014
3a33cca
[Xposed] Make dex2oat capable of recompiling .oat/.odex files
rovo89 Nov 9, 2014
8b13ecf
[Xposed] Store an Xposed-specific version in the oat file header
rovo89 Nov 9, 2014
fbba330
[Xposed] Force recompilation of .oat files with Xposed
rovo89 Nov 9, 2014
0c9ba3a
[Xposed] Force recompilation of the boot image with Xposed
rovo89 Nov 9, 2014
47257bd
[Xposed] Introduce dummy method access flags
rovo89 Nov 16, 2014
384513b
[Xposed] Invocation handler for hooked methods
rovo89 Nov 9, 2014
31b8ff8
[Xposed] Add a method to place the hook for a method
rovo89 Nov 16, 2014
2b65a9c
[Xposed] Optional target size for Object.Clone()
rovo89 Nov 9, 2014
5f70203
Add a --method-filter option to oatdump.
Nov 12, 2014
c6117a3
[Xposed] Disable direct branching optimization
rovo89 Dec 7, 2014
ec49e88
[Xposed] Special logging function/flag
rovo89 Feb 9, 2015
170ecf5
merge in lmp-mr1-release history after reset to lmp-mr1-dev
Feb 11, 2015
e65a58b
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Feb 11, 2015
46cbd7a
ART: clean up compiler data
Jan 23, 2015
72e9975
[Xposed] Don't crash for dex files without extension
rovo89 Feb 12, 2015
a06096b
merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
Feb 16, 2015
e08da94
Merge "ART: clean up compiler data"
Feb 25, 2015
d586da3
[Xposed] Disable method inlining
rovo89 Mar 8, 2015
4973218
Merge tag 'android-5.1.0_r1' into HEAD
Mar 10, 2015
cbab964
Merge tag 'AU_LINUX_ANDROID_LA.BF64.1.2.1_RB2.05.00.02.081.002' into …
Mar 11, 2015
aef7a4b
Merge "Merge tag 'AU_LINUX_ANDROID_LA.BF64.1.2.1_RB2.05.00.02.081.002…
Mar 13, 2015
ad04055
Merge tag 'AU_LINUX_ANDROID_LA.BF64.1.2.1.05.00.02.066.045' into HEAD
Mar 13, 2015
6c38425
Merge AU_LINUX_ANDROID_LA.BF64.1.2.1_RB2.05.01.00.081.006 on remote b…
Mar 20, 2015
88029fd
Merge tag 'android-5.1.0_r1' of https://android.googlesource.com/plat…
romracer Mar 23, 2015
1dcbe0a
Xposed: Use C++-style casts instead of C-style
romracer Mar 23, 2015
9c9132f
Xposed: Duplicate function definition
romracer Mar 23, 2015
2843068
Xposed: OatFile::Open function signature has changed
romracer Mar 23, 2015
cb71712
Xposed: Linting cleanup
romracer Mar 23, 2015
6455e77
art: Update QC-PERF board flag to TARGET_HAVE_QC_PERF
Nov 8, 2014
4880c1b
libsigchain: Fix OSX compilation
chub Jan 9, 2015
5c8b65b
Xposed: Move IsProxyMethod() to match upstream
romracer Apr 1, 2015
8bde231
Xposed: Fix mis-merge from android-5.1.0_r1
romracer Apr 1, 2015
928bcff
Revert "Support proxy method in StackVisitor::GetThisObject"
romracer Apr 15, 2015
2c7a0d6
Revert "Remove method verification results right after compiling a me…
romracer Apr 17, 2015
87833d8
ART: patchoat gets gzip support for compressed odex files
Mar 19, 2015
f25a226
ART: prevent patchoat from symlinking with dummy files
Mar 20, 2015
55b5e0b
[Xposed] Close .oat files after reading their header
rovo89 Apr 30, 2015
9aec5e8
Revert "Revert "Remove method verification results right after compil…
romracer May 1, 2015
932bb7c
Revert "Revert "Support proxy method in StackVisitor::GetThisObject""
romracer May 1, 2015
fd4e34f
Merge pull request #1 from rovo89/xposed-lollipop
romracer May 1, 2015
c5ff6b0
Merge branch 'xposed-lollipop' of github.com:romracer/android_art int…
romracer May 1, 2015
893a91f
[Xposed] don't get proxy interface method for xposed hooked method
C3C0 May 14, 2015
f74f12d
[Xposed] don't do artQuickGetProxyThisObject on xposed hooked method
C3C0 May 14, 2015
e845ea3
Merge branch 'xposed-lollipop-5.1' of github.com:C3C0/android_art int…
romracer May 14, 2015
47e066e
AArch64: Addressing Cortex-A53 erratum 835769.
mfncharm Oct 27, 2014
1e14008
AArch64: Fix incorrect use of preceding LIR.
Dec 10, 2014
be62737
Revert "AArch64: Fix incorrect use of preceding LIR."
rmcc May 20, 2015
e6f0887
ART: patchoat gets gzip support for compressed odex files
Mar 19, 2015
597b0b8
ART: prevent patchoat from symlinking with dummy files
Mar 20, 2015
9514788
Allow skipping of dalvik cache pruning if boot marker is in place.
chirayudesai Jun 3, 2015
5184a05
[Xposed] Don't reuse open oat files from Zygote
rovo89 Jun 4, 2015
b86014f
Fix thread priorities for unstarted threads.
narayank Oct 7, 2014
345f1a7
Mute common case DexFile.isDexOptNeeded log spam
bdcgoogle Jan 6, 2015
afd9bd1
[Xposed] Ignore unknown arguments and option values
rovo89 Jun 5, 2015
c99431b
[Xposed] Don't include make files for tests
rovo89 Jun 6, 2015
b24d238
[Xposed] Fix oatdump crash
rovo89 Jun 6, 2015
6191536
Revert "[Xposed] don't do artQuickGetProxyThisObject on xposed hooked…
C3C0 Jun 9, 2015
a74b45d
[Xposed] Don't reuse open oat files from Zygote
rovo89 Jun 4, 2015
c10f139
[Xposed] Ignore unknown arguments and option values
rovo89 Jun 5, 2015
ebfb5b7
ART: patchoat gets gzip support for compressed odex files
Mar 19, 2015
92be051
ART: prevent patchoat from symlinking with dummy files
Mar 20, 2015
1895202
[Xposed] Don't make original methods private
rovo89 Jun 10, 2015
a0f714a
Fixed ArtMethod::GetQuickFrameInfo() for proxy methods
mihalyid Oct 10, 2014
70db322
Support proxy method in StackVisitor::GetThisObject
Nov 25, 2014
5be00d0
[Xposed] Debugger fixes
rovo89 Jun 12, 2015
e77de67
[Xposed] Mark methods hooked by Xposed in traces
rovo89 Jun 12, 2015
fd063c9
[Xposed] Enable hooks for native methods
rovo89 Jun 12, 2015
9655eef
[Xposed] Minor (style) corrections
rovo89 Jun 12, 2015
9cddb53
[Xposed] Don't include make files for tests
rovo89 Jun 6, 2015
a50fcdc
[Xposed] Fix oatdump crash
rovo89 Jun 6, 2015
efafd9a
[Xposed] Don't make original methods private
rovo89 Jun 10, 2015
6523b89
Fixed ArtMethod::GetQuickFrameInfo() for proxy methods
mihalyid Oct 10, 2014
97aa9e1
[Xposed] Debugger fixes
rovo89 Jun 12, 2015
0e5d894
[Xposed] Mark methods hooked by Xposed in traces
rovo89 Jun 12, 2015
169b6ac
[Xposed] Enable hooks for native methods
rovo89 Jun 12, 2015
9b40b1a
[Xposed] Minor (style) corrections
rovo89 Jun 12, 2015
e29f4d0
dex2oat: minor cleanup
romracer Jun 26, 2015
9082bb6
Merge branch 'xposed-lollipop-5.1' of github.com:C3C0/android_art int…
romracer Jun 26, 2015
5f4bc91
Fix registering of hooked native methods through AndroidRuntime::regi…
mh0rst Jun 28, 2015
2b5e613
Merge branch 'xposed-lollipop' of github.com:rovo89/android_art into …
romracer Jun 28, 2015
840d0c4
Merge remote-tracking branch 'cyanogenmod/cm-12.1' into samsung-lolli…
arter97 Jul 8, 2015
837e87a
Implement String.clear() to the runtime
arter97 May 20, 2015
380b6f9
Revert "[Xposed] Ignore unknown arguments and option values"
arter97 Jul 7, 2015
ab00611
oattools: skip unknown arguments
arter97 May 20, 2015
8bf642a
runtime: skip unknown arguments #2
arter97 May 25, 2015
91b1a27
Add clamp growth limit
Jan 8, 2015
c4a9ec0
ART: Fix CFI annotation in arm64, x86 and x86-64 assembly
agampe Jun 27, 2015
3444487
ART: Use kBadFprBase on mips64 and arm64.
vmarko May 27, 2015
2a2dec1
Fix instrumentation exit stub for arm64
May 5, 2015
de3f7f4
Disable clang optimization to boot up on arm64.
chih-hung Jan 30, 2015
77f8a14
ART: Fix arm64 backend
agampe Jan 21, 2015
b4c17e7
Quick: Fix arm64 AGET/APUT to use 32-bit index.
vmarko Nov 7, 2014
d07021b
AArch64: Addressing Cortex-A53 erratum 835769.
mfncharm Oct 27, 2014
c5d9beb
AArch64: Fix incorrect use of preceding LIR.
Dec 10, 2014
cf4003c
Force building art with clang
Nov 24, 2014
913010c
Revert "Revert "AArch64: Fix incorrect use of preceding LIR.""
Jul 13, 2015
1782e2d
Improve dalvik cache pruning
chirayudesai Jul 9, 2015
d29a19e
Merge remote-tracking branch 'cyanogenmod/cm-12.1' into samsung-lolli…
arter97 Jul 23, 2015
38baee9
Merge tag 'android-5.1.1_r8' into samsung-lollipop-5.1
arter97 Jul 23, 2015
4c1d73c
[Xposed] Fix a few debug checks
rovo89 Jul 20, 2015
92aefe0
Quick compiler: handle embedded switch data.
Nov 25, 2014
c2f1244
[Xposed] Make input oat file writable (in memory) for dex2oat
rovo89 Jul 21, 2015
cfb9458
ART: Fix verifier fail message.
Aug 15, 2014
5fdc01a
ART: Do not abort on most verifier failures
agampe Oct 28, 2014
915ec8a
ART: Fix possible soft+hard failure in verifier
agampe Oct 21, 2014
0033d5a
Fix verifier bug caused by confusing ArtMethod::IsDirect vs ArtMethod…
bdcgoogle Dec 10, 2014
c867d4b
[Xposed] Ignore invoke-virtual-quick verification errors in <clinit>
rovo89 Jul 26, 2015
652a3d0
Merge branch 'xposed-lollipop' of github.com:rovo89/android_art into …
romracer Jul 27, 2015
31df113
[Xposed] Support for LG Almond encrypted apps
rovo89 Aug 2, 2015
d787dfc
Merge branch 'xposed-lollipop' of github.com:rovo89/android_art into …
romracer Aug 4, 2015
cab8cec
ART: Tuning compiler thread count for application runtime
Jul 10, 2015
30e0b13
Merge remote-tracking branch 'romracer/xposed-lollipop' into samsung-…
arter97 Aug 7, 2015
b5d32b6
Revert "[Xposed] Support for LG Almond encrypted apps"
arter97 Aug 7, 2015
8020cbc
Revert "[Xposed] Support for LG Almond encrypted apps"
rovo89 Aug 7, 2015
3785207
[Xposed] Support for LG Almond encrypted apps (2nd attempt)
rovo89 Aug 7, 2015
0e64aea
Merge branch 'xposed-lollipop' of github.com:rovo89/android_art into …
romracer Aug 8, 2015
7a50b38
Revert "Force building art with clang"
arter97 Aug 7, 2015
dbddae0
ART: Ignore result for exception-case JNIEndWithReference
agampe Apr 11, 2015
84b8b4e
[Xposed] Disable accessing TypedArray subclass fields via offset
rovo89 Aug 16, 2015
ce8ace7
Merge branch 'xposed-lollipop' of github.com:rovo89/android_art into …
romracer Aug 16, 2015
f668c7e
Merge remote-tracking branch 'romracer/xposed-lollipop' into samsung-…
arter97 Aug 18, 2015
d010354
Merge remote-tracking branch 'cyanogenmod/cm-12.1' into samsung-lolli…
arter97 Aug 18, 2015
111109b
Fix oatdump build
arter97 Aug 18, 2015
a48946a
Revert "Add clamp growth limit"
arter97 Aug 29, 2015
479821f
samsung: add TW Roms checker
rovo89 Aug 28, 2015
38149c0
samsung: oat_file - adjust methods_offsets_pointer to point
rovo89 Aug 28, 2015
06eea3c
Revert "Implement String.clear() to the runtime"
wanam Aug 28, 2015
f51c9f0
samsung: increase String VTableLenght
rovo89 Aug 28, 2015
71146e0
samsung: adjust dexcache offsets to support 2 new fileds
rovo89 Aug 28, 2015
d2c136c
samsung: runtime - add samsung native methods
rovo89 Aug 28, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,8 @@ ifdef TARGET_2ND_ARCH
ART_TARGET_DEPENDENCIES += $(2ND_TARGET_OUT_SHARED_LIBRARIES)/libjavacore.so
endif

ifdef DISABLED_FOR_XPOSED

########################################################################
# test rules

Expand Down Expand Up @@ -290,6 +292,8 @@ test-art-target-interpreter$(2ND_ART_PHONY_TEST_TARGET_SUFFIX): test-art-target-
$(hide) $(call ART_TEST_PREREQ_FINISHED,$@)
endif

endif # DISABLED_FOR_XPOSED

########################################################################
# oat-target and oat-target-sync rules

Expand Down
18 changes: 6 additions & 12 deletions build/Android.common_build.mk
Original file line number Diff line number Diff line change
Expand Up @@ -29,21 +29,15 @@ include art/build/Android.common.mk
# Beware that tests may use the non-debug build for performance, notable 055-enum-performance
#
ART_BUILD_TARGET_NDEBUG ?= true
ART_BUILD_TARGET_DEBUG ?= true
ART_BUILD_HOST_NDEBUG ?= true
ART_BUILD_HOST_DEBUG ?= true
ART_BUILD_TARGET_DEBUG ?= false
ART_BUILD_HOST_NDEBUG = false
ART_BUILD_HOST_DEBUG = false

ifeq ($(ART_BUILD_TARGET_NDEBUG),false)
$(info Disabling ART_BUILD_TARGET_NDEBUG)
endif
ifeq ($(ART_BUILD_TARGET_DEBUG),false)
$(info Disabling ART_BUILD_TARGET_DEBUG)
endif
ifeq ($(ART_BUILD_HOST_NDEBUG),false)
$(info Disabling ART_BUILD_HOST_NDEBUG)
endif
ifeq ($(ART_BUILD_HOST_DEBUG),false)
$(info Disabling ART_BUILD_HOST_DEBUG)
ifneq ($(ART_BUILD_TARGET_DEBUG),false)
$(info Enabling ART_BUILD_TARGET_DEBUG)
endif

#
Expand Down Expand Up @@ -201,7 +195,7 @@ art_target_non_debug_cflags := \
ifeq ($(HOST_OS),linux)
# Larger frame-size for host clang builds today
art_host_non_debug_cflags += -Wframe-larger-than=3000
art_target_non_debug_cflags += -Wframe-larger-than=1728
art_target_non_debug_cflags += -Wframe-larger-than=1800
endif

# FIXME: upstream LLVM has a vectorizer bug that needs to be fixed
Expand Down
2 changes: 2 additions & 0 deletions build/Android.executable.mk
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,15 @@ define build-art-executable
art_target_or_host := $(5)
art_ndebug_or_debug := $(6)
art_multilib := $(7)
art_static_libraries := $(8)

include $(CLEAR_VARS)
LOCAL_CPP_EXTENSION := $(ART_CPP_EXTENSION)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $$(art_source)
LOCAL_C_INCLUDES += $(ART_C_INCLUDES) art/runtime $$(art_c_includes)
LOCAL_SHARED_LIBRARIES += $$(art_shared_libraries)
LOCAL_STATIC_LIBRARIES += $$(art_static_libraries)
LOCAL_WHOLE_STATIC_LIBRARIES += libsigchain

ifeq ($$(art_ndebug_or_debug),ndebug)
Expand Down
10 changes: 3 additions & 7 deletions compiler/Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,9 @@ $$(ENUM_OPERATOR_OUT_GEN): $$(GENERATED_SRC_DIR)/%_operator_out.cc : $(LOCAL_PAT
LOCAL_ADDITIONAL_DEPENDENCIES += $(LOCAL_PATH)/Android.mk
ifeq ($$(art_target_or_host),target)
LOCAL_SHARED_LIBRARIES += libcutils libvixl
ifeq ($(TARGET_HAVE_QC_PERF),true)
LOCAL_WHOLE_STATIC_LIBRARIES += libqc-art-compiler
endif
include $(BUILD_SHARED_LIBRARY)
else # host
LOCAL_STATIC_LIBRARIES += libcutils libvixl
Expand All @@ -282,13 +285,6 @@ $$(ENUM_OPERATOR_OUT_GEN): $$(GENERATED_SRC_DIR)/%_operator_out.cc : $(LOCAL_PAT

endef

# We always build dex2oat and dependencies, even if the host build is otherwise disabled, since they are used to cross compile for the target.
ifeq ($(ART_BUILD_NDEBUG),true)
$(eval $(call build-libart-compiler,host,ndebug))
endif
ifeq ($(ART_BUILD_DEBUG),true)
$(eval $(call build-libart-compiler,host,debug))
endif
ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
$(eval $(call build-libart-compiler,target,ndebug))
endif
Expand Down
11 changes: 11 additions & 0 deletions compiler/dex/bb_optimizations.h
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,17 @@ class BBOptimizations : public PassME {
void Start(PassDataHolder* data) const;
};

// dummy pass, for placeholder only
class DummyPass : public PassME {
public:
DummyPass() : PassME("DummyPass", kNoNodes, "") {
}

bool Gate(const PassDataHolder* data) const {
return false;
}
};

} // namespace art

#endif // ART_COMPILER_DEX_BB_OPTIMIZATIONS_H_
2 changes: 2 additions & 0 deletions compiler/dex/compiler_enums.h
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ enum MIROptimizationFlagPositions {
kMIRInlinedPred, // Invoke is inlined via prediction.
kMIRCallee, // Instruction is inlined from callee.
kMIRIgnoreSuspendCheck,
kMIRIgnoreZeroDivCheck,
kMIRDup,
kMIRMark, // Temporary node mark.
kMIRLastMIRFlag,
Expand Down Expand Up @@ -538,6 +539,7 @@ enum FixupKind {
kFixupMovImmLST, // kThumb2MovImm16LST.
kFixupMovImmHST, // kThumb2MovImm16HST.
kFixupAlign4, // Align to 4-byte boundary.
kFixupA53Erratum835769, // Cortex A53 Erratum 835769.
};

std::ostream& operator<<(std::ostream& os, const FixupKind& kind);
Expand Down
2 changes: 1 addition & 1 deletion compiler/dex/frontend.cc
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ static uint32_t kCompilerOptimizerDisableFlags = 0 | // Disable specific optimi
// (1 << kMatch) |
// (1 << kPromoteCompilerTemps) |
// (1 << kSuppressExceptionEdges) |
// (1 << kSuppressMethodInlining) |
(1 << kSuppressMethodInlining) |
0;

static uint32_t kCompilerDebugFlags = 0 | // Enable debug/testing modes
Expand Down
32 changes: 16 additions & 16 deletions compiler/dex/mir_dataflow.cc
Original file line number Diff line number Diff line change
Expand Up @@ -472,10 +472,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C,

// 93 DIV_INT vAA, vBB, vCC
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C,
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C | DF_ZERO_DIV_CHECK,

// 94 REM_INT vAA, vBB, vCC
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C,
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C | DF_ZERO_DIV_CHECK,

// 95 AND_INT vAA, vBB, vCC
DF_DA | DF_UB | DF_UC | DF_CORE_A | DF_CORE_B | DF_CORE_C,
Expand Down Expand Up @@ -505,10 +505,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C,

// 9E DIV_LONG vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C,
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C | DF_ZERO_DIV_CHECK,

// 9F REM_LONG vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C,
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C | DF_ZERO_DIV_CHECK,

// A0 AND_LONG vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_CORE_A | DF_CORE_B | DF_CORE_C,
Expand Down Expand Up @@ -538,10 +538,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_UB | DF_UC | DF_FP_A | DF_FP_B | DF_FP_C,

// A9 DIV_FLOAT vAA, vBB, vCC
DF_DA | DF_UB | DF_UC | DF_FP_A | DF_FP_B | DF_FP_C,
DF_DA | DF_UB | DF_UC | DF_FP_A | DF_FP_B | DF_FP_C | DF_ZERO_DIV_CHECK,

// AA REM_FLOAT vAA, vBB, vCC
DF_DA | DF_UB | DF_UC | DF_FP_A | DF_FP_B | DF_FP_C,
DF_DA | DF_UB | DF_UC | DF_FP_A | DF_FP_B | DF_FP_C | DF_ZERO_DIV_CHECK,

// AB ADD_DOUBLE vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C,
Expand All @@ -553,10 +553,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C,

// AE DIV_DOUBLE vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C,
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C | DF_ZERO_DIV_CHECK,

// AF REM_DOUBLE vAA, vBB, vCC
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C,
DF_DA | DF_A_WIDE | DF_UB | DF_B_WIDE | DF_UC | DF_C_WIDE | DF_FP_A | DF_FP_B | DF_FP_C | DF_ZERO_DIV_CHECK,

// B0 ADD_INT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B,
Expand All @@ -568,10 +568,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B,

// B3 DIV_INT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B,
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B | DF_ZERO_DIV_CHECK,

// B4 REM_INT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B,
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B | DF_ZERO_DIV_CHECK,

// B5 AND_INT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_CORE_A | DF_CORE_B,
Expand Down Expand Up @@ -601,10 +601,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B,

// BE DIV_LONG_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B,
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B | DF_ZERO_DIV_CHECK,

// BF REM_LONG_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B,
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B | DF_ZERO_DIV_CHECK,

// C0 AND_LONG_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_CORE_A | DF_CORE_B,
Expand Down Expand Up @@ -634,10 +634,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_UA | DF_UB | DF_FP_A | DF_FP_B,

// C9 DIV_FLOAT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_FP_A | DF_FP_B,
DF_DA | DF_UA | DF_UB | DF_FP_A | DF_FP_B | DF_ZERO_DIV_CHECK,

// CA REM_FLOAT_2ADDR vA, vB
DF_DA | DF_UA | DF_UB | DF_FP_A | DF_FP_B,
DF_DA | DF_UA | DF_UB | DF_FP_A | DF_FP_B | DF_ZERO_DIV_CHECK,

// CB ADD_DOUBLE_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B,
Expand All @@ -649,10 +649,10 @@ const uint64_t MIRGraph::oat_data_flow_attributes_[kMirOpLast] = {
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B,

// CE DIV_DOUBLE_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B,
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B | DF_ZERO_DIV_CHECK,

// CF REM_DOUBLE_2ADDR vA, vB
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B,
DF_DA | DF_A_WIDE | DF_UA | DF_UB | DF_B_WIDE | DF_FP_A | DF_FP_B | DF_ZERO_DIV_CHECK,

// D0 ADD_INT_LIT16 vA, vB, #+CCCC
DF_DA | DF_UB | DF_CORE_A | DF_CORE_B,
Expand Down
26 changes: 20 additions & 6 deletions compiler/dex/mir_graph.cc
Original file line number Diff line number Diff line change
Expand Up @@ -124,14 +124,20 @@ MIRGraph::MIRGraph(CompilationUnit* cu, ArenaAllocator* arena)
ifield_lowering_infos_(arena, 0u),
sfield_lowering_infos_(arena, 0u),
method_lowering_infos_(arena, 0u),
gen_suspend_test_list_(arena, 0u) {
gen_suspend_test_list_(arena, 0u),
qcm(nullptr) {
try_block_addr_ = new (arena_) ArenaBitVector(arena_, 0, true /* expandable */);
max_available_special_compiler_temps_ = std::abs(static_cast<int>(kVRegNonSpecialTempBaseReg))
- std::abs(static_cast<int>(kVRegTempBaseReg));
}

MIRGraph::~MIRGraph() {
STLDeleteElements(&m_units_);
CleanupGraphData();
}

void MIRGraph::CleanupGraphData()
{
}

/*
Expand Down Expand Up @@ -869,6 +875,11 @@ uint64_t MIRGraph::GetDataFlowAttributes(MIR* mir) {
return GetDataFlowAttributes(opcode);
}


const char * MIRGraph::GetExtendedMirOpName(int index){
return extended_mir_op_names_[index];
}

// TODO: use a configurable base prefix, and adjust callers to supply pass name.
/* Dump the CFG into a DOT graph */
void MIRGraph::DumpCFG(const char* dir_prefix, bool all_blocks, const char *suffix) {
Expand Down Expand Up @@ -916,7 +927,7 @@ void MIRGraph::DumpCFG(const char* dir_prefix, bool all_blocks, const char *suff
if (opcode > kMirOpSelect && opcode < kMirOpLast) {
if (opcode == kMirOpConstVector) {
fprintf(file, " {%04x %s %d %d %d %d %d %d\\l}%s\\\n", mir->offset,
extended_mir_op_names_[kMirOpConstVector - kMirOpFirst],
MIRGraph::GetExtendedMirOpName(kMirOpConstVector - kMirOpFirst),
mir->dalvikInsn.vA,
mir->dalvikInsn.vB,
mir->dalvikInsn.arg[0],
Expand All @@ -926,7 +937,7 @@ void MIRGraph::DumpCFG(const char* dir_prefix, bool all_blocks, const char *suff
mir->next ? " | " : " ");
} else {
fprintf(file, " {%04x %s %d %d %d\\l}%s\\\n", mir->offset,
extended_mir_op_names_[opcode - kMirOpFirst],
MIRGraph::GetExtendedMirOpName(opcode - kMirOpFirst),
mir->dalvikInsn.vA,
mir->dalvikInsn.vB,
mir->dalvikInsn.vC,
Expand All @@ -937,7 +948,7 @@ void MIRGraph::DumpCFG(const char* dir_prefix, bool all_blocks, const char *suff
mir->ssa_rep ? GetDalvikDisassembly(mir) :
!MIR::DecodedInstruction::IsPseudoMirOp(opcode) ?
Instruction::Name(mir->dalvikInsn.opcode) :
extended_mir_op_names_[opcode - kMirOpFirst],
MIRGraph::GetExtendedMirOpName(opcode - kMirOpFirst),
(mir->optimization_flags & MIR_IGNORE_RANGE_CHECK) != 0 ? " no_rangecheck" : " ",
(mir->optimization_flags & MIR_IGNORE_NULL_CHECK) != 0 ? " no_nullcheck" : " ",
(mir->optimization_flags & MIR_IGNORE_SUSPEND_CHECK) != 0 ? " no_suspendcheck" : " ",
Expand Down Expand Up @@ -1226,7 +1237,7 @@ char* MIRGraph::GetDalvikDisassembly(const MIR* mir) {

// Handle special cases.
if ((opcode == kMirOpCheck) || (opcode == kMirOpCheckPart2)) {
str.append(extended_mir_op_names_[opcode - kMirOpFirst]);
str.append(MIRGraph::GetExtendedMirOpName(opcode - kMirOpFirst));
str.append(": ");
// Recover the original Dex instruction.
insn = mir->meta.throw_insn->dalvikInsn;
Expand All @@ -1243,7 +1254,7 @@ char* MIRGraph::GetDalvikDisassembly(const MIR* mir) {
}

if (MIR::DecodedInstruction::IsPseudoMirOp(opcode)) {
str.append(extended_mir_op_names_[opcode - kMirOpFirst]);
str.append(MIRGraph::GetExtendedMirOpName(opcode - kMirOpFirst));
} else {
dalvik_format = Instruction::FormatOf(insn.opcode);
flags = Instruction::FlagsOf(insn.opcode);
Expand Down Expand Up @@ -1506,6 +1517,9 @@ void MIRGraph::InitializeMethodUses() {
int num_ssa_regs = GetNumSSARegs();
use_counts_.Resize(num_ssa_regs + 32);
raw_use_counts_.Resize(num_ssa_regs + 32);
// reset both lists to restart fresh
use_counts_.Reset();
raw_use_counts_.Reset();
// Initialize list.
for (int i = 0; i < num_ssa_regs; i++) {
use_counts_.Insert(0);
Expand Down
Loading