Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Make a major restructuring of the clang tree: introduce a top-level | Chris Lattner | 2008-03-15 | 1 | -509/+0 |
| | | | | | | | | | | lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402 | ||||
* | add initial support for generating an llvm.globalctors list. Patch by David ↵ | Chris Lattner | 2008-03-14 | 1 | -0/+54 |
| | | | | | | Chisnall llvm-svn: 48362 | ||||
* | Propagate calling convention information to function declarations and CallInst | Nate Begeman | 2008-03-09 | 1 | -2/+8 |
| | | | | | | instructions. llvm-svn: 48077 | ||||
* | Fix a fixme by allowing pointers in different address spaces to have | Chris Lattner | 2008-03-08 | 1 | -6/+2 |
| | | | | | | different widths. Start simplifying TargetInfo accessor methods. llvm-svn: 48050 | ||||
* | remove the source location arguments to various target query methods. | Chris Lattner | 2008-03-05 | 1 | -3/+3 |
| | | | | llvm-svn: 47954 | ||||
* | Add a bunch of attributes, patch by Nuno Lopes. | Chris Lattner | 2008-03-03 | 1 | -17/+30 |
| | | | | llvm-svn: 47837 | ||||
* | Add codegen support for ObjC message expressions with the GNU runtime. | Chris Lattner | 2008-03-01 | 1 | -1/+8 |
| | | | | | | Patch by David Chisnall! llvm-svn: 47789 | ||||
* | Implement CodeGenModule::getMemSetFn method. | Lauro Ramos Venancio | 2008-02-19 | 1 | -1/+13 |
| | | | | llvm-svn: 47346 | ||||
* | A global without initializer must be emitted as weak. | Lauro Ramos Venancio | 2008-02-19 | 1 | -0/+3 |
| | | | | | | Fix Olden/bh test. llvm-svn: 47292 | ||||
* | Fix PR1992 by computing the right type for string literals, which | Chris Lattner | 2008-02-11 | 1 | -6/+3 |
| | | | | | | | | is an array type not a pointer type. This requires updating some diags that change and updating the code generator to handle the proper form of strings. llvm-svn: 46941 | ||||
* | sink more of the type related code into CodeGenTypes. | Chris Lattner | 2008-02-06 | 1 | -18/+3 |
| | | | | llvm-svn: 46801 | ||||
* | rewrite some of the type refinement code to eliminate dangling pointers | Chris Lattner | 2008-02-05 | 1 | -0/+21 |
| | | | | | | simplify the code and generally make it more robust. llvm-svn: 46745 | ||||
* | Relax an assertion, fixing PR1968 | Chris Lattner | 2008-02-05 | 1 | -1/+12 |
| | | | | llvm-svn: 46742 | ||||
* | Add experimental support for address space qualified types. Address space | Christopher Lamb | 2008-02-04 | 1 | -3/+6 |
| | | | | | | qualifiers use the __attribute__((address_space(id))) syntax. llvm-svn: 46691 | ||||
* | fix codegen on static variables which have multiple decl nodes. These | Chris Lattner | 2008-02-02 | 1 | -1/+1 |
| | | | | | | | | | | | should be merged just like normal globals. This fixes this testcase that Anders provided: static struct s a; static struct s *ap1 = &a; static struct s a = { 10 }; llvm-svn: 46661 | ||||
* | Factor out the constant generation into its own file. | Anders Carlsson | 2008-01-26 | 1 | -343/+2 |
| | | | | llvm-svn: 46386 | ||||
* | Add more support for Apple's "private extern" extension... | Steve Naroff | 2008-01-25 | 1 | -0/+1 |
| | | | | llvm-svn: 46371 | ||||
* | Support checking and codegen of constant vector globals | Nate Begeman | 2008-01-25 | 1 | -1/+11 |
| | | | | llvm-svn: 46343 | ||||
* | Add first pieces of support for parsing and representing | Chris Lattner | 2008-01-12 | 1 | -0/+10 |
| | | | | | | extern "C" in C++ mode. Patch by Mike Stump! llvm-svn: 45904 | ||||
* | implement proper support for _Bool in memory, which is usually i8, not i1. | Chris Lattner | 2008-01-09 | 1 | -1/+1 |
| | | | | | | This fixes a crash reported by Seo Sanghyeon llvm-svn: 45778 | ||||
* | implement codegen support for most unary operators when | Chris Lattner | 2007-12-29 | 1 | -1/+36 |
| | | | | | | | initializing a global. This handles important cases like: float foo3 = -0.01f; llvm-svn: 45427 | ||||
* | Don't attribute in file headers anymore. See llvmdev for the | Chris Lattner | 2007-12-29 | 1 | -2/+2 |
| | | | | | | discussion of this change. llvm-svn: 45410 | ||||
* | local static vars are globals also. This fixes a testcase | Chris Lattner | 2007-12-18 | 1 | -5/+7 |
| | | | | | | reported by Seo. llvm-svn: 45156 | ||||
* | introduce a new CodeGenModule::getIntrinsic method, which wraps | Chris Lattner | 2007-12-18 | 1 | -1/+7 |
| | | | | | | Intrinsic::getDeclaration, allowing much more terse code. llvm-svn: 45136 | ||||
* | add a hack so that codegen doesn't abort on missing sema of initializers, now | Chris Lattner | 2007-12-17 | 1 | -1/+15 |
| | | | | | | | | | | | | | | | we emit stuff like this: abort on missing sema of initializers, now we emit stuff like this: t3.c:1:24: warning: cannot codegen this initializer yet const char x[2][4] = { { 'a', 'b', '\0', '\0' }, { 'c', 'd', 'e', '\0' } }; ^~~~~~~~~~~~~~~~~~~~~~~~ This should be removed when sema is finished. llvm-svn: 45086 | ||||
* | Update to use new PointerType::getUnqual() api. | Christopher Lamb | 2007-12-17 | 1 | -2/+2 |
| | | | | llvm-svn: 45081 | ||||
* | builtin id 0 is invalid, don't use a slot for it. | Chris Lattner | 2007-12-13 | 1 | -4/+6 |
| | | | | llvm-svn: 44968 | ||||
* | fix off-by-one error. | Chris Lattner | 2007-12-12 | 1 | -1/+1 |
| | | | | llvm-svn: 44963 | ||||
* | TargetInfo no longer includes a reference to SourceManager. | Ted Kremenek | 2007-12-12 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | Moved all clients of Diagnostics to use FullSourceLoc instead of SourceLocation. Added many utility methods to FullSourceLoc to provide shorthand for: FullLoc.getManager().someMethod(FullLoc.getLocation()); instead we have: FullLoc.someMethod(); Modified TextDiagnostics (and related classes) to use this short-hand. llvm-svn: 44957 | ||||
* | Mega-patch: ripped SourceManager out of Diagnostic/DiagnosticClient. Now | Ted Kremenek | 2007-12-11 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | SourceManager is passed by reference, allowing the SourceManager to be associated with a specific translation unit, and not the entire execution of the driver. Modified all users of Diagnostics to comply with this new interface. Integrated SourceManager as a member variable of TargetInfo. TargetInfo will eventually be associated with a single translation unit (just like SourceManager). Made the SourceManager reference in ASTContext private. Provided accessor getSourceManager() for clients to use instead. Modified clients to comply with new interface. llvm-svn: 44878 | ||||
* | Reimplement support for strings that initialize global inits now that | Chris Lattner | 2007-12-11 | 1 | -34/+26 |
| | | | | | | the types are right in sema. Thanks Steve. llvm-svn: 44834 | ||||
* | add support for implicit cast from array to pointer that is not the element | Chris Lattner | 2007-12-10 | 1 | -1/+8 |
| | | | | | | type. llvm-svn: 44809 | ||||
* | abort when we lower an initializer to the wrong type, as we currently do for: | Chris Lattner | 2007-12-10 | 1 | -2/+2 |
| | | | | | | char text[] = "string"; llvm-svn: 44752 | ||||
* | extend or truncate the initializer for a string initializer to match its type. | Chris Lattner | 2007-12-10 | 1 | -6/+15 |
| | | | | llvm-svn: 44751 | ||||
* | Implement codegen support for: | Chris Lattner | 2007-12-09 | 1 | -0/+21 |
| | | | | | | | | char text[8] = "string"; Big fixme remains. llvm-svn: 44750 | ||||
* | implement support for functions that initialize globals. | Chris Lattner | 2007-12-09 | 1 | -6/+13 |
| | | | | llvm-svn: 44730 | ||||
* | Treat discarding array initializer elements as an extwarn (so ↵ | Christopher Lamb | 2007-12-02 | 1 | -8/+20 |
| | | | | | | -pedantic-errors flags it). Allow CodeGen to truncate the initializer if needed. llvm-svn: 44518 | ||||
* | globals can't be vla's | Chris Lattner | 2007-12-02 | 1 | -4/+2 |
| | | | | llvm-svn: 44512 | ||||
* | add codegen support for global inits that require array decay. | Chris Lattner | 2007-12-02 | 1 | -0/+21 |
| | | | | llvm-svn: 44511 | ||||
* | warn about unhandled initializers instead of crashing on them. | Chris Lattner | 2007-12-02 | 1 | -24/+32 |
| | | | | llvm-svn: 44510 | ||||
* | Handle global variable definitions which change the type of a definition, ↵ | Chris Lattner | 2007-12-02 | 1 | -28/+112 |
| | | | | | | | | | | | such as: extern int x[]; void foo() { x[0] = 1; } int x[10]; void bar() { x[0] = 1; } llvm-svn: 44509 | ||||
* | merge the llvm global variable when there are multiple C decls. | Chris Lattner | 2007-12-02 | 1 | -3/+10 |
| | | | | llvm-svn: 44507 | ||||
* | implement codegen for functions whose function body type don't match | Chris Lattner | 2007-12-02 | 1 | -0/+12 |
| | | | | | | their prototype. llvm-svn: 44506 | ||||
* | merge functions with multiple function decls if they have the same name. | Chris Lattner | 2007-12-02 | 1 | -0/+7 |
| | | | | llvm-svn: 44505 | ||||
* | Warn about unsupported codegen with the diags machinery, giving us: | Chris Lattner | 2007-12-02 | 1 | -2/+3 |
| | | | | | | | | | | | | | t.c:3322:5: warning: cannot codegen this yet __asm__ ("bswap %0" : "+r" (_data)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ instead of: Unimplemented stmt! (AsmStmt 0x80eaa0 <t.c:3331:5, line:3334:28>) llvm-svn: 44501 | ||||
* | Support initalisers for more than just int-typed static variables. | Oliver Hunt | 2007-12-02 | 1 | -4/+3 |
| | | | | | | | | We now use the CodeGenModule logic for generating the constant initialiser expression, so happily further initialiser fixes should automatically work for statics as well. llvm-svn: 44495 | ||||
* | Implement support for -fwritable-strings and make the code generator | Chris Lattner | 2007-11-28 | 1 | -25/+44 |
| | | | | | | merge string literals when it is not provided. llvm-svn: 44394 | ||||
* | improve codegen for global variable initializers, implementing | Chris Lattner | 2007-11-23 | 1 | -27/+227 |
| | | | | | | | | test/CodeGen/global-with-initialiser.c Patch by Oliver Hunt! llvm-svn: 44290 | ||||
* | Put constant CFStrings in the __DATA,__cfstring section. | Anders Carlsson | 2007-11-01 | 1 | -6/+7 |
| | | | | llvm-svn: 43593 | ||||
* | Take 2. | Devang Patel | 2007-10-31 | 1 | -3/+4 |
| | | | | | | | | Make target info available to clang code generator. This is far from complete but this helps clang codegen module make progress. At the moment target triplet and target description strings are hard coded in clang::TargetInfo llvm-svn: 43572 |