summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Jack support for annotation processor.Yohann Roussel2015-03-1041-187/+1542
| | | | | | | Does not include any support for including class files generated by annotation processors. Change-Id: Id4006301d588875f822ff84fa90db10fd616ab00
* Fix build breakage due to incompatible cleaning stuff on debugmikaelpeltier2015-03-101-3/+7
| | | | | | | | - 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
* Merge "Adapt shrob tests to get rid of setShrobFlags" into ub-jackJean-Marie Henaff2015-03-106-58/+75
|\
| * Adapt shrob tests to get rid of setShrobFlagsJean-Marie Henaff2015-03-096-58/+75
| | | | | | | | | | | | Thus, it works both with new api and cli Change-Id: Ifc9fc48b6a99df92345d6cfcc1e6466b6026c2df
* | Rework printProblem filteringBenoit Lamarche2015-03-096-41/+78
| | | | | | | | Change-Id: Id3bffec738a261a9a9de98a6f0b98cd603d878e1
* | Clean Options from useless stuff about debug infoYohann Roussel2015-03-091-13/+0
|/ | | | | | | This also allows setting the property CodeItemBuilder.EMIT_SYNTHETIC_LOCAL_DEBUG_INFO. Change-Id: I89f79a8fb3ced291a27ba9ea8735fb8667b41174
* Implement Api01Configmikaelpeltier2015-03-097-175/+272
| | | | Change-Id: I455d060994c59fecf5dbad2a1b4ff0905cb7df61
* Fix testCommandLineError002Benoit Lamarche2015-03-091-2/+2
| | | | | | | | 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
* Revert "Revert "Start using jack-api for jack API based test toolchains""Jean-Marie Hénaff2015-03-0931-421/+572
| | | | | | This reverts commit b43732ee3d9f9ffcd7595ab657e4c683a1751b3a. Change-Id: Id9fbfcd8f7aebca1136bfcbbf9e37359dc42a19d
* Merge "Add Javadoc for Enums of API" into ub-jackBenoit Lamarche2015-03-093-4/+33
|\
| * Add Javadoc for Enums of APIBenoit Lamarche2015-03-093-4/+33
| | | | | | | | Change-Id: I2c7dffe2e2af1eac9d8ddce3066e07a940349aea
* | Add property for reporter streammikaelpeltier2015-03-097-3/+47
| | | | | | | | | | | | Bug: 18546725 Change-Id: Ie91b463bfb494f9608c4ea68316ac086bda64058
* | Fix bug in duplicate PropertyId.Valuemikaelpeltier2015-03-092-7/+3
| | | | | | | | Change-Id: I99c8a7e73e774213b745633e2d970210f58274d0
* | Duplicate PropertyId.Value when usedmikaelpeltier2015-03-092-1/+37
|/ | | | Change-Id: Ic7c6f047bdbb29690233848cfe225508612e2f6f
* Handle input sources as a propertyYohann Roussel2015-03-0916-37/+82
| | | | Change-Id: I91e3c26270f821741fa79f3d972e5b1454b00b0e
* Ensure legacy options are accessed by propertyYohann Roussel2015-03-096-31/+21
| | | | Change-Id: I6222d55a77194f87677a2b9007793fae33018a82
* Access debug options only through propertiesYohann Roussel2015-03-091-9/+22
| | | | Change-Id: I8d4621456d1733628aa9bb07a5a73ffea7ec71b5
* Rename junit report file for test-jack-allJean-Marie Henaff2015-03-091-1/+1
| | | | Change-Id: I6962ea9c9f849e8c78a276bbb79712517d4bb871
* Bump version to 1.1-a7Benoit Lamarche2015-03-061-1/+1
| | | | Change-Id: Ifb8a8033f3129953b7e789376a8535c26e377bb9
* Merge "Revert "Avoid comparing full signatures of methods."" into ub-jackPiotr Jastrzebski2015-03-061-15/+1
|\
| * Revert "Avoid comparing full signatures of methods."Piotr Jastrzebski2015-03-061-15/+1
| | | | | | | | | | | | This reverts commit fee08e7f4affb336c3a07a2e55ec7a942de03087. Change-Id: I8732c4b06ade19dab214d196242e0c7f12753d19
* | Merge "Revert "Start using jack-api for jack API based test toolchains"" ↵Jean-Marie Hénaff2015-03-0631-572/+412
|\ \ | |/ |/| | | into ub-jack
| * Revert "Start using jack-api for jack API based test toolchains"Jean-Marie Hénaff2015-03-0631-572/+412
| | | | | | | | | | | | This reverts commit d235ed6f21b7b21aefb4b066b0c64acfa2bbb229. Change-Id: Idceeda07056275eb887d42a5aa75b624024554e0
* | Avoid comparing full signatures of methods.Piotr Jastrzebski2015-03-061-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Merge "Avoid StringBuffer resizing in ReferenceMapper.signature" into ub-jackPiotr Jastrzebski2015-03-061-2/+11
|\ \ | |/ |/|
| * Avoid StringBuffer resizing in ReferenceMapper.signaturePiotr Jastrzebski2015-03-061-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Start using jack-api for jack API based test toolchainsJean-Marie Henaff2015-03-0631-412/+572
| | | | | | | | | | | | Implementation is still to be done. Change-Id: I010ab9f00f4c00275982d4abfcbf6c94248f3fb4
* | Merge "Add support of configurable standard input/output/error" into ub-jackJean-Philippe Lesot2015-03-0622-114/+310
|\ \ | |/ |/|
| * Add support of configurable standard input/output/errorJean-Philippe Lesot2015-03-0622-114/+310
| | | | | | | | | | | | | | | | | | | | 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
* | Fix the build of Jack API ImplJean-Philippe Lesot2015-03-061-5/+7
| | | | | | | | Change-Id: I56ea17452840e01673251329910cb6b8a97b0553
* | Merge "Work on Jack API 01" into ub-jackJean-Philippe Lesot2015-03-063-16/+17
|\ \
| * | Work on Jack API 01Jean-Philippe Lesot2015-03-053-16/+17
| |/ | | | | | | Change-Id: Ie1d25ee306679f3ff6769b267e2d5381e0c644c4
* | Add a forgotten cast during bridge creationmikaelpeltier2015-03-068-1/+156
| | | | | | | | | | | | | | - Jack should emit a cast on the returned type when it generate bridge. Bug: 19606409 Change-Id: I9e2c68d5e27e945d3a57055968b15e77af7e9b3c
* | Read some sections of dex in DexBuffer constructorPiotr Jastrzebski2015-03-061-61/+69
|/ | | | | | | | | | | | | | | | | | | 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
* Merge "Bump version to 1.1-a6" into ub-jackBenoit Lamarche2015-03-051-1/+1
|\
| * Bump version to 1.1-a6Benoit Lamarche2015-03-051-1/+1
| | | | | | | | Change-Id: I3390869f46f6df336d2f87a8043036fe7d6d3ff9
* | Merge "Add filtering according to ProblemLevel in reporters." into ub-jackBenoit Lamarche2015-03-054-22/+126
|\ \ | |/ |/|
| * Add filtering according to ProblemLevel in reporters.Benoit Lamarche2015-03-054-22/+126
| | | | | | | | | | Bug: 19613146 Change-Id: If553055aaefc983f74c723f97a2494666b4d004b
* | Change AllTests classes organizationJean-Marie Henaff2015-03-053-2/+13
| | | | | | | | | | | | | | Jack unit tests were listed twice when PreSubmitTests or LongLastingTests were executed. Change-Id: Ia3288fd2a5a45b60c8bd5ce9ff01b1d4cc9b00f8
* | Update internal tree testsJean-Marie Henaff2015-03-058-55/+175
|/ | | | Change-Id: I4690f38250c3b6dc1051ba16dbd624a052c13c86
* Access output lib configuration as propertyYohann Roussel2015-03-042-7/+7
| | | | Change-Id: Ib3a21527a739f00c75e2626250fb2aac83206e52
* Merge "Declare jack-api" into ub-jackYohann Roussel2015-03-042-1/+27
|\
| * Declare jack-apiYohann Roussel2015-03-042-1/+27
| | | | | | | | Change-Id: I42356d471d5b341c755dc5c9b52178b2b4e37f69
* | Merge "Add resource support into library V0" into ub-jackmikaelpeltier2015-03-041-0/+33
|\ \ | |/ |/|
| * Add resource support into library V0mikaelpeltier2015-03-041-0/+33
| | | | | | | | | | | | | | | | | | | | | | - Jill can generate library with resources but without the boolean resource property. Modifies the V0 library implantation to manage resources even if the boolean resource property is not set. A resource is a file other than a jayce file and other than jack.properties. Bug: 18585951 Change-Id: I406a3e095f09b950103ff23ebddf171610c5acfa
* | Move ThreadConfig usage inside Jack.run()Benoit Lamarche2015-03-031-3/+5
| | | | | | | | Change-Id: I14855dd0827a1aad31282265e9c56b4cca6bb451
* | Separate Jack.run() between Jack.check() and Jack.run()Benoit Lamarche2015-03-035-196/+532
|/ | | | | | Also add Api01ConfigImpl. Change-Id: Id71e368072fde3dc61722cbce7fc18618f3ff8aa
* Remove JackBasedToolchain.addEcjArgsYohann Roussel2015-03-035-46/+1
| | | | Change-Id: I3e262be2f9f91dc29688bb8bb3255322087879c9
* Rename package api01 to api.v01Benoit Lamarche2015-03-0313-17/+17
| | | | Change-Id: I8b9fdafeccb6ed04730581290a97a44c0e75bd89
* Merge "Update Api01Config interface" into ub-jackmikaelpeltier2015-03-038-9/+218
|\