History log of /frameworks/compile/slang/slang_rs_context.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4c7c95cab6a7baf46bbedaf6c2a67d93eafc3e66 22-Jan-2013 Stephen Hines <srhines@google.com> Merge "Skip reflection of resize() when building for the compatibility library."
23c4358f12bd9d0ba7166eceebd683db95a41b3f 10-Jan-2013 Stephen Hines <srhines@google.com> Updates for LLVM merge to r171906 on 20130108.

Change-Id: I4cf3718041d8876d4a23a412b6b4fa4226ec3b50
/frameworks/compile/slang/slang_rs_context.cpp
82754d87921c94e70562aa977cc92e28fc38b1d0 19-Jan-2013 Stephen Hines <srhines@google.com> Skip reflection of resize() when building for the compatibility library.

Change-Id: I2669914b3139756a8cf559ed99b845e77df87df0
/frameworks/compile/slang/slang_rs_context.cpp
089cde338148fbb75825aea4539ccdae8211ffef 08-Dec-2012 Stephen Hines <srhines@google.com> Forbid non-const static variables in kernels.

Bug: 7688011
Change-Id: If03084a9ece76478e0ed0847b75f09c41b89a500
/frameworks/compile/slang/slang_rs_context.cpp
cf9a73a4140402c0e9e4fbab27477f22cc7d8e3c 20-Sep-2012 Stephen Hines <srhines@google.com> Fix teardown bug for multiple files without pragma.

This previously caused a segmentation fault in llvm-rs-cc. We were
improperly using the DiagnosticsEngine after we had reset() everything.

Bug: 7202787

Change-Id: Ic8522566ef257e70f16caf34b89f6a8e012908c5
/frameworks/compile/slang/slang_rs_context.cpp
0a813a3ef2a82f19d7eab9e23ae8493197143803 04-Aug-2012 Stephen Hines <srhines@google.com> Add RS package name option + support.

Usage:
llvm-rs-cc -rs-package-name=android.renderscript ...
or
llvm-rs-cc -rs-package-name android.renderscript ...

This allows us to reflect a different import path for our base RS classes.
The default value is "android.renderscript", resulting in a reflection that
produces "import android.renderscript.*;".

Change-Id: Icf7e83b963ba70c803899697f49b41fdfb9586e7
/frameworks/compile/slang/slang_rs_context.cpp
14a7e172a411372d4edd84ea791ab972598dfa17 24-Apr-2012 Shih-wei Liao <sliao@google.com> Apply changes to migrate to CLANG-155088-20120419.

Change-Id: I77fee87d511ce9d36c56b76c58b4a6caef888676
/frameworks/compile/slang/slang_rs_context.cpp
c17e198ffcd37bfc57e3add1f6eee952ae2a2eab 22-Feb-2012 Stephen Hines <srhines@google.com> Support dummy root() and re-ordering in presence of non-root kernels.

BUG=6000538

Change-Id: Ib3ed249916d36acf68ab32e9216804ae1da5e991
/frameworks/compile/slang/slang_rs_context.cpp
9999ec3aa0c4d7a6befd3a300dc07f0cea91cb6c 11-Feb-2012 Stephen Hines <srhines@google.com> Clean up graphics/compute root() distinction.

BUG=6000538

Change-Id: I29096556dff2072a8757e0dfd3321006cd60bb27
/frameworks/compile/slang/slang_rs_context.cpp
7aff4a0a124209fdf93ecbcd7aed701d39ba094b 09-Dec-2011 Stephen Hines <srhines@google.com> Update error diagnostics.

Change-Id: I8415450504f95cc3ad35866ed884fafc7ee24c90
/frameworks/compile/slang/slang_rs_context.cpp
f736d5a12269e7e74740b130cdca98d9839b31e6 27-Oct-2011 Stephen Hines <srhines@google.com> Add back pre-ICS support for "int root(int);".

BUG=5521638

Change-Id: Ic1f3c071562c687a98125c2151e306313c5405b8
/frameworks/compile/slang/slang_rs_context.cpp
4a4bf92a8add68629a7e6e59ef81c3c3fe603a75 19-Aug-2011 Stephen Hines <srhines@google.com> Don't generate forEach() on pre-ICS target SDK.

