Lines Matching refs:fp
40 caller's fp | saved lr | 1
42 | save fp | 3
59 callee's fp | saved lr |
61 | save fp |
73 (* Calculate the offset based on fp of the temporaries bebing read in a callee *)
95 SOME k => IR.MEM (IR.fromAlias IR.fp, ~2 - k) (* inputs *)
98 SOME j => IR.MEM (IR.fromAlias IR.fp, 3 + j + numSavedRegs) (* existing local variable *)
102 IR.MEM (IR.fromAlias IR.fp, 3 + (!i - 1) + numSavedRegs) (* local variables *)
153 STMFA sp!, {..., fp,ip,lr,pc}
154 SUB fp, ip, #1
161 src = rs @ [IR.REG (IR.fromAlias IR.fp), IR.REG (IR.fromAlias IR.ip),
164 {oper = IR.msub, dst = [IR.REG (IR.fromAlias IR.fp)], src = [IR.REG (IR.fromAlias IR.ip), IR.WCONST (Arbint.fromInt 4)]},
169 ADD sp, fp, 3 + #modified registers (* Skip saved lr, sp, fp and modified registers *)
170 LDMFD sp, {..., fp,sp,pc}
175 {oper = IR.msub, dst = [IR.REG (IR.fromAlias IR.sp)], src = [IR.REG (IR.fromAlias IR.fp), IR.WCONST (Arbint.fromInt (4* (3 + length rs)))]},
176 {oper = IR.mpop, dst = rs @ [IR.REG (IR.fromAlias IR.fp), IR.REG (IR.fromAlias IR.sp), IR.REG (IR.fromAlias IR.pc)],
379 src = [IR.REG (IR.fromAlias IR.fp), IR.WCONST (Arbint.fromInt (4* sOffset))]