summaryrefslogtreecommitdiff
path: root/macros.c
diff options
context:
space:
mode:
Diffstat (limited to 'macros.c')
-rw-r--r--macros.c38
1 files changed, 22 insertions, 16 deletions
diff --git a/macros.c b/macros.c
index c7e03ae1..e2c97adb 100644
--- a/macros.c
+++ b/macros.c
@@ -2,7 +2,9 @@
static char *stdmac[] = {
"%define __NASM_MAJOR__ 0",
- "%define __NASM_MINOR__ 95",
+ "%define __NASM_MINOR__ 96",
+ "%define __FILE__",
+ "%define __LINE__",
"%define __SECT__",
"%imacro section 1+.nolist",
"%define __SECT__ [section %1]",
@@ -20,6 +22,7 @@ static char *stdmac[] = {
"%push struc",
"%define %$strucname %1",
"[absolute 0]",
+ "%$strucname:",
"%endmacro",
"%imacro endstruc 0.nolist",
"%{$strucname}_size:",
@@ -39,29 +42,32 @@ static char *stdmac[] = {
"times %{$strucname}_size-($-%$strucstart) db 0",
"%pop",
"%endmacro",
- "%imacro extern 1+.nolist",
+ "%imacro align 1-2+.nolist nop",
+ "times ($$-$) & ((%1)-1) %2",
+ "%endmacro",
+ "%imacro alignb 1-2+.nolist resb 1",
+ "times ($$-$) & ((%1)-1) %2",
+ "%endmacro",
+ "%imacro extern 1-*.nolist",
+ "%rep %0",
"[extern %1]",
+ "%rotate 1",
+ "%endrep",
"%endmacro",
"%imacro bits 1+.nolist",
"[bits %1]",
"%endmacro",
- "%imacro global 1+.nolist",
+ "%imacro global 1-*.nolist",
+ "%rep %0",
"[global %1]",
+ "%rotate 1",
+ "%endrep",
"%endmacro",
- "%imacro common 1+.nolist",
+ "%imacro common 1-*.nolist",
+ "%rep %0",
"[common %1]",
- "%endmacro",
- "%imacro org 1+.nolist",
- "[org %1]",
- "%endmacro",
- "%imacro group 1+.nolist",
- "[group %1]",
- "%endmacro",
- "%imacro uppercase 1+.nolist",
- "[uppercase %1]",
- "%endmacro",
- "%imacro library 1+.nolist",
- "[library %1]",
+ "%rotate 1",
+ "%endrep",
"%endmacro",
NULL
};