Skip to content
  1. Oct 28, 2009
  2. Oct 27, 2009
  3. Oct 20, 2009
    • Dan Gohman's avatar
      Make TranslateX86CC return COND_INVALID instead of aborting when it · 4a43e306
      Dan Gohman authored
      encounters an OEQ or UNE comparison, and update its callers to check
      for this return status and recover. This fixes a problem resulting from
      the LowerOperation hooks being called from LegalizeVectorOps, because
      LegalizeVectorOps only lowers vectors, so OEQ and UNE comparisons may
      still be at large. This fixes PR5092.
      
      llvm-svn: 84640
      4a43e306
  4. Oct 19, 2009
  5. Oct 18, 2009
  6. Oct 17, 2009
  7. Oct 12, 2009
  8. Oct 08, 2009
  9. Sep 25, 2009
    • Dan Gohman's avatar
      Improve MachineMemOperand handling. · 48b185d6
      Dan Gohman authored
       - Allocate MachineMemOperands and MachineMemOperand lists in MachineFunctions.
         This eliminates MachineInstr's std::list member and allows the data to be
         created by isel and live for the remainder of codegen, avoiding a lot of
         copying and unnecessary translation. This also shrinks MemSDNode.
       - Delete MemOperandSDNode. Introduce MachineSDNode which has dedicated
         fields for MachineMemOperands.
       - Change MemSDNode to have a MachineMemOperand member instead of its own
         fields with the same information. This introduces some redundancy, but
         it's more consistent with what MachineInstr will eventually want.
       - Ignore alignment when searching for redundant loads for CSE, but remember
         the greatest alignment.
      
      Target-specific code which previously used MemOperandSDNodes with generic
      SDNodes now use MemIntrinsicSDNodes, with opcodes in a designated range
      so that the SelectionDAG framework knows that MachineMemOperand information
      is available.
      
      llvm-svn: 82794
      48b185d6
  10. Sep 23, 2009
  11. Sep 21, 2009
  12. Sep 20, 2009
  13. Sep 19, 2009
  14. Sep 18, 2009
    • Evan Cheng's avatar
      Enhance EmitInstrWithCustomInserter() so target can specify CFG changes that... · 270d0f98
      Evan Cheng authored
      Enhance EmitInstrWithCustomInserter() so target can specify CFG changes that sdisel will use to properly complete phi nodes.
      Not functionality change yet.
      
      llvm-svn: 82273
      270d0f98
    • Chris Lattner's avatar
      Make a new X8632_MachoTargetObjectFile TLOF implementation whose · 3a78ce3a
      Chris Lattner authored
      getSymbolForDwarfGlobalReference is smart enough to know that it 
      needs to register the stub it references with MachineModuleInfoMachO,
      so that it gets emitted at the end of the file.
      
      Move stub emission from X86ATTAsmPrinter::doFinalization to the
      new X86ATTAsmPrinter::EmitEndOfAsmFile asmprinter hook.  The important
      thing here is that EmitEndOfAsmFile is called *after* the ehframes are
      emitted, so we get all the stubs.
      
      This allows us to remove a gross hack from the asmprinter where it would
      "just know" that it needed to output stubs for personality functions.
      Now this is all driven from a consistent interface.
      
      The testcase change is just reordering the expected output now that the
      stubs come out after the ehframe instead of before.
      
      This also unblocks other changes that Bill wants to make.
      
      llvm-svn: 82269
      3a78ce3a
    • Dan Gohman's avatar
      Add support for using the FLAGS result of or, xor, and and instructions · 722b1eef
      Dan Gohman authored
      on x86, to avoid explicit test instructions. A few existing tests changed
      due to arbitrary register allocation differences.
      
      llvm-svn: 82263
      722b1eef
  15. Sep 16, 2009
    • Chris Lattner's avatar
      Big change #1 for personality function references: · b866602f
      Chris Lattner authored
      Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding
      fields from MAI: they aren't part of the asm syntax, they are
      related to the structure of the object file.
      
      To replace their functionality, add a new 
      TLOF::getSymbolForDwarfGlobalReference method which asks targets
      to decide how to reference a global from EH in a pc-relative way.
      
      The default implementation just returns the symbol.  The default
      darwin implementation references the symbol through an indirect
      $non_lazy_ptr stub.  The bizarro x86-64 darwin specialization
      handles the weird "foo@GOTPCREL+4" hack.
      
      DwarfException.cpp now uses this to emit the reference to the
      symbol in the right way, and this also eliminates another 
      horrible hack from DwarfException.cpp:
      
      -    if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL"))
      -      O << "-" << MAI->getPCSymbol();
      
      llvm-svn: 81991
      b866602f
  16. Sep 14, 2009
  17. Sep 06, 2009
  18. Sep 03, 2009
  19. Sep 02, 2009
  20. Aug 31, 2009
  21. Aug 29, 2009
  22. Aug 27, 2009
  23. Aug 22, 2009
  24. Aug 19, 2009
  25. Aug 18, 2009
  26. Aug 16, 2009
  27. Aug 15, 2009
Loading