Use 80386 SET instruction

This commit is contained in:
ceriel 1992-09-17 14:15:20 +00:00
parent be227c5f88
commit 248ca45fc0

View file

@ -233,6 +233,7 @@ jne label cost(1,4).
jmp label cost(1,4). jmp label cost(1,4).
proccall "call" label+rm cost(1,8). proccall "call" label+rm cost(1,8).
jxx "syntax error" label cost(1,4). jxx "syntax error" label cost(1,4).
setxx "syntax error" REG cost(2,4).
lea anyreg:rw, halfindir:ro. lea anyreg:rw, halfindir:ro.
lea LOCAL:rw, halfindir:ro. /* only for register variables, UNSAFE!!! */ lea LOCAL:rw, halfindir:ro. /* only for register variables, UNSAFE!!! */
leave cost(1,4). leave cost(1,4).
@ -2454,16 +2455,14 @@ proc txx
with rm with rm
uses REG = {ANYCON,0} uses REG = {ANYCON,0}
gen test %1 gen test %1
jxx* {label,1f} setxx* %a yields %a
inc %a
1: yields %a
pat tlt call txx("jge") pat tlt call txx("setl")
pat tle call txx("jg") pat tle call txx("setle")
pat teq call txx("jne") pat teq call txx("sete")
pat tne call txx("je") pat tne call txx("setne")
pat tge call txx("jl") pat tge call txx("setge")
pat tgt call txx("jle") pat tgt call txx("setg")
proc txxior proc txxior
with rm REG with rm REG