Skip to content
  1. Jan 30, 2015
  2. Jan 26, 2015
    • Eric Christopher's avatar
      Move DataLayout back to the TargetMachine from TargetSubtargetInfo · 8b770651
      Eric Christopher authored
      derived classes.
      
      Since global data alignment, layout, and mangling is often based on the
      DataLayout, move it to the TargetMachine. This ensures that global
      data is going to be layed out and mangled consistently if the subtarget
      changes on a per function basis. Prior to this all targets(*) have
      had subtarget dependent code moved out and onto the TargetMachine.
      
      *One target hasn't been migrated as part of this change: R600. The
      R600 port has, as a subtarget feature, the size of pointers and
      this affects global data layout. I've currently hacked in a FIXME
      to enable progress, but the port needs to be updated to either pass
      the 64-bitness to the TargetMachine, or fix the DataLayout to
      avoid subtarget dependent features.
      
      llvm-svn: 227113
      8b770651
  3. Aug 04, 2014
  4. Jan 07, 2014
  5. Jan 03, 2014
    • Rafael Espindola's avatar
      Make the llvm mangler depend only on DataLayout. · 58873566
      Rafael Espindola authored
      Before this patch any program that wanted to know the final symbol name of a
      GlobalValue had to link with Target.
      
      This patch implements a compromise solution where the mangler uses DataLayout.
      This way, any tool that already links with Target (llc, clang) gets the exact
      behavior as before and new IR files can be mangled without linking with Target.
      
      With this patch the mangler is constructed with just a DataLayout and DataLayout
      is extended to include the information the Mangler needs.
      
      llvm-svn: 198438
      58873566
  6. Oct 29, 2013
  7. Dec 03, 2012
    • Chandler Carruth's avatar
      Use the new script to sort the includes of every file under lib. · ed0881b2
      Chandler Carruth authored
      Sooooo many of these had incorrect or strange main module includes.
      I have manually inspected all of these, and fixed the main module
      include to be the nearest plausible thing I could find. If you own or
      care about any of these source files, I encourage you to take some time
      and check that these edits were sensible. I can't have broken anything
      (I strictly added headers, and reordered them, never removed), but they
      may not be the headers you'd really like to identify as containing the
      API being implemented.
      
      Many forward declarations and missing includes were added to a header
      files to allow them to parse cleanly when included first. The main
      module rule does in fact have its merits. =]
      
      llvm-svn: 169131
      ed0881b2
  8. Feb 18, 2012
  9. Feb 07, 2012
  10. Jan 19, 2012
  11. Oct 05, 2010
  12. Oct 02, 2010
  13. May 01, 2010
  14. Mar 30, 2010
  15. Mar 13, 2010
  16. Mar 12, 2010
  17. Mar 10, 2010
  18. Jan 26, 2010
  19. Jan 16, 2010
  20. Dec 18, 2009
    • John McCall's avatar
      Pass the error string directly to llvm_unreachable instead of the residual · eabfd8b1
      John McCall authored
      (0 && "error").  Rough consensus seems to be that g++ *should* be diagnosing
      this because the pointer makes it not an ICE in c++03.  Everyone agrees that
      the current standard is silly and null-pointer-ness should not be based on
      ICE-ness.  Excellent fight scene in Act II, denouement weak, two stars.
      
      llvm-svn: 91644
      eabfd8b1
  21. Oct 21, 2009
Loading