summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* If a virtual member function has the 'final' attribute, we can devirtualize ↵Anders Carlsson2010-10-271-4/+11
| | | | | | calls to it. llvm-svn: 117444
* Patch to provide guard when initializing instancesFariborz Jahanian2010-10-262-2/+15
| | | | | | | of static data member of a class template. Fixes //rdar :// 8562966 and pr8409. llvm-svn: 117410
* Extract procedures to do scalar-to-memory and memory-to-scalar conversionsJohn McCall2010-10-263-85/+128
| | | | | | | in IR gen, and use those to fix a correctness issue with bool atomic intrinsics. rdar://problem/8461234 llvm-svn: 117403
* Factor out the code for emitting code to load vtable pointer membersDan Gohman2010-10-264-15/+16
| | | | | | so that it's done in one place. llvm-svn: 117386
* Add infrastructure for emitting TBAA metadata with the "constant" flag.Dan Gohman2010-10-252-4/+16
| | | | llvm-svn: 117328
* Trim an unnecessary #include.Dan Gohman2010-10-251-1/+0
| | | | llvm-svn: 117321
* Factor out the code for creating the Root and Char nodes, so thatDan Gohman2010-10-252-26/+37
| | | | | | they can be used outside of the main getTBAAInfo function. llvm-svn: 117320
* After discussion with Doug and John, I am revertingFariborz Jahanian2010-10-223-27/+2
| | | | | | the patch. llvm-svn: 117159
* Substantially revise how clang computes the visibility of a declaration toJohn McCall2010-10-225-76/+18
| | | | | | | | more closely parallel the computation of linkage. This gets us to a state much closer to what gcc emits, modulo bugs, which will undoubtedly arise in abundance. llvm-svn: 117147
* Patch fixes miscompile with non-trivial copy constructors and Fariborz Jahanian2010-10-223-2/+27
| | | | | | statement expressions, //rdar: //8540501 llvm-svn: 117146
* Delay record type's debug info emission, in -flimit-debug-info mode, if ↵Devang Patel2010-10-221-1/+2
| | | | | | member expression's base is call expr. llvm-svn: 117127
* Revert unintentional check-in.Devang Patel2010-10-221-1/+1
| | | | llvm-svn: 117120
* Tidy up MIPS_linkage name. Provide it only if it does not match regular ↵Devang Patel2010-10-221-5/+18
| | | | | | | | name, otherwise it confuses debugger. This is tested by local.C in llvmgcc testsuite. llvm-svn: 117107
* More class anonymization.Benjamin Kramer2010-10-223-7/+11
| | | | llvm-svn: 117106
* Rename clang's TBAA tree root from "experimental" to "simple".Dan Gohman2010-10-211-1/+1
| | | | llvm-svn: 117046
* Add some more comments.Dan Gohman2010-10-212-4/+20
| | | | llvm-svn: 117043
* This patch implements Next's IRGen for -fconstant-string-class=class-name.Fariborz Jahanian2010-10-193-16/+28
| | | | | | PR6056, //rdar: //8564463 llvm-svn: 116819
* Fix Whitespace.Michael J. Spencer2010-10-195-126/+126
| | | | llvm-svn: 116798
* We shouldn't keep track of MMX registers "needed" separately from the SSEBill Wendling2010-10-181-21/+11
| | | | | | registers needed. llvm-svn: 116772
* Fix some bugs in local class mangling brought up in PR8355.John McCall2010-10-181-19/+21
| | | | | | Patch by Richard Smith! llvm-svn: 116752
* patch fixes class names missing from method names in debug information for Fariborz Jahanian2010-10-181-0/+2
| | | | | | synthesized property. // rdar: //8498026 llvm-svn: 116717
* Reapply r116684 with fixes. The test cases needed to be updated.Bill Wendling2010-10-181-12/+47
| | | | llvm-svn: 116696
* Temporarily revert r116684. It was causing failures with Bill Wendling2010-10-171-47/+12
| | | | | | | Clang :: CodeGen/x86_32-arguments-darwin.c Clang :: CodeGen/x86_32-arguments-linux.c llvm-svn: 116687
* The "gcc.dg/compat/vector-1 -m32" test was broken after the MMX rewrite. TheBill Wendling2010-10-171-12/+47
| | | | | | | | function parameters weren't converted to use the correct type (x86_mmx). Add a check, similar to the one in llvm-gcc, to see if we need the x86_mmx type for that function parameter. If so, it coerces the type to be that. llvm-svn: 116684
* Coding by inspection has its problems.John McCall2010-10-161-0/+2
| | | | llvm-svn: 116672
* objc_exception_rethrow does not take an exception argument.John McCall2010-10-161-23/+9
| | | | | | rdar://problem/8535238 llvm-svn: 116663
* Revert r116656, "IRgen/Obj-C/NeXT: Fix the IR signature forDaniel Dunbar2010-10-161-1/+1
| | | | | | | | objc_exception_rethrow, so we don't...", since something is actually trying to call this with the wrong signature (!). Unfortunately I don't understand the new EH infrastructure well enough to fix it immediately. llvm-svn: 116660
* IRgen/Obj-C/NeXT: Fix the IR signature for objc_exception_rethrow, so we don'tDaniel Dunbar2010-10-161-1/+1
| | | | | | generate unnecessary %al clear on x86_64. llvm-svn: 116656
* Mention the paragraphs in the standards which sanction TBAA.Dan Gohman2010-10-151-1/+5
| | | | llvm-svn: 116617
* Use a different name for pointer types in tbaa, to be a littleDan Gohman2010-10-151-2/+3
| | | | | | more consistent with other names, and to look less like a magic name. llvm-svn: 116616
* Add a comment.Dan Gohman2010-10-151-1/+3
| | | | llvm-svn: 116615
* Fix a typo in a comment Frits van Bommel spotted.Dan Gohman2010-10-151-1/+1
| | | | llvm-svn: 116614
* Experimental TBAA support for enum types.Dan Gohman2010-10-153-7/+38
| | | | llvm-svn: 116613
* Don't leak the TBAA object.Dan Gohman2010-10-151-0/+1
| | | | llvm-svn: 116595
* Add a comment about odd "signed char" incompatibility between C++ and C.Dan Gohman2010-10-151-1/+5
| | | | llvm-svn: 116593
* Death to blocks, or at least the word "block" in one particular obnoxiouslyJohn McCall2010-10-159-48/+46
| | | | | | ambiguous context. llvm-svn: 116567
* Update CMake.Daniel Dunbar2010-10-151-0/+1
| | | | llvm-svn: 116548
* Add a TBAA type for pointer types.Dan Gohman2010-10-151-0/+4
| | | | llvm-svn: 116544
* Unsigned types are TBAA-compatible with their signed counterparts.Dan Gohman2010-10-141-4/+18
| | | | | | Also, handle unknown types conservatively. llvm-svn: 116541
* Experimental TBAA support.Dan Gohman2010-10-147-10/+191
| | | | | | | This enables metadata generation by default, however the TBAA pass in the optimizer is still disabled for now. llvm-svn: 116536
* Use root non-virtual primary base class, not just immediate primary base ↵Devang Patel2010-10-141-1/+11
| | | | | | | | class, for AT_containing_type. This is tested by virtfunc.exp in gdb testsuite. llvm-svn: 116535
* Eliminate usage of ObjCSuperExpr used forFariborz Jahanian2010-10-145-19/+17
| | | | | | | 'super' as receiver of property or a setter/getter methods. //rdar: //8525788 llvm-svn: 116483
* Fix debug info for anon union. Devang Patel2010-10-122-12/+46
| | | | | | This is tested by anon-union.exp. llvm-svn: 116372
* Fixes a typo which caused byte offset in debug info Fariborz Jahanian2010-10-111-1/+1
| | | | | | for ivars to be 0. Fixes pr8353. llvm-svn: 116273
* Fix debug info for functions whose context is a namespace.Devang Patel2010-10-111-2/+6
| | | | | | This is tested by namespace.exp in gdb testsuite. llvm-svn: 116248
* Per discussion with Sanjiv, remove the PIC16 target from mainline. When/ifChris Lattner2010-10-111-73/+0
| | | | | | | it comes back, it will be largely a rewrite, so keeping the old codebase in tree isn't helping anyone. llvm-svn: 116191
* Make sure the VTables for template instantiations are emitted even if the ↵Argyrios Kyrtzidis2010-10-113-22/+30
| | | | | | key function doesn't have a body. llvm-svn: 116186
* Don't let typeinfo name symbols be 'internal hidden', it can lead to linker ↵Argyrios Kyrtzidis2010-10-111-1/+1
| | | | | | | | conflicts with similarly named classes in anonymous namespaces. llvm-svn: 116185
* lib/CodeGen/CodeGenModule.cpp: DLLImportLinkage should be processed also on ↵NAKAMURA Takumi2010-10-111-1/+3
| | | | | | | | declaration. It enables clang to compile Mingw's headers. llvm-svn: 116184
* Implement __builtin_ia32_vec_ext_v2si function (required by Qt).Argyrios Kyrtzidis2010-10-101-0/+3
| | | | llvm-svn: 116162
OpenPOWER on IntegriCloud