File: directiv.dat

package info (click to toggle)
nasm 3.01-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 23,660 kB
  • sloc: ansic: 129,101; asm: 40,471; perl: 8,238; sh: 4,146; makefile: 1,281; xml: 726; python: 582; lisp: 578; sed: 11
file content (127 lines) | stat: -rw-r--r-- 2,625 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
;; SPDX-License-Identifier: BSD-2-Clause
;; Copyright 1996-2025 The NASM Authors - All Rights Reserved
;;
;; List of global NASM directives and pragma operations codes
;;
;; ALL directives, including backend-specific, need to be added here.
;;
;; %pragma operation keywords (the second word, after facility) MAY
;; be added here too to assist in parsing, but it is not required.
;; See the definition of struct pragma in include/nasm.h.
;;
;; The same keyword can be used as a directive and as a pragma
;; operation, or as pragma operations in different namespaces.  The
;; same D_ constant will be used for both, and this is perfectly
;; acceptable.
;;
;; In the future, this will be turned into a general list of keywords
;; to be parsed in special contexts.
;;
;; #special tokens are used to separate different classes of tokens.
;; Make sure to add new tokens to the correct place. If a token is used
;; in both a directive and in pragmas, they should be in the directive
;; part of the list. Tokens used in pragmas *only* go at the end of the
;; list.
;;

; --- General configuration
#name directive
#prefix D_
#errval D_unknown
#header directiv.h

; --- Special enum values
;     These must be first in the list.
#special none = 0			; Must be zero
#special unknown
#special corrupt

; --- True directives
;     These tokens are accepted as directives by the global code or
;     ignored if not implemented.

; --- Global directives
absolute
bits
common
cpu
debug
default
dollarhex
extern
float
global
list
pragma
required
sectalign
section
segment
static
warning

; --- Common output directives/pragmas
prefix
suffix
postfix
gprefix
gsuffix
gpostfix
lprefix
lsuffix
lpostfix

; --- Pseudo-op list, for the benefit of %isdirective
;     Tokens put in this part will be rejected as either directives or
;     pragmas
#special pseudo_ops
db
dw
dd
dq
dt
do
dy
dz
resb
resw
resd
resq
rest
reso
resy
resz
incbin
equ

; --- Format-specific directives
;     Tokens put in this part of the list will be forwarded to the
;     backend ofmt->directive() method.
#special ofmt
export				; outcoff, outobj
group				; outobj
import				; outobj
library				; outrdf2
map				; outbin
module				; outrdf2
org				; outbin
osabi				; outelf
safeseh				; outcoff
uppercase			; outieee, outobj

; --- The following are tokens used in pragmas, not actual directives.
;     They will not be accepted as directives.
#special pragma_tokens

; --- Assembler pragmas
limit

; --- Listing pragmas
options

; --- Backend-specific pragmas
subsections_via_symbols		; macho
no_dead_strip			; macho
maxdump				; dbg
nodepend			; obj
noseclabels			; dbg