Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
9424 commits
Select commit Hold shift + click to select a range
c0e1fa7
Merge "Add test for hashCode and System.identityHashCode." into lmp-dev
Sep 8, 2014
dd66899
Merge "ART: Change ART for new native bridge sequence" into lmp-dev
agampe Sep 9, 2014
8a39e7f
Add fast path for FindClass using the type dex file.
Sep 5, 2014
1e25d93
Merge "Add fast path for FindClass using the type dex file." into lmp…
Sep 9, 2014
eb10cfe
Temporarily disable LOS on 64 bit
Sep 9, 2014
8a4064e
Fix darwin run-test problems
bdcgoogle Sep 9, 2014
5300d47
Merge "ART: Fix unchecked register index validity" into lmp-dev
agampe Sep 9, 2014
77c318d
Merge "Fix monitor visit for class initializer" into lmp-dev
Sep 9, 2014
29acd2f
Workaround Darwin ContainedWithinExistingMap issue
bdcgoogle Sep 9, 2014
6b8f868
Merge "Workaround Darwin ContainedWithinExistingMap issue" into lmp-dev
bdcgoogle Sep 9, 2014
1b2140c
ART: Better error reporting on broken oat file
agampe Sep 9, 2014
d357764
Fix deadlock in VirtualMachine.AllThreads
Sep 9, 2014
cda850f
merge in lmp-release history after reset to 1b2140c9bf46388e4f59ecf3d…
Sep 9, 2014
3298611
Merge "Temporarily disable LOS on 64 bit" into lmp-dev
Sep 9, 2014
df96098
Temporarily disable LOS on 64 bit
Sep 9, 2014
1ae33d6
Change 099-vmdebug test to use File.createTempFile.
jeffyhao Sep 9, 2014
f8aed38
Merge "Change 099-vmdebug test to use File.createTempFile." into lmp-dev
jeffyhao Sep 9, 2014
4e67841
Change Reference.get() intrinsic to Reference.getReferent().
Sep 9, 2014
0bff4f3
Increase dex2oat timeouts for debug builds
Sep 10, 2014
7fae7c4
Add proper cfi directives.
cferris1000 Sep 9, 2014
3171cb3
merge in lmp-release history after reset to 0bff4f375d8013a4a59cf70b3…
Sep 10, 2014
5875a48
Merge "VisitClassesWithoutClassesLock isn't safe if classes move." in…
captain5050 Sep 10, 2014
44332cc
Merge "Add proper cfi directives." into lmp-dev
cferris1000 Sep 10, 2014
72da763
Ensure class is linked before resolution
Sep 10, 2014
827645f
Merge "Ensure class is linked before resolution" into lmp-dev
bdcgoogle Sep 10, 2014
8165fda
Ensure class is linked before resolution
Sep 10, 2014
a06fff2
Fix GetDexCanonicalLocation test for relative paths.
Aug 7, 2014
be4e643
Improve dex location canonicalization-related performance.
vmarko Sep 5, 2014
df1532b
ART: Correctly make methods preverified
agampe Sep 11, 2014
bfc2b98
Use WellKnownClasses in ThrowStackOverflowError to reduce changes of …
bdcgoogle Sep 11, 2014
59d0e8a
Merge "Use WellKnownClasses in ThrowStackOverflowError to reduce chan…
bdcgoogle Sep 11, 2014
94aa248
Merge "Don't hold any lock when visiting classes from JDWP" into lmp-dev
Sep 11, 2014
5f0438a
Merge "Fix deadlock in VirtualMachine.AllThreads" into lmp-dev
Sep 11, 2014
29329c2
merge in lmp-release history after reset to 5f0438a4123aeaae55ee034d3…
Sep 11, 2014
96cd671
Fix crash when connected to DDMS
Sep 11, 2014
11db17c
Merge "Fix GetDexCanonicalLocation test for relative paths." into lmp…
vmarko Sep 11, 2014
0a40828
Merge "Improve dex location canonicalization-related performance." in…
vmarko Sep 11, 2014
f1d9b04
Fix crash when connected to DDMS
Sep 11, 2014
3892cf8
ART: Fix preverified setting in VerifyClass
agampe Sep 11, 2014
0624965
ART: Fix preverified setting in VerifyClass
agampe Sep 11, 2014
a967c62
Delete pin table
Sep 11, 2014
38ac77b
Print the command line and ABI in stack dumps like debuggerd.
Sep 11, 2014
194116c
Add fast path to VMClassLoader.findLoadedClass
Sep 11, 2014
d1ae500
Merge "Print the command line and ABI in stack dumps like debuggerd."…
Sep 11, 2014
c022130
Revert "Print the command line and ABI in stack dumps like debuggerd."
Sep 11, 2014
53f7ac1
Merge "Revert "Print the command line and ABI in stack dumps like deb…
Sep 11, 2014
09865b8
Print the command line and ABI in stack dumps like debuggerd.
Sep 11, 2014
776ee72
Merge "Print the command line and ABI in stack dumps like debuggerd."…
bdcgoogle Sep 11, 2014
6b9f31a
Merge "Delete pin table" into lmp-dev
Sep 11, 2014
0f79299
Merge "Add fast path to VMClassLoader.findLoadedClass" into lmp-dev
Sep 11, 2014
66e222a
Fix and re-enable FreeList large object space for 64 bit
Sep 9, 2014
28e55dd
Merge "Fix host 64-bit ISA string" into lmp-dev
agampe Sep 12, 2014
7fc8f90
ART: Change access flag behavior in verifier
agampe Aug 25, 2014
98216e5
Quick compiler (arm64) Fix inline Math.round()
Sep 12, 2014
ca48ef5
Merge "Fix and re-enable FreeList large object space for 64 bit" into…
Sep 12, 2014
9a3c262
Merge "Quick compiler (arm64) Fix inline Math.round()" into lmp-dev
Sep 12, 2014
332e188
Merge "ART: Change access flag behavior in verifier" into lmp-dev
agampe Sep 12, 2014
35439ba
ART: Allow quickening in the boot image
agampe Aug 28, 2014
508e0a8
Merge "ART: Allow quickening in the boot image" into lmp-dev
agampe Sep 12, 2014
6167864
Fix stale root error in verifier
Sep 13, 2014
eee3e70
Merge "Fix stale root error in verifier" into lmp-dev
Sep 13, 2014
afa6b8e
ART: Make elf loading not abort
agampe Sep 13, 2014
75568f6
merge in lmp-release history after reset to afa6b8e93a0dc0de33c9d4049…
Sep 13, 2014
d539167
Update JDWP event filtering to avoid useless ids
Sep 9, 2014
7e121ad
merge in lmp-release history after reset to 0624965c286ecd0971e44c060…
Sep 13, 2014
2e7da09
merge in lmp-release history after reset to afa6b8e93a0dc0de33c9d4049…
Sep 14, 2014
3256166
Add native support for FinalizerList.makeCircularListIfUnenqueued
Sep 12, 2014
29259fa
Avoid crash in StringReference.Value JDWP command
Sep 15, 2014
eb124e4
merge in lmp-release history after reset to 3256166df40981f1f1997a5f0…
Sep 15, 2014
e2bcf57
Only log an error if an unattached thread is unregistered.
captain5050 Sep 15, 2014
605f5ac
Merge "Only log an error if an unattached thread is unregistered." in…
captain5050 Sep 15, 2014
00503da
ART: Do not unlink unreadable ELF files
agampe Sep 16, 2014
a597c01
Merge "ART: Do not unlink unreadable ELF files" into lmp-dev
agampe Sep 16, 2014
34fa79e
Avoid printing absolute addresses in oatdump
bdcgoogle Sep 15, 2014
e1f805a
merge in lmp-release history after reset to a597c019b102cdcd48de4ce0f…
Sep 16, 2014
501cf95
Merge "Avoid printing absolute addresses in oatdump" into lmp-dev
bdcgoogle Sep 16, 2014
ba354a9
ART: Check for exceptions from unresolved classes
agampe Sep 16, 2014
3dc14e7
Merge "ART: Check for exceptions from unresolved classes" into lmp-dev
agampe Sep 16, 2014
1d6ee09
Avoid suspending for alloc trace enabling when already suspended.
jeffyhao Sep 16, 2014
d0a24b7
Merge "Avoid suspending for alloc trace enabling when already suspend…
jeffyhao Sep 16, 2014
2f9e215
ART: Avoid recursive abort on thread dump
agampe Sep 16, 2014
035592c
ART: Sync oat file to disk before patching
agampe Sep 16, 2014
412aec9
ART: Check for exceptions from unresolved classes
agampe Sep 16, 2014
a4d1aea
Merge "ART: Avoid recursive abort on thread dump" into lmp-dev
agampe Sep 17, 2014
177586f
Merge "Avoid crash in StringReference.Value JDWP command" into lmp-dev
Sep 17, 2014
af27485
merge in lmp-release history after reset to 177586f54b562bea1f5504b91…
Sep 17, 2014
bf5d818
ART: skip compilation of huge methods.
Sep 17, 2014
b87baed
Merge "Update JDWP event filtering to avoid useless ids" into lmp-dev
Sep 18, 2014
e406e8e
merge in lmp-release history after reset to bf5d818f7e59ce33521ad81bb…
Sep 18, 2014
63bc11e
DO NOT MERGE. Only have a portable entrypoint in portable builds.
captain5050 Sep 18, 2014
33c36d4
ART: Only allow the zygote to create the global boot image
agampe Sep 19, 2014
dcfd6ca
Move spammy logs to JDWP verbose mode
Sep 18, 2014
3740332
ART: Only allow the zygote to create the global boot image
agampe Sep 19, 2014
bbb6389
Fix JDWP crash when reporting exception
Sep 19, 2014
7da37cc
Dump kernel/native stacks of pure native threads.
cferris1000 Sep 20, 2014
503b9b0
Fix sput-wide verification flag.
Sep 11, 2014
908b5aa
merge in lmp-release history after reset to dcfd6cad9670ca3ae460a4af0…
Sep 20, 2014
08731b9
merge in lmp-release history after reset to 3740332e2cb3f72658b7cecda…
Sep 21, 2014
e70f4a7
merge in lmp-release history after reset to 503b9b08a65ce8acd041aa78e…
Sep 21, 2014
e1a3950
Merge "Dump kernel/native stacks of pure native threads." into lmp-dev
cferris1000 Sep 21, 2014
344f414
Merge "Fix JDWP crash when reporting exception" into lmp-dev
Sep 22, 2014
81b7065
merge in lmp-release history after reset to 344f4145bdff3c4123d8a1808…
Sep 22, 2014
4d6e483
Do not hold breakpoint lock when running the verifier
Sep 18, 2014
23382a6
merge in lmp-release history after reset to 344f4145bdff3c4123d8a1808…
Sep 23, 2014
63582f2
Restore kReasonLogging for kDexoptNeeded and kPatchoatNeeded
bdcgoogle Sep 23, 2014
aa93129
dex2oat should truncate files opened from file descriptors
bdcgoogle Sep 24, 2014
3c5ec99
ART: Refactor elf_writer_quick for elf section order
agampe Sep 24, 2014
c95f840
Merge "ART: Refactor elf_writer_quick for elf section order" into lmp…
agampe Sep 24, 2014
d84e30b
merge in lmp-release history after reset to c95f840e55f0cc4cebefbc381…
Sep 24, 2014
db273aa
x86: evaluation destination should be after load of source in RA [DO …
Sep 8, 2014
4dfd0e4
Merge "Restore kReasonLogging for kDexoptNeeded and kPatchoatNeeded" …
bdcgoogle Sep 24, 2014
9770574
Merge "x86: evaluation destination should be after load of source in …
pattjin Sep 24, 2014
266b468
Merge "Do not hold breakpoint lock when running the verifier" into lm…
Sep 25, 2014
28a5a9e
merge in lmp-release history after reset to 266b4689731f2c69af0f2854a…
Sep 25, 2014
a98ffd7
Fix broken runtime SetStatsEnabled logic
Sep 26, 2014
23fb122
Change heap base address
Sep 26, 2014
b504d2f
Quick compiler: aarch64 codegen & long_min literal
Sep 26, 2014
ed34f59
Merge "Quick compiler: aarch64 codegen & long_min literal" into lmp-dev
Sep 26, 2014
dbe4dc1
Merge "Fix broken runtime SetStatsEnabled logic" into lmp-dev
Sep 26, 2014
40fc2a8
Quick compiler: aarch64 codegen & long_min literal
Sep 26, 2014
ffc788c
Optimize get/set reflection performance
Sep 26, 2014
11c48fe
Merge "Optimize get/set reflection performance" into lmp-dev
Sep 27, 2014
8c550e5
merge in lmp-release history after reset to 11c48fe8c541753b57f5770e5…
Sep 28, 2014
6d03104
ART: Update for split native bridge initialization
gujinghui Sep 10, 2014
4b52207
merge in lmp-release history after reset to 6d031046eeb5e9f62b657df06…
Sep 29, 2014
02ff2d4
AddIntrinsicSlowPath with resume requires clobbering
Sep 4, 2014
e22a4c2
merge in lmp-release history after reset to 6d031046eeb5e9f62b657df06…
Sep 30, 2014
db7239c
ART: Overflow of bound check in ArrayCopy intrinsic
avignate-intel Sep 17, 2014
95a9354
Add VMRuntime.isBootClassPathOnDisk
bdcgoogle Sep 29, 2014
d26bfdc
merge in lmp-release history after reset to 95a935415d44903b28326424b…
Oct 1, 2014
228f925
Merge "ART: Overflow of bound check in ArrayCopy intrinsic" into lmp-dev
Oct 1, 2014
ba16b07
More native bridge tests
Oct 1, 2014
5be3007
ART: Remove wrong DCHECK
agampe Oct 2, 2014
6edfe1a
merge in lmp-release history after reset to lmp-dev
Oct 2, 2014
b9001ab
Add extra logging for lock contention
Oct 3, 2014
73a170e
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 5, 2014
d211f52
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 6, 2014
ab425fb
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 7, 2014
66deb44
merge in lmp-release history after reset to b9001abff3a45f1ae90536da7…
Oct 8, 2014
b6404fe
Disable kEnableJavaStackTraceHandler
bdcgoogle Oct 8, 2014
8d63bc3
merge in lmp-release history after reset to b6404fe0bb782cbbccda88903…
Oct 9, 2014
b90132c
Fix race in thread list destructor
Oct 9, 2014
a4fee49
Don't call dlsym from signal context in signal chain
Sep 16, 2014
5d1c1bb
Check for errors in ThreadGroupReference JDWP commands
Sep 15, 2014
c266d29
merge in lmp-release history after reset to a4fee49a5023a3cf843159795…
Oct 12, 2014
2cf26f3
merge in lmp-release history after reset to a4fee49a5023a3cf843159795…
Oct 13, 2014
98b5fb5
merge in lmp-release history after reset to 5d1c1bbd4c8a1727027d0ae69…
Oct 14, 2014
c54e12a
Change MemMap::maps_ to not be global variable
Oct 14, 2014
a61dcfb
merge in lmp-release history after reset to c54e12a413e16f90526318f1f…
Oct 15, 2014
edfc4ca
Fix oatdump for no image
Oct 15, 2014
f49c1fc
merge in lmp-release history after reset to edfc4ca2c8e1de6a1d42700cc…
Oct 16, 2014
1f24296
Add way to ensure we are at the front of the sigaction chain
Oct 15, 2014
d254c2b
Add way to ensure we are at the front of the sigaction chain
Oct 15, 2014
f90e2ec
merge in lmp-release history after reset to 1f24296c7c8a6501ee2388c0d…
Oct 20, 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
02ccfa4
Remove boot.art/boot.oat on failure to create
bdcgoogle Oct 27, 2014
020110b
ART: Fix ImageSpace error message.
agampe Oct 25, 2014
e016182
Work around relocated boot.oat corruption
bdcgoogle Oct 28, 2014
8db4a40
Fix FindDeclaredVirtualMethod(DexCache...) for miranda methods
bdcgoogle Oct 31, 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
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
d9115d3
art: Update QC-PERF board flag to TARGET_HAVE_QC_PERF
Nov 8, 2014
3b1d377
Merge tag 'android-5.0.0_r5' into HEAD
rmcc Nov 14, 2014
ef5f41f
Fix thread priorities for unstarted threads.
narayank Oct 7, 2014
b69960d
libsigchain: Fix OSX compilation
chub Jan 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
72e9975
[Xposed] Don't crash for dex files without extension
rovo89 Feb 12, 2015
d586da3
[Xposed] Disable method inlining
rovo89 Mar 8, 2015
55b5e0b
[Xposed] Close .oat files after reading their header
rovo89 Apr 30, 2015
e34babd
oattools: skip unknown arguments
arter97 May 20, 2015
663c302
Implement String.clear() to the runtime
arter97 May 20, 2015
eed2177
runtime: skip unknown arguments #2
arter97 May 25, 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
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
5e60eac
Merge remote-tracking branch 'rovo89/xposed-lollipop' into samsung-lo…
arter97 Jun 14, 2015
871b76b
Merge remote-tracking branch 'cyanogenmod/cm-12.0' into samsung-lollipop
arter97 Jun 14, 2015
820d071
ART: Fix missing Erase() in error case
agampe Mar 13, 2015
683730c
Fix interpreter to allow 0 size sparse switches.
jeffyhao Mar 21, 2015
b407993
Fix CC collector boot.
hjyamauchi Mar 12, 2015
ceb5f7a
Support map data in the backtrace data structure.
cferris1000 Feb 6, 2015
56b0fd7
Move GC daemon locking logic into heap
Dec 15, 2014
ed551ed
Add clamp growth limit
Jan 8, 2015
bc8f91e
Avoid using dex cache array pointers in libart.
vmarko Apr 9, 2015
641b036
Optimize method linking
Oct 23, 2014
2f8928c
Revert "Support map data in the backtrace data structure."
arter97 Jun 14, 2015
c5d74b3
Revert "ART: Fix missing Erase() in error case"
arter97 Jun 14, 2015
5f4bc91
Fix registering of hooked native methods through AndroidRuntime::regi…
mh0rst Jun 28, 2015
5d5b750
Merge tag 'v65-sdk21' into samsung-lollipop
arter97 Jul 3, 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
31df113
[Xposed] Support for LG Almond encrypted apps
rovo89 Aug 2, 2015
7e8e62f
Merge remote-tracking branch 'rovo89/xposed-lollipop' into samsung-lo…
arter97 Aug 4, 2015
26d11c3
Revert "[Xposed] Support for LG Almond encrypted apps"
arter97 Aug 4, 2015
992bc3e
Revert "Avoid using dex cache array pointers in libart."
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
84b8b4e
[Xposed] Disable accessing TypedArray subclass fields via offset
rovo89 Aug 16, 2015
2a152ca
Merge remote-tracking branch 'rovo89/xposed-lollipop' into samsung-lo…
arter97 Aug 19, 2015
227a8b9
Fix oatdump build
arter97 Aug 18, 2015
2fe80e5
samsung: add TW Roms checker
rovo89 Aug 28, 2015
20d787e
samsung: oat_file - adjust methods_offsets_pointer to point
rovo89 Aug 28, 2015
a92b69f
Revert "Implement String.clear() to the runtime"
wanam Aug 28, 2015
bf4465b
samsung: increase String VTableLenght
rovo89 Aug 28, 2015
7615871
samsung: adjust dexcache offsets to support 2 new fileds
rovo89 Aug 28, 2015
f780e29
samsung: runtime - add samsung native methods
rovo89 Aug 28, 2015
eaf5d9f
Revert "Move GC daemon locking logic into heap"
arter97 Aug 29, 2015
d013279
Revert "Add clamp growth limit"
arter97 Aug 29, 2015
efebac5
Revert "[Xposed] Disable host build"
rovo89 Sep 10, 2015
7cdcea7
[Xposed] Only build for host if explicitly requested
rovo89 Sep 5, 2015
41d686a
[Xposed] Fix a couple of warnings/debug errors
rovo89 Sep 5, 2015
3cc7f24
[Xposed] Read "this" class from debug info for invoke-virtual-quick
rovo89 Sep 10, 2015
2917841
[Xposed] Compile return-void-barrier
rovo89 Sep 10, 2015
d91f704
[Xposed] Only recompile odex files for the Dalvik cache
rovo89 Sep 10, 2015
657557a
[Xposed] Never relocate
rovo89 Sep 30, 2015
5a4adff
[Xposed] Revert "ART: Turn on dex2oat watchdog on target"
rovo89 Oct 7, 2015
cca3db3
Merge remote-tracking branch 'rovo89/xposed-lollipop' into samsung-lo…
arter97 Oct 18, 2015
ae71e62
Move GC daemon locking logic into heap
Dec 15, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
512 changes: 301 additions & 211 deletions Android.mk

Large diffs are not rendered by default.

55 changes: 55 additions & 0 deletions CleanSpec.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Copyright (C) 2007 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# If you don't need to do a full clean build but would like to touch
# a file or delete some intermediate files, add a clean step to the end
# of the list. These steps will only be run once, if they haven't been
# run before.
#
# E.g.:
# $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
#
# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
# files that are missing or have been moved.
#
# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
# Use $(OUT_DIR) to refer to the "out" directory.
#
# If you need to re-do something that's already mentioned, just copy
# the command and add it to the bottom of the list. E.g., if a change
# that you made last week required touching a file and a change you
# made today requires touching the same file, just copy the old
# touch step and add it to the end of the list.
#
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************

# For example:
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)

