Skip to content
  1. Aug 12, 2009
  2. Aug 11, 2009
  3. Aug 10, 2009
  4. Aug 09, 2009
  5. Aug 08, 2009
    • Chris Lattner's avatar
      eliminate TargetLoweringObjectFileSparc in favor of a TAI hook. · c9ea8fdd
      Chris Lattner authored
      A TAI hook is appropriate in this case because this is just an
      asm syntax issue, not a semantic difference. TLOF should model
      the semantics of the section.
      
      llvm-svn: 78498
      c9ea8fdd
    • Jakob Stoklund Olesen's avatar
      Don't build illegal ops in DAGCombiner::SimplifyBinOpWithSameOpcodeHands(). · dc6bccba
      Jakob Stoklund Olesen authored
      Blackfin supports and/or/xor on i32 but not on i16. Teach
      DAGCombiner::SimplifyBinOpWithSameOpcodeHands to not produce illegal nodes
      after legalize ops.
      
      llvm-svn: 78497
      dc6bccba
    • Bruno Cardoso Lopes's avatar
      ELF improvements: · 72dd2eef
      Bruno Cardoso Lopes authored
      Handle large integers, x86_fp80, ConstantAggregateZero, and two more ConstantExpr:
      GetElementPtr and IntToPtr
      Set SHF_MERGE bit for mergeable strings
      Avoid zero initialized strings to be classified as a bss symbol
      Don't allow common symbols to be classified as STB_WEAK
      Add a constant to be used as a global value offset in data relocations 
      
      llvm-svn: 78476
      72dd2eef
    • Jakob Stoklund Olesen's avatar
      Clean out per-function data after the machine code verifier is done with it. · dcf009ca
      Jakob Stoklund Olesen authored
      Also don't dereference old pointers after they have been deleted causing
      random crashes when enabling the machine code verifier.
      
      Ahem...
      
      I have not included a test case for the crash. It hapened when enabling the
      verifier on CodeGen/X86/2009-08-06-branchfolder-crash.ll.
      
      The crash depends on an MBB being allocated at the same address as a
      previously deleted MBB. I don't think that can be reproduced reliably.
      
      llvm-svn: 78472
      dcf009ca
    • Jakob Stoklund Olesen's avatar
      Update the machine code verifier to keep up with the scavenger. · 2d59cfff
      Jakob Stoklund Olesen authored
      * Cleaner handling of <undef>.
      * <def> takes precedence over <def,dead>.
      * Implement the OK-to-redefine-a-register-that-was-
        live-in-but-has-not-been-used-before rule.
      
      llvm-svn: 78467
      2d59cfff
    • Jakob Stoklund Olesen's avatar
      Remove RegisterScavenger::isSuperRegUsed(). This completely reverses the mistaken commit r77904. · 8e96c6ab
      Jakob Stoklund Olesen authored
      Now there is no special treatment of instructions that redefine part of a
      super-register. Instead, the super-register is marked with <imp-use,kill> and
      <imp-def>. For instance, from LowerSubregs on ARM:
      
      subreg: CONVERTING: %Q1<def> = INSERT_SUBREG %Q1<undef>, %D1<kill>, 5
      subreg: %D2<def> = FCPYD %D1<kill>, 14, %reg0, %Q1<imp-def>
      
      subreg: CONVERTING: %Q1<def> = INSERT_SUBREG %Q1, %D0<kill>, 6
      subreg: %D3<def> = FCPYD %D0<kill>, 14, %reg0, %Q1<imp-use,kill>, %Q1<imp-def>
      llvm-svn: 78466
      8e96c6ab
Loading