GCC on x86
gcc -O0 -S sniff.c

ADDF16

Source:

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

Assembled:

fldt -64(%ebp)
fldt -48(%ebp)
faddp %st,%st(1)
fstpt -128(%ebp)

ADDF4

Source:

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

Assembled:

flds -8(%ebp)
fadds -4(%ebp)
fstps -100(%ebp)

ADDF8

Source:

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

Assembled:

fldl -24(%ebp)
faddl -16(%ebp)
fstpl -112(%ebp)

ADDI4

Source:

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

Assembled:

movl -80(%ebp),%eax
movl -76(%ebp),%edx
leal (%edx,%eax),%ecx
movl %ecx,-132(%ebp)

ADDI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
addl -88(%ebp),%eax
adcl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

ADDRFP8

Source:

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

Assembled:

ADDRGP8

Source:

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

Assembled:

ADDRLP8

Source:

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

Assembled:

ADDU4

Source:

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

Assembled:

movl -132(%ebp),%eax
movl -80(%ebp),%edx
leal (%edx,%eax),%ecx
movl %ecx,-76(%ebp)

ADDU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
addl -88(%ebp),%eax
adcl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

ARGF16

Source:

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

Assembled:

ARGF4

Source:

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

Assembled:

ARGF8

Source:

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

Assembled:

ARGI4

Source:

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

Assembled:

ARGI8

Source:

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

Assembled:

ARGP8

Source:

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

Assembled:

ARGU4

Source:

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

Assembled:

ARGU8

Source:

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

Assembled:

ASGNF16

Source:

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

Assembled:

fldt -48(%ebp)
fstpt -64(%ebp)

ASGNF4

Source:

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

Assembled:

flds -4(%ebp)
fstps -8(%ebp)

ASGNF8

Source:

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

Assembled:

fldl -16(%ebp)
fstpl -24(%ebp)

ASGNI1

Source:

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

Assembled:

movb -65(%ebp),%al
movb %al,-66(%ebp)

ASGNI2

Source:

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

Assembled:

movl -68(%ebp),%eax
movw %ax,-70(%ebp)

ASGNI4

Source:

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

Assembled:

movl -76(%ebp),%eax
movl %eax,-80(%ebp)

ASGNI8

Source:

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

Assembled:

movl -88(%ebp),%eax
movl -84(%ebp),%edx
movl %eax,-96(%ebp)
movl %edx,-92(%ebp)

ASGNP8

Source:

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

Assembled:

movl -80(%ebp),%eax
movl %eax,-76(%ebp)

ASGNU1

Source:

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

Assembled:

movb -66(%ebp),%al
movb %al,-65(%ebp)

ASGNU2

Source:

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

Assembled:

movzwl -70(%ebp),%eax
movw %ax,-68(%ebp)

ASGNU4

Source:

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

Assembled:

movl -80(%ebp),%eax
movl %eax,-76(%ebp)

ASGNU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movl %eax,-88(%ebp)
movl %edx,-84(%ebp)

BANDI4

Source:

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

Assembled:

movl -132(%ebp),%eax
andl -80(%ebp),%eax
movl %eax,-76(%ebp)

BANDI8

Source:

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

Assembled:

movl -96(%ebp),%edx
movl -92(%ebp),%ecx
andl -88(%ebp),%edx
andl -84(%ebp),%ecx
movl %edx,-144(%ebp)
movl %ecx,-140(%ebp)

BANDU4

Source:

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

Assembled:

movl -132(%ebp),%ecx
andl -80(%ebp),%ecx
movl %ecx,-76(%ebp)

BANDU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
andl -88(%ebp),%eax
andl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

BCOMI4

Source:

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

Assembled:

BCOMI8

Source:

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

Assembled:

BCOMU4

Source:

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

Assembled:

BCOMU8

Source:

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

Assembled:

BORI4

Source:

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

Assembled:

movl -132(%ebp),%edx
orl -80(%ebp),%edx
movl %edx,-76(%ebp)

BORI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
orl -88(%ebp),%eax
orl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

BORU4

Source:

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

Assembled:

movl -132(%ebp),%edx
orl -80(%ebp),%edx
movl %edx,-76(%ebp)

BORU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
orl -88(%ebp),%eax
orl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

BXORI4

Source:

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

Assembled:

movl -132(%ebp),%edx
andl -80(%ebp),%edx
movl %edx,-76(%ebp)

