Section courante

A propos

Section administrative du site

callbr

Appel
LLVM

Syntaxe

result = callbr [cconv] [ret attrs] [addrspace(num)] [ty|fnty fnptrval(functionargs) [fn attrs] [operand bundles] to label normallabel or jump [label otherlabels]

Paramètres

Nom Description
result Ce paramètre permet d'indiquer la valeur retournée par la fonction si elle en renvoie une.
cconv Ce paramètre permet d'indiquer la convention d'appel (ccc, fastcc,...).
attrs Ce paramètre permet d'indiquer les attributs appliqués à la valeur de retour (nonnull, signext,...).
num Ce paramètre permet d'indiquer un espace d'adressage où se trouve la fonction (utile pour GPU,...).
fnptrval Ce paramètre permet d'indiquer un pointeur vers la fonction à appeler (exemple @myfunc).
functionargs Ce paramètre permet d'indiquer la liste des paramètres passés à la fonction.
attrs Ce paramètre permet d'indiquer les attributs appliqués à l'appel lui-même (nounwind, readonly,...).
operand bundles Ces paramètres permettent d'indiquer les métadonnées supplémentaires, comme pour le GC.
normallabel Ce paramètre permet d'indiquer le bloc vers lequel aller si la fonction retourne normalement.
otherlabels Ce paramètre permet d'indiquer les blocs de code alternatifs vers lesquels la fonction peut directement effectuer un saut.

Description

Cette instruction permet de provoquer le transfert du contrôle vers une fonction spécifiée, avec possibilité de transfert du flux de contrôle vers l'étiquette normal ou l'un des other.



Dernière mise à jour : Jeudi, le 13 juin 2019