X86: Fix problem with movhps instruction
This problem is like the one fixed with movhpd a few weeks ago. A +8 displacement is used to access memory when there should be none. This fix is needed for the perlbmk spec2k benchmark to run.
This commit is contained in:
parent
9098010e3f
commit
5cf2e7ccf0
|
@ -168,22 +168,21 @@ def macroop MOVUPD_P_XMM {
|
||||||
};
|
};
|
||||||
|
|
||||||
def macroop MOVHPS_XMM_M {
|
def macroop MOVHPS_XMM_M {
|
||||||
ldfp xmmh, seg, sib, "DISPLACEMENT + 8", dataSize=8
|
ldfp xmmh, seg, sib, disp, dataSize=8
|
||||||
};
|
};
|
||||||
|
|
||||||
def macroop MOVHPS_XMM_P {
|
def macroop MOVHPS_XMM_P {
|
||||||
rdip t7
|
rdip t7
|
||||||
ldfp xmmh, seg, riprel, "DISPLACEMENT + 8", dataSize=8
|
ldfp xmmh, seg, riprel, disp, dataSize=8
|
||||||
};
|
};
|
||||||
|
|
||||||
def macroop MOVHPS_M_XMM {
|
def macroop MOVHPS_M_XMM {
|
||||||
stfp xmmh, seg, sib, "DISPLACEMENT + 8", dataSize=8
|
stfp xmmh, seg, sib, disp, dataSize=8
|
||||||
};
|
};
|
||||||
|
|
||||||
def macroop MOVHPS_P_XMM {
|
def macroop MOVHPS_P_XMM {
|
||||||
rdip t7
|
rdip t7
|
||||||
stfp xmml, seg, riprel, "DISPLACEMENT", dataSize=8
|
stfp xmmh, seg, riprel, disp, dataSize=8
|
||||||
stfp xmmh, seg, riprel, "DISPLACEMENT + 8", dataSize=8
|
|
||||||
};
|
};
|
||||||
|
|
||||||
def macroop MOVHPD_XMM_M {
|
def macroop MOVHPD_XMM_M {
|
||||||
|
|
Loading…
Reference in a new issue