BXORI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
andl -88(%ebp),%eax
andl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

BXORU4

Source:

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

Assembled:

movl -132(%ebp),%edx
andl -80(%ebp),%edx
movl %edx,-76(%ebp)

BXORU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
andl -88(%ebp),%eax
andl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

CALLF16

Source:

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

Assembled:

CALLF4

Source:

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

Assembled:

CALLF8

Source:

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

Assembled:

CALLI4

Source:

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

Assembled:

CALLI8

Source:

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

Assembled:

CALLP8

Source:

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

Assembled:

CALLU4

Source:

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

Assembled:

CALLU8

Source:

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

Assembled:

CNSTF16

Source:

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

Assembled:

CNSTF4

Source:

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

Assembled:

CNSTF8

Source:

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

Assembled:

CNSTI1

Source:

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

Assembled:

CNSTI2

Source:

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

Assembled:

CNSTI4

Source:

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

Assembled:

CNSTI8

Source:

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

Assembled:

CNSTP8

Source:

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

Assembled:

CNSTU1

Source:

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

Assembled:

CNSTU2

Source:

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

Assembled:

CNSTU4

Source:

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

Assembled:

CNSTU8

Source:

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

Assembled:

CVFF16

Source:

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

Assembled:

CVFF4

Source:

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

Assembled:

CVFF8

Source:

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

Assembled:

CVFI4

Source:

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

Assembled:

CVFI8

Source:

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

Assembled:

CVIF16

Source:

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

Assembled:

CVIF4

Source:

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

Assembled:

CVIF8

Source:

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

Assembled:

CVII1

Source:

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

Assembled:

CVII2

Source:

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

Assembled:

CVII4

Source:

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

Assembled:

CVII8

Source:

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

Assembled:

CVIU1

Source:

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

Assembled:

CVIU2

Source:

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

Assembled:

CVIU4

Source:

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

Assembled:

CVIU8

Source:

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

Assembled:

CVPU8

Source:

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

Assembled:

CVUI1

Source:

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

Assembled:

CVUI2

Source:

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

Assembled:

CVUI4

Source:

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

Assembled:

CVUI8

Source:

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

Assembled:

CVUP8

Source:

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

Assembled:

CVUU1

Source:

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

Assembled:

CVUU2

Source:

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

Assembled:

CVUU4

Source:

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

Assembled:

CVUU8

Source:

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

Assembled:

DIVF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fdivrp %st,%st(1)
fstpt -48(%ebp)

DIVF4

Source:

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

Assembled:

flds -100(%ebp)
fdivs -8(%ebp)
fstps -4(%ebp)

DIVF8

Source:

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

Assembled:

fldl -24(%ebp)
fdivl -16(%ebp)
fstpl -112(%ebp)

DIVI4

Source:

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

Assembled:

movl -132(%ebp),%ecx
movl %ecx,%eax
cltd
idivl -80(%ebp)
movl %eax,-76(%ebp)

DIVI8

Source:

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

Assembled:

movl -88(%ebp),%eax
movl -84(%ebp),%edx
pushl %edx
pushl %eax
movl -96(%ebp),%eax
movl -92(%ebp),%edx
pushl %edx
pushl %eax
call ___divdi3
addl $16,%esp
movl %eax,%eax
movl %edx,%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

DIVU4

Source:

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

Assembled:

movl -132(%ebp),%ecx
movl %ecx,%eax
cltd
idivl -80(%ebp)
movl %eax,-76(%ebp)

DIVU8

Source:

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

Assembled:

movl -88(%ebp),%eax
movl -84(%ebp),%edx
pushl %edx
pushl %eax
movl -96(%ebp),%eax
movl -92(%ebp),%edx
pushl %edx
pushl %eax
call ___divdi3
addl $16,%esp
movl %eax,%eax
movl %edx,%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

EQF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fucompp
fnstsw %ax
andb $69,%ah
cmpb $64,%ah
je L5
call _jumpTarget
L5:

EQF4

Source:

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

Assembled:

flds -100(%ebp)
flds -8(%ebp)
fucompp
fnstsw %ax
andb $69,%ah
cmpb $64,%ah
je L3
call _jumpTarget
L3:

EQF8

Source:

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

Assembled:

fldl -24(%ebp)
fldl -16(%ebp)
fucompp
fnstsw %ax
andb $69,%ah
cmpb $64,%ah
je L4
call _jumpTarget
L4:

