[all-commits] [llvm/llvm-project] a348f2: [ARM] Stop gluing ALU nodes to branches / selects ...

Sergei Barannikov via All-commits all-commits at lists.llvm.org
Fri Nov 29 21:14:45 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a348f223cab54b21a7b1c38dec7bc6aa2f81c949
      https://github.com/llvm/llvm-project/commit/a348f223cab54b21a7b1c38dec7bc6aa2f81c949
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-11-30 (Sat, 30 Nov 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMInstrFormats.td
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/lib/Target/ARM/ARMInstrVFP.td
    M llvm/test/CodeGen/ARM/add-like-or.ll
    M llvm/test/CodeGen/ARM/arm-shrink-wrapping.ll
    M llvm/test/CodeGen/ARM/atomic-64bit.ll
    M llvm/test/CodeGen/ARM/atomic-ops-v8.ll
    M llvm/test/CodeGen/ARM/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/ARM/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/ARM/atomicrmw_exclusive_monitor_ints.ll
    M llvm/test/CodeGen/ARM/bfi.ll
    M llvm/test/CodeGen/ARM/cmov_fp16.ll
    M llvm/test/CodeGen/ARM/cse-call.ll
    M llvm/test/CodeGen/ARM/cttz.ll
    M llvm/test/CodeGen/ARM/fadd-select-fneg-combine.ll
    M llvm/test/CodeGen/ARM/fcmp-xo.ll
    M llvm/test/CodeGen/ARM/fpclamptosat.ll
    M llvm/test/CodeGen/ARM/fpclamptosat_vec.ll
    M llvm/test/CodeGen/ARM/fpscr-multi-use.ll
    M llvm/test/CodeGen/ARM/fptoi-sat-store.ll
    M llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/ARM/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/ARM/funnel-shift-rot.ll
    M llvm/test/CodeGen/ARM/funnel-shift.ll
    M llvm/test/CodeGen/ARM/ifcvt1.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    M llvm/test/CodeGen/ARM/neon_vabd.ll
    M llvm/test/CodeGen/ARM/overflow-intrinsic-optimizations.ll
    M llvm/test/CodeGen/ARM/sadd_sat.ll
    M llvm/test/CodeGen/ARM/sadd_sat_plus.ll
    M llvm/test/CodeGen/ARM/select.ll
    M llvm/test/CodeGen/ARM/select_const.ll
    M llvm/test/CodeGen/ARM/shift-i64.ll
    M llvm/test/CodeGen/ARM/ssub_sat.ll
    M llvm/test/CodeGen/ARM/ssub_sat_plus.ll
    M llvm/test/CodeGen/ARM/sub-cmp-peephole.ll
    M llvm/test/CodeGen/ARM/uadd_sat.ll
    M llvm/test/CodeGen/ARM/uadd_sat_plus.ll
    M llvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/ARM/umulo-64-legalisation-lowering.ll
    M llvm/test/CodeGen/ARM/usub_sat.ll
    M llvm/test/CodeGen/ARM/usub_sat_plus.ll
    M llvm/test/CodeGen/ARM/vselect_imax.ll
    M llvm/test/CodeGen/ARM/wide-compares.ll
    M llvm/test/CodeGen/Thumb/arm_q15_to_q31.ll
    M llvm/test/CodeGen/Thumb/select.ll
    M llvm/test/CodeGen/Thumb/smul_fix_sat.ll
    M llvm/test/CodeGen/Thumb/stack-guard-xo.ll
    M llvm/test/CodeGen/Thumb/umul_fix_sat.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/arm_cmplx_dot_prod_f32.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/exitcount.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
    M llvm/test/CodeGen/Thumb2/float-ops.ll
    M llvm/test/CodeGen/Thumb2/mve-blockplacement.ll
    M llvm/test/CodeGen/Thumb2/mve-doublereduct.ll
    M llvm/test/CodeGen/Thumb2/mve-float16regloops.ll
    M llvm/test/CodeGen/Thumb2/mve-float32regloops.ll
    M llvm/test/CodeGen/Thumb2/mve-fmas.ll
    M llvm/test/CodeGen/Thumb2/mve-fpclamptosat_vec.ll
    M llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll
    M llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll
    M llvm/test/CodeGen/Thumb2/mve-gather-scatter-ptr-address.ll
    M llvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
    M llvm/test/CodeGen/Thumb2/mve-minmaxi.ll
    M llvm/test/CodeGen/Thumb2/mve-pipelineloops.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-ext.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-or.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-vctpvpsel.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
    M llvm/test/CodeGen/Thumb2/mve-pred-xor.ll
    M llvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-vcmpf.ll
    M llvm/test/CodeGen/Thumb2/mve-vcmpfr.ll
    M llvm/test/CodeGen/Thumb2/mve-vcmpfz.ll
    M llvm/test/CodeGen/Thumb2/mve-vmaxv-vminv-scalar.ll
    M llvm/test/CodeGen/Thumb2/mve-vqdmulh.ll
    M llvm/test/CodeGen/Thumb2/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/Thumb2/umulo-64-legalisation-lowering.ll

  Log Message:
  -----------
  [ARM] Stop gluing ALU nodes to branches / selects (#116970)

Following #116547 and #116676, this PR changes the type of results and
operands of some nodes to accept / return a normal type instead of Glue.

Unfortunately, changing the result type of one node requires changing
the operand types of all potential consumer nodes, which in turn
requires changing the result types of all other possible producer nodes.
So this is a bulk change.

Pull Request: https://github.com/llvm/llvm-project/pull/116970



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list