Rename some register defines to avoid conflict with sys headers (bug 5917, r=hamdinger).
1.1 --- a/extensions/bintools/jit_call.cpp Tue Oct 08 11:27:26 2013 -0400
1.2 +++ b/extensions/bintools/jit_call.cpp Tue Oct 08 21:01:21 2013 -0400
1.3 @@ -57,30 +57,30 @@
1.4 //mov esi, esp
1.5 //and esp, 0xFFFFFFF0
1.6 //sub esp, <alignment>
1.7 - IA32_Push_Reg(jit, REG_EBP);
1.8 - IA32_Mov_Reg_Rm(jit, REG_EBP, REG_ESP, MOD_REG);
1.9 + IA32_Push_Reg(jit, kREG_EBP);
1.10 + IA32_Mov_Reg_Rm(jit, kREG_EBP, kREG_ESP, MOD_REG);
1.11 if (!is_void)
1.12 {
1.13 - IA32_Push_Reg(jit, REG_EDI);
1.14 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EDI, REG_EBP, 12);
1.15 + IA32_Push_Reg(jit, kREG_EDI);
1.16 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EDI, kREG_EBP, 12);
1.17 }
1.18 if (has_params)
1.19 {
1.20 - IA32_Push_Reg(jit, REG_EBX);
1.21 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EBX, REG_EBP, 8);
1.22 + IA32_Push_Reg(jit, kREG_EBX);
1.23 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EBX, kREG_EBP, 8);
1.24 }
1.25 - IA32_Push_Reg(jit, REG_ESI);
1.26 - IA32_Mov_Reg_Rm(jit, REG_ESI, REG_ESP, MOD_REG);
1.27 - IA32_And_Rm_Imm8(jit, REG_ESP, MOD_REG, -16);
1.28 + IA32_Push_Reg(jit, kREG_ESI);
1.29 + IA32_Mov_Reg_Rm(jit, kREG_ESI, kREG_ESP, MOD_REG);
1.30 + IA32_And_Rm_Imm8(jit, kREG_ESP, MOD_REG, -16);
1.31
1.32 if (!jit->outbase)
1.33 {
1.34 /* Alloc this instruction before knowing the real stack usage */
1.35 - IA32_Sub_Rm_Imm32(jit, REG_ESP, 1337, MOD_REG);
1.36 + IA32_Sub_Rm_Imm32(jit, kREG_ESP, 1337, MOD_REG);
1.37 } else {
1.38 if (g_StackAlign)
1.39 {
1.40 - IA32_Sub_Rm_Imm32(jit, REG_ESP, g_StackAlign, MOD_REG);
1.41 + IA32_Sub_Rm_Imm32(jit, kREG_ESP, g_StackAlign, MOD_REG);
1.42 }
1.43 }
1.44 }
1.45 @@ -96,18 +96,18 @@
1.46 //mov esp, ebp
1.47 //pop ebp
1.48 //ret
1.49 - IA32_Mov_Reg_Rm(jit, REG_ESP, REG_ESI, MOD_REG);
1.50 - IA32_Pop_Reg(jit, REG_ESI);
1.51 + IA32_Mov_Reg_Rm(jit, kREG_ESP, kREG_ESI, MOD_REG);
1.52 + IA32_Pop_Reg(jit, kREG_ESI);
1.53 if (has_params)
1.54 {
1.55 - IA32_Pop_Reg(jit, REG_EBX);
1.56 + IA32_Pop_Reg(jit, kREG_EBX);
1.57 }
1.58 if (!is_void)
1.59 {
1.60 - IA32_Pop_Reg(jit, REG_EDI);
1.61 + IA32_Pop_Reg(jit, kREG_EDI);
1.62 }
1.63 - IA32_Mov_Reg_Rm(jit, REG_ESP, REG_EBP, MOD_REG);
1.64 - IA32_Pop_Reg(jit, REG_EBP);
1.65 + IA32_Mov_Reg_Rm(jit, kREG_ESP, kREG_EBP, MOD_REG);
1.66 + IA32_Pop_Reg(jit, kREG_EBP);
1.67 IA32_Return(jit);
1.68 }
1.69
1.70 @@ -125,11 +125,11 @@
1.71 //push reg
1.72 if (offset < SCHAR_MAX)
1.73 {
1.74 - IA32_Movzx_Reg32_Rm8_Disp8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.75 + IA32_Movzx_Reg32_Rm8_Disp8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.76 } else if (!offset) {
1.77 - IA32_Movzx_Reg32_Rm8(jit, reg, REG_EBX, MOD_MEM_REG);
1.78 + IA32_Movzx_Reg32_Rm8(jit, reg, kREG_EBX, MOD_MEM_REG);
1.79 } else {
1.80 - IA32_Movzx_Reg32_Rm8_Disp32(jit, reg, REG_EBX, offset);
1.81 + IA32_Movzx_Reg32_Rm8_Disp32(jit, reg, kREG_EBX, offset);
1.82 }
1.83 IA32_Push_Reg(jit, reg);
1.84
1.85 @@ -143,11 +143,11 @@
1.86 jit->write_ubyte(IA32_16BIT_PREFIX);
1.87 if (offset < SCHAR_MAX)
1.88 {
1.89 - IA32_Movzx_Reg32_Rm16_Disp8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.90 + IA32_Movzx_Reg32_Rm16_Disp8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.91 } else if (!offset) {
1.92 - IA32_Movzx_Reg32_Rm16(jit, reg, REG_EBX, MOD_MEM_REG);
1.93 + IA32_Movzx_Reg32_Rm16(jit, reg, kREG_EBX, MOD_MEM_REG);
1.94 } else {
1.95 - IA32_Movzx_Reg32_Rm16_Disp32(jit, reg, REG_EBX, offset);
1.96 + IA32_Movzx_Reg32_Rm16_Disp32(jit, reg, kREG_EBX, offset);
1.97 }
1.98 IA32_Push_Reg(jit, reg);
1.99
1.100 @@ -160,11 +160,11 @@
1.101 //push reg
1.102 if (offset < SCHAR_MAX)
1.103 {
1.104 - IA32_Mov_Reg_Rm_Disp8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.105 + IA32_Mov_Reg_Rm_Disp8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.106 } else if (!offset) {
1.107 - IA32_Mov_Reg_Rm(jit, reg, REG_EBX, MOD_MEM_REG);
1.108 + IA32_Mov_Reg_Rm(jit, reg, kREG_EBX, MOD_MEM_REG);
1.109 } else {
1.110 - IA32_Mov_Reg_Rm_Disp32(jit, reg, REG_EBX, offset);
1.111 + IA32_Mov_Reg_Rm_Disp32(jit, reg, kREG_EBX, offset);
1.112 }
1.113 IA32_Push_Reg(jit, reg);
1.114
1.115 @@ -181,17 +181,17 @@
1.116
1.117 if (offset+4 < SCHAR_MAX)
1.118 {
1.119 - IA32_Mov_Reg_Rm_Disp8(jit, reg, REG_EBX, (jit_int8_t)(offset+4));
1.120 + IA32_Mov_Reg_Rm_Disp8(jit, reg, kREG_EBX, (jit_int8_t)(offset+4));
1.121 } else {
1.122 - IA32_Mov_Reg_Rm_Disp32(jit, reg, REG_EBX, offset+4);
1.123 + IA32_Mov_Reg_Rm_Disp32(jit, reg, kREG_EBX, offset+4);
1.124 }
1.125 if (offset < SCHAR_MAX)
1.126 {
1.127 - IA32_Mov_Reg_Rm_Disp8(jit, reg2, REG_EBX, (jit_int8_t)offset);
1.128 + IA32_Mov_Reg_Rm_Disp8(jit, reg2, kREG_EBX, (jit_int8_t)offset);
1.129 } else if (!offset) {
1.130 - IA32_Mov_Reg_Rm(jit, reg2, REG_EBX, MOD_MEM_REG);
1.131 + IA32_Mov_Reg_Rm(jit, reg2, kREG_EBX, MOD_MEM_REG);
1.132 } else {
1.133 - IA32_Mov_Reg_Rm_Disp32(jit, reg2, REG_EBX, offset);
1.134 + IA32_Mov_Reg_Rm_Disp32(jit, reg2, kREG_EBX, offset);
1.135 }
1.136 IA32_Push_Reg(jit, reg);
1.137 IA32_Push_Reg(jit, reg2);
1.138 @@ -205,15 +205,15 @@
1.139 //push reg
1.140 if (!offset)
1.141 {
1.142 - IA32_Push_Reg(jit, REG_EBX);
1.143 + IA32_Push_Reg(jit, kREG_EBX);
1.144 g_StackUsage += 4;
1.145 return;
1.146 }
1.147 if (offset < SCHAR_MAX)
1.148 {
1.149 - IA32_Lea_DispRegImm8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.150 + IA32_Lea_DispRegImm8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.151 } else {
1.152 - IA32_Lea_DispRegImm32(jit, reg, REG_EBX, offset);
1.153 + IA32_Lea_DispRegImm32(jit, reg, kREG_EBX, offset);
1.154 }
1.155 IA32_Push_Reg(jit, reg);
1.156
1.157 @@ -234,11 +234,11 @@
1.158 //fstp DWORD PTR [esp]
1.159 if (offset < SCHAR_MAX)
1.160 {
1.161 - IA32_Fld_Mem32_Disp8(jit, REG_EBX, (jit_int8_t)offset);
1.162 + IA32_Fld_Mem32_Disp8(jit, kREG_EBX, (jit_int8_t)offset);
1.163 } else if (!offset) {
1.164 - IA32_Fld_Mem32(jit, REG_EBX);
1.165 + IA32_Fld_Mem32(jit, kREG_EBX);
1.166 } else {
1.167 - IA32_Fld_Mem32_Disp32(jit, REG_EBX, offset);
1.168 + IA32_Fld_Mem32_Disp32(jit, kREG_EBX, offset);
1.169 }
1.170 IA32_Push_Reg(jit, _DecodeRegister3(g_RegDecoder++));
1.171 IA32_Fstp_Mem32_ESP(jit);
1.172 @@ -252,13 +252,13 @@
1.173 //fstp QWORD PTR [esp]
1.174 if (offset < SCHAR_MAX)
1.175 {
1.176 - IA32_Fld_Mem64_Disp8(jit, REG_EBX, (jit_int8_t)offset);
1.177 + IA32_Fld_Mem64_Disp8(jit, kREG_EBX, (jit_int8_t)offset);
1.178 } else if (!offset) {
1.179 - IA32_Fld_Mem64(jit, REG_EBX);
1.180 + IA32_Fld_Mem64(jit, kREG_EBX);
1.181 } else {
1.182 - IA32_Fld_Mem64_Disp32(jit, REG_EBX, offset);
1.183 + IA32_Fld_Mem64_Disp32(jit, kREG_EBX, offset);
1.184 }
1.185 - IA32_Sub_Rm_Imm8(jit, REG_ESP, 8, MOD_REG);
1.186 + IA32_Sub_Rm_Imm8(jit, kREG_ESP, 8, MOD_REG);
1.187 IA32_Fstp_Mem64_ESP(jit);
1.188 g_StackUsage += 8;
1.189 break;
1.190 @@ -269,7 +269,7 @@
1.191 //push reg
1.192 if (!offset)
1.193 {
1.194 - IA32_Push_Reg(jit, REG_EBX);
1.195 + IA32_Push_Reg(jit, kREG_EBX);
1.196 g_StackUsage += 4;
1.197 return;
1.198 }
1.199 @@ -277,9 +277,9 @@
1.200 jit_uint8_t reg = _DecodeRegister3(g_RegDecoder++);
1.201 if (offset < SCHAR_MAX)
1.202 {
1.203 - IA32_Lea_DispRegImm8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.204 + IA32_Lea_DispRegImm8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.205 } else {
1.206 - IA32_Lea_DispRegImm32(jit, reg, REG_EBX, offset);
1.207 + IA32_Lea_DispRegImm32(jit, reg, kREG_EBX, offset);
1.208 }
1.209 IA32_Push_Reg(jit, reg);
1.210
1.211 @@ -316,36 +316,36 @@
1.212 //pop edi
1.213 if (info->size < SCHAR_MAX)
1.214 {
1.215 - IA32_Sub_Rm_Imm8(jit, REG_ESP, (jit_int8_t)info->size, MOD_REG);
1.216 + IA32_Sub_Rm_Imm8(jit, kREG_ESP, (jit_int8_t)info->size, MOD_REG);
1.217 } else {
1.218 - IA32_Sub_Rm_Imm32(jit, REG_ESP, info->size, MOD_REG);
1.219 + IA32_Sub_Rm_Imm32(jit, kREG_ESP, info->size, MOD_REG);
1.220 }
1.221 IA32_Cld(jit);
1.222 - IA32_Push_Reg(jit, REG_EDI);
1.223 - IA32_Push_Reg(jit, REG_ESI);
1.224 - IA32_Lea_Reg_DispRegMultImm8(jit, REG_EDI, REG_NOIDX, REG_ESP, NOSCALE, 8);
1.225 + IA32_Push_Reg(jit, kREG_EDI);
1.226 + IA32_Push_Reg(jit, kREG_ESI);
1.227 + IA32_Lea_Reg_DispRegMultImm8(jit, kREG_EDI, kREG_NOIDX, kREG_ESP, NOSCALE, 8);
1.228 if (offset < SCHAR_MAX)
1.229 {
1.230 - IA32_Lea_DispRegImm8(jit, REG_ESI, REG_EBX, (jit_int8_t)offset);
1.231 + IA32_Lea_DispRegImm8(jit, kREG_ESI, kREG_EBX, (jit_int8_t)offset);
1.232 } else if (!offset) {
1.233 - IA32_Mov_Reg_Rm(jit, REG_ESI, REG_EBX, MOD_REG);
1.234 + IA32_Mov_Reg_Rm(jit, kREG_ESI, kREG_EBX, MOD_REG);
1.235 } else {
1.236 - IA32_Lea_DispRegImm32(jit, REG_ESI, REG_EBX, offset);
1.237 + IA32_Lea_DispRegImm32(jit, kREG_ESI, kREG_EBX, offset);
1.238 }
1.239 if (dwords)
1.240 {
1.241 - IA32_Mov_Reg_Imm32(jit, REG_ECX, dwords);
1.242 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, dwords);
1.243 IA32_Rep(jit);
1.244 IA32_Movsd(jit);
1.245 }
1.246 if (bytes)
1.247 {
1.248 - IA32_Mov_Reg_Imm32(jit, REG_ECX, bytes);
1.249 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, bytes);
1.250 IA32_Rep(jit);
1.251 IA32_Movsb(jit);
1.252 }
1.253 - IA32_Pop_Reg(jit, REG_ESI);
1.254 - IA32_Pop_Reg(jit, REG_EDI);
1.255 + IA32_Pop_Reg(jit, kREG_ESI);
1.256 + IA32_Pop_Reg(jit, kREG_EDI);
1.257
1.258 g_StackUsage += info->size;
1.259 } else if (info->flags & PASSFLAG_BYREF) {
1.260 @@ -354,7 +354,7 @@
1.261 #endif
1.262 if (!offset)
1.263 {
1.264 - IA32_Push_Reg(jit, REG_EBX);
1.265 + IA32_Push_Reg(jit, kREG_EBX);
1.266 g_StackUsage += 4;
1.267 return;
1.268 }
1.269 @@ -364,9 +364,9 @@
1.270 jit_uint8_t reg = _DecodeRegister3(g_RegDecoder++);
1.271 if (offset < SCHAR_MAX)
1.272 {
1.273 - IA32_Lea_DispRegImm8(jit, reg, REG_EBX, (jit_int8_t)offset);
1.274 + IA32_Lea_DispRegImm8(jit, reg, kREG_EBX, (jit_int8_t)offset);
1.275 } else {
1.276 - IA32_Lea_DispRegImm32(jit, reg, REG_EBX, offset);
1.277 + IA32_Lea_DispRegImm32(jit, reg, kREG_EBX, offset);
1.278 }
1.279 IA32_Push_Reg(jit, reg);
1.280
1.281 @@ -381,20 +381,20 @@
1.282 //push reg
1.283 jit_uint8_t reg = _DecodeRegister3(g_RegDecoder++);
1.284
1.285 - IA32_Mov_Reg_Rm(jit, reg, REG_EBX, MOD_MEM_REG);
1.286 + IA32_Mov_Reg_Rm(jit, reg, kREG_EBX, MOD_MEM_REG);
1.287 IA32_Push_Reg(jit, reg);
1.288
1.289 g_StackUsage += 4;
1.290 #elif defined PLATFORM_WINDOWS
1.291 //mov ecx, [ebx]
1.292 - IA32_Mov_Reg_Rm(jit, REG_ECX, REG_EBX, MOD_MEM_REG);
1.293 + IA32_Mov_Reg_Rm(jit, kREG_ECX, kREG_EBX, MOD_MEM_REG);
1.294 #endif
1.295 }
1.296
1.297 inline void Write_PushRetBuffer(JitWriter *jit)
1.298 {
1.299 //push edi
1.300 - IA32_Push_Reg(jit, REG_EDI);
1.301 + IA32_Push_Reg(jit, kREG_EDI);
1.302 }
1.303
1.304 inline void Write_CallFunction(JitWriter *jit, FuncAddrMethod method, CallWrapper *pWrapper)
1.305 @@ -414,24 +414,24 @@
1.306 jit_uint32_t total_offs = funcInfo->thisptroffs + funcInfo->vtbloffs;
1.307 jit_uint32_t vfunc_pos = funcInfo->vtblindex * 4;
1.308
1.309 - IA32_Mov_Reg_Rm(jit, REG_EDX, REG_EBX, MOD_MEM_REG);
1.310 + IA32_Mov_Reg_Rm(jit, kREG_EDX, kREG_EBX, MOD_MEM_REG);
1.311 if (total_offs < SCHAR_MAX)
1.312 {
1.313 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EAX, REG_EDX, (jit_int8_t)total_offs);
1.314 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EAX, kREG_EDX, (jit_int8_t)total_offs);
1.315 } else if (!total_offs) {
1.316 - IA32_Mov_Reg_Rm(jit, REG_EAX, REG_EDX, MOD_MEM_REG);
1.317 + IA32_Mov_Reg_Rm(jit, kREG_EAX, kREG_EDX, MOD_MEM_REG);
1.318 } else {
1.319 - IA32_Mov_Reg_Rm_Disp32(jit, REG_EAX, REG_EDX, total_offs);
1.320 + IA32_Mov_Reg_Rm_Disp32(jit, kREG_EAX, kREG_EDX, total_offs);
1.321 }
1.322 if (vfunc_pos < SCHAR_MAX)
1.323 {
1.324 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EDX, REG_EAX, (jit_int8_t)vfunc_pos);
1.325 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EDX, kREG_EAX, (jit_int8_t)vfunc_pos);
1.326 } else if (!vfunc_pos) {
1.327 - IA32_Mov_Reg_Rm(jit, REG_EDX, REG_EAX, MOD_MEM_REG);
1.328 + IA32_Mov_Reg_Rm(jit, kREG_EDX, kREG_EAX, MOD_MEM_REG);
1.329 } else {
1.330 - IA32_Mov_Reg_Rm_Disp32(jit, REG_EDX, REG_EAX, vfunc_pos);
1.331 + IA32_Mov_Reg_Rm_Disp32(jit, kREG_EDX, kREG_EAX, vfunc_pos);
1.332 }
1.333 - IA32_Call_Reg(jit, REG_EDX);
1.334 + IA32_Call_Reg(jit, kREG_EDX);
1.335 }
1.336 }
1.337
1.338 @@ -440,9 +440,9 @@
1.339 //add esp, <value>
1.340 if (value < SCHAR_MAX)
1.341 {
1.342 - IA32_Add_Rm_Imm8(jit, REG_ESP, (jit_int8_t)value, MOD_REG);
1.343 + IA32_Add_Rm_Imm8(jit, kREG_ESP, (jit_int8_t)value, MOD_REG);
1.344 } else {
1.345 - IA32_Add_Rm_Imm32(jit, REG_ESP, value, MOD_REG);
1.346 + IA32_Add_Rm_Imm32(jit, kREG_ESP, value, MOD_REG);
1.347 }
1.348 }
1.349
1.350 @@ -455,13 +455,13 @@
1.351 case 4:
1.352 {
1.353 //fstp DWORD PTR [edi]
1.354 - IA32_Fstp_Mem32(jit, REG_EDI);
1.355 + IA32_Fstp_Mem32(jit, kREG_EDI);
1.356 break;
1.357 }
1.358 case 8:
1.359 {
1.360 //fstp QWORD PTR [edi]
1.361 - IA32_Fstp_Mem64(jit, REG_EDI);
1.362 + IA32_Fstp_Mem64(jit, kREG_EDI);
1.363 break;
1.364 }
1.365 }
1.366 @@ -473,28 +473,28 @@
1.367 case 1:
1.368 {
1.369 //mov BYTE PTR [edi], al
1.370 - IA32_Mov_Rm8_Reg8(jit, REG_EDI, REG_EAX, MOD_MEM_REG);
1.371 + IA32_Mov_Rm8_Reg8(jit, kREG_EDI, kREG_EAX, MOD_MEM_REG);
1.372 break;
1.373 }
1.374 case 2:
1.375 {
1.376 //mov WORD PTR [edi], ax
1.377 jit->write_ubyte(IA32_16BIT_PREFIX);
1.378 - IA32_Mov_Rm_Reg(jit, REG_EDI, REG_EAX, MOD_MEM_REG);
1.379 + IA32_Mov_Rm_Reg(jit, kREG_EDI, kREG_EAX, MOD_MEM_REG);
1.380 break;
1.381 }
1.382 case 4:
1.383 {
1.384 //mov DWORD PTR [edi], eax
1.385 - IA32_Mov_Rm_Reg(jit, REG_EDI, REG_EAX, MOD_MEM_REG);
1.386 + IA32_Mov_Rm_Reg(jit, kREG_EDI, kREG_EAX, MOD_MEM_REG);
1.387 break;
1.388 }
1.389 case 8:
1.390 {
1.391 //mov DWORD PTR [edi], eax
1.392 //mov DWORD PTR [edi+4], edx
1.393 - IA32_Mov_Rm_Reg(jit, REG_EDI, REG_EAX, MOD_MEM_REG);
1.394 - IA32_Mov_Rm_Reg_Disp8(jit, REG_EDI, REG_EDX, 4);
1.395 + IA32_Mov_Rm_Reg(jit, kREG_EDI, kREG_EAX, MOD_MEM_REG);
1.396 + IA32_Mov_Rm_Reg_Disp8(jit, kREG_EDI, kREG_EDX, 4);
1.397 break;
1.398 }
1.399 }
2.1 --- a/extensions/bintools/jit_compile.h Tue Oct 08 11:27:26 2013 -0400
2.2 +++ b/extensions/bintools/jit_compile.h Tue Oct 08 21:01:21 2013 -0400
2.3 @@ -53,15 +53,15 @@
2.4 {
2.5 case 0:
2.6 {
2.7 - return REG_EAX;
2.8 + return kREG_EAX;
2.9 }
2.10 case 1:
2.11 {
2.12 - return REG_EDX;
2.13 + return kREG_EDX;
2.14 }
2.15 case 2:
2.16 {
2.17 - return REG_ECX;
2.18 + return kREG_ECX;
2.19 }
2.20 }
2.21
3.1 --- a/extensions/bintools/jit_hook.cpp Tue Oct 08 11:27:26 2013 -0400
3.2 +++ b/extensions/bintools/jit_hook.cpp Tue Oct 08 21:01:21 2013 -0400
3.3 @@ -44,15 +44,15 @@
3.4 //push ebp
3.5 //push ebx
3.6 //mov ebp, esp
3.7 - IA32_Push_Reg(jit, REG_EBP);
3.8 - IA32_Push_Reg(jit, REG_EBX);
3.9 - IA32_Mov_Reg_Rm(jit, REG_EBP, REG_ESP, MOD_REG);
3.10 + IA32_Push_Reg(jit, kREG_EBP);
3.11 + IA32_Push_Reg(jit, kREG_EBX);
3.12 + IA32_Mov_Reg_Rm(jit, kREG_EBP, kREG_ESP, MOD_REG);
3.13 #if defined PLATFORM_WINDOWS
3.14 //mov ebx, ecx
3.15 - IA32_Mov_Reg_Rm(jit, REG_EBX, REG_ECX, MOD_REG);
3.16 + IA32_Mov_Reg_Rm(jit, kREG_EBX, kREG_ECX, MOD_REG);
3.17 #elif defined PLATFORM_LINUX || defined PLATFORM_APPLE
3.18 //mov ebx, [ebp+12+(RetInMemory)?4:0]
3.19 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EBX, REG_EBP, 12+((RetInMemory)?4:0));
3.20 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EBX, kREG_EBP, 12+((RetInMemory)?4:0));
3.21 #endif
3.22 }
3.23
3.24 @@ -62,9 +62,9 @@
3.25 //pop ebx
3.26 //pop ebp
3.27 //ret <value>
3.28 - IA32_Mov_Reg_Rm(jit, REG_ESP, REG_EBP, MOD_REG);
3.29 - IA32_Pop_Reg(jit, REG_EBX);
3.30 - IA32_Pop_Reg(jit, REG_EBP);
3.31 + IA32_Mov_Reg_Rm(jit, kREG_ESP, kREG_EBP, MOD_REG);
3.32 + IA32_Pop_Reg(jit, kREG_EBX);
3.33 + IA32_Pop_Reg(jit, kREG_EBP);
3.34 if (size == 0)
3.35 {
3.36 IA32_Return(jit);
3.37 @@ -80,11 +80,11 @@
3.38 //sub esp, <value>
3.39 if (size <= SCHAR_MAX)
3.40 {
3.41 - IA32_Sub_Rm_Imm8(jit, REG_ESP, (jit_int8_t)size, MOD_REG);
3.42 + IA32_Sub_Rm_Imm8(jit, kREG_ESP, (jit_int8_t)size, MOD_REG);
3.43 }
3.44 else
3.45 {
3.46 - IA32_Sub_Rm_Imm32(jit, REG_ESP, size, MOD_REG);
3.47 + IA32_Sub_Rm_Imm32(jit, kREG_ESP, size, MOD_REG);
3.48 }
3.49 }
3.50
3.51 @@ -111,17 +111,17 @@
3.52 jit_uint32_t bytes = paramsize & 0x3;
3.53
3.54 IA32_Cld(jit);
3.55 - IA32_Push_Reg(jit, REG_EDI);
3.56 - IA32_Push_Reg(jit, REG_ESI);
3.57 + IA32_Push_Reg(jit, kREG_EDI);
3.58 + IA32_Push_Reg(jit, kREG_ESI);
3.59 offs = -(jit_int32_t)retsize - paramsize;
3.60
3.61 if (offs > SCHAR_MIN)
3.62 {
3.63 - IA32_Lea_DispRegImm8(jit, REG_EDI, REG_EBP, (jit_int8_t)offs);
3.64 + IA32_Lea_DispRegImm8(jit, kREG_EDI, kREG_EBP, (jit_int8_t)offs);
3.65 }
3.66 else
3.67 {
3.68 - IA32_Lea_DispRegImm32(jit, REG_EDI, REG_EBP, offs);
3.69 + IA32_Lea_DispRegImm32(jit, kREG_EDI, kREG_EBP, offs);
3.70 }
3.71 offs = 12 + ((RetInMemory) ? sizeof(void *) : 0);
3.72
3.73 @@ -131,26 +131,26 @@
3.74
3.75 if (offs < SCHAR_MAX)
3.76 {
3.77 - IA32_Lea_DispRegImm8(jit, REG_ESI, REG_EBP, (jit_int8_t)offs);
3.78 + IA32_Lea_DispRegImm8(jit, kREG_ESI, kREG_EBP, (jit_int8_t)offs);
3.79 }
3.80 else
3.81 {
3.82 - IA32_Lea_DispRegImm32(jit, REG_ESI, REG_EBP, offs);
3.83 + IA32_Lea_DispRegImm32(jit, kREG_ESI, kREG_EBP, offs);
3.84 }
3.85 if (dwords)
3.86 {
3.87 - IA32_Mov_Reg_Imm32(jit, REG_ECX, dwords);
3.88 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, dwords);
3.89 IA32_Rep(jit);
3.90 IA32_Movsd(jit);
3.91 }
3.92 if (bytes)
3.93 {
3.94 - IA32_Mov_Reg_Imm32(jit, REG_ECX, bytes);
3.95 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, bytes);
3.96 IA32_Rep(jit);
3.97 IA32_Movsb(jit);
3.98 }
3.99 - IA32_Pop_Reg(jit, REG_ESI);
3.100 - IA32_Pop_Reg(jit, REG_EDI);
3.101 + IA32_Pop_Reg(jit, kREG_ESI);
3.102 + IA32_Pop_Reg(jit, kREG_EDI);
3.103 }
3.104
3.105 inline void Write_Push_Params(JitWriter *jit,
3.106 @@ -161,7 +161,7 @@
3.107 HookWrapper *pWrapper)
3.108 {
3.109 //and esp, 0xFFFFFFF0
3.110 - IA32_And_Rm_Imm8(jit, REG_ESP, MOD_REG, -16);
3.111 + IA32_And_Rm_Imm8(jit, kREG_ESP, MOD_REG, -16);
3.112
3.113 //if retvoid
3.114 // push 0
3.115 @@ -177,13 +177,13 @@
3.116 jit_int32_t offs = -(jit_int32_t)retsize;
3.117 if (offs >= SCHAR_MIN)
3.118 {
3.119 - IA32_Lea_DispRegImm8(jit, REG_EAX, REG_EBP, (jit_int8_t)offs);
3.120 + IA32_Lea_DispRegImm8(jit, kREG_EAX, kREG_EBP, (jit_int8_t)offs);
3.121 }
3.122 else
3.123 {
3.124 - IA32_Lea_DispRegImm32(jit, REG_EAX, REG_EBP, offs);
3.125 + IA32_Lea_DispRegImm32(jit, kREG_EAX, kREG_EBP, offs);
3.126 }
3.127 - IA32_Push_Reg(jit, REG_EAX);
3.128 + IA32_Push_Reg(jit, kREG_EAX);
3.129 }
3.130
3.131 //if void
3.132 @@ -200,18 +200,18 @@
3.133 jit_int32_t offs = -(jit_int32_t)retsize - paramsize;
3.134 if (offs > SCHAR_MIN)
3.135 {
3.136 - IA32_Lea_DispRegImm8(jit, REG_EDX, REG_EBP, (jit_int8_t)offs);
3.137 + IA32_Lea_DispRegImm8(jit, kREG_EDX, kREG_EBP, (jit_int8_t)offs);
3.138 } else {
3.139 - IA32_Lea_DispRegImm32(jit, REG_EDX, REG_EBP, offs);
3.140 + IA32_Lea_DispRegImm32(jit, kREG_EDX, kREG_EBP, offs);
3.141 }
3.142 - IA32_Push_Reg(jit, REG_EDX);
3.143 + IA32_Push_Reg(jit, kREG_EDX);
3.144 }
3.145
3.146 //push eax (thisptr)
3.147 - //IA32_Push_Reg(jit, REG_ECX);
3.148 + //IA32_Push_Reg(jit, kREG_ECX);
3.149
3.150 //push ebx
3.151 - IA32_Push_Reg(jit, REG_EBX);
3.152 + IA32_Push_Reg(jit, kREG_EBX);
3.153
3.154 //push <pWrapper>
3.155 IA32_Push_Imm32(jit, (jit_int32_t)pWrapper);
3.156 @@ -243,13 +243,13 @@
3.157 case 4:
3.158 {
3.159 //fld DWORD PTR [ebp-4]
3.160 - IA32_Fld_Mem32_Disp8(jit, REG_EBP, -4);
3.161 + IA32_Fld_Mem32_Disp8(jit, kREG_EBP, -4);
3.162 break;
3.163 }
3.164 case 8:
3.165 {
3.166 //fld QWORD PTR [ebp-8]
3.167 - IA32_Fld_Mem64_Disp8(jit, REG_EBP, -8);
3.168 + IA32_Fld_Mem64_Disp8(jit, kREG_EBP, -8);
3.169 break;
3.170 }
3.171 }
3.172 @@ -276,36 +276,36 @@
3.173 jit_uint32_t bytes = size & 0x3;
3.174
3.175 IA32_Cld(jit);
3.176 - IA32_Push_Reg(jit, REG_EDI);
3.177 - IA32_Push_Reg(jit, REG_ESI);
3.178 + IA32_Push_Reg(jit, kREG_EDI);
3.179 + IA32_Push_Reg(jit, kREG_ESI);
3.180
3.181 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EDI, REG_EBP, 12);
3.182 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EDI, kREG_EBP, 12);
3.183
3.184 offs = -(jit_int32_t)pRetInfo->size;
3.185 if (offs >= SCHAR_MIN)
3.186 {
3.187 - IA32_Lea_DispRegImm8(jit, REG_ESI, REG_EBP, (jit_int8_t)offs);
3.188 + IA32_Lea_DispRegImm8(jit, kREG_ESI, kREG_EBP, (jit_int8_t)offs);
3.189 }
3.190 else
3.191 {
3.192 - IA32_Lea_DispRegImm32(jit, REG_ESI, REG_EBP, offs);
3.193 + IA32_Lea_DispRegImm32(jit, kREG_ESI, kREG_EBP, offs);
3.194 }
3.195 - IA32_Mov_Reg_Rm(jit, REG_EAX, REG_EDI, MOD_REG);
3.196 + IA32_Mov_Reg_Rm(jit, kREG_EAX, kREG_EDI, MOD_REG);
3.197
3.198 if (dwords)
3.199 {
3.200 - IA32_Mov_Reg_Imm32(jit, REG_ECX, dwords);
3.201 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, dwords);
3.202 IA32_Rep(jit);
3.203 IA32_Movsd(jit);
3.204 }
3.205 if (bytes)
3.206 {
3.207 - IA32_Mov_Reg_Imm32(jit, REG_ECX, bytes);
3.208 + IA32_Mov_Reg_Imm32(jit, kREG_ECX, bytes);
3.209 IA32_Rep(jit);
3.210 IA32_Movsb(jit);
3.211 }
3.212 - IA32_Pop_Reg(jit, REG_ESI);
3.213 - IA32_Pop_Reg(jit, REG_EDI);
3.214 + IA32_Pop_Reg(jit, kREG_ESI);
3.215 + IA32_Pop_Reg(jit, kREG_EDI);
3.216 }
3.217 else
3.218 {
3.219 @@ -314,20 +314,20 @@
3.220 case 1:
3.221 {
3.222 //mov al, BYTE PTR [ebp-4]
3.223 - IA32_Mov_Reg8_Rm8_Disp8(jit, REG_EAX, REG_EBP, -4);
3.224 + IA32_Mov_Reg8_Rm8_Disp8(jit, kREG_EAX, kREG_EBP, -4);
3.225 break;
3.226 }
3.227 case 2:
3.228 {
3.229 //mov ax, WORD PTR [ebp-4]
3.230 jit->write_ubyte(IA32_16BIT_PREFIX);
3.231 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EAX, REG_EBP, -4);
3.232 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EAX, kREG_EBP, -4);
3.233 break;
3.234 }
3.235 case 4:
3.236 {
3.237 //mov eax, DWORD PTR [ebp-4]
3.238 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EAX, REG_EBP, -4);
3.239 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EAX, kREG_EBP, -4);
3.240 break;
3.241 }
3.242 case 8:
3.243 @@ -335,8 +335,8 @@
3.244 //mov eax, DWORD PTR [ebp-8]
3.245 //mov edx, DWORD PTR [ebp-4]
3.246 //:TODO: this is broken due to SH
3.247 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EAX, REG_EBP, -8);
3.248 - IA32_Mov_Reg_Rm_Disp8(jit, REG_EDX, REG_EBP, -4);
3.249 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EAX, kREG_EBP, -8);
3.250 + IA32_Mov_Reg_Rm_Disp8(jit, kREG_EDX, kREG_EBP, -4);
3.251 break;
3.252 }
3.253 }
4.1 --- a/public/jit/x86/x86_macros.h Tue Oct 08 11:27:26 2013 -0400
4.2 +++ b/public/jit/x86/x86_macros.h Tue Oct 08 21:01:21 2013 -0400
4.3 @@ -51,17 +51,17 @@
4.4 #define SCALE8 3
4.5
4.6 //Register codes
4.7 -#define REG_EAX 0
4.8 -#define REG_ECX 1
4.9 -#define REG_EDX 2
4.10 -#define REG_EBX 3
4.11 -#define REG_ESP 4
4.12 -#define REG_SIB 4
4.13 -#define REG_NOIDX 4
4.14 -#define REG_IMM_BASE 5
4.15 -#define REG_EBP 5
4.16 -#define REG_ESI 6
4.17 -#define REG_EDI 7
4.18 +const jit_uint8_t kREG_EAX = 0;
4.19 +const jit_uint8_t kREG_ECX = 1;
4.20 +const jit_uint8_t kREG_EDX = 2;
4.21 +const jit_uint8_t kREG_EBX = 3;
4.22 +const jit_uint8_t kREG_ESP = 4;
4.23 +const jit_uint8_t kREG_SIB = 4;
4.24 +const jit_uint8_t kREG_NOIDX = 4;
4.25 +const jit_uint8_t kREG_IMM_BASE = 5;
4.26 +const jit_uint8_t kREG_EBP = 5;
4.27 +const jit_uint8_t kREG_ESI = 6;
4.28 +const jit_uint8_t kREG_EDI = 7;
4.29
4.30 #define IA32_16BIT_PREFIX 0x66
4.31
4.32 @@ -372,7 +372,7 @@
4.33 jit_int8_t val)
4.34 {
4.35 jit->write_ubyte(IA32_LEA_REG_MEM);
4.36 - jit->write_ubyte(ia32_modrm(MOD_DISP8, dest, REG_SIB));
4.37 + jit->write_ubyte(ia32_modrm(MOD_DISP8, dest, kREG_SIB));
4.38 jit->write_ubyte(ia32_sib(scale, src_index, src_base));
4.39 jit->write_byte(val);
4.40 }
4.41 @@ -420,15 +420,15 @@
4.42 inline void IA32_Fstp_Mem32_ESP(JitWriter *jit)
4.43 {
4.44 jit->write_ubyte(IA32_FSTP_MEM32);
4.45 - jit->write_ubyte(ia32_modrm(MOD_MEM_REG, 3, REG_SIB));
4.46 - jit->write_ubyte(ia32_sib(NOSCALE, REG_NOIDX, REG_ESP));
4.47 + jit->write_ubyte(ia32_modrm(MOD_MEM_REG, 3, kREG_SIB));
4.48 + jit->write_ubyte(ia32_sib(NOSCALE, kREG_NOIDX, kREG_ESP));
4.49 }
4.50
4.51 inline void IA32_Fstp_Mem64_ESP(JitWriter *jit)
4.52 {
4.53 jit->write_ubyte(IA32_FSTP_MEM64);
4.54 - jit->write_ubyte(ia32_modrm(MOD_MEM_REG, 3, REG_SIB));
4.55 - jit->write_ubyte(ia32_sib(NOSCALE, REG_NOIDX, REG_ESP));
4.56 + jit->write_ubyte(ia32_modrm(MOD_MEM_REG, 3, kREG_SIB));
4.57 + jit->write_ubyte(ia32_sib(NOSCALE, kREG_NOIDX, kREG_ESP));
4.58 }
4.59
4.60 inline void IA32_Return_Popstack(JitWriter *jit, unsigned short bytes)