EQI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
je L6
call _jumpTarget
L6:

EQI8

Source:

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

Assembled:

movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L8
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L8
jmp L7
L8:
call _jumpTarget
L7:

EQU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
je L9
call _jumpTarget
L9:

EQU8

Source:

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

Assembled:

movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L11
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L11
jmp L10
L11:
call _jumpTarget
L10:

GEF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fcompp
fnstsw %ax
andb $69,%ah
decb %ah
cmpb $64,%ah
jb L14
call _jumpTarget
L14:

GEF4

Source:

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

Assembled:

flds -100(%ebp)
fcomps -8(%ebp)
fnstsw %ax
andb $5,%ah
je L12
call _jumpTarget
L12:

GEF8

Source:

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

Assembled:

fldl -24(%ebp)
fcompl -16(%ebp)
fnstsw %ax
andb $5,%ah
je L13
call _jumpTarget
L13:

GEI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jge L15
call _jumpTarget
L15:

GEI8

Source:

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

Assembled:

movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jg L17
movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jne L16
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
ja L17
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
jne L16
jmp L16
L17:
call _jumpTarget
L16:

GEU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jge L18
call _jumpTarget
L18:

GEU8

Source:

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

Assembled:

movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jg L20
movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jne L19
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
ja L20
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
jne L19
jmp L19
L20:
call _jumpTarget
L19:

GTF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fcompp
fnstsw %ax
andb $69,%ah
cmpb $1,%ah
je L23
call _jumpTarget
L23:

GTF4

Source:

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

Assembled:

flds -100(%ebp)
fcomps -8(%ebp)
fnstsw %ax
andb $69,%ah
je L21
call _jumpTarget
L21:

GTF8

Source:

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

Assembled:

fldl -24(%ebp)
fcompl -16(%ebp)
fnstsw %ax
andb $69,%ah
je L22
call _jumpTarget
L22:

GTI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jg L24
call _jumpTarget
L24:

GTI8

Source:

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

Assembled:

movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jg L25
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L26
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
ja L25
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L26
jmp L26
L26:
call _jumpTarget
L25:

GTU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jg L27
call _jumpTarget
L27:

GTU8

Source:

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

Assembled:

movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jg L28
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L29
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
ja L28
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L29
jmp L29
L29:
call _jumpTarget
L28:

INDIRF16

Source:

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

Assembled:

INDIRF4

Source:

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

Assembled:

INDIRF8

Source:

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

Assembled:

INDIRI1

Source:

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

Assembled:

INDIRI2

Source:

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

Assembled:

INDIRI4

Source:

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

Assembled:

INDIRI8

Source:

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

Assembled:

INDIRP8

Source:

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

Assembled:

INDIRU1

Source:

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

Assembled:

INDIRU2

Source:

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

Assembled:

INDIRU4

Source:

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

Assembled:

INDIRU8

Source:

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

Assembled:

LEF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fcompp
fnstsw %ax
andb $5,%ah
je L32
call _jumpTarget
L32:

LEF4

Source:

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

Assembled:

flds -100(%ebp)
fcomps -8(%ebp)
fnstsw %ax
andb $69,%ah
decb %ah
cmpb $64,%ah
jb L30
call _jumpTarget
L30:

LEF8

Source:

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

Assembled:

fldl -24(%ebp)
fcompl -16(%ebp)
fnstsw %ax
andb $69,%ah
decb %ah
cmpb $64,%ah
jb L31
call _jumpTarget
L31:

LEI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jle L33
call _jumpTarget
L33:

LEI8

Source:

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

Assembled:

movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jg L35
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L34
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
ja L35
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L34
jmp L34
L35:
call _jumpTarget
L34:

LEU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jle L36
call _jumpTarget
L36:

LEU8

Source:

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

Assembled:

movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jg L38
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L37
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
ja L38
movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L37
jmp L37
L38:
call _jumpTarget
L37:

LOADF16

Source:

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

Assembled:

LOADF4

Source:

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

Assembled:

LOADF8

Source:

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

Assembled:

LOADI1

Source:

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

Assembled:

LOADI2

Source:

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

Assembled:

LOADI4

Source:

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

Assembled:

LOADI8

Source:

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

Assembled:

LOADP8

Source:

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

Assembled:

LOADU1

Source:

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

Assembled:

LOADU2

Source:

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

Assembled:

LOADU4

