Skip to content
  1. Jun 27, 2009
    • Chris Lattner's avatar
      remove a bunch of fixmes (old checking code) and commonize all the · 1ec3afdc
      Chris Lattner authored
      target-specific operand printing functionality.  Yay.
      
      llvm-svn: 74379
      1ec3afdc
    • Chris Lattner's avatar
      ae0acfce
    • Chris Lattner's avatar
      Reimplement rip-relative addressing in the X86-64 backend. The new · fea81da4
      Chris Lattner authored
      implementation primarily differs from the former in that the asmprinter
      doesn't make a zillion decisions about whether or not something will be
      RIP relative or not.  Instead, those decisions are made by isel lowering
      and propagated through to the asm printer.  To achieve this, we:
      
      1. Represent RIP relative addresses by setting the base of the X86 addr
         mode to X86::RIP.
      2. When ISel Lowering decides that it is safe to use RIP, it lowers to
         X86ISD::WrapperRIP.  When it is unsafe to use RIP, it lowers to
         X86ISD::Wrapper as before.
      3. This removes isRIPRel from X86ISelAddressMode, representing it with
         a basereg of RIP instead.
      4. The addressing mode matching logic in isel is greatly simplified.
      5. The asmprinter is greatly simplified, notably the "NotRIPRel" predicate
         passed through various printoperand routines is gone now.
      6. The various symbol printing routines in asmprinter now no longer infer
         when to emit (%rip), they just print the symbol.
      
      I think this is a big improvement over the previous situation.  It does have
      two small caveats though: 1. I implemented a horrible "no-rip" modifier for
      the inline asm "P" constraint modifier.  This is a short term hack, there is
      a much better, but more involved, solution.  2. I had to xfail an 
      -aggressive-remat testcase because it isn't handling the use of RIP in the
      constant-pool reading instruction.  This specific test is easy to fix without
      -aggressive-remat, which I intend to do next.
      
      llvm-svn: 74372
      fea81da4
    • Evan Cheng's avatar
      Add x86 support for 'n' inline asm modifier. This will be handled target... · 07b01685
      Evan Cheng authored
      Add x86 support for 'n' inline asm modifier. This will be handled target independently as part of MC work.
      
      llvm-svn: 74336
      07b01685
  2. Jun 26, 2009
  3. Jun 25, 2009
  4. Jun 24, 2009
  5. Jun 21, 2009
  6. Jun 20, 2009
  7. Jun 19, 2009
Loading