Change-Id: I794587d1f79a08aca8cc4f7f20f4012050ab0501
/frameworks/compile/slang/slang_rs_context.cpp
b5a89fbfcba6d8817c1c3700ed78bd6482cf1a5d 17-May-2011 Stephen Hines <srhines@google.com> Clean up forEach reflection code.

BUG=4203264

Change-Id: I8196608408fe333bd8e875d9517b8e875bdce17d
/frameworks/compile/slang/slang_rs_context.cpp
593a894650e81be54173106ec266f0311cebebd3 11-May-2011 Stephen Hines <srhines@google.com> Simple support for reflecting rsForEach().

BUG=4203264

Change-Id: Idf722ee3fb07c8e46ac0c4628e753ff2fa6840cf
/frameworks/compile/slang/slang_rs_context.cpp
b6809edd6ee8b90982425fb8ad24e867708b46fc 09-May-2011 Stephen Hines <srhines@google.com> Provide multiple diagnostics when we can.

Change-Id: I2e13baa20cb7dd39ae2e00cd011771b1b8574357
/frameworks/compile/slang/slang_rs_context.cpp
5baf6324a97430016026419deaef246ad75430fc 26-Apr-2011 Stephen Hines <srhines@google.com> Check RS functions (esp. init/root) for validity.

Change-Id: Ice65c8b691550e2d11caf621e0f88c822316601b
/frameworks/compile/slang/slang_rs_context.cpp
be27482cdeaf08576bc39b72a15d35d13014a636 16-Feb-2011 Logan <tzuhsiang.chien@gmail.com> Apply changes to migrate to LLVM Mar 6th 2011.

- API for name mangling. (Changing from non-public APIs to the
public one)

- API changes for clang::Diagnostic::getNumErrors ->
clang::Diagnostic::hasErrorOccurred

- API changes for clang::CharUnits and Quantity type.

- API changes libLLVMSystem -> libLLVMSupport.

- Change clang::Token::eom -> clang::Token::eod.

- Remove SourceRange parameter for DeclRefExpr::Create and
MemberExpr::Create.

- Add const qualifier for several unsafe type cast.
/frameworks/compile/slang/slang_rs_context.cpp
f2174cfd6a556b51aadf2b8765e50df080e8f18e 10-Feb-2011 Stephen Hines <srhines@google.com> Handle struct reference counting.

Bug: 3092382

Change-Id: I215bd8245324ec2b7752a7c40817e3e5cd1c0e00
/frameworks/compile/slang/slang_rs_context.cpp
3fa286b4c2f110c6be2bbfac9c715bb1ec880338 10-Feb-2011 Shih-wei Liao <sliao@google.com> Fix b/3427124. Adding the overloadable invokable feature. Reflect that type of invokables to Java.

1. Add __attribute__((overloadable)) support on the rs side for invokables. Requested by the Books team.
2. Add name mangling support and MangleContext.
3. Add the test P_overload.
4. This CL only affects Honeycomb SDK. It doesn't affect Final ROM.
5. This CL should go in at the same time with another CL on external/clang.git (to be done now.)

Change-Id: I9e743894a97626d8c27b0dd9c0a51cef1175d2ab
/frameworks/compile/slang/slang_rs_context.cpp
6e6578a360497f78a181e63d7783422a9c9bfb15 08-Feb-2011 Stephen Hines <srhines@google.com> Add support for assertions in llvm-rs-cc.

Bug: 3430674
Change-Id: I3400238652449cde84275cc2a770f405332d9544
/frameworks/compile/slang/slang_rs_context.cpp
4cc67fce91f43215d61b2695746eab102a3db516 01-Feb-2011 Stephen Hines <srhines@google.com> Support for generating .java dependencies for RS.

This updates the -MD option to also emit .java targets to the dependency
information placed in our foo.d file.

Change-Id: I189cf6302bc1cbd6201487743a37dced87b5c5eb
/frameworks/compile/slang/slang_rs_context.cpp
3fd0a94a5cf1656569b1aea07043cc63939dcb46 18-Jan-2011 Stephen Hines <srhines@google.com> Refactor pragma handling (pass everything to LLVM)

Change-Id: Id09d4934af06f0880cd867456218602ce9a9e2de
/frameworks/compile/slang/slang_rs_context.cpp
96ab06cbe40b2d73c0eb614f814cd761d8962b6b 06-Jan-2011 Stephen Hines <srhines@google.com> Add support for the version pragma.