# Switching to jemalloc requires deleting these files.
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libart_*)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libartd_*)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libart_*)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/SHARED_LIBRARIES/libartd_*)

# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************
76 changes: 76 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -188,3 +188,79 @@

END OF TERMS AND CONDITIONS

-------------------------------------------------------------------

For art/runtime/elf.h derived from external/llvm/include/llvm/Support/ELF.h

==============================================================================
LLVM Release License
==============================================================================
University of Illinois/NCSA
Open Source License

Copyright (c) 2003-2014 University of Illinois at Urbana-Champaign.
All rights reserved.

Developed by:

LLVM Team

University of Illinois at Urbana-Champaign

http://llvm.org

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal with
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimers.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimers in the
documentation and/or other materials provided with the distribution.

* Neither the names of the LLVM Team, University of Illinois at
Urbana-Champaign, nor the names of its contributors may be used to
endorse or promote products derived from this Software without specific
prior written permission.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
SOFTWARE.

==============================================================================
Copyrights and Licenses for Third Party Software Distributed with LLVM:
==============================================================================
The LLVM software contains code written by third parties. Such software will
have its own individual LICENSE.TXT file in the directory in which it appears.
This file will describe the copyrights, license, and restrictions which apply
to that code.

The disclaimer of warranty in the University of Illinois Open Source License
applies to all code in the LLVM Distribution, and nothing in any of the
other licenses gives permission to use the names of the LLVM Team or the
University of Illinois to endorse or promote products derived from this
Software.

