Skip to content
  1. Aug 21, 2019
    • Chris Bieneman's avatar
      Autogenerate the shebang lines for tools/opt-viewer · 8d183848
      Chris Bieneman authored
      Summary:
      Since these files depend on the built python modules, they need to use
      the right python binary to run them. So use configure_file
      to set the right shebang line.
      
      Patch By: cbiesinger (Christian Biesinger)
      
      Reviewers: chandlerc, beanz, anemet
      
      Reviewed By: anemet
      
      Subscribers: compnerd, JDevlieghere, mgorny, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D65983
      
      llvm-svn: 369486
      8d183848
    • Amara Emerson's avatar
      [AArch64][GlobalISel] Add support for narrowScalar of G_ZEXT · 56606a4d
      Amara Emerson authored
      We do this by merging the source with the high bits set to 0.
      
      Differential Revision: https://reviews.llvm.org/D66181
      
      llvm-svn: 369480
      56606a4d
    • Nico Weber's avatar
      Remove llvm/utils/git/find-rev · 61eedd10
      Nico Weber authored
      It assumes git-svn, hasn't been touched in ages, and it's replaced
      by llvm-git in llvm/utils/git-svn.
      
      Differential Revision: https://reviews.llvm.org/D66193
      
      llvm-svn: 369478
      61eedd10
    • Nico Weber's avatar
      gn build: Merge r369467 · 6fa300aa
      Nico Weber authored
      llvm-svn: 369476
      6fa300aa
    • Amaury Sechet's avatar
      [X86] Automatically generate shift tests. NFC · 4ccf5ba9
      Amaury Sechet authored
      llvm-svn: 369475
      4ccf5ba9
    • Andrew Trick's avatar
      Add TinyPtrVector support for general pointer-like things. · 861b371e
      Andrew Trick authored
      In particular, make TinyPtrVector<PtrIntPair<T *, 1>> work. Remove all
      unnecessary assumptions that the element type has a formal "null"
      representation. The important property to maintain is that
      default-constructed element type has the same internal representation
      as the default-constructed PointerUnion (all zero bits).
      
      Remove the incorrect recursive behavior from
      PointerUnion::isNull. This was never generally correct because it only
      recursed over the first type parameter. With variadic templates it's
      completely unnecessary.
      
      llvm-svn: 369473
      861b371e
    • Sean Fertile's avatar
      Fix assert in XCOFFObjectWriter related to program code csects. · 9467734a
      Sean Fertile authored
      Removed code that added program code csects to a collection as part
      of addressing review comments, but I failed to update an assert affected
      by the change before commiting.
      
      llvm-svn: 369471
      9467734a
    • Stefan Stipanovic's avatar
      [Attributor] Liveness for internal functions. · 26121ae4
      Stefan Stipanovic authored
      For an internal function, if all its call sites are dead, the body of the function is considered dead.
      
      Reviewers: jdoerfert, uenoku
      
      Subscribers: hiraditya, llvm-commits
      
      Differential Revision: https://reviews.llvm.org/D66155
      
      llvm-svn: 369470
      26121ae4
    • Amaury Sechet's avatar
      [X86] Autogenerate vec_* tests. NFC · 33c283ad
      Amaury Sechet authored
      llvm-svn: 369469
      33c283ad
    • Alexandre Ganea's avatar
      [Sanitizer] Remove unused functions · 21e96030
      Alexandre Ganea authored
      Differential Revision: https://reviews.llvm.org/D66503
      
      llvm-svn: 369468
      21e96030
    • Daniel Sanders's avatar
      [RISCV GlobalISel] Adding initial GlobalISel infrastructure · a16bd4f9
      Daniel Sanders authored
      Summary:
      Add an initial GlobalISel skeleton for RISCV. It can only run ir translator for `ret void`.
      
      Patch by Andrew Wei
      
      Reviewers: asb, sabuasal, apazos, lenary, simoncook, lewis-revill, edward-jones, rogfer01, xiangzhai, rovka, Petar.Avramovic, mgorny, dsanders
      
      Reviewed By: dsanders
      
      Subscribers: pzheng, s.egerton, dsanders, hiraditya, rbar, johnrusso, niosHD, kito-cheng, shiva0217, jrtc27, MaskRay, zzheng, MartinMosbeck, brucehoult, the_o, PkmX, jocewei, psnobl, benna, Jim, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D65219
      
      llvm-svn: 369467
      a16bd4f9
    • Alina Sbirlea's avatar
      [MemorySSA] Make Phi cleanups consistent. · 2863721f
      Alina Sbirlea authored
      Summary:
      Make Phi cleanups consistent: remove self as a trivial Phi and
      recurse to potentially remove other trivial phis.
      
      Reviewers: george.burgess.iv
      
      Subscribers: Prazek, sanjoy.google, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D66454
      
      llvm-svn: 369466
      2863721f
    • Jessica Paquette's avatar
      [AArch64][GlobalISel] Select logical_imm32 and logical_imm64 patterns · e6c299b9
      Jessica Paquette authored
      Add a GlobalISel equivalent for the logical_imm32_XFORM and logical_imm64_XFORM
      SDNodeXForms in AArch64InstrFormats.td.
      
      - Add select-logical-imm.mir, which contains tests for each imported pattern.
      
      - Update select-pr32733.mir and select-scalar-shift-imm.mir, since they now
      select instructions of this form.
      
      Differential Revision: https://reviews.llvm.org/D66162
      
      llvm-svn: 369465
      e6c299b9
    • Alina Sbirlea's avatar
      [MemorySSA] Fix existing phis when inserting defs. · 1c528e8f
      Alina Sbirlea authored
      Summary:
      When inserting a new Def, and inserting Phis in the IDF when needed,
      also mark the already existing Phis in the IDF as non-optimized, since
      these may need fixing as well.
      In the test attached, there is a Phi in the IDF that happens to be
      trivial, and is wrongfully removed by the call to getLastDef that
      follows. This is a valid situation and the existing IDF Phis need to
      marked as "may need fixing" as well.
      Resolves PR43044.
      
      Reviewers: george.burgess.iv
      
      Subscribers: Prazek, sanjoy.google, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D66495
      
      llvm-svn: 369464
      1c528e8f
    • Sean Fertile's avatar
      Remove assert with tautological compare from XCOFFObjectWriter. · 89463fcf
      Sean Fertile authored
      Remove assert of 'Sec->getCSectType() <= 0x07u' added in r369454, since its
      always true.
      
      llvm-svn: 369462
      89463fcf
    • Jessica Paquette's avatar
      [AArch64][GlobalISel] Select patterns which use shifted register operands · 9a95e79b
      Jessica Paquette authored
      This adds GlobalISel equivalents for the following from AArch64InstrFormats:
      
      - arith_shifted_reg32
      - arith_shifted_reg64
      
      And partial support for
      
      - logical_shifted_reg32
      - logical_shifted_reg32
      
      The only thing missing for the logical cases is support for rotates. Other than
      the missing support, the transformation is identical for the arithmetic shifted
      register and the logical shifted register.
      
      Lots of tests here:
      
      - Add select-arith-shifted-reg.mir to show that we correctly select add and
      sub instructions which use this pattern.
      
      - Add select-logical-shifted-reg.mir to cover patterns which are not shared
      between the arithmetic and logical cases.
      
      - Update addsub-shifted.ll to show that we correctly fold shifts into
      adds/subs.
      
      - Update eon.ll to show that we can select the eon instruction by folding xors.
      
      Differential Revision: https://reviews.llvm.org/D66163
      
      llvm-svn: 369460
      9a95e79b
    • Craig Topper's avatar
      [DAGCombiner][X86] Teach visitCONCAT_VECTORS to combine (concat_vectors... · ba375263
      Craig Topper authored
      [DAGCombiner][X86] Teach visitCONCAT_VECTORS to combine (concat_vectors (concat_vectors X, Y), undef)) -> (concat_vectors X, Y, undef, undef)
      
      I also had to add a new combine to X86's combineExtractSubvector to prevent a regression.
      
      This helps our vXi1 code see the full concat operation and allow it optimize undef to a zero if there is already a zero in the concat. This helped us use a movzx instead of an AND in some of the tests. In those tests, one concat comes from SelectionDAGBuilder and the second comes from type legalization of v4i1->i4 bitcasts which uses an additional concat. Though these changes weren't my original motivation.
      
      I'm looking at making X86ISelLowering's narrowShuffle emit a concat_vectors instead of an insert_subvector since concat_vectors is more canonical during early DAG combine. This patch helps prevent a regression from my experiments with that.
      
      Differential Revision: https://reviews.llvm.org/D66456
      
      llvm-svn: 369459
      ba375263
    • Reid Kleckner's avatar
      Revert [WinEH] Allocate space in funclets stack to save XMM CSRs · 22fb7349
      Reid Kleckner authored
      This reverts r367088 (git commit 9ad565f7)
      
      And the follow up fix r368631 / e9865b9b
      
      llvm-svn: 369457
      22fb7349
    • Jessica Paquette's avatar
      Teach GlobalISelEmitter to treat used iPTRAny operands as pointer operands · 5c8a29fe
      Jessica Paquette authored
      Overloaded intrinsics can use iPTRAny in used/input operands.
      
      The GlobalISelEmitter doesn't know that these are pointers, so it treats them
      as scalars. As a result, these intrinsics can't be imported.
      
      This teaches the GlobalISelEmitter to recognize these as pointers rather than
      scalars.
      
      Differential Revision: https://reviews.llvm.org/D65756
      
      llvm-svn: 369455
      5c8a29fe
    • Sean Fertile's avatar
      Adds support for writing the .bss section for XCOFF object files. · 1e46d4ce
      Sean Fertile authored
      Adds Wrapper classes for MCSymbol and MCSection into the XCOFF target
      object writer. Also adds a class to represent the top-level sections, which we
      materialize in the ObjectWriter.
      
      executePostLayoutBinding will map all csects into the appropriate
      container depending on its storage mapping class, and map all symbols
      into their containing csect. Once all symbols have been processed we
      - Assign addresses and symbol table indices.
      - Calaculte section sizes.
      - Build the section header table.
      - Assign the sections raw-pointer value for non-virtual sections.
      
      Since the .bss section is virtual, writing the header table is enough to
      add support. Writing of a sections raw data, or of any relocations is
      not included in this patch.
      
      Testing is done by dumping the section header table, but it needs to be
      extended to include dumping the symbol table once readobj support for
      dumping auxiallary entries lands.
      
      Differential Revision: https://reviews.llvm.org/D65159
      
      llvm-svn: 369454
      1e46d4ce
  2. Aug 20, 2019
Loading