History log of /frameworks/compile/slang/slang_backend.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8ccbddda3ac7408ba0ae1edab1d066f0d8ad97bc 21-Mar-2012 Stephen Hines <srhines@google.com> resolved conflicts for merge of 9e7e17b0 to master

Change-Id: I7d910038eaf3e7b43330253a7275a8496c26c9ad
5e3b677a3041c86a7f860238dd1f5ff9d111b507 21-Mar-2012 Stephen Hines <srhines@google.com> Use bcinfo::writeAndroidBitcodeWrapper().

Change-Id: Ic5361ef718733dd22fd732351a711c04edb12e3a
/frameworks/compile/slang/slang_backend.cpp
e3cb21bc8654181da174ac441acec7726b5a78ec 02-Mar-2012 Jean-Baptiste Queru <jbq@google.com> am fa5209a2: am 9c459f0c: Merge "Enable emission of debugger-friendly bitcode"

* commit 'fa5209a2bd1e10f675a889c60d8d5a589e860d18':
Enable emission of debugger-friendly bitcode
c460b37ffb50819a32c2a8967754b6f784b28263 09-Jan-2012 mkopec1 <mkopec1@intel.com> Enable emission of debugger-friendly bitcode

- Add "-g" flag to llvm-rs-cc in order to emit debug metadata
- Add optimization level parameter -O and tests
- Add lit based tests (use llvm-lit from libbcc/tests/debuginfo)
-- Add README file for lit-tests directory

Change-Id: I5e2f6f9b6f536fa7a10de008b54ac0878cf352a9
/frameworks/compile/slang/slang_backend.cpp
ac4e18584b8768b3f68535fa5f16232e03974323 16-Dec-2011 Logan Chien <loganchien@google.com> Apply changes to migrate to upstream (Dec 16th 2011)

- clang::ModuleLoader has changed the interface of loadModule.

- Following constants has been removed from llvm::bitc by the
upstream, so we have to define our version.

- TYPE_BLOCK_ID_OLD 10
- TYPE_SYMTAB_BLOCK_ID_OLD 13
- TYPE_CODE_STRUCT_OLD 10

- llvm::TargetMachine::createTargetMachine now takes a new
parameter for options, such as float ABI, soft float, and
no frame elimination, and etc.

Change-Id: I75e51da9d2265207060a449735342b426cedf243
/frameworks/compile/slang/slang_backend.cpp
cf7e4296bb5862681f5acc4c489798329a46bd61 23-Nov-2011 Stephen Hines <srhines@google.com> Add support for generating a bitcode wrapper to llvm-rs-cc.

BUG=5425905

Change-Id: I42c49666c434d33f000b57db159677179ab75ca0
/frameworks/compile/slang/slang_backend.cpp
de7ac1928633b51b8a147fcdda044793629ba8fb 29-Nov-2011 Stephen Hines <srhines@google.com> Fix bool return for HandleTopLevelDecl().

This is a minor update to propagate error information related to the
merge work done in fa6ef56a6ca3dc3061218a75a7e68e5357fcb82c.

Change-Id: I74f7831e4ccfb0f8a3a2d0c75da953cbeaa5c5ac
/frameworks/compile/slang/slang_backend.cpp
42f6e0cd9eed6f967e2e0d76050082128bdc4ae4 29-Nov-2011 Stephen Hines <srhines@google.com> Merge "Add support for BitWriter_2_9_func bitcode writing."
fa6ef56a6ca3dc3061218a75a7e68e5357fcb82c 25-Nov-2011 Logan Chien <loganchien@google.com> Apply changes to migrate to upstream (Nov 25th 2011).

- HandleTopLevelDecl now returns bool.
- Additional APValue::MemberPointer case for switching.

Change-Id: Ieb7a693f96b07b7659712a3ab0abd200ce7df505
/frameworks/compile/slang/slang_backend.cpp
9b044ec938fd56355012851890c63974c8042c9f 24-Nov-2011 Stephen Hines <srhines@google.com> Add support for BitWriter_2_9_func bitcode writing.

