llvm-capstone/llvm/test
Craig Topper 70046438d0 [RISCV] Only try LUI+SH*ADD+ADDI for int materialization if LUI+ADDI+SH*ADD failed.
There's an assert in LUI+SH*ADD+ADDI materialization that makes sure the
lower 12 bits aren't zero since that case should have been handled as
LUI+ADDI+SH*ADD. But nothing prevented the LUI+SH*ADD+ADDI checks from
running after the earlier code handled it.

The sequence would be the same length or longer so it wouldn't replace
the earlier sequence, but the assert happened before that was checked.

The vector holding the sequence also wasn't reset before the second
check so that guaranteed the sequence would never be found to be
shorter.

This patch fixes this by only trying the second expansion when the
earlier fails.

Fixes PR54812.

Reviewed By: benshi001

Differential Revision: https://reviews.llvm.org/D123406
2022-04-09 08:52:15 -07:00
..
Analysis [AArch64] Insert subvector costs 2022-04-07 19:27:41 +01:00
Assembler [AutoUpgrade] Don't upgrade intrinsics returning overloaded struct type 2022-03-30 17:27:26 +02:00
Bindings
Bitcode
BugPoint
CodeGen [RISCV] Only try LUI+SH*ADD+ADDI for int materialization if LUI+ADDI+SH*ADD failed. 2022-04-09 08:52:15 -07:00
DebugInfo [DebugInfo] Use DW_ATE_signed encoding when creating a Fortran 2022-04-07 07:00:56 -04:00
Demangle
Examples
ExecutionEngine [ORC] Fix handling of casts in llvm.global_ctors. 2022-04-07 17:06:38 -07:00
Feature
FileCheck
Instrumentation [DFSan] Add dfsan-combine-taint-lookup-table option as work around for 2022-04-05 11:05:10 -07:00
Integer
JitListener
Linker
LTO
MachineVerifier MachineVerifier: Diagnose undef set on full register defs 2022-04-05 22:19:17 -04:00
MC [MC][ELF] Improve st_size propagation rule 2022-04-08 10:06:44 -07:00
Object [AIX][XCOFF] print unsupported message for llvm-ar big archive write operation 2022-04-01 11:55:11 -04:00
ObjectYAML
Other [NewPM] Add OptimizerEarly module extension point 2022-03-31 08:22:27 -07:00
SafepointIRVerifier
Support
SymbolRewriter
TableGen
ThinLTO/X86 DebugInfo: Make the simplified template names prefix more unique 2022-04-06 18:25:46 +00:00
tools [X86] Fix SLM scheduler model for PMULLD (PR37059) 2022-04-08 10:07:06 +01:00
Transforms [VPlan] Model pre-header explicitly. 2022-04-09 14:19:47 +02:00
Unit
Verifier [VP] Add more cast VPintrinsic and docs. 2022-04-01 09:16:10 +08:00
YAMLParser
.clang-format
CMakeLists.txt
lit.cfg.py Revert "[CodeGen] Place SDNode debug ID declaration under appropriate #if" 2022-04-06 20:32:53 +03:00
lit.site.cfg.py.in Revert "[CodeGen] Place SDNode debug ID declaration under appropriate #if" 2022-04-06 20:32:53 +03:00
TestRunner.sh