The following pieces of software have additional or alternate copyrights,
licenses, and/or restrictions:

Program Directory
------- ---------
Autoconf llvm/autoconf
llvm/projects/ModuleMaker/autoconf
Google Test llvm/utils/unittest/googletest
OpenBSD regex llvm/lib/Support/{reg*, COPYRIGHT.regex}
pyyaml tests llvm/test/YAMLParser/{*.data, LICENSE.TXT}
ARM contributions llvm/lib/Target/ARM/LICENSE.TXT
md5 contributions llvm/lib/Support/MD5.cpp llvm/include/llvm/Support/MD5.h

-------------------------------------------------------------------
246 changes: 50 additions & 196 deletions build/Android.common.mk
Original file line number Diff line number Diff line change
Expand Up @@ -17,207 +17,61 @@
ifndef ANDROID_COMMON_MK
ANDROID_COMMON_MK = true

# These can be overridden via the environment or by editing to
# enable/disable certain build configuration.
#
# For example, to disable everything but the host debug build you use:
#
# (export ART_BUILD_TARGET_NDEBUG=false && export ART_BUILD_TARGET_DEBUG=false && export ART_BUILD_HOST_NDEBUG=false && ...)
#
# 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 ?= $(WITH_HOST_DALVIK)
ART_BUILD_HOST_DEBUG ?= $(WITH_HOST_DALVIK)

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)
endif

