Skip to content
  1. Jan 03, 2018
    • Hans Wennborg's avatar
      Remove left-over debug printout from r321692 · 79985490
      Hans Wennborg authored
      Besides the unsightly print-out, it was causing some buildbots to fail,
      e.g. http://lab.llvm.org:8011/builders/clang-x86-windows-msvc2015/builds/9311
      
      llvm-svn: 321711
      79985490
    • Dmitry Venikov's avatar
      [InstSimplify] Missed optimization in math expression: squashing exp(log), log(exp) · 3d8cd34a
      Dmitry Venikov authored
      Summary: This patch enables folding following expressions under -ffast-math flag: exp(log(x)) -> x, exp2(log2(x)) -> x, log(exp(x)) -> x, log2(exp2(x)) -> x
      
      Reviewers: spatel, hfinkel, davide
      
      Reviewed By: spatel, hfinkel, davide
      
      Subscribers: scanon, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D41381
      
      llvm-svn: 321710
      3d8cd34a
    • Alex Bradbury's avatar
      [ARM][NFC] Avoid recreating MCSubtargetInfo in ARMAsmBackend · 46db78b7
      Alex Bradbury authored
      After D41349, we can now directly access MCSubtargetInfo from 
      createARM*AsmBackend. This patch makes use of this, avoiding the need to 
      create a fresh MCSubtargetInfo (which was previously always done with a blank 
      CPU and feature string). Given the total size of the change remains pretty 
      tiny and we're removing the old explicit destructor, I changed the STI field 
      to a reference rather than a pointer.
      
      Differential Revision: https://reviews.llvm.org/D41693
      
      llvm-svn: 321707
      46db78b7
    • Florian Hahn's avatar
      [InstCombine] Add test to remove VarArg casts (NFC) · dcc0ba9b
      Florian Hahn authored
      llvm-svn: 321706
      dcc0ba9b
    • Hal Finkel's avatar
      [TableGen] Add support of Intrinsics with multiple returns · 8b4bdfdb
      Hal Finkel authored
      This change deals with intrinsics with multiple outputs, for example load
      instrinsic with address updated.
      
      DAG selection for Instrinsics could be done either through source code or
      tablegen. Handling all intrinsics in source code would introduce a huge chunk
      of repetitive code if we have a large number of intrinsic that return multiple
      values (see NVPTX as an example). While intrinsic class in tablegen supports
      multiple outputs, tablegen only supports Intrinsics with zero or one output on
      TreePattern. This appears to be a simple bug in tablegen that is fixed by this
      change.
      
      For Intrinsics defined as:
      
        def int_xxx_load_addr_updated: Intrinsic<[llvm_i32_ty, llvm_ptr_ty], [llvm_ptr_ty, llvm_i32_ty], []>;
      
      Instruction will be defined as:
      
        def L32_X: Inst<(outs reg:$d1, reg:$d2), (ins reg:$s1, reg:$s2), "ld32_x $d1, $d2, $s2", [(set i32:$d1, i32:$d2, (int_xxx_load_addr_updated i32:$s1, i32:$s2))]>;
      
      Patch by Wenbo Sun, thanks!
      
      Differential Revision: https://reviews.llvm.org/D32888
      
      llvm-svn: 321704
      8b4bdfdb
    • Sander de Smalen's avatar
      [AArch64][SVE] Asm: Add restricted register classes for SVE predicate vectors. · dc5e081b
      Sander de Smalen authored
      Summary:
      Add a register class for SVE predicate operands that can only be p0-p7 (as opposed to p0-p15)
      
      Patch [1/3] in a series to add predicated ADD/SUB instructions for SVE.
      
      Reviewers: rengolin, mcrosier, evandro, fhahn, echristo, olista01, SjoerdMeijer, javed.absar
      
      Reviewed By: fhahn
      
      Subscribers: aemerson, javed.absar, tschuett, kristof.beyls, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D41441
      
      llvm-svn: 321699
      dc5e081b
    • Alex Bradbury's avatar
      Fix build of WebAssembly and AVR backends after r321692 · 7c093bf1
      Alex Bradbury authored
      As experimental backends, I didn't have them configured to build in my local 
      build config.
      
      llvm-svn: 321696
      7c093bf1
    • Alex Bradbury's avatar
      Fix incorrect documentation comment left after r321692 · 86b99cb5
      Alex Bradbury authored
      TargetRegistryInfo::createMCAsmBackend no longer takes a TheTriple parameter. 
      The majory of the TargetRegistryInfo::create* functions have no or very 
      limitied per-parameter doc comments, and adding a comment for the 
      MCSubtargetInfo, MCRegisterInfo and MCTargetOptions parameters seems like it 
      would add no real value beyond reading the function signature. As such, I've 
      just deleted the doc comment for TheTriple.
      
      llvm-svn: 321694
      86b99cb5
    • Alex Bradbury's avatar
      Thread MCSubtargetInfo through Target::createMCAsmBackend · b22f751f
      Alex Bradbury authored
      Currently it's not possible to access MCSubtargetInfo from a TgtMCAsmBackend. 
      D20830 threaded an MCSubtargetInfo reference through 
      MCAsmBackend::relaxInstruction, but this isn't the only function that would 
      benefit from access. This patch removes the Triple and CPUString arguments 
      from createMCAsmBackend and replaces them with MCSubtargetInfo.
      
      This patch just changes the interface without making any intentional 
      functional changes. Once in, several cleanups are possible:
      * Get rid of the awkward MCSubtargetInfo handling in ARMAsmBackend
      * Support 16-bit instructions when valid in MipsAsmBackend::writeNopData
      * Get rid of the CPU string parsing in X86AsmBackend and just use a SubtargetFeature for HasNopl
      * Emit 16-bit nops in RISCVAsmBackend::writeNopData if the compressed instruction set extension is enabled (see D41221)
      
      This change initially exposed PR35686, which has since been resolved in r321026.
      
      Differential Revision: https://reviews.llvm.org/D41349
      
      llvm-svn: 321692
      b22f751f
    • Amara Emerson's avatar
      [GlobalISel][Legalizer] Fix legalization of llvm.smul.with.overflow · 9de62130
      Amara Emerson authored
      Previously the code for handling G_SMULO didn't properly check for the signed
      multiply overflow, instead treating it the same as the unsigned G_UMULO.
      
      Fixes PR35800.
      
      llvm-svn: 321690
      9de62130
    • Jake Ehrlich's avatar
      [llvm-objcopy] Add support for visibility · 30d927a1
      Jake Ehrlich authored
      I have no clue how this was missed when symbol table support was added. This
      change ensures that the visibility of symbols is preserved by default.
      
      llvm-svn: 321681
      30d927a1
  2. Jan 02, 2018
  3. Jan 01, 2018
Loading