/** *get_callee(int)-Gettheaddressofthecalleefunction. * *Convertsthepassedfunctionindexintothefunctionaddress. *ThisisdoneheretoavoidusingtheCcompilertogetfunctionaddresses- *thecompilermayinsertveneersorindirectionundersomesituations(e.g. *forCFI)andbreakthespecificlandingpadinstructionsneededtotestBTI. * *Return0iftheindexisnotrecognised,otherwisethefunctionaddress.
*/
LOCAL_FUNCTION(get_callee)
cmp w0, #BTITEST_CALLEE_NOP
bne .Ltry_bti
adr x0, btitest_callee_nop
ret
.Ltry_bti:
cmp w0, #BTITEST_CALLEE_BTI
bne .Ltry_bti_c
adr x0, btitest_callee_bti
ret
.Ltry_bti_c:
cmp w0, #BTITEST_CALLEE_BTI_C
bne .Ltry_bti_j
adr x0, btitest_callee_bti_c
ret
.Ltry_bti_j:
cmp w0, #BTITEST_CALLEE_BTI_J
bne .Ltry_bti_jc
adr x0, btitest_callee_bti_j
ret
.Ltry_bti_jc:
cmp w0, #BTITEST_CALLEE_BTI_JC
bne .Ltry_paciasp
adr x0, btitest_callee_bti_jc
ret
.Ltry_paciasp:
cmp w0, #BTITEST_CALLEE_PACIASP
bne .Ltry_pacibsp
adr x0, btitest_callee_paciasp
ret
.Ltry_pacibsp:
cmp w0, #BTITEST_CALLEE_PACIBSP
bne .Lunknown
adr x0, btitest_callee_pacibsp
ret
.Lunknown: /* Return error function which unconditionally fails any test */
adr x0, btitest_callee_error
ret
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.20Bemerkung:
(vorverarbeitet am 2026-09-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.