#
# Used to enable smart mode
#
ART_SMALL_MODE := false
ifneq ($(wildcard art/SMALL_ART),)
$(info Enabling ART_SMALL_MODE because of existence of art/SMALL_ART)
ART_SMALL_MODE := true
endif
ifeq ($(WITH_ART_SMALL_MODE), true)
ART_SMALL_MODE := true
endif

#
# Used to enable SEA mode
#
ART_SEA_IR_MODE := false
ifneq ($(wildcard art/SEA_IR_ART),)
$(info Enabling ART_SEA_IR_MODE because of existence of art/SEA_IR_ART)
ART_SEA_IR_MODE := true
endif
ifeq ($(WITH_ART_SEA_IR_MODE), true)
ART_SEA_IR_MODE := true
endif

#
# Used to enable portable mode
#
ART_USE_PORTABLE_COMPILER := false
ifneq ($(wildcard art/USE_PORTABLE_COMPILER),)
$(info Enabling ART_USE_PORTABLE_COMPILER because of existence of art/USE_PORTABLE_COMPILER)
ART_USE_PORTABLE_COMPILER := true
endif
ifeq ($(WITH_ART_USE_PORTABLE_COMPILER),true)
$(info Enabling ART_USE_PORTABLE_COMPILER because WITH_ART_USE_PORTABLE_COMPILER=true)
ART_USE_PORTABLE_COMPILER := true
ART_TARGET_SUPPORTED_ARCH := arm arm64 mips x86 x86_64
ART_HOST_SUPPORTED_ARCH := x86 x86_64