Change-Id: I62707dcb432093ba50db95e527d55ff781be22a9
/frameworks/compile/slang/slang_rs_context.cpp
2ef9bc0cfbca2152d972c0975005f8c897c2a42c 14-Dec-2010 Stephen Hines <srhines@google.com> Convert fprintf -> diagnostic messages.

Proper support/test for multi-level pointer types.
Proper diagnostics for bit fields, which are currently
not supported.

Bug: 2954471
Change-Id: I347f14f02fcf7fbef9f6e5dde5b4e948391a0691
/frameworks/compile/slang/slang_rs_context.cpp
c97a333bc84ce8c28c96d07734cbded75c914639 01-Dec-2010 Stephen Hines <srhines@google.com> Improve validation of AST before reflection.

Change-Id: If4b52f3a713ab97145bc31ef42b18d1cc144099a
/frameworks/compile/slang/slang_rs_context.cpp
c808a99831115928b4648f4c8b86dc682594217a 30-Nov-2010 Stephen Hines <srhines@google.com> Add prelim error check for pointers in structs.

Bug: 2954471
Change-Id: Icacf67dd3eeb3dda67e1eae3d54e11f7efa6c680
/frameworks/compile/slang/slang_rs_context.cpp
35f5b39f0490953f1fe13ef803b43e3ced9a01d9 23-Nov-2010 Stephen Hines <srhines@google.com> Missing pragma for java_package_name is an error.

Bug: 3122920

Change-Id: I88fcb07b95d47e1aba28fcf6e255d17ef957f285
/frameworks/compile/slang/slang_rs_context.cpp
2d2512c5703bb238b7935ab5228beff6563f2f94 19-Nov-2010 Stephen Hines <srhines@google.com> Remove legacy code for export func/var pragmas.

Change-Id: I62e0768b11e4192ffde8ed26c0160d62e8f09714
/frameworks/compile/slang/slang_rs_context.cpp
3fbe68a4ec20fec25f8a40191437bbc02d00f591 18-Nov-2010 Stephen Hines <srhines@google.com> Turn on support for exporting non-static funcs.

Bug: 2932253
Change-Id: Ice5422b4a3d78f8c2973e1af6c8abea30fa74bb6
/frameworks/compile/slang/slang_rs_context.cpp
e639eb5caa2c386b4a60659a4929e8a6141a2cbe 09-Nov-2010 Stephen Hines <srhines@google.com> Improve code style.

Change-Id: I26e043849bce2a4b41ae132fbe0c882f4a6f112f
/frameworks/compile/slang/slang_rs_context.cpp
9e5b503349719144f63ccb7c62ee9c291a7d83b8 03-Nov-2010 Stephen Hines <srhines@google.com> Use Clang object references instead of pointers.

Change-Id: Ief0e78859572761d880eaad9ae854f14e65da2c4
/frameworks/compile/slang/slang_rs_context.cpp
41ebf534161bb67f6207a070c1f6a895dc853408 13-Oct-2010 Zonr Chang <zonr@google.com> Remove Slang::TargetDescription.

Clang and LLVM never read outside target description to configure the
target-dependent information needed during compilation and codegen. They
always use their own data layout string for specific, known target.
/frameworks/compile/slang/slang_rs_context.cpp
641558f02fe6ce0ee3ae5076eb366c25e2ad5903 12-Oct-2010 Zonr Chang <zonr@google.com> Implement one-definition-rule (ODR) feature.

When compiling multiple RS files, we say two RS files A and B break ODR
iff:

1. They have at least one common struct named [S] and [S] will be reflected
to ScriptField_[S].java, and
2. [S] defined in A is not *exactly the same* (number of fields, field
type and field name) as the one defined in B.

This CL detects such error.
/frameworks/compile/slang/slang_rs_context.cpp
c383a500aa59423264811be3874461bf8adbfea0 11-Oct-2010 Zonr Chang <zonr@google.com> Prepend legal announcement in all files.

Release libslang/llvm-rs-cc/llvm-rs-link under Apache 2.0 license.
/frameworks/compile/slang/slang_rs_context.cpp
b81c6a4cbd9c08e0b20ea4fbc615b416ac1bc9ec 10-Oct-2010 Shih-wei Liao <sliao@google.com> Revert "Revert "New implementation of llvm-rs-cc (replacement of slang_driver).""

