|
|
1.1 root 1: /*
2: /*
3: /* The assembler version is the output of cct for this whith minor editing
4: /* (_cmpf --> cmpf 8(fp) --> 12(fp)).
5: /*
6: /*
7: /* cmpf(hi1, hi2 )
8: /* {
9: /* if ( hi1 == hi2 ) return (0);
10: /* if(hi1 < 0) {
11: /* hi1 ^= 0x80000000;
12: /* hi1 = -hi1;
13: /* }
14: /* if(hi2 < 0) {
15: /* hi2 ^= 0x80000000;
16: /* hi2 = -hi2;
17: /* }
18: /* return(hi1>hi2 ? 1 : -1);
19: /* }
20: /*
21: /*
22: /* */
23: .data
24: .text
25: LL0:.align 1
26: .globl _cmpf
27: .globl Xcmpf
28: .set L12,0x0
29: .data
30: .text
31: _cmpf:
32: Xcmpf:.word L12
33: cmpl 4(fp),12(fp)
34: jneq L16
35: clrl r0
36: ret
37: L16:tstl 4(fp)
38: jgeq L17
39: xorl2 $-2147483648,4(fp)
40: mnegl 4(fp),4(fp)
41: L17:tstl 12(fp)
42: jgeq L18
43: xorl2 $-2147483648,12(fp)
44: mnegl 12(fp),12(fp)
45: L18:cmpl 4(fp),12(fp)
46: jleq L9999
47: movl $1,r0
48: jbr L9998
49: L9999:mnegl $1,r0
50: L9998:ret
51:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.