diff options
author | Farzon Lotfi <farzonlotfi@microsoft.com> | 2025-02-27 07:35:14 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-27 10:35:14 -0500 |
commit | dc764f5c689f5ee436b5835f8f8ccaea84317e03 (patch) | |
tree | 1e137510a772e4f859eb149229ccc40dc019ed9e /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 3afc3f43f0ba155e9655367c8bfa25eff5dfaf0f (diff) | |
download | llvm-dc764f5c689f5ee436b5835f8f8ccaea84317e03.zip llvm-dc764f5c689f5ee436b5835f8f8ccaea84317e03.tar.gz llvm-dc764f5c689f5ee436b5835f8f8ccaea84317e03.tar.bz2 |
[DirectX] initialize registers properties by calling addRegisterClass and computeRegisterProperties (#128818)
This fixes #126784 for the DirectX backend.
This bug was marked critical for DX so it is going to go in first. At
least one register class needs to be added via `addRegisterClass` for
`RegClassForVT` to be valid.
Further for costing information used by loop unroll and other
optimizations to be valid we need to call `computeRegisterProperties`.
This change does both of these.
The test cases confirm that we can fetch costing information off of
`getRegisterInfo` and that `DirectXTargetLowering` maps `i32` typed
registers to `DXILClassRegClass`.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions