summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Begin simplifying handling of thunks.Anders Carlsson2010-03-121-67/+67
| | | | llvm-svn: 98329
* Give explicit template instantiations weak linkage (but don't deferDouglas Gregor2010-03-122-9/+12
| | | | | | them). Fixes PR6578. llvm-svn: 98328
* Keep track of Record context to ensure that record elements are properly ↵Devang Patel2010-03-111-1/+20
| | | | | | nested in debug info. llvm-svn: 98283
* fix PR6433, crash on va_arg of typedef.Chris Lattner2010-03-111-8/+9
| | | | llvm-svn: 98264
* Use the new vtable layout code for computing virtual base offset offsets.Anders Carlsson2010-03-111-15/+18
| | | | llvm-svn: 98257
* Correctly mangle address of member in template arguments. Fixes PR6460Rafael Espindola2010-03-111-20/+49
| | | | llvm-svn: 98254
* Rename getVirtualBaseOffsetIndex to getVirtualBaseOffsetOffset to reflect ↵Anders Carlsson2010-03-115-28/+30
| | | | | | what it actually does. llvm-svn: 98248
* When possible, use the vbase offset offsets from the most derived class ↵Anders Carlsson2010-03-111-3/+10
| | | | | | directly. llvm-svn: 98247
* Keep track of, and dump, vbase offset offsets.Anders Carlsson2010-03-111-15/+77
| | | | llvm-svn: 98245
* Fix tests.Anders Carlsson2010-03-111-1/+1
| | | | llvm-svn: 98242
* Run the new vtable builder for construction vtables as well now. Note that ↵Anders Carlsson2010-03-111-13/+10
| | | | | | we still don't use the data it generates. llvm-svn: 98239
* Support PPC-32 DWARF EH intrinisics. Thanks to rdivacky for his assistance.John McCall2010-03-111-0/+77
| | | | llvm-svn: 98206
* set alignment on static locals properly, patch by Arnaud de Grandmaison!Chris Lattner2010-03-101-0/+2
| | | | llvm-svn: 98204
* Fix calculation of whether a member function needs a thunk in construction ↵Anders Carlsson2010-03-101-13/+23
| | | | | | vtables. llvm-svn: 98191
* We were mistakenly marking morally virtual bases as being uninteresting. Fix ↵Anders Carlsson2010-03-101-5/+13
| | | | | | this. llvm-svn: 98180
* Ignore non-interesting bases when emitting construction vtables.Anders Carlsson2010-03-101-0/+11
| | | | llvm-svn: 98177
* Don't accidentally mark some functions in construction vtables as unused. ↵Anders Carlsson2010-03-101-30/+42
| | | | | | Also land the test for a previous checkin, now that it's correct. llvm-svn: 98139
* Create a new InjectedClassNameType to represent bare-word references to the John McCall2010-03-101-0/+1
| | | | | | | | | | | | | injected class name of a class template or class template partial specialization. This is a non-canonical type; the canonical type is still a template specialization type. This becomes the TypeForDecl of the pattern declaration, which cleans up some amount of code (and complicates some other parts, but whatever). Fixes PR6326 and probably a few others, primarily by re-establishing a few invariants about TypeLoc sizes. llvm-svn: 98134
* When building construction vtables, we need to check if a primary virtual ↵Anders Carlsson2010-03-101-7/+29
| | | | | | base is actually a primary virtual base in the layout class. llvm-svn: 98131
* Improve vcall offset handling in construction vtables. With this we layout ↵Anders Carlsson2010-03-101-21/+58
| | | | | | the construction vtables from the ABI examples correctly. llvm-svn: 98127
* Delay codegen of vtables when handling implicit instantiations.Rafael Espindola2010-03-104-26/+44
| | | | | | This fixes PR6474. llvm-svn: 98123
* Use SmallString instead of alloca.Devang Patel2010-03-101-2/+3
| | | | llvm-svn: 98112
* Fix file reference for derived and composite types. Now, dwarf writer uses ↵Devang Patel2010-03-091-41/+38
| | | | | | strict verifier that ignores debug info for such types if their file info is unknown. llvm-svn: 98096
* More then one anonymous aggregates on one line creates chaos when MDNode ↵Devang Patel2010-03-092-7/+7
| | | | | | | | uniquness is combined with RAUW operation. Right solution is to avoid using RAUW. This fixes PR 6554. llvm-svn: 98083
* Use getLast() instead of getBasename().Devang Patel2010-03-091-1/+1
| | | | llvm-svn: 98072
* Start using DIFile. Corresponding llvm patch is r98020.Devang Patel2010-03-092-150/+129
| | | | llvm-svn: 98021
* add a codegen hack to work around an AST bug, allowing us to compile theChris Lattner2010-03-081-2/+12
| | | | | | code in PR6537. This should be reverted when the ast bug is fixed. llvm-svn: 97981
* Avoid using DIDescriptor.isNull(). Devang Patel2010-03-081-4/+4
| | | | llvm-svn: 97976
* Revert r97949.Devang Patel2010-03-081-4/+4
| | | | llvm-svn: 97964
* Avoid DIDescriptor.isNull() checks.Devang Patel2010-03-081-4/+4
| | | | llvm-svn: 97949
* Extend ObjCMessageExpr for class method sends with the source locationDouglas Gregor2010-03-081-1/+1
| | | | | | of the class name. llvm-svn: 97943
* Perform overload resolution when static_cast'ing from aDouglas Gregor2010-03-071-0/+10
| | | | | | | pointer-to-member-to-derived to a pointer-to-member-to-base. Fixes PR6072. llvm-svn: 97923
* Don't turn off mangling in implicitly extern "C" system headers. GCCDouglas Gregor2010-03-071-6/+0
| | | | | | | | | doesn't do this on any of the major platforms, and we don't really support any of the platforms that do (nor will we actually handle those headers well). Fixes PR6217; see PR6530 for details on what we would need to do to support these platforms. llvm-svn: 97899
* Add a message to these asserts.Benjamin Kramer2010-03-061-3/+3
| | | | llvm-svn: 97873
* Use static method in GlobalValueRafael Espindola2010-03-061-11/+1
| | | | llvm-svn: 97872
* PR6515: Implement __builtin_signbit and friends.Eli Friedman2010-03-061-0/+17
| | | | | | | I'm reasonably sure my implementation is correct, but it would be nice if someone could double-check. llvm-svn: 97864
* Implement __builtin_dwarf_sp_column for i386 (Darwin and not), x86-64 (all),John McCall2010-03-065-0/+120
| | | | | | | and ARM. Implement __builtin_init_dwarf_reg_size_table for i386 (both) and x86-64 (all). llvm-svn: 97859
* add support for a 1<<29 bit in the block flags field to mark blocks using ↵Blaine Garst2010-03-052-3/+18
| | | | | | alternate struct return ABI llvm-svn: 97775
* Don't produce an alias for a destructor if the target is weak.Rafael Espindola2010-03-051-0/+16
| | | | | | This fixes bootstrap on ELF systems :-) llvm-svn: 97773
* really fix 6473 by handling weakref in constant expressions.Rafael Espindola2010-03-041-1/+3
| | | | llvm-svn: 97750
* Fix PR6473.Rafael Espindola2010-03-043-0/+66
| | | | | | | | | Clang's support for weakref is now better than llvm-gcc's :-) We don't introduce a new symbol and we correctly mark undefined references weak only if there is no definition or regular undefined references in the same file. llvm-svn: 97733
* Revert changes r97693, r97700, and r97718.John McCall2010-03-044-35/+8
| | | | | | Our testing framework can't deal with disabled targets yet. llvm-svn: 97719
* Refactor local class name mangling and make itFariborz Jahanian2010-03-043-15/+25
| | | | | | ABI conforming. llvm-svn: 97702
* Implement __builtin_dwarf_sp_column().John McCall2010-03-041-0/+15
| | | | llvm-svn: 97700
* Create a TargetMachine whenever we create a CodeGenAction. The codegen ofJohn McCall2010-03-043-8/+20
| | | | | | some builtins will rely on target knowledge. llvm-svn: 97693
* Fix code gen bug generating code forFariborz Jahanian2010-03-031-0/+2
| | | | | | ((id)cat)->isa. Fixes radar 7709015. llvm-svn: 97672
* fix PR6475, we were doing side-effecting stuff in an assert.Chris Lattner2010-03-031-6/+5
| | | | llvm-svn: 97669
* Implements mangling of local class names toFariborz Jahanian2010-03-031-13/+58
| | | | | | | | fix a code gen crash. This is WIP as not all ABI cases are covered (there is a FIXME to this effect). Fixes radar 7696748. llvm-svn: 97658
* add framework for ARM builtins, Patch by Edmund Grimley Evans!Chris Lattner2010-03-032-0/+16
| | | | llvm-svn: 97656
* Sketch out an implementation for __builtin_dwarf_cfa. I have no ideaJohn McCall2010-03-031-0/+18
| | | | | | why the front-end is calculating the argument to llvm.eh.dwarf.cfa(). llvm-svn: 97653
OpenPOWER on IntegriCloud