- Nov 05, 2007
-
-
Evan Cheng authored
register coalescer interface: RegisterCoalescing. llvm-svn: 43714
-
Ted Kremenek authored
llvm-svn: 43713
-
Chris Lattner authored
llvm-svn: 43712
-
Chris Lattner authored
llvm-svn: 43711
-
Ted Kremenek authored
llvm-svn: 43710
-
Duncan Sands authored
llvm-svn: 43709
-
Steve Naroff authored
Sema::ActOnClassMessage()...if a class method isn't found, lookup an instance method. Since all classes are also instances, this is appropriate. llvm-svn: 43708
-
Duncan Sands authored
llvm-svn: 43707
-
Steve Naroff authored
Declare objc_selector outside the prototype for objc_msgSend(), removing a silly warning. llvm-svn: 43706
-
Steve Naroff authored
Rewrite @selector(sel). llvm-svn: 43705
-
Steve Naroff authored
- change the synthesized typedef (for classes) to be of type "objc_object". - fix a couple bugs in RewriteObjCStringLiteral. - convert "Class" -> "id" in RewriteMessageExpr. llvm-svn: 43704
-
Evan Cheng authored
less than 16. This is a temporary solution until dynamic stack alignment is implemented. llvm-svn: 43703
-
Chris Lattner authored
llvm-svn: 43702
-
Chris Lattner authored
comments and feedback welcome. llvm-svn: 43701
-
Evan Cheng authored
llvm-svn: 43700
-
Evan Cheng authored
defined on the same instruction. This fixes PR1767. llvm-svn: 43699
-
Evan Cheng authored
llvm-svn: 43698
-
Bruno Cardoso Lopes authored
Removed all macro code for PIC (goodbye "la"). Support tested with shootout bench. llvm-svn: 43697
-
Gordon Henriksen authored
-emitbitcode option and the addition of -preverify. llvm-svn: 43696
-
Chris Lattner authored
llvm-svn: 43695
-
Gordon Henriksen authored
llvm-svn: 43694
-
Evan Cheng authored
llvm-svn: 43693
-
Evan Cheng authored
llvm-svn: 43692
-
Duncan Sands authored
that there is no padding. llvm-svn: 43691
-
Steve Naroff authored
Remove HandleObjcMetaDataEmission(), I inadvertantly resurrected it. llvm-svn: 43690
-
Chris Lattner authored
llvm-svn: 43689
-
Duncan Sands authored
should only effect x86 when using long double. Now 12/16 bytes are output for long double globals (the exact amount depends on the alignment). This brings globals in line with the rest of LLVM: the space reserved for an object is now always the ABI size. One tricky point is that only 10 bytes should be output for long double if it is a field in a packed struct, which is the reason for the additional argument to EmitGlobalConstant. llvm-svn: 43688
-
- Nov 04, 2007
-
-
Steve Naroff authored
Two additions... - Synthesize the funky cast for objc_msgSend(). For the basic case, it looks like... ((id (*)(id, SEL))(void *)objc_msgSend)(obj, sel); The "void *" cast is needed to workaround a GCC "bandaid" (Chris says it has something to do with the inliner). Without the extra "void *" cast, we get spurious warnings/notes that look like... xx.m:17: warning: function called through a non-compatible type xx.m:17: note: if this code is reached, the program will abort - Add prototypes for the ObjC functions we call, objc_msgSend/objc_getClass for now (don't depend on them being included). llvm-svn: 43685
-
Owen Anderson authored
llvm-svn: 43684
-
Gordon Henriksen authored
llvm-svn: 43683
-
Chris Lattner authored
llvm-svn: 43682
-
Chris Lattner authored
Evan, please review this. llvm-svn: 43680
-
Gordon Henriksen authored
llvm-svn: 43679
-
Gordon Henriksen authored
llvm-svn: 43678
-
Gordon Henriksen authored
removed. This document could still stand for significant improvement: * Editing the pass descriptions; most were lifted with minimal editing from comments. Although implementation details were elided, many of the were not written for the audience that would be interested in this document. * More "before and after" examples. * More implicit dependency details. (Perhaps listing transforms in -std-compile-opts order would help alleviate this.) * Adding documentation for how to invoke passes programmatically. * Rearranging the document into a more logical taxonomy. For instance, putting profiling passes together. llvm-svn: 43677
-
Nick Lewycky authored
llvm-svn: 43676
-
Gordon Henriksen authored
llvm-svn: 43675
-
Gordon Henriksen authored
Also cleaned up some comments in source files. llvm-svn: 43674
-
Gordon Henriksen authored
llvm-svn: 43673
-
Duncan Sands authored
or getTypeSizeInBits as appropriate in ScalarReplAggregates. The right change to make was not always obvious, so it would be good to have an sroa guru review this. While there I noticed some bugs, and fixed them: (1) arrays of x86 long double have holes due to alignment padding, but this wasn't being spotted by HasStructPadding (renamed to HasPadding). The same goes for arrays of oddly sized ints. Vectors also suffer from this, in fact the problem for vectors is much worse because basic vector assumptions seem to be broken by vectors of type with alignment padding. I didn't try to fix any of these vector problems. (2) The code for extracting smaller integers from larger ones (in the "int union" case) was wrong on big-endian machines for integers with size not a multiple of 8, like i1. Probably this is impossible to hit via llvm-gcc, but I fixed it anyway while there and added a testcase. I also got rid of some trailing whitespace and changed a function name which had an obvious typo in it. llvm-svn: 43672
-