Index: trunk/abdev/BasicCompiler64/NumOpe_Arithmetic.cpp
===================================================================
--- trunk/abdev/BasicCompiler64/NumOpe_Arithmetic.cpp	(revision 226)
+++ trunk/abdev/BasicCompiler64/NumOpe_Arithmetic.cpp	(revision 228)
@@ -37,22 +37,28 @@
 			if(idCalc==CALC_ADDITION){
 				//addsd xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF2;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x58;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF2,
+					(char)0x0F,
+					(char)0x58,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 			else if(idCalc==CALC_SUBTRACTION){
 				//subsd xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF2;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x5C;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF2,
+					(char)0x0F,
+					(char)0x5C,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 			else if(idCalc==CALC_PRODUCT){
 				//mulsd xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF2;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x59;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF2,
+					(char)0x0F,
+					(char)0x59,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 
@@ -69,22 +75,28 @@
 			if(idCalc==CALC_ADDITION){
 				//addss xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF3;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x58;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF3,
+					(char)0x0F,
+					(char)0x58,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 			else if(idCalc==CALC_SUBTRACTION){
 				//subss xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF3;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x5C;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF3,
+					(char)0x0F,
+					(char)0x5C,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 			else if(idCalc==CALC_PRODUCT){
 				//mulss xmm_reg1,xmm_reg2
-				OpBuffer[obp++]=(char)0xF3;
-				OpBuffer[obp++]=(char)0x0F;
-				OpBuffer[obp++]=(char)0x59;
-				OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+				compiler.codeGenerator.PutOld(
+					(char)0xF3,
+					(char)0x0F,
+					(char)0x59,
+					(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+				);
 			}
 
@@ -104,5 +116,5 @@
 		if(idCalc==CALC_ADDITION){
 			//add reg1,reg2
-			compiler.codeGenerator.op_add64_reg(reg1,reg2);
+			compiler.codeGenerator.op_add_RR(reg1,reg2);
 		}
 		else if(idCalc==CALC_SUBTRACTION){
@@ -214,6 +226,5 @@
 
 			//cqo
-			OpBuffer[obp++]=(char)0x48;
-			OpBuffer[obp++]=(char)0x99;
+			compiler.codeGenerator.op_cqo();
 		}
 		else{
@@ -294,8 +305,10 @@
 
 		//divsd xmm_reg1,xmm_reg2
-		OpBuffer[obp++]=(char)0xF2;
-		OpBuffer[obp++]=(char)0x0F;
-		OpBuffer[obp++]=(char)0x5E;
-		OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+		compiler.codeGenerator.PutOld(
+			(char)0xF2,
+			(char)0x0F,
+			(char)0x5E,
+			(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+		);
 
 		if(xmm_reg1==REG_XMM4){
@@ -310,8 +323,10 @@
 
 		//divss xmm_reg1,xmm_reg2
-		OpBuffer[obp++]=(char)0xF3;
-		OpBuffer[obp++]=(char)0x0F;
-		OpBuffer[obp++]=(char)0x5E;
-		OpBuffer[obp++]=(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2));
+		compiler.codeGenerator.PutOld(
+			(char)0xF3,
+			(char)0x0F,
+			(char)0x5E,
+			(char)(0xC0 | REGISTER_OPERAND(xmm_reg1)<<3 | REGISTER_OPERAND(xmm_reg2))
+		);
 
 		if(xmm_reg1==REG_XMM4){
@@ -390,6 +405,5 @@
 
 			//cqo
-			OpBuffer[obp++]=(char)0x48;
-			OpBuffer[obp++]=(char)0x99;
+			compiler.codeGenerator.op_cqo();
 		}
 		else{
