Browse Source

Patched issue with MOVW: 2^16 cannot be emitted

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@6901 8c9fc860-2736-0410-a75d-ab315db34111
felixf 8 years ago
parent
commit
802bb8ec11
1 changed files with 1 additions and 1 deletions
  1. 1 1
      source/FoxARMBackend.Mod

+ 1 - 1
source/FoxARMBackend.Mod

@@ -969,7 +969,7 @@ TYPE
 				IF doEmit THEN
 				IF doEmit THEN
 					Emit2(opMOV, targetRegister, InstructionSet.NewImmediate(value))
 					Emit2(opMOV, targetRegister, InstructionSet.NewImmediate(value))
 				END
 				END
-			ELSIF SupportMovW & (value >=0) & (value <= ASH(1,16)) THEN
+			ELSIF SupportMovW & (value >=0) & (value < ASH(1,16)) THEN
 				result := 1;
 				result := 1;
 				IF doEmit THEN
 				IF doEmit THEN
 					Emit2(opMOVW, targetRegister, InstructionSet.NewImmediate(value))
 					Emit2(opMOVW, targetRegister, InstructionSet.NewImmediate(value))