1 @ph = ( "", ".few", ".many" );
2 @bwh = ( ".sptk", ".spnt", ".dptk", ".dpnt" );
5 @iprel = ( ".cond", ".wexit", ".wtop", ".cloop", ".cexit", ".ctop", ".call" );
6 @indir = ( ".cond", ".ia", ".ret", ".call" );
7 %noqual = ( ".ia", 1, ".cloop", 1, ".ctop", 1, ".cexit", 1 );
8 %slottwo = ( ".cloop", 1, ".ctop", 1, ".cexit", 1, ".wtop", 1, ".wexit", 1 );
13 $call = ($i eq ".call" ?
"b0 = " : "");
19 print ("\t{ .bbb; (p2) br${i}${b}${p}${d} ${call}.L1 ;; }\n");
21 print ("\t{ .bbb; br${i}${b}${p}${d} ${call}.L1 ;; }\n");
23 print ("\t{ .bbb; nop.b 0\n");
25 print ("(p2)\tbr${i}${b}${p}${d} ${call}.L1\n");
27 print ("\tnop.b 0\n");
29 print ("\tbr${i}${b}${p}${d} ${call}.L0\n");
39 $call = ($i eq ".call" ?
"b0 = " : "");
43 print ("\t{ .bbb; nop.b 0;\n");
45 print ("(p2)\tbr${i}${b}${p}${d} ${call}b2\n");
47 print ("\tnop.b 0\n");
49 print ("\tbr${i}${b}${p}${d} ${call}b2\n");
58 @ipwh = ( ".sptk", ".loop", ".dptk", ".exit" );
59 @indwh = ( ".sptk", ".dptk" );
65 print ("\t{ .bbb; break.b 0; nop.b 0\n");
66 print ("\tbrp${w}${i} .L0, .L${CTR}\n");
69 print (".L${CTR}:\n");
75 foreach $b ("", ".ret") {
78 print ("\t{ .bbb; break.b 0; nop.b 0\n");
79 print ("\tbrp${b}${w}${i} b3, .L${CTR}\n");
82 print (".L${CTR}:\n");
88 print ".space 5888\n";
90 @last = ( "cover", "clrrrb", "clrrrb.pr", "rfi", "bsw.0", "bsw.1", "epc" );
92 print "\t{ .bbb; nop.b 0; nop.b 0; $i ;; }\n";
This page took 0.040923 seconds and 4 git commands to generate.