[all-commits] [llvm/llvm-project] a64466: [RISCV] XTHeadMemPair: Fix invalid mempair combine...
Philipp Tomsich via All-commits
all-commits at lists.llvm.org
Wed Feb 22 10:57:53 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a6446668a339c1f596c34118b90eeb6127e5b550
https://github.com/llvm/llvm-project/commit/a6446668a339c1f596c34118b90eeb6127e5b550
Author: Manolis Tsamis <manolis.tsamis at vrull.eu>
Date: 2023-02-22 (Wed, 22 Feb 2023)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/xtheadmempair.ll
Log Message:
-----------
[RISCV] XTHeadMemPair: Fix invalid mempair combine for types other than i32/i64
A mistake in the control flow of performMemPairCombine resulted in paired
loads/stores for types that were not supported by the instructions (i8/i16).
These loads/stores could not match the constraints of the patterns defined
in the THead td file and the compiler would throw a 'Cannot select' error.
This is now fixed and two new test functions have been added in xtheadmempair.ll
which would previously crash the compiler. The compiler was additionally tested
with a wide range of benchmarks and no issues were observed.
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D144559
More information about the All-commits
mailing list