gasに関するkash1waのブックマーク (1)

  • GNU as (gas) のマクロ - 任意値blog

    GNU binutils に含まれれるアセンブラ GNU as (通称 gas) には、一般のアセンブラのようにマクロ機能が備わっている。 以下に例を挙げる。環境はいつものように x86 のLinux。 .macro check_bits       operand andl    $0b11, \operand cmpl    $0b10, \operand jne     error .endm .text main: /* ... */ check_bits      %eax /* ... */ error: /* error 処理 */ /* ... */処理としては、引数として渡されてきたオペランドの下位 2bit が'11'かを判定し、そうでなかったら error へ飛ぶということを行っている。 ポイントとしては次のとおり。 定義は .macro ~ .endm で行う。 引

    GNU as (gas) のマクロ - 任意値blog
    kash1wa
    kash1wa 2008/11/14
  • 1