Skip to content
  1. Nov 06, 2010
    • Chris Lattner's avatar
      correct suffix matching to search for s/l/t suffixes on · fab9413b
      Chris Lattner authored
      floating point stack instructions instead of looking for b/w/l/q.
      
      This fixes issues where we'd accidentally match fistp to fistpl,
      when it is in fact an ambiguous instruction.
      
      This changes the behavior of llvm-mc to reject fstp, which was the
      correct fix for rdar://8456389:
      t.s:1:1: error: ambiguous instructions require an explicit suffix (could be 'fstps', 'fstpl', or 'fstpt')
      fstp	(%rax)
      
      it also causes us to correctly reject fistp and fist, which addresses
      PR8528:
      
      t.s:2:1: error: ambiguous instructions require an explicit suffix (could be 'fistps', or 'fistpl')
      fistp (%rax)
      ^
      t.s:3:1: error: ambiguous instructions require an explicit suffix (could be 'fists', or 'fistl')
      fist (%rax)
      ^
      
      Thanks to Ismail Donmez for tracking down the issue here!
      
      llvm-svn: 118346
      fab9413b
    • Chris Lattner's avatar
      fix a bug where we had an implicit assumption that the · db6f90c6
      Chris Lattner authored
      result instruction operand numbering matched the result pattern.
      
      Fixing this allows us to move the xchg/test aliases to the .td file.
      
      llvm-svn: 118334
      db6f90c6
    • Chris Lattner's avatar
      move the lcall/ljmp aliases to the .td file. · aa7847df
      Chris Lattner authored
      llvm-svn: 118332
      aa7847df
    • Chris Lattner's avatar
      move the "movsd -> movsl" alias to the .td files, · 9535f90a
      Chris Lattner authored
      tidy up the movsx and movzx aliases.
      
      llvm-svn: 118331
      9535f90a
    • Chris Lattner's avatar
      fix some bugs in the alias support, unblocking changing of "clr" aliases · 8188fb26
      Chris Lattner authored
      from c++ hacks to proper .td InstAlias definitions.  Change them!
      
      llvm-svn: 118330
      8188fb26
    • Chris Lattner's avatar
      Reimplement BuildResultOperands to be in terms of the result instruction's · fecdad62
      Chris Lattner authored
      operand list instead of the operand list redundantly declared on the alias
      or instruction.
      
      With this change, we finally remove the ins/outs list on the alias.  Before:
        def : InstAlias<(outs GR16:$dst), (ins GR8 :$src),
                        "movsx $src, $dst",
                        (MOVSX16rr8W GR16:$dst, GR8:$src)>;
      After:
        def : InstAlias<"movsx $src, $dst",
                        (MOVSX16rr8W GR16:$dst, GR8:$src)>;
      
      This also makes the alias mechanism more general and powerful, which will
      be exploited in subsequent patches.
      
      llvm-svn: 118329
      fecdad62
  2. Nov 05, 2010
  3. Nov 04, 2010
  4. Nov 03, 2010
  5. Nov 02, 2010
  6. Nov 01, 2010
  7. Oct 31, 2010
  8. Oct 30, 2010
  9. Oct 29, 2010
  10. Oct 28, 2010
  11. Oct 27, 2010
Loading