Skip to content
  1. Nov 05, 2007
  2. Nov 04, 2007
    • Steve Naroff's avatar
      · f36987c7
      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
      f36987c7
    • Owen Anderson's avatar
      Another step of stronger PHI elimination down. · eea82746
      Owen Anderson authored
      llvm-svn: 43684
      eea82746
    • Gordon Henriksen's avatar
      Deleting -emitbitcode option which did nothing. · 35f398a9
      Gordon Henriksen authored
      llvm-svn: 43683
      35f398a9
    • Chris Lattner's avatar
      fix typos · 0e6b6749
      Chris Lattner authored
      llvm-svn: 43682
      0e6b6749
    • Chris Lattner's avatar
      Fix PR1761 by not printing (rip) suffix when in -static mode. · 9329e780
      Chris Lattner authored
      Evan, please review this.
      
      llvm-svn: 43680
      9329e780
    • Gordon Henriksen's avatar
      Validation fix. · ad45991a
      Gordon Henriksen authored
      llvm-svn: 43679
      ad45991a
    • Gordon Henriksen's avatar
      Typo fix. · c55d1f6c
      Gordon Henriksen authored
      llvm-svn: 43678
      c55d1f6c
    • Gordon Henriksen's avatar
      Completing Passes.html with the exception of -emitbitcode, which should be · 9f6c4c45
      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
      9f6c4c45
    • Nick Lewycky's avatar
      Fix crash before main on ppc/linux with static constructors. PR1771 · d954dcd1
      Nick Lewycky authored
      llvm-svn: 43676
      d954dcd1
    • Gordon Henriksen's avatar
      Fix a validation error. · a18a2763
      Gordon Henriksen authored
      llvm-svn: 43675
      a18a2763
    • Gordon Henriksen's avatar
      Finishing initial docs for all transformations in Passes.html. · d568767e
      Gordon Henriksen authored
      Also cleaned up some comments in source files.
      
      llvm-svn: 43674
      d568767e
    • Gordon Henriksen's avatar
      Removing a dead reference from LLVM.xcodeproj. · d210e9d8
      Gordon Henriksen authored
      llvm-svn: 43673
      d210e9d8
    • Duncan Sands's avatar
      Change uses of getTypeSize to getABITypeSize, getTypeStoreSize · 399d9798
      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
      399d9798
Loading