abi.c (407B)
1 #include "all.h" 2 3 /* eliminate sub-word abi op 4 * variants for targets that 5 * treat char/short/... as 6 * words with arbitrary high 7 * bits 8 */ 9 void 10 elimsb(Fn *fn) 11 { 12 Blk *b; 13 Ins *i; 14 15 for (b=fn->start; b; b=b->link) { 16 for (i=b->ins; i<&b->ins[b->nins]; i++) { 17 if (isargbh(i->op)) 18 i->op = Oarg; 19 if (isparbh(i->op)) 20 i->op = Opar; 21 } 22 if (isretbh(b->jmp.type)) 23 b->jmp.type = Jretw; 24 } 25 }