Skip to content
  1. Jan 10, 2014
  2. Jan 08, 2014
  3. Jan 07, 2014
    • Roman Divacky's avatar
      In the ELFWriter when writing aliased (.set) symbols dont blindly · 5a1c5499
      Roman Divacky authored
      take type from the new symbol but merge them so that the type
      is never "downgraded".
      
      This is probably quite rare, except for IFUNC symbols which
      we used to misassemble, losing the IFUNC type.
      
      Fixes #18372.
      
      llvm-svn: 198706
      5a1c5499
    • David Peixotto's avatar
      Add ARM fconsts/fconstd aliases for vmov.f32/vmov.f64 · a872e0e0
      David Peixotto authored
      This commit adds the pre-UAL aliases of fconsts and fconstd for
      vmov.f32 and vmov.f64. They use an InstAlias rather than a
      MnemonicAlias to properly support the predicate operand.
      
      We need to support encoded 8-bit constants in order to implement the
      pre-UAL fconsts/fconstd aliases for vmov.f32/vmov.f64, so this
      commit also fixes parsing of encoded floating point constants used
      in vmov.f32/vmov.f64 instructions. Now we can support assembly code
      like this:
      
        fconsts s0, #0x70
      
      which is equivalent to vmov.f32 s0, #1.0.
      
      Most of the code was already in place to support this feature.
      Previously the code was trying to accept encoded 8-bit float
      constants for the vmov.f32/vmov.f64 instructions.  It looks like the
      support for parsing encoded floats was lost in a refactoring in
      commit r148556 and we did not have any tests in place to catch it.
      
      The change in this commit is to keep the parsed value as a 32-bit
      float instead of a 64-bit double because that is what the isFPImm()
      function expects to find. There is no loss of precision by using a
      32-bit float here because we are still limited to an 8-bit encoded
      value in the end.
      
      Additionally, we explicitly reject encoded 8-bit floats for
      vmovf.32/64. This is the same as the current behavior, but we now do
      it explicitly rather than accidently.
      
      llvm-svn: 198697
      a872e0e0
    • Venkatraman Govindaraju's avatar
      [Sparc] Add support for parsing sparc asm modifiers such as %hi, %lo etc., · 559c4ac3
      Venkatraman Govindaraju authored
      Also, correct the offsets for FixupsKindInfo.
      
      llvm-svn: 198681
      559c4ac3
    • Saleem Abdulrasool's avatar
      ARM IAS: allow more depth in contextual diagnostics · 4cb063cb
      Saleem Abdulrasool authored
      Switch the context to be SmallVectors.  This allows for saving additional
      context when providing previous emission sites.
      
      llvm-svn: 198665
      4cb063cb
    • Saleem Abdulrasool's avatar
      ARM IAS: refactor unwind context · c493d149
      Saleem Abdulrasool authored
      Move the unwinding context for the ARM IAS into a helper class.  This is purely
      a structural refactoring.  A follow up change allows for recording additional
      depth to improve diagnostics.
      
      llvm-svn: 198664
      c493d149
    • Saleem Abdulrasool's avatar
      ARM IAS: improve .eabi_attribute handling · 87ccd367
      Saleem Abdulrasool authored
      Parse tag names as well as expressions.  The former is part of the
      specification, the latter is for improved compatibility with the GNU assembler.
      Fix attribute value handling to be comformant to the specification.
      
      llvm-svn: 198662
      87ccd367
    • Saleem Abdulrasool's avatar
      MCParser: introduce Note and use it for ARM AsmParser · 69c7caf6
      Saleem Abdulrasool authored
      Introduce a new virtual method Note into the AsmParser.  This completements the
      existing Warning and Error methods.  Use the new method to clean up the output
      of the unwind routines in the ARM AsmParser.
      
      llvm-svn: 198661
      69c7caf6
    • Venkatraman Govindaraju's avatar
      0458b599
    • Jack Carter's avatar
      [Mips] TargetStreamer Support for .abicalls and .set pic0. · 0cd3c19f
      Jack Carter authored
      This patch adds .abicalls and .set pic0 support which
      affects the ELF ABI and its flags. In addition the patch uses
      a common interface for both the MipsTargetSteamer and
      MipsObjectStreamer that both the integrated and standalone
      assemblers will use for the output for these directives.
      
      llvm-svn: 198646
      0cd3c19f
  4. Jan 06, 2014
    • Venkatraman Govindaraju's avatar
      dfcccc7d
    • Craig Topper's avatar
      Add OpSize16 bit, for instructions which need 0x66 prefix in 16-bit mode · 7ceb54a2
      Craig Topper authored
      The 0x66 prefix toggles between 16-bit and 32-bit addressing mode.
      So in 32-bit mode it is used to switch to 16-bit addressing mode for the
      following instruction, while in 16-bit mode it's the other way round — it's
      used to switch to 32-bit mode instead.
      
      Thus, emit the 0x66 prefix byte for OpSize only in 32-bit (and 64-bit) mode,
      and introduce a new OpSize16 bit which is used in 16-bit mode instead.
      
      This is just the basic infrastructure for that change; a subsequent patch
      will add the new OpSize16 bit to the 32-bit instructions that need it.
      
      Patch from David Woodhouse.
      
      llvm-svn: 198586
      7ceb54a2
    • Craig Topper's avatar
      [x86] Add basic support for .code16 · 3c80d62a
      Craig Topper authored
      This is not really expected to work right yet. Mostly because we will
      still emit the OpSize (0x66) prefix in all the wrong places, along with
      a number of other corner cases. Those will all be fixed in the subsequent
      commits.
      
      Patch from David Woodhouse.
      
      llvm-svn: 198584
      3c80d62a
  5. Jan 05, 2014
  6. Jan 03, 2014
  7. Jan 02, 2014
  8. Jan 01, 2014
  9. Dec 31, 2013
Loading