@@ -200,31 +200,17 @@ void RegistersView::InitMappings()
200
200
mRegisterMapping .insert (SS, " SS" );
201
201
mRegisterPlaces .insert (SS, Register_Position (offset++, 9 , 3 , 4 ));
202
202
203
- if (mShowFpu )
204
- {
205
- if (mFpuMode )
206
- {
207
- mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, x87r0));
208
- mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, x87r0, DS, x87r0));
209
- }
210
- else
211
- {
212
- mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, x87st0));
213
- mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, x87st0, DS, x87st0));
214
- }
215
- }
216
- else
217
- {
218
- mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, DR0));
219
- mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, DR0, DS, DR0));
220
- }
221
203
222
204
if (mShowFpu )
223
205
{
206
+
224
207
offset++;
225
208
226
209
if (mFpuMode )
227
210
{
211
+ mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, x87r0));
212
+ mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, x87r0, DS, x87r0));
213
+
228
214
mRegisterMapping .insert (x87r0, " x87r0" );
229
215
mRegisterPlaces .insert (x87r0, Register_Position (offset++, 0 , 6 , 10 * 2 ));
230
216
mRegisterRelativePlaces .insert (x87r0, Register_Relative_Position (SS, x87r1));
@@ -253,6 +239,9 @@ void RegistersView::InitMappings()
253
239
}
254
240
else
255
241
{
242
+ mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, x87st0));
243
+ mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, x87st0, DS, x87st0));
244
+
256
245
mRegisterMapping .insert (x87st0, " ST(0)" );
257
246
mRegisterPlaces .insert (x87st0, Register_Position (offset++, 0 , 6 , 10 * 2 ));
258
247
mRegisterRelativePlaces .insert (x87st0, Register_Relative_Position (SS, x87st1));
@@ -534,16 +523,10 @@ void RegistersView::InitMappings()
534
523
mRegisterMapping .insert (XMM6, " XMM6" );
535
524
mRegisterPlaces .insert (XMM6, Register_Position (offset++, 0 , 6 , 16 * 2 ));
536
525
mRegisterRelativePlaces .insert (XMM6, Register_Relative_Position (XMM5, XMM7));
537
- #ifndef _WIN64
538
- mRegisterMapping .insert (XMM7, " XMM7" );
539
- mRegisterPlaces .insert (XMM7, Register_Position (offset++, 0 , 6 , 16 * 2 ));
540
- mRegisterRelativePlaces .insert (XMM7, Register_Relative_Position (XMM6, YMM0));
541
- #else
526
+ #ifdef _WIN64
542
527
mRegisterMapping .insert (XMM7, " XMM7" );
543
528
mRegisterPlaces .insert (XMM7, Register_Position (offset++, 0 , 6 , 16 * 2 ));
544
529
mRegisterRelativePlaces .insert (XMM7, Register_Relative_Position (XMM6, XMM8));
545
- #endif
546
- #ifdef _WIN64
547
530
mRegisterMapping .insert (XMM8, " XMM8" );
548
531
mRegisterPlaces .insert (XMM8, Register_Position (offset++, 0 , 6 , 16 * 2 ));
549
532
mRegisterRelativePlaces .insert (XMM8, Register_Relative_Position (XMM7, XMM9));
@@ -568,18 +551,22 @@ void RegistersView::InitMappings()
568
551
mRegisterMapping .insert (XMM15, " XMM15" );
569
552
mRegisterPlaces .insert (XMM15, Register_Position (offset++, 0 , 6 , 16 * 2 ));
570
553
mRegisterRelativePlaces .insert (XMM15, Register_Relative_Position (XMM14, YMM0));
554
+ #else
555
+ mRegisterMapping .insert (XMM7, " XMM7" );
556
+ mRegisterPlaces .insert (XMM7, Register_Position (offset++, 0 , 6 , 16 * 2 ));
557
+ mRegisterRelativePlaces .insert (XMM7, Register_Relative_Position (XMM6, YMM0));
571
558
#endif
572
559
573
560
offset++;
574
561
575
- #ifndef _WIN64
562
+ #ifdef _WIN64
576
563
mRegisterMapping .insert (YMM0, " YMM0" );
577
564
mRegisterPlaces .insert (YMM0, Register_Position (offset++, 0 , 6 , 32 * 2 ));
578
- mRegisterRelativePlaces .insert (YMM0, Register_Relative_Position (XMM7 , YMM1));
565
+ mRegisterRelativePlaces .insert (YMM0, Register_Relative_Position (XMM15 , YMM1));
579
566
#else
580
567
mRegisterMapping .insert (YMM0, " YMM0" );
581
568
mRegisterPlaces .insert (YMM0, Register_Position (offset++, 0 , 6 , 32 * 2 ));
582
- mRegisterRelativePlaces .insert (YMM0, Register_Relative_Position (XMM15 , YMM1));
569
+ mRegisterRelativePlaces .insert (YMM0, Register_Relative_Position (XMM7 , YMM1));
583
570
#endif
584
571
mRegisterMapping .insert (YMM1, " YMM1" );
585
572
mRegisterPlaces .insert (YMM1, Register_Position (offset++, 0 , 6 , 32 * 2 ));
@@ -599,16 +586,10 @@ void RegistersView::InitMappings()
599
586
mRegisterMapping .insert (YMM6, " YMM6" );
600
587
mRegisterPlaces .insert (YMM6, Register_Position (offset++, 0 , 6 , 32 * 2 ));
601
588
mRegisterRelativePlaces .insert (YMM6, Register_Relative_Position (YMM5, YMM7));
602
- #ifndef _WIN64
603
- mRegisterMapping .insert (YMM7, " YMM7" );
604
- mRegisterPlaces .insert (YMM7, Register_Position (offset++, 0 , 6 , 32 * 2 ));
605
- mRegisterRelativePlaces .insert (YMM7, Register_Relative_Position (YMM6, DR0));
606
- #else
589
+ #ifdef _WIN64
607
590
mRegisterMapping .insert (YMM7, " YMM7" );
608
591
mRegisterPlaces .insert (YMM7, Register_Position (offset++, 0 , 6 , 32 * 2 ));
609
592
mRegisterRelativePlaces .insert (YMM7, Register_Relative_Position (YMM6, YMM8));
610
- #endif
611
- #ifdef _WIN64
612
593
mRegisterMapping .insert (YMM8, " YMM8" );
613
594
mRegisterPlaces .insert (YMM8, Register_Position (offset++, 0 , 6 , 32 * 2 ));
614
595
mRegisterRelativePlaces .insert (YMM8, Register_Relative_Position (YMM7, YMM9));
@@ -633,8 +614,17 @@ void RegistersView::InitMappings()
633
614
mRegisterMapping .insert (YMM15, " YMM15" );
634
615
mRegisterPlaces .insert (YMM15, Register_Position (offset++, 0 , 6 , 32 * 2 ));
635
616
mRegisterRelativePlaces .insert (YMM15, Register_Relative_Position (YMM14, DR0));
617
+ #else
618
+ mRegisterMapping .insert (YMM7, " YMM7" );
619
+ mRegisterPlaces .insert (YMM7, Register_Position (offset++, 0 , 6 , 32 * 2 ));
620
+ mRegisterRelativePlaces .insert (YMM7, Register_Relative_Position (YMM6, DR0));
636
621
#endif
637
622
}
623
+ else
624
+ {
625
+ mRegisterRelativePlaces .insert (CS, Register_Relative_Position (DS, SS, ES, DR0));
626
+ mRegisterRelativePlaces .insert (SS, Register_Relative_Position (CS, DR0, DS, DR0));
627
+ }
638
628
639
629
offset++;
640
630
0 commit comments