RISCV: clean up target expression handling
The target specific expression handling was slightly regressed by bbea6425. This restores the proper sub-expression evaluation to allow for constant folding within the expression. We explicitly discard the layout and assembler when evaluating the expression to avoid any symbolic computation and instead using the `evaluateAsRelocatable` to canonicalise and constant fold only. We can also simplify the expression handling - none of the target variants support symbolic difference. This simplifies the logic for that and adds additional tests to ensure that we do not accidentally regress here in the future. Reviewed By: maskray Differential Revision: https://reviews.llvm.org/D104473
Loading
Please register or sign in to comment