ifeq (,$(filter $(TARGET_ARCH),$(ART_TARGET_SUPPORTED_ARCH)))
$(warning unsupported TARGET_ARCH=$(TARGET_ARCH))
endif
ifeq (,$(filter $(HOST_ARCH),$(ART_HOST_SUPPORTED_ARCH)))
$(warning unsupported HOST_ARCH=$(HOST_ARCH))
endif

# Primary vs. secondary
2ND_TARGET_ARCH := $(TARGET_2ND_ARCH)
TARGET_INSTRUCTION_SET_FEATURES := $(DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES)
2ND_TARGET_INSTRUCTION_SET_FEATURES := $($(TARGET_2ND_ARCH_VAR_PREFIX)DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES)
ifdef TARGET_2ND_ARCH
ifneq ($(filter %64,$(TARGET_ARCH)),)
ART_PHONY_TEST_TARGET_SUFFIX := 64
2ND_ART_PHONY_TEST_TARGET_SUFFIX := 32
ART_TARGET_ARCH_32 := $(TARGET_2ND_ARCH)
ART_TARGET_ARCH_64 := $(TARGET_ARCH)
else
# TODO: ???
$(error Do not know what to do with this multi-target configuration!)
endif
else
ART_PHONY_TEST_TARGET_SUFFIX := 32
2ND_ART_PHONY_TEST_TARGET_SUFFIX :=
ART_TARGET_ARCH_32 := $(TARGET_ARCH)
ART_TARGET_ARCH_64 :=
endif