This allows us to generate Bitcode for pre-3.0 LLVM using the old opcode for
TYPE_CODE_FUNCTION (renamed to TYPE_CODE_FUNCTION_OLD).

Change-Id: I5b88bff6224658f3e50940bb6f46aa13ca40c080
/frameworks/compile/slang/slang_backend.cpp
5e6d0d5a911fff0b7b4bce216a213a4cf8a811f5 23-Nov-2011 Stephen Hines <srhines@google.com> Add support for generating a bitcode wrapper to llvm-rs-cc.

BUG=5425905

Change-Id: I42c49666c434d33f000b57db159677179ab75ca0
/frameworks/compile/slang/slang_backend.cpp
2c6bad5038d8509466b9e0f9aa6a8ae533c0e029 15-Nov-2011 Logan Chien <loganchien@google.com> Apply changes to migrate to llvm upstream r144606.

- Replace linear scan register allocator with greedy register
allocator since the upstream has removed linear scan register
allocator and start using greedy register allocator instead.

Change-Id: I8f15c1761c525144b93597303a21b19cc8e46d31
/frameworks/compile/slang/slang_backend.cpp
9207a2e495c8363606861e4f034504ec5c153dab 21-Oct-2011 Logan Chien <loganchien@google.com> Apply changes to migrate to LLVM upstream Oct 20th 2011.

- StructType::isAnonymous is renamed to StructType::isLiteral.

- PassManagerBuilder has been moved from
llvm/Support/PassManagerBuilder.h to
llvm/Transforms/IPO/PassManagerBuilder.h

- Include llvm/Transforms/IPO.h for llvm::createInternalizePass.

- clang::DiagClient has be renamed to clang::DiagnosticConsumer.
Besides, we have to implement one additional pure virtual method
'clone' for create a clone of slang::DiagnosticBuffer.

- llvm::Linker::LinkModules comes with one additional parameter.
Passing llvm::Linker::DestroySource should be equivalent to
the old code we were using.

- slang::Slang is now derived from clang::ModuleLoader and implemented
loadModule pure virtual method (though we will always return NULL.)

- clang::Preprocessor is taking one additional parameter for
clang::ModuleLoader.

- clang::Diagnostic has been changed. A lot of the method has been
moved to clang::DiagnosticsEngine, and we can no longer 'Report' a
diagnostic from clang::Diagnostic. We have to use
clang::DiagnosticEngine instead.

- llvm::setCodeModel has been removed.

Change-Id: I1f2a4cbeaf61a8ed1d0d635a5a0e1baa90d99d07
/frameworks/compile/slang/slang_backend.cpp
4cc499d6e5ec602309501873449c938af61170b2 25-Aug-2011 Stephen Hines <srhines@google.com> Start basic support for LLVM 2.9 bitcode writer.

Change-Id: I6a54158a32e485f506f0b991f89125b8a0e60267
/frameworks/compile/slang/slang_backend.cpp
ab992e59a36a18df49bf4878968ef0598299afd3 20-Jul-2011 Logan Chien <loganchien@google.com> Apply changes to migrate to llvm upstream r135568.

- Remove the const qualifier of llvm::Type and
llvm::PointerType due to the API change.

- Update the relocation model setup code, since
llvm::TargetMachine changes the API.

- Qualify dyn_cast with llvm namespace.

Change-Id: I4820fb86effc3a62569e19a6a8753ba9e960f6b2
/frameworks/compile/slang/slang_backend.cpp
18c8829f2bd3cbe0d02471588c6643c0a8c6ca3c 15-Jul-2011 Stephen Hines <srhines@google.com> Remove all explicit ArrayRef constructors.

Related BUG=5028838

Change-Id: I5867f8e5d7097ef349a6d1eda1681b0014ac66c9
/frameworks/compile/slang/slang_backend.cpp
77703262b9c2fecc22287ca236daa72b2cea7d27 02-Jul-2011 Shih-wei Liao <sliao@google.com> Fix API changes of llvm::SubtargetFeatures.

