Directiva del ensamblador de ARM

Por lo general, el ensamblador de Microsoft ARM usa el lenguaje de ensamblado ARM, que se documenta en la Guía de referencia del compilador de ARM. Sin embargo, las implementaciones de Microsoft de algunas directivas de ensamblado difieren de las directivas de ensamblado de ARM. En este artículo se explican las diferencias.

Implementaciones de Microsoft de directivas de ensamblado de ARM

  • AREA

    El ensamblador arm de Microsoft admite AREA estos atributos: , , , , , , , , ALIGNCODECODEALIGNDATANOINITREADONLYREADWRITETHUMBARM .

    Todos excepto y funcionan como se documenta en la Guía de referencia THUMBARM del compilador de THUMB

    En el ensamblador de Microsoft ARM, indica que una sección contiene código THUMB Thumb y es el valor predeterminado para las CODECODE secciones. ARM indica que la sección contiene código arm.

  • ATTR

    No se admite.

  • CODE16

    No se admite porque implica la sintaxis thumb anterior a UAL, que el ensamblador arm de Microsoft no permite. Use la THUMB directiva en su lugar, junto con la sintaxis de UAL.

  • COMMON

    No se admite la especificación de una alineación para la región común.

  • DCDO

    No se admite.

  • DN, QN, SN

    No se admite la especificación de un tipo o un carril en el alias de registro.

  • ENTRY

    No se admite.

  • EQU

    No se admite la especificación de un tipo para el símbolo definido.

  • EXPORT y GLOBAL

    Especifica las exportaciones con esta sintaxis:

    EXPORT|GLOBALsymbol{[type]}

    symbol es el símbolo que se va a exportar. [type], si se especifica, puede ser para indicar que el símbolo apunta a los datos o para indicar [DATA] que el símbolo apunta al [FUNC] código. GLOBAL es un sinónimo de EXPORT.

  • EXPORTAS

    No se admite.

  • FRAME

    No se admite.

  • FUNCTION y PROC

    La sintaxis del ensamblado le permite especificar una convención de llamada personalizada en los procedimientos: enumera los registros que son llamador-guardar y los que son destinatario-guardado. Sin embargo, aunque el ensamblador de Microsoft ARM acepta la sintaxis , omite las listas de registros. La información de depuración que genera el ensamblador solo admite la convención de llamada predeterminada.

  • IMPORT y EXTERN

    Especifica las importaciones con esta sintaxis:

    IMPORT|EXTERNsymbol{, WEAKalias{, TYPEt}}

    symbol es el nombre del símbolo que se va a importar.

    Si WEAKalias se especifica , indica que es un symbol externo débil. Si no se encuentra una definición para él en el momento del vínculo, todas las referencias a ella se enlazan en su lugar a alias .

    Si TYPEt se especifica , indica cómo t el vinculador debe intentar resolver symbol . Estos valores para t son posibles:

    Valor Descripción
    1 No busque bibliotecas para symbol .
    2 Busque bibliotecas para symbol .
    3 symbol es un alias para alias (valor predeterminado).

    EXTERN es un sinónimo de , salvo que solo se importa si hay referencias a IMPORT él en el ensamblado symbol actual.

  • MACRO

    No se admite el uso de una variable para contener el código de condición de una macro. No se admiten los valores predeterminados para los parámetros de macro.

  • NOFP

    No se admite.

  • OPT, TTL, SUBT

    No se admite, porque el ensamblador de Microsoft ARM no genera listas.

  • PRESERVE8

    No se admite.

  • RELOC

    RELOC n solo puede seguir una instrucción o una directiva de definición de datos. No hay ningún "símbolo anónimo" que se pueda reubicar.

  • REQUIRE

    No se admite.

  • REQUIRE8

    No se admite.

  • THUMBX

    No se admite, porque el ensamblador de Microsoft ARM no admite el conjunto de instrucciones Thumb-2EE.

Vea también

Referencia de ensamblador Command-Line ARM
Mensajes de diagnóstico del ensamblador de ARM