Ver código fonte

Small improvement for inlining

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7045 8c9fc860-2736-0410-a75d-ab315db34111
felixf 8 anos atrás
pai
commit
f2685ee758
1 arquivos alterados com 6 adições e 2 exclusões
  1. 6 2
      source/FoxIntermediateBackend.Mod

+ 6 - 2
source/FoxIntermediateBackend.Mod

@@ -3361,8 +3361,12 @@ TYPE
 					Emit(Add(position,result.tag,left.tag,right.tag))
 				ELSE
 					InitOperand(result,ModeValue);
-					Reuse2a(result.op,left.op,right.op,dest);
-					Emit(Add(position,result.op,left.op,right.op));
+					IF SemanticChecker.IsIntegerType(leftType) THEN 
+						AddInt(result.op, left.op, right.op) ;
+					ELSE
+						Reuse2a(result.op,left.op,right.op,dest);
+						Emit(Add(position,result.op,left.op,right.op));
+					END;
 				END;
 				ReleaseOperand(left); ReleaseOperand(right);
 			|Scanner.Minus: