[llvm] [SelectionDAG] NFC: Add target hooks to enable vector coercion in CopyToReg / CopyFromReg (PR #66134)

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 13 02:36:05 PDT 2023


RKSimon wrote:

When we get to lowering we see:
```
Type-legalized selection DAG: %bb.0 'f:entry'
SelectionDAG has 15 nodes:
  t0: ch,glue = EntryToken
              t2: i64,ch = CopyFromReg t0, Register:i64 %0
            t5: i32,ch = load<(load (s32) from %ir.b)> t0, t2, undef:i64
          t22: v8i32 = BUILD_VECTOR t5, undef:i32, undef:i32, undef:i32, undef:i32, undef:i32, undef:i32, undef:i32
        t18: v32i8 = bitcast t22
      t19: v32i8 = vector_shuffle<0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3> t18, undef:v32i8
    t12: v4i64 = bitcast t19
  t15: ch,glue = CopyToReg t0, Register:v4i64 $ymm0, t12
  t16: ch = X86ISD::RET_GLUE t15, TargetConstant:i32<0>, Register:v4i64 $ymm0, t15:1
```

https://github.com/llvm/llvm-project/pull/66134


More information about the llvm-commits mailing list