summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* Introduce CodeGenModule::GetTargetTypeStoreSize() to calculate the store sizeKen Dyck2010-01-264-7/+16
| | | | | | of LLVM types in character units. llvm-svn: 94542
* If a global variable has an initializer with side effects, it can never be ↵Anders Carlsson2010-01-261-3/+2
| | | | | | deferred (even if it's in an anonymous namespace). llvm-svn: 94525
* Fix another debug info crash with virtual bases.Anders Carlsson2010-01-261-4/+11
| | | | llvm-svn: 94520
* Fix the test I broke, and also fix a crash when declaring a virtual ↵Anders Carlsson2010-01-262-22/+26
| | | | | | destructor. Add debug info support for pure virtual member functions. llvm-svn: 94519
* Factor creating the DISubprogram for a member function out into a separate ↵Anders Carlsson2010-01-262-51/+68
| | | | | | function. llvm-svn: 94513
* Simplify CGDebugInfo::CollectCXXMemberFunctions a little. More to come.Anders Carlsson2010-01-261-6/+6
| | | | llvm-svn: 94511
* Make sure to always mark a global variable as not being constant if it has a ↵Anders Carlsson2010-01-261-1/+6
| | | | | | C++ initializer. llvm-svn: 94504
* Be sure to track the non-virtual part of the vcall offset in complexMike Stump2010-01-261-2/+5
| | | | | | | | | multiple inheritance cases. WIP. This fixes 20% of the outstanding problems found by the randomized tester. llvm-svn: 94499
* Fixup a missing vcall entry. WIP.Mike Stump2010-01-261-12/+257
| | | | llvm-svn: 94478
* First cut at emitting inheritance info.Devang Patel2010-01-252-1/+43
| | | | llvm-svn: 94473
* Emit debug info for virtual functions.Devang Patel2010-01-251-2/+12
| | | | llvm-svn: 94467
* global variable that binds reference to a non-lvalue reprotedFariborz Jahanian2010-01-251-2/+7
| | | | | | as NYI now. llvm-svn: 94453
* Fix a code gen. bug involving compiling global references.Fariborz Jahanian2010-01-251-2/+2
| | | | | | (fixes radar 7574896). llvm-svn: 94434
* fix rdar://7556129 a crash in blocks debug info codegen.Chris Lattner2010-01-251-2/+3
| | | | llvm-svn: 94402
* simplify code.Chris Lattner2010-01-252-23/+13
| | | | llvm-svn: 94401
* -fno-rtti is now the default.Chris Lattner2010-01-241-1/+0
| | | | llvm-svn: 94379
* Mangle static variables with an extra name to distinguish them from ↵Alexis Hunt2010-01-241-6/+11
| | | | | | | | non-static variables in the same TU. Fixes PR5966 for real this time; also reverts r92911, which had a incorrect fix. llvm-svn: 94352
* Fix a nasty bug where temporaries weren't marked as being conditional in ↵Anders Carlsson2010-01-242-0/+11
| | | | | | some cases. llvm-svn: 94341
* Add bzero builtin; this should help codegen quality for code using thisEli Friedman2010-01-231-0/+1
| | | | | | function. llvm-svn: 94320
* No need to terminate this buffer.Benjamin Kramer2010-01-231-4/+3
| | | | llvm-svn: 94313
* Created __builtin___NSStringMakeConstantString() builtin, which generates ↵David Chisnall2010-01-238-19/+46
| | | | | | constant Objective-C strings. llvm-svn: 94274
* Finish off fixing up debug information.Mike Stump2010-01-221-4/+4
| | | | llvm-svn: 94193
* Eliminate some Clang warningsDouglas Gregor2010-01-222-9/+9
| | | | llvm-svn: 94177
* Simplify code.Benjamin Kramer2010-01-221-18/+8
| | | | llvm-svn: 94175
* Ensure we output all non-virtual base vtables. Fixes PR5890.Mike Stump2010-01-221-29/+38
| | | | llvm-svn: 94163
* Update debugging code.Mike Stump2010-01-221-16/+18
| | | | llvm-svn: 94145
* Move the VTT related code into its own file, CGVTT.cppAnders Carlsson2010-01-213-378/+399
| | | | llvm-svn: 94079
* A Decl->getName() is not unique. However, the debug info descriptors Devang Patel2010-01-201-1/+8
| | | | | | | | | | are uniqued. The debug info descriptor describing record's context is necessary to keep two Decl's descriptor unique if their name match. There is more work to do to create descriptors for DeclContext. As a temp. step use type's name in FwdDecl. llvm-svn: 94050
* Emit human readable names for operators.Devang Patel2010-01-191-4/+3
| | | | llvm-svn: 93837
* First cut at emitting debugging information for C++ member functions.Devang Patel2010-01-192-2/+77
| | | | | | There is lot more work to do in this area. llvm-svn: 93836
* Use llvm::Function name as the linkage name, but strip off leading '01' from ↵Devang Patel2010-01-191-0/+2
| | | | | | display name. llvm-svn: 93822
* Refactor.Devang Patel2010-01-192-49/+62
| | | | llvm-svn: 93814
* llvm::Function name is the linkage name. If it has a '01' as a prefix then ↵Devang Patel2010-01-181-3/+0
| | | | | | probably there is a reason. llvm-svn: 93808
* More VTT builder fixes. With these fixes we now correctly handle the very ↵Anders Carlsson2010-01-181-1/+20
| | | | | | complex VTT example from the Itanium ABI spec. llvm-svn: 93725
* Move some common code into BuildVTT.Anders Carlsson2010-01-181-6/+3
| | | | llvm-svn: 93710
* Fix a bunch of VTT layout bugs, add simple tests for VTT layout.Anders Carlsson2010-01-181-4/+17
| | | | llvm-svn: 93709
* Minor VTT builder cleanup, no functionality change.Anders Carlsson2010-01-171-14/+12
| | | | llvm-svn: 93696
* Get the ctor vtable address points directly from the VTT builder.Anders Carlsson2010-01-171-2/+12
| | | | llvm-svn: 93681
* Add codgen for BI__builtin_llvm_memory_barrier.Tanya Lattner2010-01-161-0/+12
| | | | llvm-svn: 93611
* Fix crash generating debug info for constructor for anonymous struct.Eli Friedman2010-01-161-1/+1
| | | | llvm-svn: 93601
* Fix a couple bugs in copy assignment operator synthesis.Eli Friedman2010-01-151-12/+12
| | | | llvm-svn: 93546
* Convert the type of the LValue offset variable in APValue to CharUnits, movingKen Dyck2010-01-151-1/+1
| | | | | | the LValue-related methods of APValue out of line to avoid header file leaching. llvm-svn: 93512
* Emit linkage name even if it matches regular name. The code generator uses ↵Devang Patel2010-01-141-3/+3
| | | | | | linkage name to find subprogram entry for the current function. llvm-svn: 93461
* Add comment.Devang Patel2010-01-141-0/+3
| | | | llvm-svn: 93434
* Made ObjC method name mangling match GCC (which does it in a stupid and ↵David Chisnall2010-01-141-2/+5
| | | | | | broken way that can give conflicts on method names containing underscores, but is needed for gdb to work because gdb does not know how to read ObjC class tables and relies on the mangling). llvm-svn: 93427
* Store the address points for constructor vtables directly in the VTT ↵Anders Carlsson2010-01-142-24/+99
| | | | | | builder, because that's the only time they're needed. llvm-svn: 93412
* Add a DenseMapInfo specialization for BaseSubobject.Anders Carlsson2010-01-141-2/+37
| | | | llvm-svn: 93399
* Because CurLoc is the current source location as far as CGDebugInfo is ↵Devang Patel2010-01-141-1/+0
| | | | | | concerned. It is expected that this is set (usually left bracket location of function body compound statement) before EmitfunctionStart() is used. llvm-svn: 93389
* Emit human readable names for c/c++ functions. Avoid emitting linkage name ↵Devang Patel2010-01-143-15/+51
| | | | | | if it matches regular name. llvm-svn: 93383
* Add a BaseSubobject class to uniquely identify a base class subobject. Not ↵Anders Carlsson2010-01-131-0/+25
| | | | | | yet used. llvm-svn: 93345
OpenPOWER on IntegriCloud