Ruby 2.7.0p0(2019-12-25revision647ee6f091eafcce70ffb75ddf7e121e192ab217)

Macros
asm.h File Reference

Go to the source code of this file.

## Macros
#define | ASM_GLOBAL_DIRECTIVE .globl
#define | C_SYMBOL_NAME(name) name
#define | C_LABEL(name) name:
#define | ALIGNARG(log2) log2
#define | ASM_TYPE_DIRECTIVE(name, typearg) .type name,typearg;
#define | ASM_SIZE_DIRECTIVE(name) .size name,.-name
#define | CALL_MCOUNT /* Do nothing. */
#define | ENTRY(name)
#define | EALIGN_W_0 /* No words to insert. */
#define | EALIGN_W_1 nop
#define | EALIGN_W_2 nop;nop
#define | EALIGN_W_3 nop;nop;nop
#define | EALIGN_W_4 EALIGN_W_3;nop
#define | EALIGN_W_5 EALIGN_W_4;nop
#define | EALIGN_W_6 EALIGN_W_5;nop
#define | EALIGN_W_7 EALIGN_W_6;nop
#define | EALIGN(name, alignt, words)
#define | END(name) ASM_SIZE_DIRECTIVE(name)
#define | JUMPTARGET(name) name
#define | L(x) .L##x

## Macro Definition Documentation

## ◆ ALIGNARG

#define ALIGNARG | ( |  | log2 | ) | log2

Definition at line 38 of file asm.h.

## ◆ ASM_GLOBAL_DIRECTIVE

#define ASM_GLOBAL_DIRECTIVE .globl

Definition at line 26 of file asm.h.

## ◆ ASM_SIZE_DIRECTIVE

#define ASM_SIZE_DIRECTIVE | ( |  | name | ) | .size name,.-name

Definition at line 41 of file asm.h.

## ◆ ASM_TYPE_DIRECTIVE

#define ASM_TYPE_DIRECTIVE | ( |  | name,
|  |  | typearg
| ) |  | .type name,typearg;

Definition at line 40 of file asm.h.

## ◆ C_LABEL

#define C_LABEL | ( |  | name | ) | name:

Definition at line 34 of file asm.h.

## ◆ C_SYMBOL_NAME

#define C_SYMBOL_NAME | ( |  | name | ) | name

Definition at line 29 of file asm.h.

## ◆ CALL_MCOUNT

#define CALL_MCOUNT /* Do nothing. */

Definition at line 74 of file asm.h.

## ◆ EALIGN

#define EALIGN | ( |  | name,
|  |  | alignt,
|  |  | words
| ) |  |

Value:
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
.align ALIGNARG(alignt); \
EALIGN_W_##words; \
C_LABEL(name)

Definition at line 107 of file asm.h.

## ◆ EALIGN_W_0

#define EALIGN_W_0 /* No words to insert. */

Definition at line 84 of file asm.h.

## ◆ EALIGN_W_1

#define EALIGN_W_1 nop

Definition at line 85 of file asm.h.

## ◆ EALIGN_W_2

#define EALIGN_W_2 nop;nop

Definition at line 86 of file asm.h.

## ◆ EALIGN_W_3

#define EALIGN_W_3 nop;nop;nop

Definition at line 87 of file asm.h.

## ◆ EALIGN_W_4

#define EALIGN_W_4 EALIGN_W_3;nop

Definition at line 88 of file asm.h.

## ◆ EALIGN_W_5

#define EALIGN_W_5 EALIGN_W_4;nop

Definition at line 89 of file asm.h.

## ◆ EALIGN_W_6

#define EALIGN_W_6 EALIGN_W_5;nop

Definition at line 90 of file asm.h.

## ◆ EALIGN_W_7

#define EALIGN_W_7 EALIGN_W_6;nop

Definition at line 91 of file asm.h.

## ◆ END

#define END | ( |  | name | ) | ASM_SIZE_DIRECTIVE(name)

Definition at line 115 of file asm.h.

## ◆ ENTRY

#define ENTRY | ( |  | name | ) |

Value:
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
.align ALIGNARG(2); \
C_LABEL(name) \
CALL_MCOUNT

Definition at line 77 of file asm.h.

## ◆ JUMPTARGET

#define JUMPTARGET | ( |  | name | ) | name

Definition at line 121 of file asm.h.

## ◆ L

#define L | ( |  | x | ) | .L##x

Definition at line 125 of file asm.h.

ASM_GLOBAL_DIRECTIVE
#define ASM_GLOBAL_DIRECTIVE
Definition: asm.h:26
C_SYMBOL_NAME
#define C_SYMBOL_NAME(name)
Definition: asm.h:29
ALIGNARG
#define ALIGNARG(log2)
Definition: asm.h:38
name
const char * name
Definition: nkf.c:208