À̹ø Àå¿¡¼´Â ¸ðµç GNU ¾î¼Àºí·¯ÀÇ ¹öÁ¯¿¡¼ »ç¿ë°¡´ÉÇÑ ¸í·ÉÇà ¿É¼Ç¿¡ ´ëÇؼ ¼³¸íÇÑ´Ù. Ư¼öÇÑ Æ¯¼öÇÑ ±â°è ±¸Á¶ÀÇ to particular machine architectures. ¿É¼ÇÀ» º¸·Á¸é see section ±â°è¿¡ ÀÇÁ¸ÇÏ´Â °ÍµéÀ» º¸¶ó.
¸¸ÀÏ GNU C ÄÄÆÄÀÏ·¯ (¹öÁ¯ 2)¸¦ ÅëÇØ as
¸¦ È£ÃâÇÑ´Ù¸é,
`-Wa'¿É¼ÇÀ» »ç¿ëÇÏ¿© ¾î¼Àºí·¯¿¡°Ô ÀÎÀÚ¸¦ Àü´Þ ÇÒ ¼ö ÀÖ´Ù. ¾î¼Àºí·¯
ÀÎÀÚ´Â ¹Ýµå½Ã °¢°¢À» (`-Wa'µµ Æ÷ÇÔÇÏ¿©) ÄÞ¸¶(`,')¿¡ ÀÇÇØ ±¸ºÐµÇ¾î¾ß
ÇÑ´Ù. ¿¹¸¦ µé¸é:
gcc -c -g -O -Wa,-alh,-L file.c
ÀÌ°ÍÀº Ç¥ÁØÃâ·ÂÀ¸·Î ÇÏÀÌ·¹º§°ú ¾î¼Àºí¸® ¼Ò½º¸¦ ¸®½ºÆ®·Î Ãâ·ÂÇÑ´Ù.
(FIXME-CW)
Usually you do not need to use this `-Wa' mechanism, since many compiler command-line options are automatically passed to the assembler by the compiler. (You can call the GNU compiler driver with the `-v' option to see precisely what options it passes to each compilation pass, including the assembler.)
'R'°ú ¸¹Àº ±â°è¿¡ µû¸¥ ¿É¼Çµé°ú °°Àº, ÄÄÆÄÀÏ·¯ ¸í·ÉÇà ¿É¼ÇÀº ÄÄÆÄÀÏ·¯¸¦ ÅëÇؼ ¾î¼Àºí·¯¿¡°Ô Àü´ÞµÉ °ÍÀÌ´Ù. ±×·¡¼ º¸Åë ¿©·¯ºÐµéÀº ÀÌ·¯ÇÑ `-Wa' ¸ÞÄ« ´ÏÁòÀÌ ÇÊ¿äÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.
-a[dhlns]
ÀÌ·¯ÇÑ ¿É¼ÇÀº ¾î¼Àºí·¯¸¦ »ç¿ëÇÒ ¶§ ¸®½ºÆ® Ãâ·ÂÀ» °¡´ÉÇÏ°Ô ÇÑ´Ù. `-a'´Â ÇÏ ÀÌ·¹º§, ¾î¼Àºí¸®, ½Éº¼ ¸®½ºÆÃÀ» ¿äûÇÑ´Ù. ´Ù¸¥ ±ÛÀÚµéÀº ¸®½ºÆ®¸¦ Ãâ·ÂÇϱâ À§ÇØ Æ¯º°ÇÑ ¿É¼ÇÀ» ¼±ÅÃÇÑ´Ù: `-ah'´Â ÇÏÀÌ·¹º§ ¾ð¾îÀÇ ¸®½ºÆ®¸¦ ¿ä±¸ÇÏ°í, `-al'Àº ¾î¼Àºí¸® ¸®½ºÆ®¸¦ Ãâ·Â Çϵµ·ÏÇÏ°í, `-as'´Â ½Éº¼ Å×À̺íÀÌ ¸®½ºÆ®¿¡ Æ÷ÇԵǵµ·Ï ÇÑ´Ù. ÇÏÀÌ·¹º§ ¸®½º ÆÃÀº `-g'¿Í °°Àº ÄÄÆÄÀÏ·¯ µð¹ö±ë ¿É¼ÇÀ» ¿äûÇϸç, ¾î¼Àºí¸® ¸®½ºÆ® ¿É¼Ç `-al'µµ ¶ÇÇÑ ¿äûµÈ´Ù.
`-ad' ¿É¼ÇÀº ¸®½ºÆ®¸¦ Ãâ·ÂÇÒ ¶§ µð¹ö±ë ÀÇ»ç ÀÛµ¿ÀÚ(pseudo-ops)¸¦ Á¦ÇÑÇÒ ¶§ »ç¿ëÇÒ ¼ö ÀÖ´Ù.
ÀÌ·¯ÇÑ ¿É¼Ç Áß Çϳª¸¦ »ç¿ëÇß´Ù¸é, ¸®½ºÆ®¸¦ Ãâ·ÂÇÏ´Â ÇüŸ¦ Á¦¾îÇÒ ¼ö
ÀÖÀ¸ ¸ç, ¿©·¯ Áö½ÃÀÚ(.list
, .nolist
, .psize
,
.eject
, .title
, .sbttl
)¸¦ »ç¿ëÇÏ¿© Ãâ·ÂÀÇ ÇüŸ¦
´Ù¾çÇÏ°Ô ÇÒ ¼ö ÀÖ´Ù. `-an' ¿É¼ÇÀº ¸ðµç Çü½Äó¸®¿Í °ü·ÃµÈ °Íµé À»
ÇÏÁö ¾Ê´Â´Ù. ¸®½ºÆ® Ãâ·ÂÀ» ÇÒ ÇÊ¿ä°¡ ¾ø¾î `-a' ¿É¼ÇÀ» »ç¿ëÇÏÁö
¾Ê´Â´Ù¸é, ¸®½ºÆ®¸¦ Ãâ·ÂÇÏ´Â µ¥ °ü¿©ÇÏ´Â ¸®½ºÆà Á¦¾î Áö½ÃÀÚµéÀº ¾Æ¹«
¿µÇâÀ» ¹ÌÄ¡Áö ¸ø ÇÑ´Ù.
`-a' ´ÙÀ½¿¡ ±ÛÀÚ¸¦ Á¶ÇÕÇÏ¿© ÇϳªÀÇ ¿É¼ÇÀ¸·Î ÇÒ ¼ö ÀÖ´Ù. ±× ¿¹·Î, `-aln'ó·³.
-D
ÀÌ ¿É¼ÇÀº ¾Æ¹«·± µ¥µµ ¿µÇâÀ» ¹ÌÄ¡Áö ¸øÇÏ°í ´Ù¸¸ as
¿Í °°ÀÌ
ÀÛ¾÷ÇÒ ´Ù¸¥ ¾î ¼Àºí·¯¸¦ À§Çؼ ¾²¿©Áø ½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀ» Çã¿ëÇÑ´Ù.
-f
`-f'´Â ÄÄÆÄÀÏ·¯°¡ Ãâ·ÂÇÑ ÇÁ·Î±×·¥À» ¾î¼Àºí ÇÒ ¶§¿¡ »ç¿ëµÈ´Ù. `-f'´Â ¾î¼Àºí ÀÛ¾÷À» ÇÒ ¶§ Àüó¸® ÀÛ¾÷À» °Ç´õ¶Ú´Ù. See section Àüó¸®.
°æ°í: ¸¸ÀÏ È°¼ºÈµÈ ÆÄÀÏÀÌ Àüó¸® ÀÛ¾÷ÀÌ ÇÊ¿äÇÏ´Ù¸é(ÁÖ¼®ÀÌ ÀÖ´Ù´øÁöÇϸé) `-f'°¡ »ç¿ëµÇ¾úÀ» ¶§´Â as´Â ¿Ã¹Ù¸£°Ô ÀÛµ¿ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.
.include
Æнº °Ë»ö: -I
path
.include
Áö½ÃÀÚ¿¡ ¸í½ÃµÈ ÆÄÀÏÀ» ã±â À§ÇÑ µð·ºÅ丮ÀÇ ¸ñ·ÏÀ» ÀÌ
¿É¼ÇÀ» »ç¿ë ÇÏ¿© pathºÎºÐ¿¡ Ãß°¡Ç϶ó(see section .include "file
"). ¿©·¯ºÐµéÀº ¿©·¯°³ÀÇ Æнº¸¦ Æ÷ÇÔ½ÃÅ°±â À§Çؼ ÇÊ¿äÇÑ
¸¸Å ¿©·¯¹ø -I
¸¦ »ç¿ëÇÒ °ÍÀÌ´Ù. ÇöÀçÀÇ ÀÛ¾÷ µð·º Å丮´Â Ç×»ó
¸ÕÀú °Ë»öµÇ¸ç, ±× ´ÙÀ½¿¡ as
´Â `-I'¿¡ ÀÖ´Â µð·ºÅ丮¸¦
¿ÞÂÊ¿¡¼ ¿À¸¥ÂÊÀÇ ¼ø¼´ë·Î °Ë»öÇÑ´Ù.
-K
as
´Â °¡²û `.word sym1-sym2' Çü½ÄÀÇ
Áö½ÃÀڵ鶧¹®¿¡ ¹ß»ýµÈ Äڵ带 º¯°æÇÒ ¶§ °¡
ÀÖ´Ù(see section .word expressions
). ¸¸ÀÏ ¾î·¸°Ô µÇ¾úÀ» ¶§ °æ°í¸Þ¼¼Áö¸¦
Ãâ·ÂÇÏ°í ½Í´Ù ¸é `-K'¿É¼ÇÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
-L
`L'(´ë¹®ÀÚ)·Î ½ÃÀÛÇÏ´Â ¶óº§Àº Áö¿ª¶óº§(local labels)¶ó
ºÒ¸®¿î´Ù(see section ½Éº¼ ¸íĪ). º¸Åë ÀÌ·¯ÇÑ ¶óº§µéÀº ÄÄÆÄÀÏ·¯¿Í °°Àº,
¾î¼Àºí·¯ ÇÁ·Î±×·¥µé À» Á¶ÇÕÇÏ´Â ÇÁ·Î±×·¥ÀÇ ³»ºÎÀûÀÎ ¿ëµµ·Î »ç¿ëµÇ±â
¶§¹®¿¡ µð¹ö±ë ½Ã¿¡´Â º¼ ¼ö ¾ø´Ù. º¸Åë as
¿Í
ld
´Â ÀÌ·¯ÇÑ ¶óº§À» ¹ö¸®´Âµ¥, ±×·¡¼ ÀϹÝÀûÀ¸·Î ±×°ÍµéÀ»
µð ¹ö±ëÇÒ ¼ö ¾ø´Â °ÍÀÌ´Ù.
`-L'¿É¼ÇÀº `L...' ½Éº¼À» ¸ñÀû ÆÄÀÏ¿¡ °£Á÷ÇÏ°Ô ÇÑ´Ù. ¸¸ÀÏ
´ç½ÅÀÌ ÀÌ·¸°Ô ÇÑ´Ù¸é ¸µÄ¿ ld
·Î ÇÏ¿©±Ý `L'·Î ½ÃÀÛÇÏ´Â
½Éº¼µéÀ» º¸Á¸Ç϶ó°í ½ÃÅ°´Â °ÍÀÌ µÈ´Ù.
By default, a local label is any label beginning with `L', but each target is allowed to redefine the local label prefix. On the HPPA local labels begin with `L$'.
-M
The -M
or --mri
option selects MRI compatibility mode. This
changes the syntax and pseudo-op handling of as
to make it
compatible with the ASM68K
or the ASM960
(depending upon the
configured target) assembler from Microtec Research. The exact nature of the
MRI syntax will not be documented here; see the MRI manuals for more
information. The purpose of this option is to permit assembling existing MRI
assembler code using as
.
The MRI compatibility is not complete. Certain operations of the MRI assembler depend upon its object file format, and can not be supported using other object file formats. Supporting these would require enhancing each object file format individually. These are:
as
handles
common sections by treating them as a single common symbol. It permits local
symbols to be defined within a common section, but it can not support global
symbols, since it has no way to describe them.
END
pseudo-op specifying start address
The MRI END
pseudo-op permits the specification of a start address.
This is not supported by other object file formats. The start address may
instead be specified using the -e
option to the linker, or in a linker
script.
IDNT
, .ident
and NAME
pseudo-ops
The MRI IDNT
, .ident
and NAME
pseudo-ops assign a module
name to the output file. This is not supported by other object file formats.
ORG
pseudo-op
The m68k MRI ORG
pseudo-op begins an absolute section at a given
address. This differs from the usual as
.org
pseudo-op,
which changes the location within the current section. Absolute sections are
not supported by other object file formats. The address of a section may be
assigned within a linker script.
There are some other features of the MRI assembler which are not supported by
as
, typically either because they are difficult or because they
seem of little consequence. Some of these may be supported in future releases.
DC.P
and DCB.P
pseudo-ops are not supported.
FEQU
pseudo-op
The m68k FEQU
pseudo-op is not supported.
NOOBJ
pseudo-op
The m68k NOOBJ
pseudo-op is not supported.
OPT
branch control options
The m68k OPT
branch control options---B
, BRS
, BRB
,
BRL
, and BRW
---are ignored. as
automatically
relaxes all branches, whether forward or backward, to an appropriate size, so
these options serve no purpose.
OPT
list control options
The following m68k OPT
list control options are ignored: C
,
CEX
, CL
, CRE
, E
, G
, I
, M
,
MEX
, MC
, MD
, X
.
OPT
options
The following m68k OPT
options are ignored: NEST
, O
,
OLD
, OP
, P
, PCO
, PCR
, PCS
, R
.
OPT
D
option is default
The m68k OPT
D
option is the default, unlike the MRI assembler.
OPT NOD
may be used to turn it off.
XREF
pseudo-op.
The m68k XREF
pseudo-op is ignored.
.debug
pseudo-op
The i960 .debug
pseudo-op is not supported.
.extended
pseudo-op
The i960 .extended
pseudo-op is not supported.
.list
pseudo-op.
The various options of the i960 .list
pseudo-op are not supported.
.optimize
pseudo-op
The i960 .optimize
pseudo-op is not supported.
.output
pseudo-op
The i960 .output
pseudo-op is not supported.
.setreal
pseudo-op
The i960 .setreal
pseudo-op is not supported.
-o
as
°¡ ½ÇÇàµÉ ¶§ Ç×»ó ÇϳªÀÇ ¸ñÀû ÆÄÀÏÀ» Ãâ·ÂÇÑ´Ù.
±âº»ÀûÀÎ À̸§Àº
`a.out'(Intel 960¿¡¼´Â `b.out')
ÀÌ´Ù. ¸ñÀû ÆÄÀÏ À̸§À¸·Î ÀÌ·± °ÍÀÌ ¾Æ ´Ñ ´Ù¸¥ À̸§À» »ç¿ëÇÏ·Á¸é ÀÌ
¿É¼ÇÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
¸ñÀû ÆÄÀÏÀÌ È£ÃâµÈ´Ù¸é, as
´Â ÀÌ¹Ì Á¸ÀçÇÏ´Â °°Àº À̸§ÀÇ
ÆÄÀÏÀº µ¤¾î ¾²¹ö¸± °ÍÀÌ´Ù.
-R
-R
Àº ¸ðµç data ¼½¼ÇÀÇ µ¥ÀÌŸ¸¦ text ¼½¼ÇÀ¸·Î ¿Å°Ü¼ ¸ñÀû ÆÄÀÏÀ»
Ãâ·Â Çϵµ·Ï ÇÑ´Ù. ÀÌ°ÍÀº ¸¶Áö¸· Àá±ñµ¿¾È ÀÌ·ç¾îÁø´Ù. ¿©·¯ºÐÀÇ ¹ÙÀ̳ʸ®
µ¥ÀÌŸ°¡ °°´õ¶óµµ, data ¼½¼ÇÀº ´Ù¸£°Ô Àç¹èÄ¡µÈ´Ù. ¸ñÀû ÆÄÀÏ¿¡¼ data
¼½¼ÇÀÇ ºÎºÐÀº 0 ¹ÙÀÌÆ®°¡ µÇ´Â µ¥ ÀÌ°ÍÀº data ¼½¼Ç ÀÇ ¹ÙÀÌÆ®µéÀÌ text
¼½¼Ç¿¡ ¸ðµÎ Ãß°¡µÇ¾ú±â ¶§¹®ÀÌ´Ù. (See section ¼½¼Ç°ú Àç¹èÄ¡.)
-R
ÀÌ ¸í½ÃµÇ¾úÀ» ¶§, ±×°ÍÀº ´õ ªÀº ÁÖ¼Ò À§Ä¡À̵¿À» »ý¼ºÇÏ´Â °ÍÀÌ
°¡´ÉÇÏ°Ô µÈ´Ù. ±× ÀÌÀ¯´Â text¿Í data ¼½¼ÇÀ» ´õÀÌ»ó ¿Ô´Ù°¬´Ù ÇØ¾ß ÇÒ
Çʿ伺ÀÌ ¾ø¾îÁ³ ±â ´ë¹®ÀÌ´Ù. ¿ì¸®´Â ÀÌ·¸°Ô °£´ÜÇÏ°Ô ÇÏ´Â ÀÛ¾÷µéÀ» ´Ù¸¥
¿À·¡µÈ as
¹öÁ¯µé°úÀÇ È£È¯¼ºÀ» À§Çؼ º¸·ùÇÏ°í ÀÖ´Ù.
¹Ì·¡¿¡´Â, -R
Àº ÀÌ·± ¹æ¹ýÀ¸·Î ÀÛµ¿ÇÒ °ÍÀÌ´Ù.
as
°¡ COFF Ãâ·ÂÀ» Çϵµ·Ï ¼³Á¤µÇ¾ú´Ù¸é, ÀÌ·¯ÇÑ ¿É¼ÇÀº
´ç½ÅÀÌ `.text', `.data' ¶ó°í À̸§ ºÙ¿©Áø ¼½¼ÇÀ» »ç¿ëÇßÀ»
°æ¿ì¿¡¸¸ À¯È¿ÇÏ´Ù.
-R
is not supported for any of the HPPA targets. Using
-R
generates a warning from as
.
--statistics
Use `--statistics' to display two statistics about the resources used by
as
: the maximum amount of space allocated during the assembly
(in bytes), and the total execution time taken for the assembly (in CPU
seconds).
-v
`-v' ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á as
ÀÇ ¹öÁ¯À» ¾Ë ¼ö
ÀÖ´Ù(`--version'µµ °°´Ù).
-W
ÄÄÆÄÀÏ·¯°¡ Ãâ·ÂÇÑ °ÍÀ» ¾î¼Àºí ÇÒ ¶§¿¡´Â as
´Â °áÄÚ °æ°í³ª
¿¡·¯¸Þ¼¼Áö¸¦ ³»º¸³»Áö ¾Ê´Â´Ù. ±×·¯³ª »ç¶÷¿¡ ÀÇÇØ ÀÛ¼ºµÈ ÇÁ·Î±×·¥Àº Á¾Á¾
°æ°í¸¦ ¾ß±â ½ÃŲ´Ù. ¸ðµç ±×·¯ÇÑ °æ°í´Â Ç¥ÁØ¿¡·¯ ÆÄÀÏ·Î ³» º¸³»Áú
°ÍÀÌ´Ù. ÀÌ ¿É¼ÇÀ» »ç¿ëÇϸé, ±×·¯ÇÑ °æ°í°¡ ¹ß»ýÇÏÁö ¾Ê´Â´Ù. ÀÌ ¿É¼ÇÀº
°æ°í ¸Þ¼¼Áö¿¡¸¸ ¿µÇâ À» ¹ÌÄ£´Ù. ÀÌ°ÍÀº as
°¡ ¾î¼Àºí ÇÏ´Â
¹æ¹ý¿¡´Â º¯È¸¦ ¹ÌÄ¡Áö´Â ¸øÇÑ´Ù. ¿¡·¯ ½Ã¿¡´Â ¾î¼Àºí¸®¸¦ Áß´ÜÇÏ°í,
Á¶¿ëÇÏ°Ô ¸Þ¼¼Áö¸¦ ¹ß»ýÇÑ´Ù.
-Z
After an error message, as
normally produces no output. If for
some reason you are interested in object file output even after
as
gives an error message on your program, use the `-Z'
option. If there are any errors, as
continues anyways, and
writes an object file after a final warning message of the form `n
errors, m warnings, generating bad object file.'
Go to the first, previous, next, last section, table of contents.