Displaying 2 results from an estimated 2 matches for "tblxi".
Did you mean:
tblxr
2015 Aug 10
2
ARM: Predicated returns considered analyzable?
...CMPri %R0<kill>, 3, pred:1, pred:%CPSR, %CPSR<imp-def>,
%CPSR<imp-use,undef>
--> %SP<def,tied1> = t2LDMIA_RET %SP<tied0>, pred:8, pred:%CPSR,
%R7<def>, %PC<def>, %SP<imp-use,undef>, %R7<imp-use,undef>,
%PC<imp-use,undef>
tBLXi pred:14, pred:%noreg, <ga:@bar>, <regmask>,
%LR<imp-def,dead>, %SP<imp-use>, %SP<imp-def>, %R0<imp-def,dead>
%SP<def,tied1> = t2LDMIA_RET %SP<tied0>, pred:14, pred:%noreg,
%R7<def>, %PC<def>
Here the instruction t2LDMIA_RET is...
2015 Aug 12
2
ARM: Predicated returns considered analyzable?
...ef,tied1> = t2LDMIA_RET %SP<tied0>, pred:8, pred:%CPSR,
> %R7<def>, %PC<def>, %SP<imp-use,undef>, %R7<imp-use,undef>,
> %PC<imp-use,undef>
>
> Here the instruction t2LDMIA_RET is a terminator and yet it's
followed by a
> non-terminator tBLXi. This looks wrong. Does anyone have any
comments on
> this?
Isn't it because one of the predicates is CPSR, which means it's a
conditional instruction, so not really a terminator?
This lowers to the expected:
str lr, [sp, #-4]!
cmp r1, #0
it ne
cmpne r0, #3...