Skip to content
  1. Feb 07, 2014
  2. Feb 06, 2014
  3. Feb 05, 2014
  4. Feb 04, 2014
  5. Feb 01, 2014
  6. Jan 31, 2014
  7. Jan 30, 2014
    • David Woodhouse's avatar
      [x86] Fix signed relocations for i64i32imm operands · 0b6c9490
      David Woodhouse authored
      These should end up (in ELF) as R_X86_64_32S relocs, not R_X86_64_32.
      Kill the horrid and incomplete special case and FIXME in
      EncodeInstruction() and set things up so it can infer the signedness
      from the ImmType just like it can the size and whether it's PC-relative.
      
      llvm-svn: 200495
      0b6c9490
    • Timur Iskhodzhanov's avatar
    • Saleem Abdulrasool's avatar
      ARM IAS: support .object_arch · 4c4789be
      Saleem Abdulrasool authored
      The .object_arch directive indicates an alternative architecture to be specified
      in the object file.  The directive does *not* effect the enabled feature bits
      for the object file generation.  This is particularly useful when the code
      performs runtime detection and would like to indicate a lower architecture as
      the requirements than the actual instructions used.
      
      llvm-svn: 200451
      4c4789be
    • Saleem Abdulrasool's avatar
      ARM IAS: support .movsp · 5d962d31
      Saleem Abdulrasool authored
      .movsp is an ARM unwinding directive that indicates to the unwinder that a
      register contains an offset from the current stack pointer.  If the offset is
      unspecified, it defaults to zero.
      
      llvm-svn: 200449
      5d962d31
    • Saleem Abdulrasool's avatar
      ARM: suuport .tlsdescseq directive · 56e06e86
      Saleem Abdulrasool authored
      This enhances the ARMAsmParser to handle .tlsdescseq directives.  This is a
      slightly special relocation.  We must be able to generate them, but not consume
      them in assembly.  The relocation is meant to assist the linker in generating a
      TLS descriptor sequence.  The ELF target streamer is enhanced to append
      additional fixups into the current segment and that is used to emit the new
      R_ARM_TLS_DESCSEQ relocations.
      
      llvm-svn: 200448
      56e06e86
    • Saleem Abdulrasool's avatar
      ARM: support TLS descriptor relocations · a3f12bde
      Saleem Abdulrasool authored
      Add support for tlsdesc relocations which are part of the ABI, marked as
      experimental.  These relocations permit the linker to perform TLS reference
      optimizations.
      
      llvm-svn: 200447
      a3f12bde
    • Saleem Abdulrasool's avatar
      ARM: support tlscall relocations · 6e00ca88
      Saleem Abdulrasool authored
      This adds support for TLS CALL relocations.  TLS CALL relocations are used to
      indicate to the linker to generate appropriate entries to resolve TLS references
      via an appropriate function invocation (e.g. __tls_get_addr(PLT)).
      
      In order to accomodate the linker relaxation of the TLS access model for the
      references (GD/LD -> IE, IE -> LE), the relocation addend must be incomplete.
      This requires that the partial inplace value is also incomplete (i.e. 0).  We
      simply avoid the offset value calculation at the time of the fixup adjustment in
      the ARM assembler backend.
      
      llvm-svn: 200446
      6e00ca88
  8. Jan 29, 2014
    • David Majnemer's avatar
      MC: Better management of macro arguments · 91fc4c21
      David Majnemer authored
      The linux kernel makes uses of a GAS `feature' which substitutes nothing
      for macro arguments which aren't specified.
      
      Proper support for these kind of macro arguments necessitated a cleanup of
      differences between `GAS' and `Darwin' dialect macro processing.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2634
      
      llvm-svn: 200409
      91fc4c21
    • Matheus Almeida's avatar
      [mips][msa] Add fill.d instruction. · ec079d9e
      Matheus Almeida authored
      This instruction is only available on Mips64 cores
      that implement the MSA ASE.
      
      llvm-svn: 200400
      ec079d9e
    • Matheus Almeida's avatar
      [mips][msa] Add copy_{u,s}.d. · 74070327
      Matheus Almeida authored
      These instructions are only available on Mips64 cores
      that implement the MSA ASE.
      
      llvm-svn: 200398
      74070327
    • Renato Golin's avatar
      Enable EHABI by default · 8cea6e8f
      Renato Golin authored
      After all hard work to implement the EHABI and with the test-suite
      passing, it's time to turn it on by default and allow users to
      disable it as a work-around while we fix the eventual bugs that show
      up.
      
      This commit also remove the -arm-enable-ehabi-descriptors, since we
      want the tables to be printed every time the EHABI is turned on
      for non-Darwin ARM targets.
      
      Although MCJIT EHABI is not working yet (needs linking with the right
      libraries), this commit also fixes some relocations on MCJIT regarding
      the EH tables/lib calls, and update some tests to avoid using EH tables
      when none are needed.
      
      The EH tests in the test-suite that were previously disabled on ARM
      now pass with these changes, so a follow-up commit on the test-suite
      will re-enable them.
      
      llvm-svn: 200388
      8cea6e8f
    • David Majnemer's avatar
      MC: Reorganize macro MC test along dialect lines · ad5c1734
      David Majnemer authored
      This commit seeks to do two things:
       - Run the surfeit of tests under the Darwin dialect.  This ends up
         affecting tests which assumed that spaces could deliminate arguments.
       - The GAS dialect tests should limit their surface area to things that
         could plausibly work under GAS. For example, Darwin style arguments
         have no business being in such a test.
      
      llvm-svn: 200383
      ad5c1734
    • David Woodhouse's avatar
      Tests for mode switching · 7db3705f
      David Woodhouse authored
      1. test that inlineasm works
      2. test that relaxable instructions are re-encoded in the correct mode.
      
      llvm-svn: 200351
      7db3705f
  9. Jan 28, 2014
    • Matheus Almeida's avatar
      [mips] Fix ELF header flags. · 2e03f243
      Matheus Almeida authored
      As opposed to GCC/GAS the default ABI for Mips64 is n64.
      Compatibility bit should be set if o32 ABI is used when targeting Mips64.
      
      llvm-svn: 200332
      2e03f243
  10. Jan 27, 2014
    • Mark Seaborn's avatar
      ARM MC: Fix the initial DWARF CFI unwind info at the start of a function · ba86cf51
      Mark Seaborn authored
      This brings MC into line with GNU 'as' on ARM, and it brings the ARM
      target into line with most other LLVM targets, which declare the
      initial CFI state with addInitialFrameState().
      
      Without this, functions generated with .cfi_startproc/endproc on ARM
      will tend to cause GDB to abort with:
        gdb/dwarf2-frame.c:1132: internal-error: Unknown CFA rule.
      
      I've also tested this by comparing the output of "readelf -w" on the
      object files produced by llvm-mc and gas when given the .s file added
      here.
      
      This change is part of addressing PR18636.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2597
      
      llvm-svn: 200255
      ba86cf51
    • David Majnemer's avatar
      MC: Add support for .cfi_startproc simple · e035cf9c
      David Majnemer authored
      This commit allows LLVM MC to process .cfi_startproc directives when
      they are followed by an additional `simple' identifier. This signals to
      elide the emission of target specific CFI instructions that would
      normally occur initially.
      
      This fixes PR16587.
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D2624
      
      llvm-svn: 200227
      e035cf9c
  11. Jan 26, 2014
  12. Jan 25, 2014
    • Artyom Skrobov's avatar
    • Rafael Espindola's avatar
      This reverts commit r200064 and r200051. · 14d02fe5
      Rafael Espindola authored
      r200064 depends on r200051.
      
      r200051 is broken: I tries to replace .mips_hack_elf_flags, which is a good
      thing, but what it replaces it with is even worse.
      
      The new emitMipsELFFlags it adds corresponds to no assembly directive, is not
      marked as a hack and is not even printed to the .s file.
      
      The patch also introduces more uses of hasRawTextSupport.
      
      The correct way to remove .mips_hack_elf_flags is to have the mips target
      streamer handle the default flags (and command line options). That way the
      same code path is used for asm and obj. The streamer interface should *really*
      correspond to what is printed in the .s file.
      
      llvm-svn: 200078
      14d02fe5
    • Jack Carter's avatar
      [Mips] Move 2 test cases from MC to CodeGen. · 8150e141
      Jack Carter authored
      No code changes. Just reassignment of test case files.
      
      llvm-svn: 200064
      8150e141
    • Jack Carter's avatar
      [Mips] TargetStreamer ELF flag Support for default and commandline options. · ca2ae49d
      Jack Carter authored
      This patch uses a common MipsTargetSteamer interface for both 
      MipsAsmPrinter and MipsAsmParser for recording default and commandline
      driven directives that affect ELF header flags.
      
      It has been noted that the .ll tests affected by this patch belong in
      test/Codegen/Mips. I will move them in a separate patch.
      
      Also, a number of directives do not get expressed by AsmPrinter in the 
      resultant .s assembly such as setting the correct ASI. I have noted this
      in the tests and they will be addressed in later patches.
      
      llvm-svn: 200051
      ca2ae49d
  13. Jan 24, 2014
Loading