Skip to content
  1. Feb 25, 2011
  2. Feb 24, 2011
  3. Feb 23, 2011
  4. Feb 19, 2011
  5. Feb 15, 2011
  6. Feb 09, 2011
  7. Feb 04, 2011
  8. Feb 02, 2011
  9. Jan 30, 2011
  10. Jan 28, 2011
  11. Jan 24, 2011
  12. Jan 20, 2011
  13. Jan 14, 2011
  14. Jan 11, 2011
  15. Jan 10, 2011
  16. Jan 08, 2011
    • Evan Cheng's avatar
      Do not model all INLINEASM instructions as having unmodelled side effects. · 6eb516db
      Evan Cheng authored
      Instead encode llvm IR level property "HasSideEffects" in an operand (shared
      with IsAlignStack). Added MachineInstrs::hasUnmodeledSideEffects() to check
      the operand when the instruction is an INLINEASM.
      
      This allows memory instructions to be moved around INLINEASM instructions.
      
      llvm-svn: 123044
      6eb516db
  17. Jan 07, 2011
  18. Jan 06, 2011
  19. Jan 02, 2011
  20. Dec 19, 2010
  21. Dec 13, 2010
    • Chris Lattner's avatar
      remove the verbose-asm "constant pool double" comments that we were printing · f8d180b8
      Chris Lattner authored
      for each constant pool entry.  Using WriteTypeSymbolic here takes time
      proportional to the size of the module, for each constant pool entry.
      
      This speeds up -verbose-asm llc on 252.eon (a random testcase at my disposal)
      from 4.4s to 2.137s.  llc takes 2.11s with asm-verbose off, so this is now a
      pretty reasonable cost for verbose comments.
      
      llvm-svn: 121691
      f8d180b8
  22. Dec 09, 2010
  23. Dec 06, 2010
  24. Nov 29, 2010
  25. Nov 20, 2010
  26. Nov 19, 2010
  27. Nov 18, 2010
  28. Nov 17, 2010
    • Chris Lattner's avatar
      With the newly simplified SourceMgr interfaces and the generalized · 79ffdc75
      Chris Lattner authored
      SrcMgrDiagHandler, we can improve clang diagnostics for inline asm:
      instead of reporting them on a source line of the original line,
      we can report it on the correct line wherever the string literal came
      from. For something like this:
      
      void foo() {
        asm("push %rax\n"
            ".code32\n");
      }
      
      we used to get this: (note that the line in t.c isn't helpful)
      
      t.c:4:7: error: warning: ignoring directive for now
        asm("push %rax\n"
            ^
      <inline asm>:2:1: note: instantiated into assembly here
      .code32
      ^
      
      now we get:
      
      t.c:5:8: error: warning: ignoring directive for now
            ".code32\n"
             ^
      <inline asm>:2:1: note: instantiated into assembly here
      .code32
      ^
      
      Note that we're pointing to line 5 properly now.
      
      llvm-svn: 119488
      79ffdc75
Loading