Change-Id: If9503dfb2bb368f95020bc2ba0652a3ca4ab6d28
/frameworks/compile/slang/slang_backend.cpp
fcc654a1f4034978f7534479f9c5c33a92ca8546 22-Jun-2011 Shih-wei Liao <sliao@google.com> Fix llvm API changes to migrate to upstream r131807.

Now, llvm doesn't provide create*Passes() interface and removes StandardPasses.h.
Instead, we use PassManagerBuilder to replace StandardPasses.

Change-Id: I0979afd0ecb9bf2df6634aaff0a8c9a32d405f71
/frameworks/compile/slang/slang_backend.cpp
83f0c6261efc8f397fc2509e3862bc6d0eb1e1c4 21-Jun-2011 Shih-wei Liao <sliao@google.com> Apply API changes to migrate to CLANG upstream.

Change-Id: I376a8a24c238c4e27d37c4f846b93e2f6e38d79c
/frameworks/compile/slang/slang_backend.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_backend.cpp
3fd0a94a5cf1656569b1aea07043cc63939dcb46 18-Jan-2011 Stephen Hines <srhines@google.com> Refactor pragma handling (pass everything to LLVM)

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

Change-Id: I26e043849bce2a4b41ae132fbe0c882f4a6f112f
/frameworks/compile/slang/slang_backend.cpp
68fc02ca4a7235e2981be5eee4ad968a9d3928c0 13-Oct-2010 Zonr Chang <zonr@google.com> Add two new APIs in HandleTranslationUnitPre and HandleTranslationUnitPost.

Refer to the comments in slang_backend.h for detail.
/frameworks/compile/slang/slang_backend.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_backend.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_backend.cpp
3a9ca1f0d6bd8f12c2bb2adea51f95c255996180 06-Oct-2010 Zonr Chang <zonr@google.com> Provide better abstraction of class Slang.

1. Remove the Slang C APIs support (not used by any other programs.)
2. All RS relatives are now in slang_rs_*.cpp.
/frameworks/compile/slang/slang_backend.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_backend.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_backend.cpp
cecd11d2af5d45d8ba322bed61fb48a99c305528 21-Sep-2010 Shih-wei Liao <sliao@google.com> Fix warnings. Bug fix.

Change-Id: I80934814ae64d11f0edebfa3b131164207f1aca0
/frameworks/compile/slang/slang_backend.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_backend.cpp
1fd8579fe65b13a26cfaad12d056d2fc9b46475a 07-Jul-2010 Kirk Stewart <kstewart@google.com> Add a command-line option to allow function names with the "rs" prefix (--allow-rs-prefix). When not specified, user-defined functions with that prefix will be treated as an error.

Change-Id: Ieefc8bb55d61980241d5392ffb32770a303ce6a7
/frameworks/compile/slang/slang_backend.cpp
2e534f22278bc2f98507436ca9ee4f8b2af54eab 15-Jun-2010 Shih-wei Liao <sliao@google.com> Change Diagnostic::Error to Diagnostic::Warning for now. The long-term solution should provide a slang option to toggle between Error and Warning.

Change-Id: I16b7f91ef03310112f86b147937a5a0eb0054005
/frameworks/compile/slang/slang_backend.cpp
336d93a7f079c86d9b43e1e1cfb539a11c5e130b 11-Jun-2010 Kirk Stewart <kstewart@google.com> Use llvm::StringRef::startswith rather than std::string::compare,
as per Nick's suggestion.

Change-Id: If5855dfb33831989adb0cd6e512550e12a9dd983
/frameworks/compile/slang/slang_backend.cpp
6b22674f4ef0a6c689c589830f1c44f443520785 11-Jun-2010 Kirk Stewart <kstewart@google.com> Add a check to prevent users from defining function names starting
witih "rs".

Change-Id: I2801d50b11439b37dd875957683bbf180c8df34a
/frameworks/compile/slang/slang_backend.cpp
6322c93178711b935af4ffbfe5066d10280d26ba 11-Jun-2010 Kirk Stewart <kstewart@google.com> Use pre-existing clang code to produce errors for un-prototyped functions.

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

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