Source:

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

Assembled:

LOADU8

Source:

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

Assembled:

LSHI4

Source:

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

Assembled:

movl -80(%ebp),%ecx
movl -132(%ebp),%edx
sall %cl,%edx
movl %edx,-76(%ebp)

LSHI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movb -88(%ebp),%cl
movb %cl,%bl
movb %bl,%cl
shldl %cl,%eax,%edx
sall %cl,%eax
testb $32,%cl
je L55
movl %eax,%edx
xorl %eax,%eax
L55:
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

LSHU4

Source:

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

Assembled:

movl -80(%ebp),%ecx
movl -132(%ebp),%eax
sall %cl,%eax
movl %eax,-76(%ebp)

LSHU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movb -88(%ebp),%cl
movb %cl,%bl
movb %bl,%cl
shldl %cl,%eax,%edx
sall %cl,%eax
testb $32,%cl
je L56
movl %eax,%edx
xorl %eax,%eax
L56:
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

LTF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fcompp
fnstsw %ax
andb $69,%ah
je L41
call _jumpTarget
L41:

LTF4

Source:

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

Assembled:

flds -100(%ebp)
fcomps -8(%ebp)
fnstsw %ax
andb $69,%ah
cmpb $1,%ah
je L39
call _jumpTarget
L39:

LTF8

Source:

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

Assembled:

fldl -24(%ebp)
fcompl -16(%ebp)
fnstsw %ax
andb $69,%ah
cmpb $1,%ah
je L40
call _jumpTarget
L40:

LTI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jl L42
call _jumpTarget
L42:

LTI8

Source:

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

Assembled:

movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jg L43
movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jne L44
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
ja L43
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
jne L44
jmp L44
L44:
call _jumpTarget
L43:

LTU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jl L45
call _jumpTarget
L45:

LTU8

Source:

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

Assembled:

movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jg L46
movl -84(%ebp),%eax
cmpl -92(%ebp),%eax
jne L47
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
ja L46
movl -88(%ebp),%eax
cmpl -96(%ebp),%eax
jne L47
jmp L47
L47:
call _jumpTarget
L46:

MODI4

Source:

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

Assembled:

movl -132(%ebp),%ecx
movl %ecx,%eax
cltd
idivl -80(%ebp)
movl %edx,-76(%ebp)

MODI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movl -88(%ebp),%ecx
movl -84(%ebp),%ebx
pushl %ebx
pushl %ecx
pushl %edx
pushl %eax
call ___moddi3
addl $16,%esp
movl %eax,%eax
movl %edx,%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

MODU4

Source:

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

Assembled:

movl -132(%ebp),%ecx
movl %ecx,%eax
cltd
idivl -80(%ebp)
movl %edx,-76(%ebp)

MODU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movl -88(%ebp),%ecx
movl -84(%ebp),%ebx
pushl %ebx
pushl %ecx
pushl %edx
pushl %eax
call ___moddi3
addl $16,%esp
movl %eax,%eax
movl %edx,%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

MULF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fmulp %st,%st(1)
fstpt -48(%ebp)

MULF4

Source:

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

Assembled:

flds -100(%ebp)
fmuls -8(%ebp)
fstps -4(%ebp)

MULF8

Source:

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

Assembled:

fldl -24(%ebp)
fmull -16(%ebp)
fstpl -112(%ebp)

MULI4

Source:

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

Assembled:

movl -132(%ebp),%eax
imull -80(%ebp),%eax
movl %eax,-76(%ebp)

MULI8

Source:

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

Assembled:

