| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Does not include any support for including class files generated
by annotation processors.
Change-Id: Id4006301d588875f822ff84fa90db10fd616ab00
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Change-Id: I74cca38795068f3ca78c4c2271a5d57c53831932
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Also remove example from jack-api.jar.
Change-Id: I4cfb569cada64cfd03f1413994f68969e7af8ab3
|
|\ \ \ \ \ |
|
| | |/ / /
| |/| | |
| | | | |
| | | | | |
Change-Id: Ie34d79830b53b5dcbc6b7edbaa7617c7466b9f3d
|
|\ \ \ \ \ |
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is done for test server that needs to invoke these targets
in parallel. Currently this does not work because dependencies
trigger processes that cannot be run in parallel.
Change-Id: I92cfa9382a2bc25de57b5de9f107743883badb67
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
|
| |/ / /
| | | |
| | | |
| | | | |
Change-Id: I2a76b2d17fb721e9472e98db751b43f3c54f8b90
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
flattenpackagehierarchy" into ub-jack
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- The variable newPackage into rules repackageclasses and flattenpackagehierarchy
is redefined only when optional part of the rule is executed. If this
optional part is not executed then the previous value of newPackage is used.
To avoid this problem, the variable newPackage is cleared after his usage.
Bug: 19363928
Change-Id: Iab3af01dc462ccf03945268fef69e1b723dd62e5
|
|/ / /
| | |
| | |
| | | |
Change-Id: Ib599f5b012aec9d15c71fd314fe859628e855c00
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Use EMIT_LOCAL_DEBUG_INFO property rather than setter which does not
longer exists. Set all properties without taking into account default
value since they can change in the future.
Change-Id: If0a25fec859befe4337ef58117065ea0691ea990
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Thus, it works both with new api and cli
Change-Id: Ifc9fc48b6a99df92345d6cfcc1e6466b6026c2df
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: Id3bffec738a261a9a9de98a6f0b98cd603d878e1
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
This also allows setting the property
CodeItemBuilder.EMIT_SYNTHETIC_LOCAL_DEBUG_INFO.
Change-Id: I89f79a8fb3ced291a27ba9ea8735fb8667b41174
|
| | |
| | |
| | |
| | | |
Change-Id: I455d060994c59fecf5dbad2a1b4ff0905cb7df61
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The test used to check that it printed the ECJ usage. We don't want
that anymore. Let's check that Jack does not crash and does not print
anything, for now at least.
Change-Id: I981b22be56382277c19daffbdf13f1fd32fbbab0
|
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit b43732ee3d9f9ffcd7595ab657e4c683a1751b3a.
Change-Id: Id9fbfcd8f7aebca1136bfcbbf9e37359dc42a19d
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: I2c7dffe2e2af1eac9d8ddce3066e07a940349aea
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Bug: 18546725
Change-Id: Ie91b463bfb494f9608c4ea68316ac086bda64058
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: I99c8a7e73e774213b745633e2d970210f58274d0
|
|/ / /
| | |
| | |
| | | |
Change-Id: Ic7c6f047bdbb29690233848cfe225508612e2f6f
|
| | |
| | |
| | |
| | | |
Change-Id: I91e3c26270f821741fa79f3d972e5b1454b00b0e
|
| | |
| | |
| | |
| | | |
Change-Id: I6222d55a77194f87677a2b9007793fae33018a82
|
|/ /
| |
| |
| | |
Change-Id: I8d4621456d1733628aa9bb07a5a73ffea7ec71b5
|
| |
| |
| |
| | |
Change-Id: I6962ea9c9f849e8c78a276bbb79712517d4bb871
|
| |
| |
| |
| | |
Change-Id: Ifb8a8033f3129953b7e789376a8535c26e377bb9
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit fee08e7f4affb336c3a07a2e55ec7a942de03087.
Change-Id: I8732c4b06ade19dab214d196242e0c7f12753d19
|
|\ \ \
| |/ /
|/| |
| | | |
into ub-jack
|
| |/
| |
| |
| |
| |
| | |
This reverts commit d235ed6f21b7b21aefb4b066b0c64acfa2bbb229.
Change-Id: Idceeda07056275eb887d42a5aa75b624024554e0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
TypePackageAndMethodFormatter.getName(JMethod) is not cheap both
cpu and memory wise. In ReferenceMapper.findMethod we don't need
to compare MethodBindings with signature of every method. Instead
we can first compare the name of the method and the number of
parameters and only when those are equal check the full signature.
This saves a lot of memory allocations. Before findMethod was making
1,215,894 allocations for over 77MB of memory. After this change it
makes only 84,391 allocations for 5MB of memory. This reduces the total
amount of memory used during compilation
(org.eclipse.jdt.internal.compiler.ProcessTaskManager.run) from 951MB
to 879MB which is over 7.5%.
Change-Id: Ibfe907ddd580d8851d0349d069fb85e0c032cc77
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While profiling I found out that ReferenceMapper.signature for both
methods and fields makes 1,214,784 allocations for over 143MB of memory.
Further investigation showed that big part of them was because of
StringBuffer having to extend its capacity. We can prevent it by
calculating the total number of characters in a resulting string and
creating a StringBuffer with exactly that size. We can do it cheaply
because '.signature()' methods in *Bindings are cached and each invocation
after the first one is just returns already calculated char[].
This saves a lot of memory allocations. Before signature methods were making
1,214,784 allocations for over 143MB of memory. After this change they
make only 784,567 allocations for 86MB of memory. This reduces the total
amount of memory used during compilation
(org.eclipse.jdt.internal.compiler.ProcessTaskManager.run) from 951MB
to 893MB which is over 6%.
Change-Id: I818dc62877369505a8698912aef49585df2b7779
|
| |
| |
| |
| |
| |
| | |
Implementation is still to be done.
Change-Id: I010ab9f00f4c00275982d4abfcbf6c94248f3fb4
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add API to set a dedicated standard input/output/error to a
ConfigBuilder. By this way, if defined, the parsing of '-' and
'--' take this standard definition instead of System.in/out/err.
Add also support of standard error in AbstractStreamFile hierarchy
and associated codec.
Change-Id: I1ca9521743d3ba286bd115aa24dbafd74bf693e9
|
| |
| |
| |
| | |
Change-Id: I56ea17452840e01673251329910cb6b8a97b0553
|
|\ \ |
|
| |/
| |
| |
| | |
Change-Id: Ie1d25ee306679f3ff6769b267e2d5381e0c644c4
|
| |
| |
| |
| |
| |
| |
| | |
- Jack should emit a cast on the returned type when it generate bridge.
Bug: 19606409
Change-Id: I9e2c68d5e27e945d3a57055968b15e77af7e9b3c
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I profiled the incremental compilation of Music app and it showed
that we are reading and creating 1,330,524 strings from dex files
in DexBuffers. I checked and the total of strings in all dex files
represented by DexBuffers is 284979. That's around 20% of what we
were reading. The conclusion was that we read the same strings
over and over again. Then I looked at ConstantManager.addDexFile
and it striked me that we need all strings, typeIds, typeNames,
fieldIds and methodIds anyway because we iterate over them in
addDexFile. This means that we can as well read all of them
when DexBuffer is created. This way we save a lot of cpu and
memory allocations. Strings alone were taking 70MB of heap.
Now we're allocating only 20% of it.
This change speeds up incremental compilation by over 12.5%.
Change-Id: Iee18e9d17419886e552e3fd0b1143d2bb7220c9c
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I3390869f46f6df336d2f87a8043036fe7d6d3ff9
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| | |
Bug: 19613146
Change-Id: If553055aaefc983f74c723f97a2494666b4d004b
|