LLVM_ROOT_PATH := external/llvm
include $(LLVM_ROOT_PATH)/llvm.mk

# Clang build.
# ART_TARGET_CLANG := true
# ART_HOST_CLANG := true

# directory used for gtests on device
ART_NATIVETEST_DIR := /data/nativetest/art
ART_NATIVETEST_OUT := $(TARGET_OUT_DATA_NATIVE_TESTS)/art

# directory used for tests on device
ART_TEST_DIR := /data/art-test
ART_TEST_OUT := $(TARGET_OUT_DATA)/art-test

ART_CPP_EXTENSION := .cc

ART_HOST_SHLIB_EXTENSION := $(HOST_SHLIB_SUFFIX)
ART_HOST_SHLIB_EXTENSION ?= .so

ART_C_INCLUDES := \
external/gtest/include \
external/valgrind/main/include \
external/zlib \
frameworks/compile/mclinker/include

art_cflags := \
-fno-rtti \
-std=gnu++11 \
-ggdb3 \
-Wall \
-Werror \
-Wextra \
-Wstrict-aliasing=3 \
-fstrict-aliasing

ifeq ($(ART_SMALL_MODE),true)
art_cflags += -DART_SMALL_MODE=1
endif

ifeq ($(ART_SEA_IR_MODE),true)
art_cflags += -DART_SEA_IR_MODE=1
endif