movl -96(%ebp),%ecx
movl %ecx,%eax
mull -88(%ebp)
movl %eax,-152(%ebp)
movl %edx,-148(%ebp)
movl -96(%ebp),%ecx
imull -84(%ebp),%ecx
addl %ecx,-148(%ebp)
movl -88(%ebp),%ecx
imull -92(%ebp),%ecx
addl %ecx,-148(%ebp)
movl -152(%ebp),%edx
movl -148(%ebp),%ecx
movl %edx,-152(%ebp)
movl %ecx,-148(%ebp)
movl -152(%ebp),%eax
movl -148(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

MULU4

Source:

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

Assembled:

movl -132(%ebp),%eax
imull -80(%ebp),%eax
movl %eax,-76(%ebp)

MULU8

Source:

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

Assembled:

movl -96(%ebp),%ecx
movl %ecx,%eax
mull -88(%ebp)
movl %eax,-152(%ebp)
movl %edx,-148(%ebp)
movl -96(%ebp),%ecx
imull -84(%ebp),%ecx
addl %ecx,-148(%ebp)
movl -88(%ebp),%ecx
imull -92(%ebp),%ecx
addl %ecx,-148(%ebp)
movl -152(%ebp),%edx
movl -148(%ebp),%ecx
movl %edx,-152(%ebp)
movl %ecx,-148(%ebp)
movl -152(%ebp),%eax
movl -148(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

NEF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fucompp
fnstsw %ax
andb $68,%ah
xorb $64,%ah
jne L50
call _jumpTarget
L50:

NEF4

Source:

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

Assembled:

flds -100(%ebp)
flds -8(%ebp)
fucompp
fnstsw %ax
andb $68,%ah
xorb $64,%ah
jne L48
call _jumpTarget
L48:

NEF8

Source:

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

Assembled:

fldl -24(%ebp)
fldl -16(%ebp)
fucompp
fnstsw %ax
andb $68,%ah
xorb $64,%ah
jne L49
call _jumpTarget
L49:

NEGF16

Source:

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

Assembled:

NEGF4

Source:

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

Assembled:

NEGF8

Source:

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

Assembled:

NEGI4

Source:

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

Assembled:

NEGI8

Source:

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

Assembled:

NEI4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jne L51
call _jumpTarget
L51:

NEI8

Source:

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

Assembled:

movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L52
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L52
call _jumpTarget
L52:

NEU4

Source:

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

Assembled:

movl -132(%ebp),%eax
cmpl -80(%ebp),%eax
jne L53
call _jumpTarget
L53:

NEU8

Source:

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

Assembled:

movl -96(%ebp),%eax
cmpl -88(%ebp),%eax
jne L54
movl -92(%ebp),%eax
cmpl -84(%ebp),%eax
jne L54
call _jumpTarget
L54:

RETF16

Source:

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

Assembled:

RETF4

Source:

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

Assembled:

RETF8

Source:

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

Assembled:

RETI4

Source:

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

Assembled:

RETI8

Source:

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

Assembled:

RETP8

Source:

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

Assembled:

RETU4

Source:

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

Assembled:

RETU8

Source:

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

Assembled:

RSHI4

Source:

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

Assembled:

movl -80(%ebp),%ecx
movl -132(%ebp),%eax
sarl %cl,%eax
movl %eax,-76(%ebp)

RSHI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movb -88(%ebp),%cl
movb %cl,%bl
movb %bl,%cl
shrdl %cl,%edx,%eax
sarl %cl,%edx
testb $32,%cl
je L57
movl %edx,%eax
sarl $31,%edx
L57:
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

RSHU4

Source:

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

Assembled:

movl -80(%ebp),%ecx
movl -132(%ebp),%eax
sarl %cl,%eax
movl %eax,-76(%ebp)

RSHU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
movb -88(%ebp),%cl
movb %cl,%bl
movb %bl,%cl
shrdl %cl,%edx,%eax
sarl %cl,%edx
testb $32,%cl
je L58
movl %edx,%eax
sarl $31,%edx
L58:
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

SUBF16

Source:

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

Assembled:

fldt -128(%ebp)
fldt -64(%ebp)
fsubrp %st,%st(1)
fstpt -48(%ebp)

SUBF4

Source:

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

Assembled:

flds -100(%ebp)
fsubs -8(%ebp)
fstps -4(%ebp)

SUBF8

Source:

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

Assembled:

fldl -24(%ebp)
fsubl -16(%ebp)
fstpl -112(%ebp)

SUBI4

Source:

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

Assembled:

movl -132(%ebp),%eax
movl -80(%ebp),%edx
movl %eax,%ecx
subl %edx,%ecx
movl %ecx,-76(%ebp)

SUBI8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
subl -88(%ebp),%eax
sbbl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)

SUBU4

Source:

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

Assembled:

movl -132(%ebp),%eax
movl -80(%ebp),%edx
movl %eax,%ecx
subl %edx,%ecx
movl %ecx,-76(%ebp)

SUBU8

Source:

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

Assembled:

movl -96(%ebp),%eax
movl -92(%ebp),%edx
subl -88(%ebp),%eax
sbbl -84(%ebp),%edx
movl %eax,-144(%ebp)
movl %edx,-140(%ebp)