This reverts commit a6d60672695f1438a63acdbf85eae7f97ce2b50d.
/frameworks/compile/slang/slang_rs_context.cpp
a6d60672695f1438a63acdbf85eae7f97ce2b50d 10-Oct-2010 Shih-wei Liao <sliao@google.com> Revert "New implementation of llvm-rs-cc (replacement of slang_driver)."

This reverts commit 6791df284557f4173a9715b3634f4f4901a6bb8a.
/frameworks/compile/slang/slang_rs_context.cpp
6791df284557f4173a9715b3634f4f4901a6bb8a 09-Oct-2010 Shih-wei Liao <sliao@google.com> New implementation of llvm-rs-cc (replacement of slang_driver).

Change-Id: I1b8b6cf3dad8ef8fe2f4d24d4df604099f45ff37
/frameworks/compile/slang/slang_rs_context.cpp
2df25dbc3b09764b7bed9f02aee7cbd3d9720ef2 08-Oct-2010 Stephen Hines <srhines@google.com> Export all non-static globals in RS.

Change-Id: Ie021b603085c901fbaf83cb231ce2999ce28c791
/frameworks/compile/slang/slang_rs_context.cpp
a41ce1d98094da84643995d40d71c529905123fc 05-Oct-2010 Zonr Chang <zonr@google.com> Fix memory leak of RSExport* object create in processExport(). Now, they will
properly be freed after their associated RSContext was destroyed.
/frameworks/compile/slang/slang_rs_context.cpp
6315f76e3cc6ff2d012d1183a0b030d4ff0dc808 05-Oct-2010 zonr <zonr@google.com> More coding style fixing to improve the readability. No actual semantics
changed. This also makes cpplint happy.
/frameworks/compile/slang/slang_rs_context.cpp
9ef2f785e0cc490af678dfd685995dec787321ff 01-Oct-2010 Shih-wei Liao <sliao@google.com> The Mother-of-All code review:
1. Fix AllowRSPrefix bug
2. Remove member mRS*Pragma in class RSContext
3. No longer only support 2x2, 3x3, 4x4 arrays
4. Fix Export All code for victorhsieh
5. Improve readability and maintainability
6. size_t -> int in calculating padding

Change-Id: I772aebd1440af66a89e2d2e688b193e500f38d69
/frameworks/compile/slang/slang_rs_context.cpp
cecd11d2af5d45d8ba322bed61fb48a99c305528 21-Sep-2010 Shih-wei Liao <sliao@google.com> Fix warnings. Bug fix.

Change-Id: I80934814ae64d11f0edebfa3b131164207f1aca0
/frameworks/compile/slang/slang_rs_context.cpp
f52a620440fa62257dfdcf2583f0f9df5b855c76 11-Sep-2010 Shih-wei Liao <sliao@google.com> Apply changes on slang such that it can work with LLVM/Clang upstream r112364/r112367.

Change-Id: If38da28502a6111b855105c2fceb23fdb0caefa4
/frameworks/compile/slang/slang_rs_context.cpp
3f8b44dba57685b437cecc208f2a20a4ed93ed36 04-Sep-2010 Ying Wang <wangying@google.com> Encode the bitcode binary files into Java source files.

So that the apps don't need to have the bc files as resources.
The bitcode java files will be put at the same dir as the reflected java files.
The bitcode java file name will be <ClassName>BitCode.java.
The bitcode is represented as byte array and you can reference it as:
byte[] bitcode = <ClassName>BitCode.getBitCode();

To enable this feature, pass "-s jc" to the command line.

The class name <ClassName> is converted from the .rs file name, for example:
foo.rs -> FooBitCode.java
foo_bar.rs -> FooBarBitCode.java
fooBar.rs -> FooBarBitCode.java
foobar.rs -> FoobarBitCode.java

i.e., any non-alnum characters in the rs file name are filtered
and the rest are converted to camel case.

The above method is also applied to the reflected java classes now.

Change-Id: Idf234d4c017e33740a13d6cd68bc3e14710ec149
/frameworks/compile/slang/slang_rs_context.cpp
28cf66d9a9f82dc4bd4708db905423d14e101ed6 29-Aug-2010 Shih-wei Liao <sliao@google.com> Check export pragma.