ifeq ($(HOST_OS),linux)
art_non_debug_cflags := \
-Wframe-larger-than=1728
endif

art_non_debug_cflags := \
-O3

art_debug_cflags := \
-O1 \
-DDYNAMIC_ANNOTATIONS_ENABLED=1 \
-UNDEBUG

# start of image reserved address space
IMG_HOST_BASE_ADDRESS := 0x60000000

ifeq ($(TARGET_ARCH),mips)
IMG_TARGET_BASE_ADDRESS := 0x30000000
ifeq ($(HOST_PREFER_32_BIT),true)
ART_PHONY_TEST_HOST_SUFFIX := 32
2ND_ART_PHONY_TEST_HOST_SUFFIX :=
ART_HOST_ARCH_32 := x86
ART_HOST_ARCH_64 :=
ART_HOST_ARCH := x86
2ND_ART_HOST_ARCH :=
2ND_HOST_ARCH :=
ART_HOST_LIBRARY_PATH := $(HOST_LIBRARY_PATH)
ART_HOST_OUT_SHARED_LIBRARIES := $(2ND_HOST_OUT_SHARED_LIBRARIES)
2ND_ART_HOST_OUT_SHARED_LIBRARIES :=
else
IMG_TARGET_BASE_ADDRESS := 0x60000000
endif

