X86: Implement a locking version of AND.
This commit is contained in:
parent
e742cad6f4
commit
789b3191b9
1 changed files with 32 additions and 0 deletions
|
@ -239,6 +239,23 @@ def macroop AND_P_I
|
|||
st t2, seg, riprel, disp
|
||||
};
|
||||
|
||||
def macroop AND_LOCKED_M_I
|
||||
{
|
||||
ldstl t2, seg, sib, disp
|
||||
limm t1, imm
|
||||
and t2, t2, t1, flags=(OF,SF,ZF,PF,CF)
|
||||
stul t2, seg, sib, disp
|
||||
};
|
||||
|
||||
def macroop AND_LOCKED_P_I
|
||||
{
|
||||
rdip t7
|
||||
ldstl t2, seg, riprel, disp
|
||||
limm t1, imm
|
||||
and t2, t2, t1, flags=(OF,SF,ZF,PF,CF)
|
||||
stul t2, seg, riprel, disp
|
||||
};
|
||||
|
||||
def macroop AND_M_R
|
||||
{
|
||||
ldst t1, seg, sib, disp
|
||||
|
@ -254,6 +271,21 @@ def macroop AND_P_R
|
|||
st t1, seg, riprel, disp
|
||||
};
|
||||
|
||||
def macroop AND_LOCKED_M_R
|
||||
{
|
||||
ldstl t1, seg, sib, disp
|
||||
and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
|
||||
stul t1, seg, sib, disp
|
||||
};
|
||||
|
||||
def macroop AND_LOCKED_P_R
|
||||
{
|
||||
rdip t7
|
||||
ldstl t1, seg, riprel, disp
|
||||
and t1, t1, reg, flags=(OF,SF,ZF,PF,CF)
|
||||
stul t1, seg, riprel, disp
|
||||
};
|
||||
|
||||
def macroop NOT_R
|
||||
{
|
||||
limm t1, -1
|
||||
|
|
Loading…
Reference in a new issue