GCC on SunOS
gcc -O0 -S sniff.c

ADDF16

Source:

{
/* ADDF16 */
long double op1;
long double op2;
long double result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ldd [%fp-72], %l0
ldd [%fp-64], %l2
add %fp, -152, %o2
std %l0, [%fp-168]
std %l2, [%fp-160]
ldd [%fp-56], %l0
ldd [%fp-48], %l2
std %l0, [%fp-184]
std %l2, [%fp-176]
add %fp, -168, %o0
add %fp, -184, %o1
st %o2, [%sp+64]
call _Q_add, 0
nop
unimp 16
ldd [%fp-152], %o0
ldd [%fp-144], %o2
std %o0, [%fp-136]
std %o2, [%fp-128]

ADDF4

Source:

{
/* ADDF4 */
float op1;
float op2;
float result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ld [%fp-24], %f2
ld [%fp-20], %f3
fadds %f2, %f3, %f2
st %f2, [%fp-108]

ADDF8

Source:

{
/* ADDF8 */
double op1;
double op2;
double result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
faddd %f2, %f4, %f2
std %f2, [%fp-120]

ADDI4

Source:

{
/* ADDI4 */
int op1;
int op2;
int result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ld [%fp-88], %o0
ld [%fp-84], %o1
add %o0, %o1, %o0
st %o0, [%fp-188]

ADDI8

Source:

{
/* ADDI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
addcc %o1, %o3, %o1
addx %o0, %o2, %o0
std %o0, [%fp-200]

ADDRFP8

Source:

{
/* ADDRFP8 */
rasta();
rasta();
}

Assembled:

nop

ADDRGP8

Source:

{
/* ADDRGP8 */
rasta();
rasta();
}

Assembled:

nop

ADDRLP8

Source:

{
/* ADDRLP8 */
rasta();
rasta();
}

Assembled:

nop

ADDU4

Source:

{
/* ADDU4 */
int op1;
int op2;
int result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
add %o0, %o1, %o0
st %o0, [%fp-84]

ADDU8

Source:

{
/* ADDU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 + op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
addcc %o1, %o3, %o1
addx %o0, %o2, %o0
std %o0, [%fp-200]

ARGF16

Source:

{
/* ARGF16 */
rasta();
rasta();
}

Assembled:

nop

ARGF4

Source:

{
/* ARGF4 */
rasta();
rasta();
}

Assembled:

nop

ARGF8

Source:

{
/* ARGF8 */
rasta();
rasta();
}

Assembled:

nop

ARGI4

Source:

{
/* ARGI4 */
rasta();
rasta();
}

Assembled:

nop

ARGI8

Source:

{
/* ARGI8 */
rasta();
rasta();
}

Assembled:

nop

ARGP8

Source:

{
/* ARGP8 */
rasta();
rasta();
}

Assembled:

nop

ARGU4

Source:

{
/* ARGU4 */
rasta();
rasta();
}

Assembled:

nop

ARGU8

Source:

{
/* ARGU8 */
rasta();
rasta();
}

Assembled:

nop

ASGNF16

Source:

{
/* ASGNF16 */
long double op1;
long double result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldd [%fp-56], %o0
ldd [%fp-48], %o2
std %o0, [%fp-72]
std %o2, [%fp-64]

ASGNF4

Source:

{
/* ASGNF4 */
float op1;
float result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ld [%fp-20], %o0
st %o0, [%fp-24]

ASGNF8

Source:

{
/* ASGNF8 */
double op1;
double result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldd [%fp-32], %o0
std %o0, [%fp-40]

ASGNI1

Source:

{
/* ASGNI1 */
char op1;
char result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldub [%fp-73], %o0
stb %o0, [%fp-74]

ASGNI2

Source:

{
/* ASGNI2 */
short op1;
short result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
lduh [%fp-76], %o0
sth %o0, [%fp-78]

ASGNI4

Source:

{
/* ASGNI4 */
int op1;
int result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ld [%fp-84], %o0
st %o0, [%fp-88]

ASGNI8

Source:

{
/* ASGNI8 */
long long op1;
long long result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldd [%fp-96], %o0
std %o0, [%fp-104]

ASGNP8

Source:

{
/* ASGNP8 */
int * op1;
int * result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ld [%fp-88], %o0
st %o0, [%fp-84]

ASGNU1

Source:

{
/* ASGNU1 */
char op1;
char result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldub [%fp-74], %o0
stb %o0, [%fp-73]

ASGNU2

Source:

{
/* ASGNU2 */
short op1;
short result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
lduh [%fp-78], %o0
sth %o0, [%fp-76]

ASGNU4

Source:

{
/* ASGNU4 */
int op1;
int result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ld [%fp-88], %o0
st %o0, [%fp-84]

ASGNU8

Source:

{
/* ASGNU8 */
long long op1;
long long result;
rasta();
result = op1;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
std %o0, [%fp-96]

BANDI4

Source:

{
/* BANDI4 */
int op1;
int op2;
int result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
and %o0, %o1, %o0
st %o0, [%fp-84]

BANDI8

Source:

{
/* BANDI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
and %o0, %o2, %o0
and %o1, %o3, %o1
std %o0, [%fp-200]

BANDU4

Source:

{
/* BANDU4 */
int op1;
int op2;
int result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
and %o0, %o1, %o0
st %o0, [%fp-84]

BANDU8

Source:

{
/* BANDU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
and %o0, %o2, %o0
and %o1, %o3, %o1
std %o0, [%fp-200]

BCOMI4

Source:

{
/* BCOMI4 */
rasta();
rasta();
}

Assembled:

nop

BCOMI8

Source:

{
/* BCOMI8 */
rasta();
rasta();
}

Assembled:

nop

BCOMU4

Source:

{
/* BCOMU4 */
rasta();
rasta();
}

Assembled:

nop

BCOMU8

Source:

{
/* BCOMU8 */
rasta();
rasta();
}

Assembled:

nop

BORI4

Source:

{
/* BORI4 */
int op1;
int op2;
int result;
rasta();
result = op1 | op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
or %o0, %o1, %o0
st %o0, [%fp-84]

BORI8

Source:

{
/* BORI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 | op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
or %o0, %o2, %o0
or %o1, %o3, %o1
std %o0, [%fp-200]

BORU4

Source:

{
/* BORU4 */
int op1;
int op2;
int result;
rasta();
result = op1 | op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
or %o0, %o1, %o0
st %o0, [%fp-84]

BORU8

Source:

{
/* BORU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 | op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
or %o0, %o2, %o0
or %o1, %o3, %o1
std %o0, [%fp-200]

BXORI4

Source:

{
/* BXORI4 */
int op1;
int op2;
int result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
and %o0, %o1, %o0
st %o0, [%fp-84]

BXORI8

Source:

{
/* BXORI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
and %o0, %o2, %o0
and %o1, %o3, %o1
std %o0, [%fp-200]

BXORU4

Source:

{
/* BXORU4 */
int op1;
int op2;
int result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
and %o0, %o1, %o0
st %o0, [%fp-84]

BXORU8

Source:

{
/* BXORU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 & op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
and %o0, %o2, %o0
and %o1, %o3, %o1
std %o0, [%fp-200]

CALLF16

Source:

{
/* CALLF16 */
rasta();
rasta();
}

Assembled:

nop

CALLF4

Source:

{
/* CALLF4 */
rasta();
rasta();
}

Assembled:

nop

CALLF8

Source:

{
/* CALLF8 */
rasta();
rasta();
}

Assembled:

nop

CALLI4

Source:

{
/* CALLI4 */
rasta();
rasta();
}

Assembled:

nop

CALLI8

Source:

{
/* CALLI8 */
rasta();
rasta();
}

Assembled:

nop

CALLP8

Source:

{
/* CALLP8 */
rasta();
rasta();
}

Assembled:

nop

CALLU4

Source:

{
/* CALLU4 */
rasta();
rasta();
}

Assembled:

nop

CALLU8

Source:

{
/* CALLU8 */
rasta();
rasta();
}

Assembled:

nop

CNSTF16

Source:

{
/* CNSTF16 */
rasta();
rasta();
}

Assembled:

nop

CNSTF4

Source:

{
/* CNSTF4 */
rasta();
rasta();
}

Assembled:

nop

CNSTF8

Source:

{
/* CNSTF8 */
rasta();
rasta();
}

Assembled:

nop

CNSTI1

Source:

{
/* CNSTI1 */
rasta();
rasta();
}

Assembled:

nop

CNSTI2

Source:

{
/* CNSTI2 */
rasta();
rasta();
}

Assembled:

nop

CNSTI4

Source:

{
/* CNSTI4 */
rasta();
rasta();
}

Assembled:

nop

CNSTI8

Source:

{
/* CNSTI8 */
rasta();
rasta();
}

Assembled:

nop

CNSTP8

Source:

{
/* CNSTP8 */
rasta();
rasta();
}

Assembled:

nop

CNSTU1

Source:

{
/* CNSTU1 */
rasta();
rasta();
}

Assembled:

nop

CNSTU2

Source:

{
/* CNSTU2 */
rasta();
rasta();
}

Assembled:

nop

CNSTU4

Source:

{
/* CNSTU4 */
rasta();
rasta();
}

Assembled:

nop

CNSTU8

Source:

{
/* CNSTU8 */
rasta();
rasta();
}

Assembled:

nop

CVFF16

Source:

{
/* CVFF16 */
rasta();
rasta();
}

Assembled:

nop

CVFF4

Source:

{
/* CVFF4 */
rasta();
rasta();
}

Assembled:

nop

CVFF8

Source:

{
/* CVFF8 */
rasta();
rasta();
}

Assembled:

nop

CVFI4

Source:

{
/* CVFI4 */
rasta();
rasta();
}

Assembled:

nop

CVFI8

Source:

{
/* CVFI8 */
rasta();
rasta();
}

Assembled:

nop

CVIF16

Source:

{
/* CVIF16 */
rasta();
rasta();
}

Assembled:

nop

CVIF4

Source:

{
/* CVIF4 */
rasta();
rasta();
}

Assembled:

nop

CVIF8

Source:

{
/* CVIF8 */
rasta();
rasta();
}

Assembled:

nop

CVII1

Source:

{
/* CVII1 */
rasta();
rasta();
}

Assembled:

nop

CVII2

Source:

{
/* CVII2 */
rasta();
rasta();
}

Assembled:

nop

CVII4

Source:

{
/* CVII4 */
rasta();
rasta();
}

Assembled:

nop

CVII8

Source:

{
/* CVII8 */
rasta();
rasta();
}

Assembled:

nop

CVIU1

Source:

{
/* CVIU1 */
rasta();
rasta();
}

Assembled:

nop

CVIU2

Source:

{
/* CVIU2 */
rasta();
rasta();
}

Assembled:

nop

CVIU4

Source:

{
/* CVIU4 */
rasta();
rasta();
}

Assembled:

nop

CVIU8

Source:

{
/* CVIU8 */
rasta();
rasta();
}

Assembled:

nop

CVPU8

Source:

{
/* CVPU8 */
rasta();
rasta();
}

Assembled:

nop

CVUI1

Source:

{
/* CVUI1 */
rasta();
rasta();
}

Assembled:

nop

CVUI2

Source:

{
/* CVUI2 */
rasta();
rasta();
}

Assembled:

nop

CVUI4

Source:

{
/* CVUI4 */
rasta();
rasta();
}

Assembled:

nop

CVUI8

Source:

{
/* CVUI8 */
rasta();
rasta();
}

Assembled:

nop

CVUP8

Source:

{
/* CVUP8 */
rasta();
rasta();
}

Assembled:

nop

CVUU1

Source:

{
/* CVUU1 */
rasta();
rasta();
}

Assembled:

nop

CVUU2

Source:

{
/* CVUU2 */
rasta();
rasta();
}

Assembled:

nop

CVUU4

Source:

{
/* CVUU4 */
rasta();
rasta();
}

Assembled:

nop

CVUU8

Source:

{
/* CVUU8 */
rasta();
rasta();
}

Assembled:

nop

DIVF16

Source:

{
/* DIVF16 */
long double op1;
long double op2;
long double result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
add %fp, -136, %o2
std %l0, [%fp-72]
std %l2, [%fp-64]
ldd [%fp-168], %l0
ldd [%fp-160], %l2
std %l0, [%fp-56]
std %l2, [%fp-48]
add %fp, -72, %o0
add %fp, -56, %o1
st %o2, [%sp+64]
call _Q_div, 0
nop
unimp 16
ldd [%fp-136], %o0
ldd [%fp-128], %o2
std %o0, [%fp-152]
std %o2, [%fp-144]

DIVF4

Source:

{
/* DIVF4 */
float op1;
float op2;
float result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fdivs %f2, %f3, %f2
st %f2, [%fp-20]

DIVF8

Source:

{
/* DIVF8 */
double op1;
double op2;
double result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fdivd %f2, %f4, %f2
std %f2, [%fp-120]

DIVI4

Source:

{
/* DIVI4 */
int op1;
int op2;
int result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
call .div, 0
nop
st %o0, [%fp-84]

DIVI8

Source:

{
/* DIVI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
call __div64, 0
nop
std %o0, [%fp-200]

DIVU4

Source:

{
/* DIVU4 */
int op1;
int op2;
int result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
call .div, 0
nop
st %o0, [%fp-84]

DIVU8

Source:

{
/* DIVU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 / op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
call __div64, 0
nop
std %o0, [%fp-200]

EQF16

Source:

{
/* EQF16 */
long double op1;
long double op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_fne, 0
nop
cmp %o0, 0
be .LL5
nop
call jumpTarget, 0
nop
.LL5:

EQF4

Source:

{
/* EQF4 */
float op1;
float op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmps %f2, %f3
nop
fbe .LL3
nop
call jumpTarget, 0
nop
.LL3:

EQF8

Source:

{
/* EQF8 */
double op1;
double op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmpd %f2, %f4
nop
fbe .LL4
nop
call jumpTarget, 0
nop
.LL4:

EQI4

Source:

{
/* EQI4 */
int op1;
int op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
be .LL6
nop
call jumpTarget, 0
nop
.LL6:

EQI8

Source:

{
/* EQI8 */
long long op1;
long long op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL8
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL8
nop
b .LL7
nop
.LL8:
call jumpTarget, 0
nop
.LL7:

EQU4

Source:

{
/* EQU4 */
int op1;
int op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
be .LL9
nop
call jumpTarget, 0
nop
.LL9:

EQU8

Source:

{
/* EQU8 */
long long op1;
long long op2;
rasta();
if (! (op1 == op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL11
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL11
nop
b .LL10
nop
.LL11:
call jumpTarget, 0
nop
.LL10:

GEF16

Source:

{
/* GEF16 */
long double op1;
long double op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_fge, 0
nop
cmp %o0, 0
bne .LL14
nop
call jumpTarget, 0
nop
.LL14:

GEF4

Source:

{
/* GEF4 */
float op1;
float op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmpes %f2, %f3
nop
fbge .LL12
nop
call jumpTarget, 0
nop
.LL12:

GEF8

Source:

{
/* GEF8 */
double op1;
double op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmped %f2, %f4
nop
fbge .LL13
nop
call jumpTarget, 0
nop
.LL13:

GEI4

Source:

{
/* GEI4 */
int op1;
int op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bge .LL15
nop
call jumpTarget, 0
nop
.LL15:

GEI8

Source:

{
/* GEI8 */
long long op1;
long long op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bg .LL17
nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bne .LL16
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bgu .LL17
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bne .LL16
nop
b .LL16
nop
.LL17:
call jumpTarget, 0
nop
.LL16:

GEU4

Source:

{
/* GEU4 */
int op1;
int op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bge .LL18
nop
call jumpTarget, 0
nop
.LL18:

GEU8

Source:

{
/* GEU8 */
long long op1;
long long op2;
rasta();
if (! (op1 >= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bg .LL20
nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bne .LL19
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bgu .LL20
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bne .LL19
nop
b .LL19
nop
.LL20:
call jumpTarget, 0
nop
.LL19:

GTF16

Source:

{
/* GTF16 */
long double op1;
long double op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_fgt, 0
nop
cmp %o0, 0
bne .LL23
nop
call jumpTarget, 0
nop
.LL23:

GTF4

Source:

{
/* GTF4 */
float op1;
float op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmpes %f2, %f3
nop
fbg .LL21
nop
call jumpTarget, 0
nop
.LL21:

GTF8

Source:

{
/* GTF8 */
double op1;
double op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmped %f2, %f4
nop
fbg .LL22
nop
call jumpTarget, 0
nop
.LL22:

GTI4

Source:

{
/* GTI4 */
int op1;
int op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bg .LL24
nop
call jumpTarget, 0
nop
.LL24:

GTI8

Source:

{
/* GTI8 */
long long op1;
long long op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bg .LL25
nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL26
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bgu .LL25
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL26
nop
b .LL26
nop
.LL26:
call jumpTarget, 0
nop
.LL25:

GTU4

Source:

{
/* GTU4 */
int op1;
int op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bg .LL27
nop
call jumpTarget, 0
nop
.LL27:

GTU8

Source:

{
/* GTU8 */
long long op1;
long long op2;
rasta();
if (! (op1 > op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bg .LL28
nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL29
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bgu .LL28
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL29
nop
b .LL29
nop
.LL29:
call jumpTarget, 0
nop
.LL28:

INDIRF16

Source:

{
/* INDIRF16 */
rasta();
rasta();
}

Assembled:

nop

INDIRF4

Source:

{
/* INDIRF4 */
rasta();
rasta();
}

Assembled:

nop

INDIRF8

Source:

{
/* INDIRF8 */
rasta();
rasta();
}

Assembled:

nop

INDIRI1

Source:

{
/* INDIRI1 */
rasta();
rasta();
}

Assembled:

nop

INDIRI2

Source:

{
/* INDIRI2 */
rasta();
rasta();
}

Assembled:

nop

INDIRI4

Source:

{
/* INDIRI4 */
rasta();
rasta();
}

Assembled:

nop

INDIRI8

Source:

{
/* INDIRI8 */
rasta();
rasta();
}

Assembled:

nop

INDIRP8

Source:

{
/* INDIRP8 */
rasta();
rasta();
}

Assembled:

nop

INDIRU1

Source:

{
/* INDIRU1 */
rasta();
rasta();
}

Assembled:

nop

INDIRU2

Source:

{
/* INDIRU2 */
rasta();
rasta();
}

Assembled:

nop

INDIRU4

Source:

{
/* INDIRU4 */
rasta();
rasta();
}

Assembled:

nop

INDIRU8

Source:

{
/* INDIRU8 */
rasta();
rasta();
}

Assembled:

nop

LEF16

Source:

{
/* LEF16 */
long double op1;
long double op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_fle, 0
nop
cmp %o0, 0
bne .LL32
nop
call jumpTarget, 0
nop
.LL32:

LEF4

Source:

{
/* LEF4 */
float op1;
float op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmpes %f2, %f3
nop
fble .LL30
nop
call jumpTarget, 0
nop
.LL30:

LEF8

Source:

{
/* LEF8 */
double op1;
double op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmped %f2, %f4
nop
fble .LL31
nop
call jumpTarget, 0
nop
.LL31:

LEI4

Source:

{
/* LEI4 */
int op1;
int op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
ble .LL33
nop
call jumpTarget, 0
nop
.LL33:

LEI8

Source:

{
/* LEI8 */
long long op1;
long long op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bg .LL35
nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL34
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bgu .LL35
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL34
nop
b .LL34
nop
.LL35:
call jumpTarget, 0
nop
.LL34:

LEU4

Source:

{
/* LEU4 */
int op1;
int op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
ble .LL36
nop
call jumpTarget, 0
nop
.LL36:

LEU8

Source:

{
/* LEU8 */
long long op1;
long long op2;
rasta();
if (! (op1 <= op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bg .LL38
nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL37
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bgu .LL38
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL37
nop
b .LL37
nop
.LL38:
call jumpTarget, 0
nop
.LL37:

LOADF16

Source:

{
/* LOADF16 */
rasta();
rasta();
}

Assembled:

nop

LOADF4

Source:

{
/* LOADF4 */
rasta();
rasta();
}

Assembled:

nop

LOADF8

Source:

{
/* LOADF8 */
rasta();
rasta();
}

Assembled:

nop

LOADI1

Source:

{
/* LOADI1 */
rasta();
rasta();
}

Assembled:

nop

LOADI2

Source:

{
/* LOADI2 */
rasta();
rasta();
}

Assembled:

nop

LOADI4

Source:

{
/* LOADI4 */
rasta();
rasta();
}

Assembled:

nop

LOADI8

Source:

{
/* LOADI8 */
rasta();
rasta();
}

Assembled:

nop

LOADP8

Source:

{
/* LOADP8 */
rasta();
rasta();
}

Assembled:

nop

LOADU1

Source:

{
/* LOADU1 */
rasta();
rasta();
}

Assembled:

nop

LOADU2

Source:

{
/* LOADU2 */
rasta();
rasta();
}

Assembled:

nop

LOADU4

Source:

{
/* LOADU4 */
rasta();
rasta();
}

Assembled:

nop

LOADU8

Source:

{
/* LOADU8 */
rasta();
rasta();
}

Assembled:

nop

LSHI4

Source:

{
/* LSHI4 */
int op1;
int op2;
int result;
rasta();
result = op1 << op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sll %o0, %o1, %o0
st %o0, [%fp-84]

LSHI8

Source:

{
/* LSHI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 << op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ld [%fp-92], %o2
call __ashldi3, 0
nop
std %o0, [%fp-200]

LSHU4

Source:

{
/* LSHU4 */
int op1;
int op2;
int result;
rasta();
result = op1 << op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sll %o0, %o1, %o0
st %o0, [%fp-84]

LSHU8

Source:

{
/* LSHU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 << op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ld [%fp-92], %o2
call __ashldi3, 0
nop
std %o0, [%fp-200]

LTF16

Source:

{
/* LTF16 */
long double op1;
long double op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_flt, 0
nop
cmp %o0, 0
bne .LL41
nop
call jumpTarget, 0
nop
.LL41:

LTF4

Source:

{
/* LTF4 */
float op1;
float op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmpes %f2, %f3
nop
fbl .LL39
nop
call jumpTarget, 0
nop
.LL39:

LTF8

Source:

{
/* LTF8 */
double op1;
double op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmped %f2, %f4
nop
fbl .LL40
nop
call jumpTarget, 0
nop
.LL40:

LTI4

Source:

{
/* LTI4 */
int op1;
int op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bl .LL42
nop
call jumpTarget, 0
nop
.LL42:

LTI8

Source:

{
/* LTI8 */
long long op1;
long long op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bg .LL43
nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bne .LL44
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bgu .LL43
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bne .LL44
nop
b .LL44
nop
.LL44:
call jumpTarget, 0
nop
.LL43:

LTU4

Source:

{
/* LTU4 */
int op1;
int op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bl .LL45
nop
call jumpTarget, 0
nop
.LL45:

LTU8

Source:

{
/* LTU8 */
long long op1;
long long op2;
rasta();
if (! (op1 < op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bg .LL46
nop
ld [%fp-96], %o0
ld [%fp-104], %o1
cmp %o0, %o1
bne .LL47
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bgu .LL46
nop
ld [%fp-92], %o0
ld [%fp-100], %o1
cmp %o0, %o1
bne .LL47
nop
b .LL47
nop
.LL47:
call jumpTarget, 0
nop
.LL46:

MODI4

Source:

{
/* MODI4 */
int op1;
int op2;
int result;
rasta();
result = op1 % op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o1
mov %o1, %o0
ld [%fp-88], %o1
call .rem, 0
nop
st %o0, [%fp-84]

MODI8

Source:

{
/* MODI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 % op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o2
mov %o2, %o0
mov %o3, %o1
ldd [%fp-96], %o2
call __rem64, 0
nop
std %o0, [%fp-200]

MODU4

Source:

{
/* MODU4 */
int op1;
int op2;
int result;
rasta();
result = op1 % op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o1
mov %o1, %o0
ld [%fp-88], %o1
call .rem, 0
nop
st %o0, [%fp-84]

MODU8

Source:

{
/* MODU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 % op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o2
mov %o2, %o0
mov %o3, %o1
ldd [%fp-96], %o2
call __rem64, 0
nop
std %o0, [%fp-200]

MULF16

Source:

{
/* MULF16 */
long double op1;
long double op2;
long double result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
add %fp, -136, %o2
std %l0, [%fp-72]
std %l2, [%fp-64]
ldd [%fp-168], %l0
ldd [%fp-160], %l2
std %l0, [%fp-56]
std %l2, [%fp-48]
add %fp, -72, %o0
add %fp, -56, %o1
st %o2, [%sp+64]
call _Q_mul, 0
nop
unimp 16
ldd [%fp-136], %o0
ldd [%fp-128], %o2
std %o0, [%fp-152]
std %o2, [%fp-144]

MULF4

Source:

{
/* MULF4 */
float op1;
float op2;
float result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fmuls %f2, %f3, %f2
st %f2, [%fp-20]

MULF8

Source:

{
/* MULF8 */
double op1;
double op2;
double result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fmuld %f2, %f4, %f2
std %f2, [%fp-120]

MULI4

Source:

{
/* MULI4 */
int op1;
int op2;
int result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
call .umul, 0
nop
st %o0, [%fp-84]

MULI8

Source:

{
/* MULI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
call __mul64, 0
nop
std %o0, [%fp-200]

MULU4

Source:

{
/* MULU4 */
int op1;
int op2;
int result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
call .umul, 0
nop
st %o0, [%fp-84]

MULU8

Source:

{
/* MULU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 * op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
call __mul64, 0
nop
std %o0, [%fp-200]

NEF16

Source:

{
/* NEF16 */
long double op1;
long double op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
ldd [%fp-168], %o0
ldd [%fp-160], %o2
std %l0, [%fp-152]
std %l2, [%fp-144]
add %fp, -152, %o4
std %o0, [%fp-136]
std %o2, [%fp-128]
add %fp, -136, %o1
mov %o4, %o0
call _Q_feq, 0
nop
cmp %o0, 0
be .LL50
nop
call jumpTarget, 0
nop
.LL50:

NEF4

Source:

{
/* NEF4 */
float op1;
float op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fcmps %f2, %f3
nop
fbne .LL48
nop
call jumpTarget, 0
nop
.LL48:

NEF8

Source:

{
/* NEF8 */
double op1;
double op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fcmpd %f2, %f4
nop
fbne .LL49
nop
call jumpTarget, 0
nop
.LL49:

NEGF16

Source:

{
/* NEGF16 */
rasta();
rasta();
}

Assembled:

nop

NEGF4

Source:

{
/* NEGF4 */
rasta();
rasta();
}

Assembled:

nop

NEGF8

Source:

{
/* NEGF8 */
rasta();
rasta();
}

Assembled:

nop

NEGI4

Source:

{
/* NEGI4 */
rasta();
rasta();
}

Assembled:

nop

NEGI8

Source:

{
/* NEGI8 */
rasta();
rasta();
}

Assembled:

nop

NEI4

Source:

{
/* NEI4 */
int op1;
int op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bne .LL51
nop
call jumpTarget, 0
nop
.LL51:

NEI8

Source:

{
/* NEI8 */
long long op1;
long long op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL52
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL52
nop
call jumpTarget, 0
nop
.LL52:

NEU4

Source:

{
/* NEU4 */
int op1;
int op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
cmp %o0, %o1
bne .LL53
nop
call jumpTarget, 0
nop
.LL53:

NEU8

Source:

{
/* NEU8 */
long long op1;
long long op2;
rasta();
if (! (op1 != op2) ) {
jumpTarget();
}
rasta();
}

Assembled:

nop
ld [%fp-104], %o0
ld [%fp-96], %o1
cmp %o0, %o1
bne .LL54
nop
ld [%fp-100], %o0
ld [%fp-92], %o1
cmp %o0, %o1
bne .LL54
nop
call jumpTarget, 0
nop
.LL54:

RETF16

Source:

{
/* RETF16 */
rasta();
rasta();
}

Assembled:

nop

RETF4

Source:

{
/* RETF4 */
rasta();
rasta();
}

Assembled:

nop

RETF8

Source:

{
/* RETF8 */
rasta();
rasta();
}

Assembled:

nop

RETI4

Source:

{
/* RETI4 */
rasta();
rasta();
}

Assembled:

nop

RETI8

Source:

{
/* RETI8 */
rasta();
rasta();
}

Assembled:

nop

RETP8

Source:

{
/* RETP8 */
rasta();
rasta();
}

Assembled:

nop

RETU4

Source:

{
/* RETU4 */
rasta();
rasta();
}

Assembled:

nop

RETU8

Source:

{
/* RETU8 */
rasta();
rasta();
}

Assembled:

nop

RSHI4

Source:

{
/* RSHI4 */
int op1;
int op2;
int result;
rasta();
result = op1 >> op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sra %o0, %o1, %o0
st %o0, [%fp-84]

RSHI8

Source:

{
/* RSHI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 >> op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ld [%fp-92], %o2
call __ashrdi3, 0
nop
std %o0, [%fp-200]

RSHU4

Source:

{
/* RSHU4 */
int op1;
int op2;
int result;
rasta();
result = op1 >> op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sra %o0, %o1, %o0
st %o0, [%fp-84]

RSHU8

Source:

{
/* RSHU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 >> op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ld [%fp-92], %o2
call __ashrdi3, 0
nop
std %o0, [%fp-200]

SUBF16

Source:

{
/* SUBF16 */
long double op1;
long double op2;
long double result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ldd [%fp-184], %l0
ldd [%fp-176], %l2
add %fp, -136, %o2
std %l0, [%fp-72]
std %l2, [%fp-64]
ldd [%fp-168], %l0
ldd [%fp-160], %l2
std %l0, [%fp-56]
std %l2, [%fp-48]
add %fp, -72, %o0
add %fp, -56, %o1
st %o2, [%sp+64]
call _Q_sub, 0
nop
unimp 16
ldd [%fp-136], %o0
ldd [%fp-128], %o2
std %o0, [%fp-152]
std %o2, [%fp-144]

SUBF4

Source:

{
/* SUBF4 */
float op1;
float op2;
float result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ld [%fp-108], %f2
ld [%fp-24], %f3
fsubs %f2, %f3, %f2
st %f2, [%fp-20]

SUBF8

Source:

{
/* SUBF8 */
double op1;
double op2;
double result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ldd [%fp-40], %f2
ldd [%fp-32], %f4
fsubd %f2, %f4, %f2
std %f2, [%fp-120]

SUBI4

Source:

{
/* SUBI4 */
int op1;
int op2;
int result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sub %o0, %o1, %o0
st %o0, [%fp-84]

SUBI8

Source:

{
/* SUBI8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
subcc %o1, %o3, %o1
subx %o0, %o2, %o0
std %o0, [%fp-200]

SUBU4

Source:

{
/* SUBU4 */
int op1;
int op2;
int result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ld [%fp-188], %o0
ld [%fp-88], %o1
sub %o0, %o1, %o0
st %o0, [%fp-84]

SUBU8

Source:

{
/* SUBU8 */
long long op1;
long long op2;
long long result;
rasta();
result = op1 - op2;
rasta();
}

Assembled:

nop
ldd [%fp-104], %o0
ldd [%fp-96], %o2
subcc %o1, %o3, %o1
subx %o0, %o2, %o0
std %o0, [%fp-200]