ART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1 -DART_BASE_ADDRESS=$(IMG_HOST_BASE_ADDRESS)

ifeq ($(TARGET_ARCH),x86)
ART_TARGET_CFLAGS += -msse2
endif

ART_TARGET_CFLAGS := $(art_cflags) -DART_TARGET -DART_BASE_ADDRESS=$(IMG_TARGET_BASE_ADDRESS)
ifeq ($(TARGET_CPU_SMP),true)
ART_TARGET_CFLAGS += -DANDROID_SMP=1
else
ART_TARGET_CFLAGS += -DANDROID_SMP=0
endif

# Enable thread-safety for GCC 4.6 on the target but not for GCC 4.7 where this feature was removed.
ifneq ($(filter 4.6 4.6.%, $(TARGET_GCC_VERSION)),)
ART_TARGET_CFLAGS += -Wthread-safety
else
# Warn if not using GCC 4.6 for target builds when not doing a top-level or 'mma' build.
ifneq ($(ONE_SHOT_MAKEFILE),)
# Enable target GCC 4.6 with: export TARGET_GCC_VERSION_EXP=4.6
$(info Using target GCC $(TARGET_GCC_VERSION) disables thread-safety checks.)
endif
endif
# We build with GCC 4.6 on the host.
ART_HOST_CFLAGS += -Wthread-safety

# Make host builds easier to debug and profile by not omitting the frame pointer.
ART_HOST_CFLAGS += -fno-omit-frame-pointer

# To use oprofile_android --callgraph, uncomment this and recompile with "mmm art -B -j16"
# ART_TARGET_CFLAGS += -fno-omit-frame-pointer -marm -mapcs

ART_HOST_NON_DEBUG_CFLAGS := $(art_non_debug_cflags)
ART_TARGET_NON_DEBUG_CFLAGS := $(art_non_debug_cflags)

# TODO: move -fkeep-inline-functions to art_debug_cflags when target gcc > 4.4 (and -lsupc++)
ART_HOST_DEBUG_CFLAGS := $(art_debug_cflags) -fkeep-inline-functions
ART_HOST_DEBUG_LDLIBS := -lsupc++

ifneq ($(HOST_OS),linux)
# Some Mac OS pthread header files are broken with -fkeep-inline-functions.
ART_HOST_DEBUG_CFLAGS := $(filter-out -fkeep-inline-functions,$(ART_HOST_DEBUG_CFLAGS))
# Mac OS doesn't have libsupc++.
ART_HOST_DEBUG_LDLIBS := $(filter-out -lsupc++,$(ART_HOST_DEBUG_LDLIBS))
endif

ART_TARGET_DEBUG_CFLAGS := $(art_debug_cflags)

ifeq ($(ART_USE_PORTABLE_COMPILER),true)
PARALLEL_ART_COMPILE_JOBS := -j8
endif

ART_BUILD_TARGET := false
ART_BUILD_HOST := false
ART_BUILD_NDEBUG := false
ART_BUILD_DEBUG := false
ifeq ($(ART_BUILD_TARGET_NDEBUG),true)
ART_BUILD_TARGET := true
ART_BUILD_NDEBUG := true
endif
ifeq ($(ART_BUILD_TARGET_DEBUG),true)
ART_BUILD_TARGET := true
ART_BUILD_DEBUG := true
endif
ifeq ($(ART_BUILD_HOST_NDEBUG),true)
ART_BUILD_HOST := true
ART_BUILD_NDEBUG := true
endif
ifeq ($(ART_BUILD_HOST_DEBUG),true)
ART_BUILD_HOST := true
ART_BUILD_DEBUG := true
ART_PHONY_TEST_HOST_SUFFIX := 64
2ND_ART_PHONY_TEST_HOST_SUFFIX := 32
ART_HOST_ARCH_32 := x86
ART_HOST_ARCH_64 := x86_64
ART_HOST_ARCH := x86_64
2ND_ART_HOST_ARCH := x86
2ND_HOST_ARCH := x86
ART_HOST_LIBRARY_PATH := $(HOST_LIBRARY_PATH)
ART_HOST_OUT_SHARED_LIBRARIES := $(HOST_OUT_SHARED_LIBRARIES)
2ND_ART_HOST_OUT_SHARED_LIBRARIES := $(2ND_HOST_OUT_SHARED_LIBRARIES)
endif

endif # ANDROID_COMMON_MK
Loading