Change-Id: I467424b46fb63e4341165b04332c14850946e385
/frameworks/compile/slang/slang_rs_context.cpp
ac91815eb4918b9307ec876f34f2b60adf28c78b 29-Aug-2010 Shih-wei Liao <sliao@google.com> Check export pragmas in the rs file.

Change-Id: I6e934bfc166b85fffdd8d2897a823b651910d43f
/frameworks/compile/slang/slang_rs_context.cpp
c81dd70ab201ba13033004d36107ed96a6ad8036 20-Aug-2010 Shih-wei Liao <sliao@google.com> Memory errors: Fix mismatched free() / delete / delete [].

Change-Id: I6fcac252953a0c2bd48b3146b7e9f2d6861fc703
/frameworks/compile/slang/slang_rs_context.cpp
4c9f742efa36b1037acc640184681d421aa0f6ba 05-Aug-2010 Shih-wei Liao <sliao@google.com> Right usage of linking. Enable the reuse of the same Slang object across multiple input files.

Change-Id: Id036c300ece9a245437ea2bdd0a9c0da436f558d
/frameworks/compile/slang/slang_rs_context.cpp
f83d3c396d5d7eacd97cf0a5d3b6a01d75535b67 31-Jul-2010 Shih-wei Liao <sliao@google.com> Support multiple .rs files. Change "-o" to denote output path for .bc, NOT the output .bc file.

Change-Id: I168b3f96de37b0d6a787b3a83306ac84a0ebebb5
/frameworks/compile/slang/slang_rs_context.cpp
6de89272b00a31f2a73e2f56edf9cc511df46265 16-Jul-2010 Shih-wei Liao <sliao@google.com> Add --output-java-reflection-path | -p

Change-Id: I951a3540aa653060f81ff76b670ffb4b0029a3ca
/frameworks/compile/slang/slang_rs_context.cpp
e3756aa450b690cf5d18c0ea572ef7563de97bb3 12-Jul-2010 Victor Hsieh <victorhsieh@google.com> Usage Linkage for choosing vars/funcs which should be exported instead.

Change-Id: I7773bbfea721cc2c9423cf4e89e0d14c9539d14d
/frameworks/compile/slang/slang_rs_context.cpp
a50704238e06bc72a7ea3e8282fb5d350f88fd08 08-Jul-2010 Victor Hsieh <victorhsieh@google.com> Rename *ExportAllStatic* to *ExportAllNonStatic*.

Change-Id: I454a181e0081334e9e3dee99e80c2f875258d6ed
/frameworks/compile/slang/slang_rs_context.cpp
d8a0d186a362739f385f1a4af35360d5da69e47b 07-Jul-2010 Victor Hsieh <victorhsieh@google.com> Add pragma rs set_reflect_license

Change-Id: I9c3d9505c108a11b6c3fd85499fbac10da9f2532
/frameworks/compile/slang/slang_rs_context.cpp
c6718b312b793ea76ac6b61479090c33ba9f2ba6 23-Jun-2010 Victor Hsieh <victorhsieh@google.com> Add pragma rs export_var_all and export_func_all

Change-Id: Id9a90aeeb7cf74b3e9247cf8b998d5c5358ac73a
/frameworks/compile/slang/slang_rs_context.cpp
001fb6dddbf1cc794532eeb6a55f7b500eab1abc 21-Jun-2010 Shih-wei Liao <sliao@google.com> 1. Add comments to clarify (E.g., don't worry. "syntax error will be triggered by predecessor later")
2. Create ASTContext before RSContext creation and pass it to RSContext for using later

Change-Id: I6c11af70f1a13036c560aa34d311808548390864
/frameworks/compile/slang/slang_rs_context.cpp
537446c9542fdda458920876ed8a020a97ddf7a4 12-Jun-2010 Shih-wei Liao <sliao@google.com> Add support to #pragma rs java_package_name.

Change-Id: Ieb3582511238e1a13056221dfd6e6b3c1f87fe6a
/frameworks/compile/slang/slang_rs_context.cpp
462aefd62cc646d2ff753c1d003ef3cd7bbea262 05-Jun-2010 Shih-wei Liao <sliao@google.com> Initialize slang and Android.mk.

Change-Id: If74da8e54d45511c8c9bb236bcfeec508f4f2439
/frameworks/compile/slang/slang_rs_context.cpp