llvm-project
d9274cdd - [AArch64][GlobalISel] Preserve scalar type when widening atomic G_STORE (#216162)

Commit
2 days ago
[AArch64][GlobalISel] Preserve scalar type when widening atomic G_STORE (#216162) Use `changeElementSizeTo` instead of `changeTo` in the G_STORE legalization rule for narrow atomic stores. `changeTo` changes the type of the stored value to generic `s32`, which can be propagated to its defining instruction. For example, this can turn an integer `G_AND` into an `s32` operation and prevent it from being correctly selected. Changing only the element size preserves the value's scalar type while still widening the value as required by the legalization rule.
Author
Parents
Loading