Skip to content
  1. Sep 07, 2012
    • Chad Rosier's avatar
      Fix indent. · 1f57bcb1
      Chad Rosier authored
      llvm-svn: 163416
      1f57bcb1
    • Chad Rosier's avatar
      b759ede9
    • Benjamin Kramer's avatar
      MC: Overhaul handling of .lcomm · 47f9ec92
      Benjamin Kramer authored
      - Darwin lied about not supporting .lcomm and turned it into zerofill in the
        asm parser. Push the zerofill-conversion down into macho-specific code.
      - This makes the tri-state LCOMMType enum superfluous, there are no targets
        without .lcomm.
      - Do proper error reporting when trying to use .lcomm with alignment on a target
        that doesn't support it.
      - .comm and .lcomm alignment was parsed in bytes on COFF, should be power of 2.
      - Fixes PR13755 (.lcomm crashes on ELF).
      
      llvm-svn: 163395
      47f9ec92
  2. Sep 06, 2012
  3. Sep 05, 2012
  4. Aug 29, 2012
  5. Aug 25, 2012
  6. Aug 24, 2012
  7. Aug 23, 2012
  8. Aug 17, 2012
    • Bill Wendling's avatar
      Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to · 34bc34ec
      Bill Wendling authored
      make it more consistent with its intended semantics.
      
      The `linker_private_weak_def_auto' linkage type was meant to automatically hide
      globals which never had their addresses taken. It has nothing to do with the
      `linker_private' linkage type, which outputs the symbols with a `l' (ell) prefix
      among other things.
      
      The intended semantic is more like the `linkonce_odr' linkage type.
      
      Change the name of the linkage type to `linkonce_odr_auto_hide'. And therefore
      changing the semantics so that it produces the correct output for the linker.
      
      Note: The old linkage name `linker_private_weak_def_auto' will still parse but
      is not a synonym for `linkonce_odr_auto_hide'. This should be removed in 4.0.
      <rdar://problem/11754934>
      
      llvm-svn: 162114
      34bc34ec
  9. Aug 14, 2012
  10. Aug 01, 2012
  11. Jul 28, 2012
  12. Jul 21, 2012
  13. Jul 13, 2012
  14. Jul 06, 2012
    • Alexey Samsonov's avatar
      Fix PR13202 and a regtest. · 39602781
      Alexey Samsonov authored
      DwarfDebug class could generate the same (inlined) DIVariable twice:
      1) when trying to find abstract debug variable for a concrete inlined instance.
      2) when explicitly collecting info for variables that were optimized out.
      
      This change makes sure that this duplication won't happen and makes
      Clang pass "gdb.opt/inline-locals" test from gdb testsuite.
      
      Reviewed by Eric Christopher.
      
      llvm-svn: 159811
      39602781
  15. Jul 04, 2012
  16. Jun 29, 2012
  17. Jun 28, 2012
  18. Jun 22, 2012
  19. Jun 21, 2012
    • Jack Carter's avatar
      The inline asm operand modifier 'n' is suppose · c457f620
      Jack Carter authored
      to be generic across architectures. It has the
      following description in the gnu sources:
      
          Negate the immediate constant
      
      Several Architectures such as x86 have local implementations
      of operand modifier 'n' which go beyond the above description
      slightly. This won't affect them.
      
      Affected files:
      
          lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
              Added 'n' to the switch cases.
      
          test/CodeGen/Generic/asm-large-immediate.ll
              Generic compiled test (x86 for me)
      
          test/CodeGen/Mips/asm-large-immediate.ll
              Mips compiled version of the generic one
      
      Contributer: Jack Carter
      llvm-svn: 158939
      c457f620
    • Jack Carter's avatar
      The inline asm operand modifier 'c' is suppose · b2fd5f66
      Jack Carter authored
      to be generic across architectures. It has the
      following description in the gnu sources:
      
          Substitute immediate value without immediate syntax
      
      Several Architectures such as x86 have local implementations
      of operand modifier 'c' which go beyond the above description
      slightly. To make use of the generic modifiers without overriding
      local implementation one can make a call to the base class method
      for AsmPrinter::PrintAsmOperand() in the locally derived method's 
      "default" case in the switch statement. That way if it is already
      defined locally the generic version will never get called.
      
      This change is needed when test/CodeGen/generic/asm-large-immediate.ll
      failed on a native Mips board. The test was assuming a generic
      implementation was in place.
      
      Affected files:
      
          lib/Target/Mips/MipsAsmPrinter.cpp:
              Changed the default case to call the base method.
          lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
              Added 'c' to the switch cases.
          test/CodeGen/Mips/asm-large-immediate.ll
              Mips compiled version of the generic one
      
      Contributer: Jack Carter
      llvm-svn: 158925
      b2fd5f66
  20. Jun 09, 2012
  21. Jun 02, 2012
    • Jakob Stoklund Olesen's avatar
      Switch all register list clients to the new MC*Iterator interface. · 54038d79
      Jakob Stoklund Olesen authored
      No functional change intended.
      
      Sorry for the churn. The iterator classes are supposed to help avoid
      giant commits like this one in the future. The TableGen-produced
      register lists are getting quite large, and it may be necessary to
      change the table representation.
      
      This makes it possible to do so without changing all clients (again).
      
      llvm-svn: 157854
      54038d79
  22. Jun 01, 2012
  23. May 27, 2012
  24. May 23, 2012
  25. May 22, 2012
  26. May 18, 2012
    • Jim Grosbach's avatar
      Refactor data-in-code annotations. · 4b63d2ae
      Jim Grosbach authored
      Use a dedicated MachO load command to annotate data-in-code regions.
      This is the same format the linker produces for final executable images,
      allowing consistency of representation and use of introspection tools
      for both object and executable files.
      
      Data-in-code regions are annotated via ".data_region"/".end_data_region"
      directive pairs, with an optional region type.
      
      data_region_directive := ".data_region" { region_type }
      region_type := "jt8" | "jt16" | "jt32" | "jta32"
      end_data_region_directive := ".end_data_region"
      
      The previous handling of ARM-style "$d.*" labels was broken and has
      been removed. Specifically, it didn't handle ARM vs. Thumb mode when
      marking the end of the section.
      
      rdar://11459456
      
      llvm-svn: 157062
      4b63d2ae
    • Eric Christopher's avatar
      Remove duplicate code that we could just fallthrough to. · e2b36ce2
      Eric Christopher authored
      llvm-svn: 157060
      e2b36ce2
Loading