Partager via


Directive d'assembleur ARM

Pour l'essentiel, l'assembleur ARM Microsoft utilise le langage assembleur ARM, qui est décrite au chapitre 7 de la guide des outils assembleur ARM. Toutefois, les implémentations Microsoft de certaines directives d'assemblage diffèrent les directives d'assemblage de ARM. Cet article explique les différences.

Implémentations Microsoft de Directives d'assemblage de ARM

  • ZONE
    L'assembleur ARM Microsoft prend en charge ces attributs de la zone : aligner, CODE, CODEALIGN, données, NOINIT, READONLY, READWRITE, THUMB, ARM.

    Tous sauf le pouce et ARM fonctionnent comme indiqué dans le guide des outils assembleur ARM.

    Dans l'assembleur Microsoft ARM, THUMB indique qu'une section de CODE contient du code Thumb et est la valeur par défaut pour les sections CODE. ARM indique que la section contient du code ARM.

  • ATTR
    Non pris en charge.

  • CODE16
    Non pris en charge car il implique la syntaxe pre-UEL Thumb, qui ne permet pas de l'assembleur ARM de Microsoft. Utilisez à la place, la directive THUMB avec syntaxe UEL.

  • COMMUNE
    Spécification d'un alignement pour la région commune n'est pas pris en charge.

  • DCDO
    Non pris en charge.

  • DN, QN, SN
    Spécification d'un type ou un couloir sur l'alias de Registre n'est pas pris en charge.

  • ENTRÉE
    Non pris en charge.

  • EQU
    Spécification d'un type pour le symbole défini n'est pas pris en charge.

  • EXPORTATION et GLOBAL
    EXPORTsym {[type]}

    symest le symbole à exporter. [type], si spécifié, il peut être soit [DATA] pour indiquer que le symbole pointant vers des données ou [FUNC] pour indiquer que le symbole pointe vers le code.

    GLOBAL est un synonyme pour l'exportation.

  • EXPORTAS
    Non pris en charge.

  • CADRE
    Non pris en charge.

  • FONCTION et PROC
    Bien que la syntaxe assembly prend en charge la spécification d'un personnalisé convention d'appel sur les procédures en répertoriant les registres sont appelant enregistrer et ceux qui sont appelé-save, l'assembleur ARM Microsoft accepte la syntaxe, mais ignore les listes du Registre. Les informations de débogage qui sont générées par l'assembleur prend en charge uniquement la valeur par défaut convention d'appel.

  • IMPORTATION et EXTERN
    IMPORT sym{, WEAK alias{, TYPE t}}

    symest le nom du symbole à importer.

    Si faible alias est spécifié, il indique que sym est un externe faible. Si aucune définition pour qu'il ne se trouve au moment de la liaison, puis lier à la place toutes les références qui lui alias.

    Si TYPE t est spécifié, puis t indique comment l'éditeur de liens doit tenter de résoudre sym. Ces valeurs pour t sont possibles :
    1 — N'effectuent pas une recherche de la bibliothèque poursym
    2: Effectuer une recherche de la bibliothèque desym
    3 —sym est un alias de alias (par défaut)

    EXTERN est un synonyme pour l'importation, sauf que sym est importé uniquement s'il existe des références à celui-ci dans l'assembly actuel.

  • MACRO
    L'utilisation d'une variable pour contenir le code condition de macro n'est pas pris en charge. Valeurs par défaut pour les paramètres ne sont pas pris en charge des macros.

  • NOFP
    Non pris en charge.

  • OPT, TTL, SUBT
    Non pris en charge car l'assembleur ARM Microsoft ne produit pas d'annonces.

  • PRESERVE8
    Non pris en charge.

  • RELOC
    RELOC npeuvent suivre uniquement une instruction ou une directive de définition de données. Il n'existe aucun « symbol anonyme » qui peut être relocalisée.

  • EXIGER
    Non pris en charge.

  • REQUIRE8
    Non pris en charge.

  • THUMBX
    N'est pas pris en charge car l'assembleur ARM Microsoft ne gère pas le jeu d'instructions 2EE de pouce.

Voir aussi

Référence

Référence de la ligne de commande de l'assembleur ARM

Messages de diagnostic de l'assembleur ARM