aboutsummaryrefslogtreecommitdiff
path: root/ARMeilleure/CodeGen/Optimizations/Simplification.cs
diff options
context:
space:
mode:
authorLDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com>2021-02-23 13:15:45 +0100
committerGitHub <noreply@github.com>2021-02-23 13:15:45 +0100
commitbcbf240d2eab2a2794224487d87519ac31016c96 (patch)
treed352060802864a34bb2c51db5aa89487f04165bc /ARMeilleure/CodeGen/Optimizations/Simplification.cs
parent0aea1e5cb01ee693bd806f29b49b40c37b256894 (diff)
PPTC: Fix unwanted propagation of a relocatable constant in a specific case. (#1990)
* Fix unwanted propagation of a relocatable constant in a specific case. * Ptc.InternalVersion = 1990 * Nit to retrigger the Checks.
Diffstat (limited to 'ARMeilleure/CodeGen/Optimizations/Simplification.cs')
-rw-r--r--ARMeilleure/CodeGen/Optimizations/Simplification.cs6
1 files changed, 6 insertions, 0 deletions
diff --git a/ARMeilleure/CodeGen/Optimizations/Simplification.cs b/ARMeilleure/CodeGen/Optimizations/Simplification.cs
index 7704f798..db32e993 100644
--- a/ARMeilleure/CodeGen/Optimizations/Simplification.cs
+++ b/ARMeilleure/CodeGen/Optimizations/Simplification.cs
@@ -12,6 +12,12 @@ namespace ARMeilleure.CodeGen.Optimizations
switch (operation.Instruction)
{
case Instruction.Add:
+ if (operation.GetSource(0).Relocatable ||
+ operation.GetSource(1).Relocatable)
+ {
+ break;
+ }
+
TryEliminateBinaryOpComutative(operation, 0);
break;