@@ -172,33 +172,33 @@ typedef target_elf_greg_t target_elf_gregset_t[ELF_NREG];
172
172
*/
173
173
static void elf_core_copy_regs (target_elf_gregset_t * regs , const CPUX86State * env )
174
174
{
175
- (* regs )[0 ] = env -> regs [15 ];
176
- (* regs )[1 ] = env -> regs [14 ];
177
- (* regs )[2 ] = env -> regs [13 ];
178
- (* regs )[3 ] = env -> regs [12 ];
179
- (* regs )[4 ] = env -> regs [R_EBP ];
180
- (* regs )[5 ] = env -> regs [R_EBX ];
181
- (* regs )[6 ] = env -> regs [11 ];
182
- (* regs )[7 ] = env -> regs [10 ];
183
- (* regs )[8 ] = env -> regs [9 ];
184
- (* regs )[9 ] = env -> regs [8 ];
185
- (* regs )[10 ] = env -> regs [R_EAX ];
186
- (* regs )[11 ] = env -> regs [R_ECX ];
187
- (* regs )[12 ] = env -> regs [R_EDX ];
188
- (* regs )[13 ] = env -> regs [R_ESI ];
189
- (* regs )[14 ] = env -> regs [R_EDI ];
190
- (* regs )[15 ] = env -> regs [R_EAX ]; /* XXX */
191
- (* regs )[16 ] = env -> eip ;
192
- (* regs )[17 ] = env -> segs [R_CS ].selector & 0xffff ;
193
- (* regs )[18 ] = env -> eflags ;
194
- (* regs )[19 ] = env -> regs [R_ESP ];
195
- (* regs )[20 ] = env -> segs [R_SS ].selector & 0xffff ;
196
- (* regs )[21 ] = env -> segs [R_FS ].selector & 0xffff ;
197
- (* regs )[22 ] = env -> segs [R_GS ].selector & 0xffff ;
198
- (* regs )[23 ] = env -> segs [R_DS ].selector & 0xffff ;
199
- (* regs )[24 ] = env -> segs [R_ES ].selector & 0xffff ;
200
- (* regs )[25 ] = env -> segs [R_FS ].selector & 0xffff ;
201
- (* regs )[26 ] = env -> segs [R_GS ].selector & 0xffff ;
175
+ (* regs )[0 ] = tswapreg ( env -> regs [15 ]) ;
176
+ (* regs )[1 ] = tswapreg ( env -> regs [14 ]) ;
177
+ (* regs )[2 ] = tswapreg ( env -> regs [13 ]) ;
178
+ (* regs )[3 ] = tswapreg ( env -> regs [12 ]) ;
179
+ (* regs )[4 ] = tswapreg ( env -> regs [R_EBP ]) ;
180
+ (* regs )[5 ] = tswapreg ( env -> regs [R_EBX ]) ;
181
+ (* regs )[6 ] = tswapreg ( env -> regs [11 ]) ;
182
+ (* regs )[7 ] = tswapreg ( env -> regs [10 ]) ;
183
+ (* regs )[8 ] = tswapreg ( env -> regs [9 ]) ;
184
+ (* regs )[9 ] = tswapreg ( env -> regs [8 ]) ;
185
+ (* regs )[10 ] = tswapreg ( env -> regs [R_EAX ]) ;
186
+ (* regs )[11 ] = tswapreg ( env -> regs [R_ECX ]) ;
187
+ (* regs )[12 ] = tswapreg ( env -> regs [R_EDX ]) ;
188
+ (* regs )[13 ] = tswapreg ( env -> regs [R_ESI ]) ;
189
+ (* regs )[14 ] = tswapreg ( env -> regs [R_EDI ]) ;
190
+ (* regs )[15 ] = tswapreg ( env -> regs [R_EAX ]) ; /* XXX */
191
+ (* regs )[16 ] = tswapreg ( env -> eip ) ;
192
+ (* regs )[17 ] = tswapreg ( env -> segs [R_CS ].selector & 0xffff ) ;
193
+ (* regs )[18 ] = tswapreg ( env -> eflags ) ;
194
+ (* regs )[19 ] = tswapreg ( env -> regs [R_ESP ]) ;
195
+ (* regs )[20 ] = tswapreg ( env -> segs [R_SS ].selector & 0xffff ) ;
196
+ (* regs )[21 ] = tswapreg ( env -> segs [R_FS ].selector & 0xffff ) ;
197
+ (* regs )[22 ] = tswapreg ( env -> segs [R_GS ].selector & 0xffff ) ;
198
+ (* regs )[23 ] = tswapreg ( env -> segs [R_DS ].selector & 0xffff ) ;
199
+ (* regs )[24 ] = tswapreg ( env -> segs [R_ES ].selector & 0xffff ) ;
200
+ (* regs )[25 ] = tswapreg ( env -> segs [R_FS ].selector & 0xffff ) ;
201
+ (* regs )[26 ] = tswapreg ( env -> segs [R_GS ].selector & 0xffff ) ;
202
202
}
203
203
204
204
#else
@@ -244,23 +244,23 @@ typedef target_elf_greg_t target_elf_gregset_t[ELF_NREG];
244
244
*/
245
245
static void elf_core_copy_regs (target_elf_gregset_t * regs , const CPUX86State * env )
246
246
{
247
- (* regs )[0 ] = env -> regs [R_EBX ];
248
- (* regs )[1 ] = env -> regs [R_ECX ];
249
- (* regs )[2 ] = env -> regs [R_EDX ];
250
- (* regs )[3 ] = env -> regs [R_ESI ];
251
- (* regs )[4 ] = env -> regs [R_EDI ];
252
- (* regs )[5 ] = env -> regs [R_EBP ];
253
- (* regs )[6 ] = env -> regs [R_EAX ];
254
- (* regs )[7 ] = env -> segs [R_DS ].selector & 0xffff ;
255
- (* regs )[8 ] = env -> segs [R_ES ].selector & 0xffff ;
256
- (* regs )[9 ] = env -> segs [R_FS ].selector & 0xffff ;
257
- (* regs )[10 ] = env -> segs [R_GS ].selector & 0xffff ;
258
- (* regs )[11 ] = env -> regs [R_EAX ]; /* XXX */
259
- (* regs )[12 ] = env -> eip ;
260
- (* regs )[13 ] = env -> segs [R_CS ].selector & 0xffff ;
261
- (* regs )[14 ] = env -> eflags ;
262
- (* regs )[15 ] = env -> regs [R_ESP ];
263
- (* regs )[16 ] = env -> segs [R_SS ].selector & 0xffff ;
247
+ (* regs )[0 ] = tswapreg ( env -> regs [R_EBX ]) ;
248
+ (* regs )[1 ] = tswapreg ( env -> regs [R_ECX ]) ;
249
+ (* regs )[2 ] = tswapreg ( env -> regs [R_EDX ]) ;
250
+ (* regs )[3 ] = tswapreg ( env -> regs [R_ESI ]) ;
251
+ (* regs )[4 ] = tswapreg ( env -> regs [R_EDI ]) ;
252
+ (* regs )[5 ] = tswapreg ( env -> regs [R_EBP ]) ;
253
+ (* regs )[6 ] = tswapreg ( env -> regs [R_EAX ]) ;
254
+ (* regs )[7 ] = tswapreg ( env -> segs [R_DS ].selector & 0xffff ) ;
255
+ (* regs )[8 ] = tswapreg ( env -> segs [R_ES ].selector & 0xffff ) ;
256
+ (* regs )[9 ] = tswapreg ( env -> segs [R_FS ].selector & 0xffff ) ;
257
+ (* regs )[10 ] = tswapreg ( env -> segs [R_GS ].selector & 0xffff ) ;
258
+ (* regs )[11 ] = tswapreg ( env -> regs [R_EAX ]) ; /* XXX */
259
+ (* regs )[12 ] = tswapreg ( env -> eip ) ;
260
+ (* regs )[13 ] = tswapreg ( env -> segs [R_CS ].selector & 0xffff ) ;
261
+ (* regs )[14 ] = tswapreg ( env -> eflags ) ;
262
+ (* regs )[15 ] = tswapreg ( env -> regs [R_ESP ]) ;
263
+ (* regs )[16 ] = tswapreg ( env -> segs [R_SS ].selector & 0xffff ) ;
264
264
}
265
265
#endif
266
266
0 commit comments