ນີ້ແມ່ນຄໍາສັ່ງ alpha-linux-gnu-as ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
AS - ຕົວປະກອບ GNU ແບບເຄື່ອນທີ່.
ສະຫຼຸບສັງລວມ
ເປັນ [-a[cdghlns][=ເອກະສານ]] [-- ຈັບສະຫຼັບ] [-D]
[--compress-debug-sections] [--nocompress-debug-sections]
[--debug-prefix-map ອາຍຸ=ໃຫມ່]
[-- defsym ຊິມ=h] [-f] [-g] [--gstabs]
[--gstabs+] [--gdwarf-2] [--gdwarf-sections]
[- ຊ່ວຍ] [-I dir] [-J]
[-K] [-L] [--listing-lhs-width=NUMBER]
[--listing-lhs-width2=NUMBER] [--listing-rhs-width=NUMBER]
[--listing-cont-lines=NUMBER] [--keep-ທ້ອງຖິ່ນ]
[-o objfile] [-R]
[--hash-size=NUMBER] [--reduce-memory-overheads]
[--ສະຖິຕິ]
[-v] [-ການປ່ຽນແປງ] [- ການປ່ຽນແປງ]
[-W] [--ເຕືອນ] [-- ເຕືອນໄພອັນຕະລາຍ] [-w] [-x]
[-Z] [@ເອກະສານ]
[--sectname-subst] [--size-check=[error|ເຕືອນ]]
[--ເປົ້າຫມາຍການຊ່ວຍເຫຼືອ] [ທາງເລືອກເປົ້າຫມາຍ]
[--|ໄຟ ... ]
ເປົ້າຫມາຍ AAArch64 ຕົວເລືອກ:
[-EB|- THE]
[- ມາບີ=ຊ່ວຍເຫຼືອ]
ເປົ້າຫມາຍ Alpha ຕົວເລືອກ:
[-mcpu]
[-mdebug | -no-mdebug]
[- ທົດແທນ | - ແທນທີ່]
[- ຜ່ອນຄາຍ] [-g] [-Gຂະຫນາດ]
[-F] [-32 ຕື່ມ]
ເປົ້າຫມາຍ ARC ຕົວເລືອກ:
[-mcpu=cpu]
[-mA6|-mARC600|-mARC601|-mA7|-mARC700|-mEM|-mHS]
[-mcode-ຄວາມຫນາແຫນ້ນ]
[-EB|- THE]
ເປົ້າຫມາຍ ARM ຕົວເລືອກ:
[-mcpu=processor[+ການຂະຫຍາຍ...]]
[- ມີນາ=ຖາປັດຕະຍະ[+ການຂະຫຍາຍ...]]
[-mfpu=ຮູບແບບຈຸດລອຍ]
[-mfloat-abi=ຊ່ວຍເຫລືອ]
[-meabi=ver]
[- ໂປ້ມື]
[-EB|- THE]
[-mapcs-32|-mapcs-26|-mapcs-float|
-mapcs-reentrant]
[-mthumb-interwork] [-k]
ເປົ້າຫມາຍ ດຳ ຕົວເລືອກ:
[-mcpu=processor[-sirevision]]
[-mfdpic]
[-mno-fdpic]
[-mnopic]
ເປົ້າຫມາຍ CRIS ຕົວເລືອກ:
[--ຂີດກ້ອງ | --no-underscore]
[--ຮູບ] [-N]
[--emulation=ອາຊະຍາກຳ | --emulation=crisaout]
[--march=v0_v10 | --ເດືອນມີນາ=v10 | --ເດືອນມີນາ=v32 | --march=common_v10_v32]
ເປົ້າຫມາຍ D10V ຕົວເລືອກ:
[-O]
ເປົ້າຫມາຍ D30V ຕົວເລືອກ:
[-O|-n|-N]
ເປົ້າຫມາຍ EPIphany ຕົວເລືອກ:
[- mepiphany|- mepiphany16]
ເປົ້າຫມາຍ H8 / 300 ຕົວເລືອກ:
[-h-tick-hex]
ເປົ້າຫມາຍ i386 ຕົວເລືອກ:
[-32|--x32|-64] [-n]
[- ມີນາ=CPU[+ການຄົ້ນຄ້ວາ...]] [-mtune=CPU]
ເປົ້າຫມາຍ i960 ຕົວເລືອກ:
[-ACA|-ACA_A|-ACB|-ACC|-ອາຄາ|-AKB|
-AKC|-AMC]
[-b] [- ບໍ່ຜ່ອນຄາຍອາລົມ]
ເປົ້າຫມາຍ IA-64 ຕົວເລືອກ:
[-mconstant-gp|-mauto-pic]
[-milp32|-milp64|-mlp64|-mp64]
[-ມ|MBE]
[-mtune=itanium1|-mtune=itanium2]
[-munwind-check=ເຕືອນ|-munwind-check=ຜິດພາດ]
[-mhint.b=ຕົກລົງ|-mhint.b=ຄຳເຕືອນ|-mhint.b=ຜິດພາດ]
[-x|-xexplicit] [-xauto] [-xdebug]
ເປົ້າຫມາຍ IP2K ຕົວເລືອກ:
[-mip2022|-mip2022ext]
ເປົ້າຫມາຍ M32C ຕົວເລືອກ:
[-m32c|-m16c] [-ຜ່ອນຄາຍ] [-h-tick-hex]
ເປົ້າຫມາຍ M32R ຕົວເລືອກ:
[--m32rx|--[no-]warn-explicit-parallel-conflicts|
--W[n]ປ]
ເປົ້າຫມາຍ M680X0 ຕົວເລືອກ:
[-l] [-m68000|-m68010|-m68020|...]
ເປົ້າຫມາຍ M68HC11 ຕົວເລືອກ:
[-m68hc11|-m68hc12|-m68hcs12|-mm9s12x|-mm9s12xg]
[-mshort|- ມລ]
[-mshort-double|-mlong-double]
[--force-ຍາວ-ສາຂາ] [-- ສາຂາສັ້ນ]
[--strict-direct-mode] [--print-insn-syntax]
[--print-opcodes] [--generate-ຕົວຢ່າງ]
ເປົ້າຫມາຍ MCORE ຕົວເລືອກ:
[-jsri2bsr] [- sifilter] [- ຜ່ອນຄາຍ]
[-mcpu=[210|340]]
ເປົ້າຫມາຍ Meta ຕົວເລືອກ:
[-mcpu=cpu] [-mfpu=cpu] [-mdsp=cpu] ເປົ້າຫມາຍ ໄມໂຄຣບລາສ ຕົວເລືອກ:
ເປົ້າຫມາຍ MIPS ຕົວເລືອກ:
[-nocpp] [- THE] [-EB] [-O[ທີ່ດີທີ່ສຸດ ລະດັບ]]
[-g[debug ລະດັບ]] [-G num] [-KPIC] [-call_shared]
[-non_shared] [-xgot [-mvxworks-pic]
[- ມາບີ=ຊ່ວຍເຫຼືອ] [-32] [-n32] [-64] [-mfp32] [-mgp32]
[-mfp64] [-mgp64] [-mfpx]
[-modd-spreg] [-mno-odd-spreg]
[- ມີນາ=CPU] [-mtune=CPU] [-mips1] [-mips2]
[-mips3] [-mips4] [-mips5] [-mips32] [-mips32r2]
[-mips32r3] [-mips32r5] [-mips32r6] [-mips64] [-mips64r2]
[-mips64r3] [-mips64r5] [-mips64r6]
[-construct-floats] [-no-construct-floats]
[-mnan=ການເຂົ້າລະຫັດ]
[- ກັບດັກ] [- ບໍ່ຢຸດ] [- ພັກຜ່ອນ] [- ບໍ່ມີກັບດັກ]
[-mips16] [-no-mips16]
[-mmmicromips] [-mno-micromips]
[-msmartmips] [-mno-smartmips]
[-mips3d] [-no-mips3d]
[-mdmx] [-no-mdmx]
[-mdsp] [-mno-dsp]
[-MDSPR2] [-mno-dspr2]
[-mmsa] [-mno-msa]
[-mxpa] [-mno-xpa]
[-mmt] [-mno-mt]
[-mmcu] [-mno-mcu]
[- minsn32] [-mno-insn32]
[-mfix7000] [-mno-fix 7000]
[-mfix-rm7000] [-mno-fix-rm7000]
[-mfix-vr4120] [-mno-fix-vr4120]
[-mfix-vr4130] [-mno-fix-vr4130]
[-mdebug] [-no-mdebug]
[-mpdr] [-mno-pdr]
ເປົ້າຫມາຍ MMIX ຕົວເລືອກ:
[--fixed-special-register-names] [--globalize-ສັນຍາລັກ]
[--gnu-syntax] [--ພັກຜ່ອນ] [--no-predefined-symbols]
[--ບໍ່ຂະຫຍາຍ] [--no-merge-gregs] [-x]
[--linker-alocated-gregs]
ເປົ້າຫມາຍ Nios II ຕົວເລືອກ:
[- ຜ່ອນຄາຍທັງຫມົດ] [- ສ່ວນຜ່ອນຄາຍ] [- ບໍ່ຜ່ອນຄາຍອາລົມ]
[-EB] [- THE]
ເປົ້າຫມາຍ NDS32 ຕົວເລືອກ:
[- THE] [-EB] [-O] [-ອສ] [-mcpu=cpu]
[-misa=isa] [-mabi=ຊ່ວຍເຫລືອ] [-mall-ext]
[-m[ບໍ່-]16-ບິດ] [-m[no-]perf-ext] [-m[no-]perf2-ext]
[-m[no-]string-ext] [-m[no-]dsp-ext] [-m[ບໍ່-]mac] [-m[ບໍ່-]div]
[-m[no-]audio-isa-ext] [-m[ບໍ່-]fpu-sp-ext] [-m[ບໍ່-]fpu-dp-ext]
[-m[ບໍ່-]fpu-fma] [-mfpu-freg=FREG] [-mreduced-regs]
[-mful-regs] [-m[no-]dx-regs] [-mpic] [-mno-ຜ່ອນຄາຍ]
[-mb2bb]
ເປົ້າຫມາຍ PDP11 ຕົວເລືອກ:
[-mpic|-mno-pic] [- ສູນການຄ້າ] [-mno-extensions]
[-mການຂະຫຍາຍ|-mno-ການຂະຫຍາຍ]
[-mcpu] [-mເຄື່ອງ]
ເປົ້າຫມາຍ picoJava ຕົວເລືອກ:
[-mb|-ຂ້ອຍ]
ເປົ້າຫມາຍ ພະລັງງານ PC ຕົວເລືອກ:
[-a32|-a64]
[-mpwrx|-mpwr2|-mpwr|-m601|-mppc|-mppc32|-m603|-m604|-m403|-m405|
-m440|-m464|-m476|-m7400|-m7410|-m7450|-m7455|-m750cl|-mppc64|
-m620|-ຂ້ອຍ 500|-e500x2|-me500mc|-me500mc64|-ຂ້ອຍ 5500|-ຂ້ອຍ 6500|-mppc64bridge|
-mbooke|- ພະລັງງານ 4|-mpwr4|- ພະລັງງານ 5|-mpwr5|-mpwr5x|- ພະລັງງານ 6|-mpwr6|
- ພະລັງງານ 7|-mpwr7|- ພະລັງງານ 8|-mpwr8|- ພະລັງງານ 9|-mpwr9-ma2|
- mcell|-mspe|-mtitan|-ຂ້ອຍ 300|-mcom]
[- ຫຼາຍ] [-maltivec|-mvsx|-mhtm|-mvle]
[-mregnames|-mno-regnames]
[- ສາມາດຍ້າຍໄດ້|-mrelocatable-lib|-K PIC] [- memb]
[- ໜ້ອຍ|-mlittle-endian|-ການ|- ໃຫຍ່|-mbig-endian|-ເປັນ]
[- msolaris|-mno-solaris]
[-nops=ນັບ]
ເປົ້າຫມາຍ RL78 ຕົວເລືອກ:
[-mg10]
[-m32bit-ສອງເທົ່າ|-m64bit-ສອງເທົ່າ]
ເປົ້າຫມາຍ RX ຕົວເລືອກ:
[-mlittle-endian|-mbig-endian]
[-m32bit-ສອງເທົ່າ|-m64bit-ສອງເທົ່າ]
[-muse-conventional-section-names]
[-msmall-data-limit]
[- mpid]
[-mrelax]
[-mint-register=ຈໍານວນ]
[-mgcc-abi|-mrx-abi]
ເປົ້າຫມາຍ s390 ຕົວເລືອກ:
[-m31|-m64] [-ເມຊາ|-mzarch] [- ມີນາ=CPU]
[-mregnames|-mno-regnames]
[-mwarn-areg-ສູນ]
ເປົ້າຫມາຍ ຄະແນນ ຕົວເລືອກ:
[-EB][- THE][- FIXDD][- ເຕືອນ]
[-SCORE5][-SCORE5U][-SCORE7][-SCORE3]
[-march=ຄະແນນ7][-march=ຄະແນນ3]
[-USE_R1][-KPIC][-O0][-G num][-V]
ເປົ້າຫມາຍ SPARC ຕົວເລືອກ:
[-Av6|-Av7|-Av8|- Asparclet|- Asparclite
-Av8plus|-Av8plus|-Av9|-Av9a]
[-xarch=v8ບວກ|-xarch=v8plus] [- ຕຳ]
[-32|-64]
ເປົ້າຫມາຍ TIC54X ຕົວເລືອກ:
[-mcpu=54[123589]|-mcpu=54[56]lp] [-mfar-mode|-mf]
[-merrors-to-file |-ຂ້ອຍ ]
ເປົ້າຫມາຍ TIC6X ຕົວເລືອກ:
[- ມີນາ=ໂຄ້ງ] [-mbig-endian|-mlittle-endian]
[-mdsbt|-mno-dsbt] [-mpid=ບໍ່|-mpid=ໃກ້|-mpid=ໄກ]
[-mpic|-mno-pic]
ເປົ້າຫມາຍ TILE-Gx ຕົວເລືອກ:
[-m32|-m64][-EB][- THE]
ເປົ້າຫມາຍ ວິໄສທັດ ຕົວເລືອກ:
[-mtune=ໂຄ້ງ]
ເປົ້າຫມາຍ Xtensa ຕົວເລືອກ:
[--[ບໍ່-] text-section-literals] [--[ບໍ່-] auto-litpools]
[--[ບໍ່-]ຕົວໜັງສືຢ່າງແທ້ຈິງ]
[--[ບໍ່-]ວາງເປົ້າໝາຍ] [--[ບໍ່-]ໂທຍາວ]
[--[ບໍ່-]ຫັນປ່ຽນ]
[--ປ່ຽນຊື່ພາກສ່ວນ ຊື່ເກົ່າ=ຊື່ໃໝ່]
[--[ບໍ່-]trampolines]
ເປົ້າຫມາຍ Z80 ຕົວເລືອກ:
[-z80] [-r800]
[ -ignore-undocumented-ຄໍາແນະນໍາ] [- ວູດ]
[ -ignore-unportable-ຄໍາແນະນໍາ] [-Wnup]
[ -warn-undocumented-ຄໍາແນະນໍາ] [- ວູດ]
[ -warn-unportable-ຄໍາແນະນໍາ] [- ວຸບ]
[ -forbid-undocumented-ຄໍາແນະນໍາ] [- ຟຸດ]
[ -forbid-unportable-ຄໍາແນະນໍາ] [- ຟຸ]
ລາຍລະອຽດ
GNU as ແມ່ນແທ້ຂອງຄອບຄົວຂອງຜູ້ປະກອບ. ຖ້າທ່ານໃຊ້ (ຫຼືໄດ້ໃຊ້) ຕົວປະກອບ GNU ເປີດ
ສະຖາປັດຕະຍະກໍາອັນຫນຶ່ງ, ທ່ານຄວນຊອກຫາສະພາບແວດລ້ອມທີ່ຄ້າຍຄືກັນໃນເວລາທີ່ທ່ານໃຊ້ມັນຢູ່ໃນບ່ອນອື່ນ
ຖາປັດຕະຍະ. ແຕ່ລະສະບັບມີຫຼາຍທີ່ຄ້າຍຄືກັນກັບອື່ນໆ, ລວມທັງໄຟລ໌ວັດຖຸ
ຮູບແບບ, ຄໍາສັ່ງປະກອບສ່ວນໃຫຍ່ (ມັກເອີ້ນວ່າ pseudo-ops) ແລະ syntax ຂອງ assembler.
as ມີຈຸດປະສົງຕົ້ນຕໍເພື່ອປະກອບຜົນຜະລິດຂອງ GNU C compiler "gcc" ສໍາລັບການນໍາໃຊ້ໂດຍ
ຕົວເຊື່ອມຕໍ່ "ld". ຢ່າງໃດກໍຕາມ, ພວກເຮົາໄດ້ພະຍາຍາມເຮັດ as ປະກອບທຸກສິ່ງທຸກຢ່າງທີ່ຖືກຕ້ອງ
ເຄື່ອງປະກອບອື່ນໆສໍາລັບເຄື່ອງດຽວກັນຈະປະກອບ. ຂໍ້ຍົກເວັ້ນໃດໆຖືກບັນທຶກໄວ້
ຢ່າງຈະແຈ້ງ. ນີ້ບໍ່ໄດ້ຫມາຍຄວາມວ່າ as ໃຊ້ syntax ດຽວກັນກັບຕົວປະກອບອື່ນສໍາລັບ the
ສະຖາປັດຕະຍະກໍາດຽວກັນ; ຕົວຢ່າງ, ພວກເຮົາຮູ້ເຖິງຫຼາຍສະບັບທີ່ບໍ່ເຂົ້າກັນໄດ້ຂອງສະພາແຫ່ງ 680x0
syntax ພາສາ.
ແຕ່ລະຄັ້ງທີ່ທ່ານແລ່ນ as ມັນປະກອບໂຄງການແຫຼ່ງຫນຶ່ງຢ່າງແທ້ຈິງ. ໂຄງການແຫຼ່ງແມ່ນເຮັດ
ເຖິງໜຶ່ງ ຫຼືຫຼາຍໄຟລ໌. (ການປ້ອນຂໍ້ມູນມາດຕະຖານຍັງເປັນໄຟລ໌.)
ເຈົ້າໃຫ້ as ເສັ້ນຄໍາສັ່ງທີ່ມີສູນຫຼືຫຼາຍຊື່ໄຟລ໌ input. ໄຟລ໌ປ້ອນຂໍ້ມູນແມ່ນ
ອ່ານ (ຈາກຊື່ໄຟລ໌ຊ້າຍຫາຂວາ). ການໂຕ້ຖຽງເສັ້ນຄໍາສັ່ງ (ໃນຕໍາແຫນ່ງໃດກໍ່ຕາມ) ທີ່ມີ
ບໍ່ມີຄວາມຫມາຍພິເສດແມ່ນໄດ້ຮັບການປະຕິບັດເປັນຊື່ໄຟລ໌ປ້ອນຂໍ້ມູນ.
ຖ້າເຈົ້າໃຫ້ as ບໍ່ມີຊື່ໄຟລ໌ທີ່ມັນພະຍາຍາມອ່ານໄຟລ໌ປ້ອນຂໍ້ມູນຫນຶ່ງຈາກ as ມາດຕະຖານ
input, ເຊິ່ງປົກກະຕິແມ່ນ terminal ຂອງທ່ານ. ທ່ານອາດຈະຕ້ອງພິມ ctl-D ບອກ as ບໍ່ມີ
ໂຄງການເພີ່ມເຕີມເພື່ອປະກອບ.
ການນໍາໃຊ້ -- ຖ້າເຈົ້າຕ້ອງການຕັ້ງຊື່ໄຟລ໌ວັດສະດຸປ້ອນມາດຕະຖານຢ່າງຈະແຈ້ງໃນແຖວຄຳສັ່ງຂອງເຈົ້າ.
ຖ້າແຫຼ່ງແມ່ນຫວ່າງເປົ່າ, as ຜະລິດໄຟລ໌ວັດຖຸຂະຫນາດນ້ອຍ, ຫວ່າງເປົ່າ.
as ອາດຈະຂຽນຄໍາເຕືອນແລະຂໍ້ຄວາມຜິດພາດກັບໄຟລ໌ຄວາມຜິດພາດມາດຕະຖານ (ໂດຍປົກກະຕິຂອງທ່ານ
terminal). ນີ້ບໍ່ຄວນເກີດຂຶ້ນເມື່ອ compiler ແລ່ນ as ອັດຕະໂນມັດ. ຄຳເຕືອນ
ລາຍງານການສົມມຸດຕິຖານທີ່ໄດ້ເຮັດດັ່ງນັ້ນ as ສາມາດສືບຕໍ່ປະກອບໂຄງການທີ່ຜິດພາດ; ລາຍງານຄວາມຜິດພາດ
ບັນຫາອັນໜັກໜ່ວງທີ່ຢຸດການຊຸມນຸມ.
ຖ້າຫາກວ່າທ່ານກໍາລັງຮຽກຮ້ອງ as ຜ່ານ GNU C compiler, ທ່ານສາມາດນໍາໃຊ້ -ວ ທາງເລືອກທີ່ຈະຜ່ານ
ການໂຕ້ຖຽງຜ່ານໄປຫາຜູ້ປະກອບ. ການໂຕ້ຖຽງຕົວປະກອບຕ້ອງຖືກແຍກອອກຈາກແຕ່ລະ
ອື່ນໆ (ແລະ -ວ) ໂດຍເຄື່ອງໝາຍຈຸດ. ຍົກຕົວຢ່າງ:
gcc -c -g -O -Wa,-alh,-L file.c
ນີ້ຜ່ານສອງທາງເລືອກໃຫ້ກັບຜູ້ປະກອບ: -ອ່າ (ປ່ອຍບັນຊີລາຍການກັບຜົນຜະລິດມາດຕະຖານທີ່ມີ
ລະດັບສູງ ແລະແຫຼ່ງປະກອບ) ແລະ -L (ຮັກສາສັນຍາລັກທ້ອງຖິ່ນໃນຕາຕະລາງສັນຍາລັກ).
ປົກກະຕິແລ້ວທ່ານບໍ່ຈໍາເປັນຕ້ອງໃຊ້ນີ້ -ວ ກົນໄກ, ນັບຕັ້ງແຕ່ຫຼາຍ compiler command-line
ທາງເລືອກຈະຖືກສົ່ງຜ່ານອັດຕະໂນມັດໄປຫາຕົວປະກອບໂດຍ compiler. (ທ່ານສາມາດໂທຫາ GNU
compiler driver ກັບ -v ທາງເລືອກທີ່ຈະເບິ່ງທີ່ຊັດເຈນວ່າທາງເລືອກທີ່ມັນຜ່ານໄປແຕ່ລະຄົນ
ຜ່ານ compilation pass, ລວມທັງ assembler ໄດ້.)
OPTIONS
@ເອກະສານ
ອ່ານຕົວເລືອກແຖວຄໍາສັ່ງຈາກ ເອກະສານ. ທາງເລືອກທີ່ອ່ານໄດ້ຖືກໃສ່ແທນທີ່ຂອງ
ຕົ້ນສະບັບ @ເອກະສານ ທາງເລືອກ. ຖ້າ ເອກະສານ ບໍ່ມີ, ຫຼືບໍ່ສາມາດອ່ານໄດ້, ຫຼັງຈາກນັ້ນທາງເລືອກ
ຈະໄດ້ຮັບການປິ່ນປົວທີ່ຮູ້ຫນັງສື, ແລະບໍ່ໄດ້ຮັບການໂຍກຍ້າຍອອກ.
ຕົວເລືອກຕ່າງໆໃນ ເອກະສານ ຖືກແຍກອອກໂດຍຊ່ອງຫວ່າງ. ອາດມີຕົວອັກສອນຊ່ອງຫວ່າງໃສ່ນຳ
ໃນທາງເລືອກໂດຍການອ້ອມຮອບທາງເລືອກທັງຫມົດໃນວົງຢືມດຽວຫຼືຄູ່. ໃດ
ຕົວອັກສອນ (ລວມທັງ backslash) ອາດຈະຖືກລວມເຂົ້າໂດຍການນໍາຫນ້າຕົວອັກສອນທີ່ຈະເປັນ
ລວມໄປດ້ວຍ backslash. ໄດ້ ເອກະສານ ຕົວຂອງມັນເອງອາດຈະມີ @ ເພີ່ມເຕີມເອກະສານ ທາງເລືອກ; ໃດ
ທາງເລືອກດັ່ງກ່າວຈະຖືກປະມວນຜົນແບບ recursively.
-a[cdghlmns]
ເປີດລາຍຊື່, ໃນຫຼາຍໆວິທີ:
- ແລະ ຍົກເລີກເງື່ອນໄຂທີ່ບໍ່ຖືກຕ້ອງ
-ໂຄສະນາ omit debugging ຄໍາສັ່ງ
-ag ປະກອບມີຂໍ້ມູນທົ່ວໄປ, ເຊັ່ນວ່າສະບັບແລະທາງເລືອກທີ່ຜ່ານ
-ອ່າ ປະກອບມີແຫຼ່ງລະດັບສູງ
- ກັບ ປະກອບມີການປະກອບ
-ຂ້ອຍ ລວມເຖິງການຂະຫຍາຍມະຫາພາກ
-ເປັນ ຍົກເລີກການປະມວນຜົນແບບຟອມ
-ເປັນ ປະກອບມີສັນຍາລັກ
=ໄຟລ໌
ຕັ້ງຊື່ຂອງໄຟລ໌ລາຍຊື່
ທ່ານອາດຈະສົມທົບທາງເລືອກເຫຼົ່ານີ້; ສໍາລັບຕົວຢ່າງ, ການນໍາໃຊ້ -ອັນ ສໍາລັບການປະກອບບັນຊີລາຍຊື່ໂດຍບໍ່ມີການ
ການປຸງແຕ່ງຮູບແບບ. ໄດ້ =ໄຟລ໌ ທາງເລືອກ, ຖ້າໃຊ້, ຕ້ອງເປັນອັນສຸດທ້າຍ. ດ້ວຍຕົວມັນເອງ, -a
ເລີ່ມຕົ້ນເປັນ -ahls.
-- ຈັບສະຫຼັບ
ເລີ່ມຕົ້ນໃນໂໝດມະຫາພາກສະຫຼັບກັນ.
--compress-debug-sections
ບີບອັດພາກສ່ວນດີບັກ DWARF ໂດຍໃຊ້ zlib ກັບ SHF_COMPRESSED ຈາກ ELF ABI. ໄດ້
ໄຟລ໌ວັດຖຸຜົນໄດ້ຮັບອາດຈະບໍ່ເຂົ້າກັນໄດ້ກັບຕົວເຊື່ອມຕໍ່ເກົ່າ ແລະໄຟລ໌ວັດຖຸ
ອຸປະໂພກຕ່າງໆ. ໃຫ້ສັງເກດວ່າການບີບອັດຈະເຮັດໃຫ້ພາກສ່ວນໃດນຶ່ງ ຂະຫນາດໃຫຍ່ ຫຼັງຈາກນັ້ນ, ມັນບໍ່ແມ່ນ
ຖືກບີບອັດ.
--compress-debug-sections=ບໍ່ມີ
--compress-debug-sections=zlib
--compress-debug-sections=zlib-gnu
--compress-debug-sections=zlib-gabi
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີການບີບອັດສ່ວນດີບັກຂອງ DWARF.
--compress-debug-sections=ບໍ່ມີ ເທົ່າກັບ --nocompress-debug-sections.
--compress-debug-sections=zlib ແລະ --compress-debug-sections=zlib-gabi ທຽບເທົ່າ
to --compress-debug-sections. --compress-debug-sections=zlib-gnu ບີບອັດ DWARF
ແກ້ໄຂພາກສ່ວນໂດຍໃຊ້ zlib. ພາກສ່ວນດີບັກຖືກປ່ຽນຊື່ເພື່ອເລີ່ມຕົ້ນດ້ວຍ .zdebug.
ໃຫ້ສັງເກດວ່າການບີບອັດຈະເຮັດໃຫ້ພາກສ່ວນໃດນຶ່ງ ຂະຫນາດໃຫຍ່ ຫຼັງຈາກນັ້ນ, ມັນບໍ່ໄດ້ຖືກບີບອັດ
ປ່ຽນຊື່.
--nocompress-debug-sections
ຢ່າບີບອັດພາກສ່ວນດີບັກ DWARF. ປົກກະຕິແລ້ວນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນຂອງທຸກເປົ້າໝາຍ
ຍົກເວັ້ນ x86/x86_64, ແຕ່ການຕັ້ງຄ່າທາງເລືອກທີ່ໃຊ້ເວລາສາມາດຖືກນໍາໃຊ້ເພື່ອ override ນີ້.
-D ບໍ່ສົນໃຈ. ຕົວເລືອກນີ້ຖືກຍອມຮັບສໍາລັບການເຂົ້າກັນໄດ້ຂອງສະຄິບກັບການໂທໄປຫາຜູ້ອື່ນ
ເຄື່ອງປະກອບ.
--debug-prefix-map ອາຍຸ=ໃຫມ່
ເມື່ອປະກອບໄຟລ໌ຢູ່ໃນໄດເລກະທໍລີ ອາຍຸ, ບັນທຶກຂໍ້ມູນ debugging ອະທິບາຍໃຫ້ເຂົາເຈົ້າ
ຄືໃນ ໃຫມ່ ແທນທີ່ຈະເປັນ.
-- defsym ຊິມ=ມູນຄ່າ
ກໍານົດສັນຍາລັກ ຊິມ ຈະ ມູນຄ່າ ກ່ອນທີ່ຈະປະກອບໄຟລ໌ປ້ອນຂໍ້ມູນ. ມູນຄ່າ ຕ້ອງເປັນ
ຈໍານວນຄົງທີ່. ໃນ C, ຊັ້ນນໍາ 0x ຊີ້ບອກຄ່າເລກຖານສິບຫົກ, ແລະນຳໜ້າ
0 ຊີ້ບອກຄ່າແປດ. ຄ່າຂອງສັນຍາລັກສາມາດ overridden ພາຍໃນແຫຼ່ງໃດຫນຶ່ງ
ໄຟລ໌ໂດຍຜ່ານການນໍາໃຊ້ ".set" pseudo-op.
-f "fast"---skip whitespace and comment preprocessing (ສົມມຸດວ່າແຫຼ່ງທີ່ມາແມ່ນ compiler output).
-g
--gen-debug
ສ້າງຂໍ້ມູນການດີບັກສຳລັບແຕ່ລະສາຍແຫຼ່ງຂອງຕົວປະກອບໂດຍໃຊ້ການດີບັກອັນໃດກໍໄດ້
ຮູບແບບແມ່ນຕ້ອງການໂດຍເປົ້າຫມາຍ. ປະຈຸບັນນີ້ຫມາຍເຖິງ STABS, ECOFF ຫຼື
DWARF2.
--gstabs
ສ້າງຂໍ້ມູນການດີບັກ stabs ສໍາລັບແຕ່ລະສາຍ assembler. ນີ້ອາດຈະຊ່ວຍດີບັກ
ລະຫັດ assembler, ຖ້າ debugger ສາມາດຈັດການກັບມັນໄດ້.
--gstabs+
ສ້າງຂໍ້ມູນການດີບັກ stabs ສໍາລັບແຕ່ລະສາຍ assembler, ດ້ວຍການຂະຫຍາຍ GNU ນັ້ນ
ອາດຈະເປັນພຽງແຕ່ gdb ທີ່ສາມາດຈັດການກັບ, ແລະມັນສາມາດເຮັດໃຫ້ debuggers ອື່ນໆ crash ຫຼືປະຕິເສດ
ອ່ານໂຄງການຂອງທ່ານ. ນີ້ອາດຈະຊ່ວຍແກ້ໄຂລະຫັດຕົວປະກອບ. ໃນປັດຈຸບັນມີພຽງແຕ່ GNU
ສ່ວນຂະຫຍາຍແມ່ນສະຖານທີ່ຂອງໄດເລກະທໍລີທີ່ເຮັດວຽກໃນປະຈຸບັນໃນເວລາປະກອບ.
--gdwarf-2
ສ້າງຂໍ້ມູນການດີບັກ DWARF2 ສໍາລັບແຕ່ລະສາຍ assembler. ນີ້ອາດຈະຊ່ວຍໄດ້
debugging assembler code, ຖ້າ debugger ສາມາດຈັດການກັບມັນໄດ້. ຫມາຍເຫດ --- ທາງເລືອກນີ້ແມ່ນພຽງແຕ່
ສະຫນັບສະຫນູນໂດຍບາງເປົ້າຫມາຍ, ບໍ່ແມ່ນທັງຫມົດຂອງພວກເຂົາ.
--gdwarf-sections
ແທນທີ່ຈະສ້າງພາກສ່ວນ .debug_line, ສ້າງຊຸດຂອງ .debug_line.ຟູ ພາກສ່ວນ
ບ່ອນທີ່ ຟູ ແມ່ນຊື່ຂອງພາກສ່ວນລະຫັດທີ່ສອດຄ້ອງກັນ. ສໍາລັບຕົວຢ່າງ, ພາກສ່ວນລະຫັດ
ເອີ້ນວ່າ .text.func ຈະມີຂໍ້ມູນຂອງຕົວເລກເສັ້ນຂອງຄົນຕົວໄປໃນພາກສ່ວນ
ເອີ້ນວ່າ .debug_line.text.func. ຖ້າພາກສ່ວນລະຫັດຖືກເອີ້ນພຽງແຕ່ .ຂໍ້ຄວາມ ຫຼັງຈາກນັ້ນ debug
ພາກສ່ວນເສັ້ນຍັງຈະຖືກເອີ້ນວ່າພຽງແຕ່ .debug_line ໂດຍບໍ່ມີການຕໍ່ທ້າຍໃດໆ.
--size-check=ຜິດພາດ
--size-check=ການເຕືອນ
ອອກຂໍ້ຜິດພາດ ຫຼືຄຳເຕືອນສຳລັບຄຳສັ່ງ ELF .size ທີ່ບໍ່ຖືກຕ້ອງ.
- ຊ່ວຍ
ພິມບົດສະຫຼຸບຂອງຕົວເລືອກແຖວຄໍາສັ່ງແລະອອກ.
--ເປົ້າຫມາຍການຊ່ວຍເຫຼືອ
ພິມບົດສະຫຼຸບຂອງຕົວເລືອກສະເພາະເປົ້າຫມາຍທັງຫມົດແລະອອກ.
-I dir
ເພີ່ມໄດເລກະທໍລີ dir ໄປຫາລາຍການຄົ້ນຫາສໍາລັບຄໍາແນະນໍາ ".include".
-J ຢ່າເຕືອນກ່ຽວກັບການລົ້ນລົງລາຍເຊັນ.
-K ອອກຄໍາເຕືອນເມື່ອຕາຕະລາງຄວາມແຕກຕ່າງມີການປ່ຽນແປງສໍາລັບການຍ້າຍອອກຍາວ.
-L
--keep-ທ້ອງຖິ່ນ
ຮັກສາ (ໃນຕາຕະລາງສັນຍາລັກ) ສັນຍາລັກທ້ອງຖິ່ນ. ສັນຍາລັກເຫຼົ່ານີ້ເລີ່ມຕົ້ນດ້ວຍລະບົບສະເພາະ
ຄໍານໍາຫນ້າປ້າຍຊື່ທ້ອງຖິ່ນ, ໂດຍປົກກະຕິ .L ສໍາລັບລະບົບ ELF ຫຼື L ສໍາລັບລະບົບ a.out ແບບດັ້ງເດີມ.
--listing-lhs-width=ຈໍານວນ
ກໍານົດຄວາມກວ້າງສູງສຸດ, ໃນຄໍາສັບຕ່າງໆ, ຂອງຄໍລໍາຂໍ້ມູນຜົນຜະລິດສໍາລັບລາຍຊື່ຜູ້ປະກອບ
ຈໍານວນ.
--listing-lhs-width2=ຈໍານວນ
ກໍານົດຄວາມກວ້າງສູງສຸດ, ໃນຄໍາສັບຕ່າງໆ, ຂອງຖັນຂໍ້ມູນຜົນຜະລິດສໍາລັບສາຍຕໍ່ເນື່ອງໃນ
ຜູ້ປະກອບລາຍຊື່ໄປຫາ ຈໍານວນ.
--listing-rhs-width=ຈໍານວນ
ກໍານົດຄວາມກວ້າງສູງສຸດຂອງເສັ້ນແຫຼ່ງປ້ອນຂໍ້ມູນ, ດັ່ງທີ່ສະແດງຢູ່ໃນລາຍການ, ເຖິງ ຈໍານວນ
ໄບ.
--listing-cont-lines=ຈໍານວນ
ກໍານົດຈໍານວນສູງສຸດຂອງເສັ້ນທີ່ພິມອອກໃນລາຍການສໍາລັບເສັ້ນດຽວຂອງການປ້ອນຂໍ້ມູນໄປ
ຈໍານວນ +1.
-o objfile
ຕັ້ງຊື່ວັດຖຸ-ໄຟລ໌ຜົນຜະລິດຈາກ as objfile.
-R ພັບພາກສ່ວນຂໍ້ມູນເຂົ້າໄປໃນພາກສ່ວນຂໍ້ຄວາມ.
--hash-size=ຈໍານວນ
ກໍານົດຂະຫນາດເລີ່ມຕົ້ນຂອງຕາຕະລາງ hash ຂອງ GAS ເປັນຕົວເລກຕົ້ນຕໍທີ່ໃກ້ຄຽງ ຈໍານວນ.
ການເພີ່ມມູນຄ່ານີ້ສາມາດຫຼຸດຜ່ອນໄລຍະເວລາທີ່ມັນໃຊ້ເວລາເຄື່ອງປະກອບເພື່ອປະຕິບັດ
ວຽກງານຂອງຕົນ, ໃນຄ່າໃຊ້ຈ່າຍຂອງການເພີ່ມຄວາມຕ້ອງການຄວາມຊົງຈໍາຂອງ assembler ໄດ້.
ເຊັ່ນດຽວກັນການຫຼຸດຜ່ອນຄຸນຄ່ານີ້ສາມາດຫຼຸດຜ່ອນຄວາມຕ້ອງການຄວາມຊົງຈໍາໃນຄ່າໃຊ້ຈ່າຍຂອງ
ຄວາມໄວ.
--reduce-memory-overheads
ທາງເລືອກນີ້ຫຼຸດຜ່ອນຄວາມຕ້ອງການຂອງຫນ່ວຍຄວາມຈໍາຂອງ GAS, ໃນຄ່າໃຊ້ຈ່າຍຂອງການເຮັດໃຫ້ການປະກອບ
ຂະບວນການຊ້າລົງ. ໃນປັດຈຸບັນສະຫຼັບນີ້ແມ່ນຄໍາສັບຄ້າຍຄືສໍາລັບ --hash-size=4051, ແຕ່ວ່າໃນ
ໃນອະນາຄົດມັນອາດຈະມີຜົນກະທົບອື່ນໆເຊັ່ນດຽວກັນ.
--sectname-subst
ໃຫ້ກຽດຕາມລໍາດັບການທົດແທນໃນຊື່ພາກ.
--ສະຖິຕິ
ພິມພື້ນທີ່ສູງສຸດ (ເປັນໄບຕ໌) ແລະເວລາທັງໝົດ (ເປັນວິນາທີ) ທີ່ໃຊ້ໂດຍການປະກອບ.
--strip-local-absolute
ເອົາສັນຍາລັກຢ່າງແທ້ຈິງໃນທ້ອງຖິ່ນອອກຈາກຕາຕະລາງສັນຍາລັກຂາອອກ.
-v
-ການປ່ຽນແປງ
Print the as ສະບັບ.
- ການປ່ຽນແປງ
Print the as ສະບັບແລະອອກ.
-W
-- ບໍ່ເຕືອນ
ສະກັດກັ້ນຂໍ້ຄວາມເຕືອນ.
-- ເຕືອນໄພອັນຕະລາຍ
ປະຕິບັດການເຕືອນໄພເປັນຄວາມຜິດພາດ.
--ເຕືອນ
ຢ່າສະກັດກັ້ນຂໍ້ຄວາມເຕືອນຫຼືປະຕິບັດໃຫ້ເຂົາເຈົ້າເປັນຄວາມຜິດພາດ.
-w ບໍ່ສົນໃຈ.
-x ບໍ່ສົນໃຈ.
-Z ສ້າງໄຟລ໌ວັດຖຸເຖິງແມ່ນວ່າຫຼັງຈາກຄວາມຜິດພາດ.
-- | ໄຟ ...
ວັດສະດຸປ້ອນມາດຕະຖານ, ຫຼືໄຟລ໌ແຫຼ່ງທີ່ຈະປະກອບ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂໝດ 64-bit ຂອງ ARM
ສະຖາປັດຕະຍະກໍາ (AArch64).
-EB ຕົວເລືອກນີ້ລະບຸວ່າຜົນຜະລິດທີ່ສ້າງຂຶ້ນໂດຍຕົວປະກອບຄວນຈະຖືກຫມາຍເປັນ
ຖືກເຂົ້າລະຫັດສໍາລັບໂປເຊດເຊີໃຫຍ່ endian.
- THE ຕົວເລືອກນີ້ລະບຸວ່າຜົນຜະລິດທີ່ສ້າງຂຶ້ນໂດຍຕົວປະກອບຄວນຈະຖືກຫມາຍເປັນ
ຖືກເຂົ້າລະຫັດສໍາລັບໂປເຊດເຊີພຽງເລັກນ້ອຍ endian.
-mabi=ຊ່ວຍເຫລືອ
ລະບຸວ່າ ABI ລະຫັດແຫຼ່ງໃດໃຊ້. ການໂຕ້ຖຽງທີ່ຖືກຮັບຮູ້ແມ່ນ: "ilp32" ແລະ
"lp64", ເຊິ່ງຕັດສິນໃຈໄຟລ໌ວັດຖຸທີ່ສ້າງຂຶ້ນໃນຮູບແບບ ELF32 ແລະ ELF64
ຕາມລໍາດັບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ "lp64".
-mcpu=processor[+ການຂະຫຍາຍ... ]
ທາງເລືອກນີ້ກໍານົດໂຮງງານຜະລິດເປົ້າຫມາຍ. ຜູ້ປະກອບຈະອອກຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ
ຖ້າຫາກວ່າຄວາມພະຍາຍາມທີ່ຈະປະກອບຄໍາສັ່ງທີ່ຈະບໍ່ປະຕິບັດຕາມເປົ້າຫມາຍ
ໂຮງງານຜະລິດ. ຊື່ໂປເຊດເຊີຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "cortex-a35", "cortex-a53",
"cortex-a57", "cortex-a72", "exynos-m1", "qdf24xx", "thunderx", "xgene1" ແລະ "xgene2".
ຊື່ພິເສດ "ທັງຫມົດ" ອາດຈະຖືກນໍາໃຊ້ເພື່ອໃຫ້ຜູ້ປະກອບຍອມຮັບຄໍາແນະນໍາທີ່ຖືກຕ້ອງ
ສໍາລັບໂປເຊດເຊີທີ່ສະຫນັບສະຫນູນໃດໆ, ລວມທັງສ່ວນຂະຫຍາຍທາງເລືອກທັງຫມົດ.
ນອກເຫນືອໄປຈາກຊຸດຄໍາແນະນໍາຂັ້ນພື້ນຖານ, ຜູ້ປະກອບສາມາດໄດ້ຮັບການບອກໃຫ້ຍອມຮັບ, ຫຼື
ຈໍາກັດ, mnemonics ຂະຫຍາຍຕ່າງໆທີ່ຂະຫຍາຍໂປເຊດເຊີ.
ຖ້າບາງການປະຕິບັດຂອງໂປເຊດເຊີໂດຍສະເພາະສາມາດມີການຂະຫຍາຍ, ຫຼັງຈາກນັ້ນ
ສ່ວນຂະຫຍາຍເຫຼົ່ານັ້ນຖືກເປີດໃຊ້ໂດຍອັດຕະໂນມັດ. ດັ່ງນັ້ນ, ທ່ານຈະບໍ່ເປັນປົກກະຕິ
ເພື່ອລະບຸການຂະຫຍາຍເພີ່ມເຕີມ.
- ມີນາ=ຖາປັດຕະຍະ[+ການຂະຫຍາຍ... ]
ຕົວເລືອກນີ້ກໍານົດສະຖາປັດຕະຍະກໍາເປົ້າຫມາຍ. ຕົວປະກອບຈະອອກຂໍ້ຜິດພາດ
ຂໍ້ຄວາມຖ້າຫາກວ່າຄວາມພະຍາຍາມທີ່ຈະປະກອບຄໍາແນະນໍາທີ່ຈະບໍ່ປະຕິບັດໃນ
ສະຖາປັດຕະຍະກໍາເປົ້າຫມາຍ. ຊື່ສະຖາປັດຕະຍະກໍາຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "armv8-a",
"armv8.1-a" ແລະ "armv8.2-a".
ຖ້າທັງສອງ -mcpu ແລະ - ມີນາ ຖືກກໍານົດ, ຜູ້ປະກອບຈະໃຊ້ການຕັ້ງຄ່າສໍາລັບ -mcpu.
ຖ້າບໍ່ລະບຸທັງສອງອັນ, ຕົວປະກອບຈະຕັ້ງໄວ້ໃນຕອນຕົ້ນ -mcpu=ທັງໝົດ.
ທາງເລືອກສະຖາປັດຕະສາມາດຂະຫຍາຍໄດ້ດ້ວຍການຂະຫຍາຍຊຸດຄໍາແນະນໍາດຽວກັນ
ທາງເລືອກໃນຖານະເປັນ -mcpu ທາງເລືອກ. ບໍ່ມັກ -mcpu, ສ່ວນຂະຫຍາຍບໍ່ຖືກເປີດໃຊ້ໂດຍ
ຄ່າເລີ່ມຕົ້ນ,
-mverbose-ຜິດພາດ
ຕົວເລືອກນີ້ເປີດໃຊ້ຂໍ້ຄວາມຄວາມຜິດພາດ verbose ສໍາລັບອາຍແກັສ AArch64. ຕົວເລືອກນີ້ຖືກເປີດໃຊ້ໂດຍ
Default
-mno-verbose-ຜິດພາດ
ຕົວເລືອກນີ້ປິດການໃຊ້ງານຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດໃນແກັດ AArch64.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂປເຊດເຊີ Alpha.
-mcpu
ທາງເລືອກນີ້ກໍານົດໂຮງງານຜະລິດເປົ້າຫມາຍ. ຖ້າມີຄວາມພະຍາຍາມທີ່ຈະລວບລວມ
ຄໍາແນະນໍາທີ່ຈະບໍ່ປະຕິບັດໃນໂຮງງານຜະລິດເປົ້າຫມາຍດັ່ງກ່າວ, ຜູ້ປະກອບອາດຈະ
ຂະຫຍາຍຄຳແນະນຳເປັນມະຫາພາກ ຫຼືອອກຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ. ທາງເລືອກນີ້ແມ່ນ
ເທົ່າກັບຄໍາສັ່ງ ".arch".
ຊື່ໂປເຊດເຊີຕໍ່ໄປນີ້ຖືກຮັບຮູ້: 21064, "21064a", 21066, 21068, 21164,
"21164a", "21164pc", 21264, "21264a", "21264b", "ev4", "ev5", "lca45", "ev5", "ev56",
"pca56", "ev6", "ev67", "ev68". ຊື່ພິເສດ "ທັງຫມົດ" ອາດຈະຖືກນໍາໃຊ້ເພື່ອອະນຸຍາດໃຫ້
assembler ເພື່ອຍອມຮັບຄໍາແນະນໍາທີ່ຖືກຕ້ອງສໍາລັບໂປເຊດເຊີ Alpha ໃດ.
ເພື່ອສະຫນັບສະຫນູນການປະຕິບັດທີ່ມີຢູ່ໃນ OSF/1 ກ່ຽວກັບ ".arch", ແລະທີ່ມີຢູ່ແລ້ວ
ປະຕິບັດພາຍໃນ ໄມໂລ (ເຄື່ອງ bootloader Linux ARC), ຊື່ໂປເຊດເຊີທີ່ມີຕົວເລກ (ເຊັ່ນ
21064) ເປີດໃຊ້ຄໍາແນະນໍາ PALcode ສະເພາະຂອງໂປເຊດເຊີ, ໃນຂະນະທີ່ "electro-vlasic"
ຊື່ (ເຊັ່ນ "ev4") ບໍ່.
-mdebug
-no-mdebug
ເປີດໃຊ້ ຫຼືປິດການຜະລິດຂອງ ".mdebug" encapsulation ສໍາລັບຄໍາສັ່ງ stabs ແລະ
ຕົວອະທິບາຍຂັ້ນຕອນ. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອເປີດໃຊ້ ".mdebug" ໂດຍອັດຕະໂນມັດເມື່ອ
ຄໍາສັ່ງ stabs ທໍາອິດແມ່ນເຫັນ.
- ຜ່ອນຄາຍ
ຕົວເລືອກນີ້ບັງຄັບໃຫ້ມີການຍົກຍ້າຍທັງໝົດເຂົ້າໄປໃນໄຟລ໌ວັດຖຸ, ແທນທີ່ຈະບັນທຶກ
ພື້ນທີ່ ແລະການແກ້ໄຂການຍົກຍ້າຍບາງບ່ອນໃນເວລາປະກອບ. ໃຫ້ສັງເກດວ່າທາງເລືອກນີ້ບໍ່ໄດ້
ເຜີຍແຜ່ສັນຍາລັກເລກເລກທັງໝົດເຂົ້າໃນໄຟລ໌ວັດຖຸ, ເພາະວ່າບໍ່ແມ່ນສັນຍາລັກທັງໝົດ
ເລກເລກສາມາດເປັນຕົວແທນ. ຢ່າງໃດກໍຕາມ, ທາງເລືອກຍັງສາມາດເປັນປະໂຫຍດໂດຍສະເພາະ
ຄໍາຮ້ອງສະຫມັກ.
- ທົດແທນ
- ແທນທີ່
ເປີດໃຊ້ຫຼືປິດການເພີ່ມປະສິດທິພາບຂອງການໂທຂັ້ນຕອນ, ທັງຢູ່ໃນການປະກອບແລະຢູ່ທີ່
ເວລາເຊື່ອມຕໍ່. ທາງເລືອກເຫຼົ່ານີ້ແມ່ນມີພຽງແຕ່ສໍາລັບເປົ້າຫມາຍ VMS ແລະ "-replace" ແມ່ນ
ຄ່າເລີ່ມຕົ້ນ. ເບິ່ງພາກ 1.4.1 ຂອງ OpenVMS Linker Utility Manual.
-g ຕົວເລືອກນີ້ຖືກນໍາໃຊ້ໃນເວລາທີ່ compiler ສ້າງຂໍ້ມູນດີບັກ. ເມື່ອໃດ gcc ກຳ ລັງໃຊ້
mips-tfile ເພື່ອສ້າງຂໍ້ມູນດີບັກສໍາລັບ ECOFF, ປ້າຍຊື່ທ້ອງຖິ່ນຕ້ອງຖືກສົ່ງຜ່ານ
ໂດຍຜ່ານໄຟລ໌ວັດຖຸ. ຖ້າບໍ່ດັ່ງນັ້ນທາງເລືອກນີ້ບໍ່ມີຜົນ.
-Gຂະຫນາດ
ສັນຍາລັກທົ່ວໄປໃນທ້ອງຖິ່ນໃຫຍ່ກວ່າ ຂະຫນາດ ຖືກຈັດໃສ່ໃນ ".bss", ໃນຂະນະທີ່ສັນຍາລັກຂະຫນາດນ້ອຍກວ່າແມ່ນ
ວາງໄວ້ໃນ ".sbss".
-F
-32 ຕື່ມ
ທາງເລືອກເຫຼົ່ານີ້ແມ່ນຖືກລະເລີຍສໍາລັບການເຂົ້າກັນໄດ້ກັບຄືນໄປບ່ອນ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂປເຊດເຊີ ARC.
-mcpu=cpu
ຕົວເລືອກນີ້ເລືອກຕົວແປຂອງໂປເຊດເຊີຫຼັກ.
-EB | - THE
ເລືອກຜົນໄດ້ຮັບອັນໃຫຍ່ສຸດ (-EB) ຫຼື ປາຍນ້ອຍ (-EL).
-mcode-ຄວາມຫນາແຫນ້ນ
ເປີດໃຊ້ຄໍາແນະນໍາການຂະຫຍາຍຄວາມຫນາແຫນ້ນຂອງລະຫັດ.
ຕົວເລືອກຕໍ່ໄປນີ້ແມ່ນມີໃຫ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບຄອບຄົວໂຮງງານຜະລິດ ARM.
-mcpu=processor[+ການຂະຫຍາຍ... ]
ລະບຸຕົວແປຂອງໂປເຊດເຊີ ARM ໃດເປັນເປົ້າໝາຍ.
- ມີນາ=ຖາປັດຕະຍະ[+ການຂະຫຍາຍ... ]
ລະບຸຕົວແປສະຖາປັດຕະຍະກຳ ARM ໃດຖືກໃຊ້ໂດຍເປົ້າໝາຍ.
-mfpu=ຮູບແບບຈຸດລອຍ
ເລືອກສະຖາປັດຕະຍະກຳ Floating Point ໃດເປັນເປົ້າໝາຍ.
-mfloat-abi=ຊ່ວຍເຫລືອ
ເລືອກຈຸດທີ່ ABI ຖືກໃຊ້ຢູ່.
- ໂປ້ມື
ເປີດໃຊ້ການຖອດລະຫັດຄໍາແນະນໍາພຽງແຕ່ Thumb.
-mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant
ເລືອກວ່າຂັ້ນຕອນການເອີ້ນສົນທິສັນຍາແມ່ນໃຊ້ຢູ່.
-EB | - THE
ເລືອກຜົນໄດ້ຮັບອັນໃຫຍ່ສຸດ (-EB) ຫຼື ປາຍນ້ອຍ (-EL).
-mthumb-interwork
ລະບຸວ່າລະຫັດໄດ້ຖືກສ້າງຂື້ນດ້ວຍການເຮັດວຽກຮ່ວມກັນລະຫວ່າງ Thumb ແລະລະຫັດ ARM
ໃນໃຈ.
-mccs
ເປີດໂໝດຄວາມເຂົ້າກັນໄດ້ຂອງ syntax assembly CodeComposer Studio.
-k ລະບຸວ່າລະຫັດ PIC ໄດ້ຖືກສ້າງຂຶ້ນ.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກກໍານົດໄວ້ສໍາລັບການໂຮງງານຜະລິດ Blackfin
ຄອບຄົວ.
-mcpu=processor[-sirevision]
ທາງເລືອກນີ້ກໍານົດໂຮງງານຜະລິດເປົ້າຫມາຍ. ທາງເລືອກ sirevision ບໍ່ໄດ້ຖືກນໍາໃຊ້ໃນ
ເຄື່ອງປະກອບ. ມັນຢູ່ທີ່ນີ້ທີ່ GCC ສາມາດຜ່ານທາງເລືອກ "-mcpu=" ຂອງມັນໄດ້ຢ່າງງ່າຍດາຍ. ໄດ້
assembler ຈະອອກຂໍ້ຄວາມຜິດພາດຖ້າຫາກວ່າຄວາມພະຍາຍາມທີ່ຈະປະກອບຄໍາແນະນໍາ
ເຊິ່ງຈະບໍ່ປະຕິບັດໃນໂປເຊດເຊີເປົ້າຫມາຍ. ຊື່ໂປເຊດເຊີຕໍ່ໄປນີ້ແມ່ນ
ຮັບຮູ້: "bf504", "bf506", "bf512", "bf514", "bf516", "bf518", "bf522", "bf523",
"bf524", "bf525", "bf526", "bf527", "bf531", "bf532", "bf533", "bf534", "bf535" (ບໍ່.
ໄດ້ຮັບການຈັດຕັ້ງປະຕິບັດ), "bf536", "bf537", "bf538", "bf539", "bf542", "bf542m", "bf544",
"bf544m", "bf547", "bf547m", "bf548", "bf548m", "bf549", "bf549m", "bf561", ແລະ
"bf592".
-mfdpic
ປະກອບສໍາລັບ FDPIC ABI.
-mno-fdpic
-mnopic
ປິດໃຊ້ງານ -mfdpic.
ເບິ່ງໜ້າຂໍ້ມູນສຳລັບເອກະສານຂອງຕົວເລືອກສະເພາະ CRIS.
ທາງເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ D10V.
-O ເພີ່ມປະສິດທິພາບຜົນຜະລິດໂດຍການຂະຫນານຄໍາແນະນໍາ.
ທາງເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ D30V.
-O ເພີ່ມປະສິດທິພາບຜົນຜະລິດໂດຍການຂະຫນານຄໍາແນະນໍາ.
-n ເຕືອນເມື່ອ nops ຖືກສ້າງຂຶ້ນ.
-N ເຕືອນໃນເວລາທີ່ nop ຫຼັງຈາກຄໍາແນະນໍາການຄູນ 32-bit ຖືກສ້າງຂຶ້ນ.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບການ Epiphany processor ເປັນ.
- mepiphany
ລະບຸວ່າຄໍາແນະນໍາທັງ 32 ແລະ 16 ບິດແມ່ນອະນຸຍາດ. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ
ພຶດຕິ ກຳ.
- mepiphany16
ຈໍາກັດຄໍາແນະນໍາທີ່ອະນຸຍາດໃຫ້ພຽງແຕ່ຊຸດ 16 bit.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບການ H8/300 ໂຮງງານຜະລິດ.
@chapter H8/300 ຄຸນສົມບັດທີ່ຂຶ້ນກັບ
ທາງເລືອກໃນການ
ຮຸ່ນ Renesas H8/300 ຂອງ "as" ມີທາງເລືອກຫນຶ່ງທີ່ຂຶ້ນກັບເຄື່ອງຈັກ:
-h-tick-hex
ສະຫນັບສະຫນູນຮູບແບບ H'00 hex ຄົງທີ່ນອກຈາກ 0x00 ແບບ.
-mach=ຊື່
ຕັ້ງຄ່າຕົວແປເຄື່ອງ H8300. ຊື່ເຄື່ອງຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "h8300h",
"h8300hn", "h8300s", "h8300sn", "h8300sx" ແລະ "h8300sxn".
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບການ i386 ໂຮງງານຜະລິດ.
-32 | --x32 | -64
ເລືອກຂະຫນາດຄໍາ, ບໍ່ວ່າຈະເປັນ 32 bits ຫຼື 64 bits. -32 ຫມາຍເຖິງ Intel i386
ສະຖາປັດຕະຍະກໍາ, ໃນຂະນະທີ່ --x32 ແລະ -64 ສະແດງເຖິງສະຖາປັດຕະຍະກໍາ AMD x86-64 ດ້ວຍ 32-bit ຫຼື 64-bit
ຂະຫນາດຄໍາຕາມລໍາດັບ.
ທາງເລືອກເຫຼົ່ານີ້ແມ່ນມີພຽງແຕ່ມີຮູບແບບໄຟລ໌ວັດຖຸ ELF, ແລະຮຽກຮ້ອງໃຫ້
ການສະຫນັບສະຫນູນ BFD ທີ່ຈໍາເປັນໄດ້ຖືກລວມເຂົ້າ (ໃນເວທີ 32-bit ທ່ານຕ້ອງເພີ່ມ
--enable-64-bit-bfd ເພື່ອກຳນົດຄ່າເປີດໃຊ້ງານ 64-bit ແລະໃຊ້ x86-64 ຕາມເປົ້າໝາຍ.
ເວທີ).
-n ໂດຍຄ່າເລີ່ມຕົ້ນ, x86 GAS ແທນຄໍາແນະນໍາ nop ຫຼາຍອັນທີ່ໃຊ້ສໍາລັບການຈັດຕໍາແຫນ່ງພາຍໃນລະຫັດ
ພາກສ່ວນທີ່ມີຄໍາແນະນໍາ nop ຫຼາຍໄບຕ໌ເຊັ່ນ leal 0(%esi,1),%esi. ສະຫຼັບນີ້
ປິດການເພີ່ມປະສິດທິພາບ.
-- ແບ່ງ
ໃນເວທີທີ່ມາຈາກ SVR4, ລັກສະນະ / ຖືກປະຕິບັດເປັນລັກສະນະຄໍາເຫັນ, ເຊິ່ງ
ຫມາຍຄວາມວ່າມັນບໍ່ສາມາດຖືກນໍາໃຊ້ໃນການສະແດງອອກ. ໄດ້ -- ແບ່ງ ຫັນທາງເລືອກ / into a
ລັກສະນະປົກກະຕິ. ອັນນີ້ບໍ່ໄດ້ປິດການໃຊ້ງານ / ໃນຕອນຕົ້ນຂອງເສັ້ນເລີ່ມຕົ້ນ a
ຄໍາເຫັນ, ຫຼືຜົນກະທົບຕໍ່ການນໍາໃຊ້ # ສໍາລັບການເລີ່ມຕົ້ນຄໍາເຫັນ.
- ມີນາ=CPU[+ການຄົ້ນຄ້ວາ... ]
ທາງເລືອກນີ້ກໍານົດໂຮງງານຜະລິດເປົ້າຫມາຍ. ຜູ້ປະກອບຈະອອກຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ
ຖ້າຫາກວ່າຄວາມພະຍາຍາມທີ່ຈະປະກອບຄໍາສັ່ງທີ່ຈະບໍ່ປະຕິບັດຕາມເປົ້າຫມາຍ
ໂຮງງານຜະລິດ. ຊື່ໂປເຊດເຊີຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "i8086", "i186", "i286",
"i386", "i486", "i586", "i686", "pentium", "pentiumpro", "pentiumii", "pentiumiii",
"pentium4", "prescott", "nocona", "core", "core2", "corei7", "l1om", "k1om", "iamcu",
"k6", "k6_2", "athlon", "opteron", "k8", "amdfam10", "bdver1", "bdver2", "bdver3",
"bdver4", "znver1", "btver1", "btver2", "generic32" ແລະ "generic64".
ນອກເຫນືອໄປຈາກຊຸດຄໍາແນະນໍາຂັ້ນພື້ນຖານ, assembler ສາມາດໄດ້ຮັບການບອກໃຫ້ຍອມຮັບຕ່າງໆ
ການຂະຫຍາຍ mnemonic. ຕົວຢ່າງ, "-march=i686+sse4+vmx" ຂະຫຍາຍ i686 ກັບ sse 4 ແລະ
vmx. ສ່ວນຂະຫຍາຍຕໍ່ໄປນີ້ແມ່ນຮອງຮັບໃນປັດຈຸບັນ: 8087, 287, 387, "no87", "mmx",
"nommx", "sse", "sse2", "sse3", "ssse3", "sse4.1", "sse4.2", "sse4", "nosse", "avx",
"avx2", "adx", "rdseed", "prfchw", "smap", "mpx", "sha", "prefetchwt1", "clflushopt",
"se1", "clwb", "pcommit", "avx512f", "avx512cd", "avx512er", "avx512pf", "avx512vl",
"avx512bw", "avx512dq", "avx512ifma", "avx512vbmi", "noavx", "vmx", "vmfunc", "smx",
"xsave", "xsaveopt", "xsavec", "xsaves", "aes", "pclmul", "fsgsbase", "rdrnd", "f16c",
"bmi2", "fma", "movbe", "ept", "lzcnt", "hle", "rtm", "invpcid", "clflush", "mwaitx",
"clzero", "lwp", "fma4", "xop", "cx16", "syscall", "rdtscp", "3dnow", "3dnowa",
"sse4a", "sse5", "svme", "abm" ແລະ "padlock". ໃຫ້ສັງເກດວ່າແທນທີ່ຈະຂະຫຍາຍພື້ນຖານ
ຊຸດຄໍາແນະນໍາ, mnemonics ຂະຫຍາຍເລີ່ມຕົ້ນດ້ວຍ "ບໍ່" ຖອນຄືນຕາມລໍາດັບ
ການເຮັດວຽກ
ເມື່ອຄໍາສັ່ງ ".arch" ຖືກນໍາໃຊ້ກັບ - ມີນາ, ຄໍາສັ່ງ ".arch" ຈະໃຊ້ເວລາ
ແບບຢ່າງ.
-mtune=CPU
ຕົວເລືອກນີ້ກໍານົດໂປເຊດເຊີເພື່ອເພີ່ມປະສິດທິພາບ. ໃນເວລາທີ່ນໍາໃຊ້ຮ່ວມກັບ
- ມີນາ ທາງເລືອກ, ພຽງແຕ່ຄໍາແນະນໍາຂອງໂປເຊດເຊີທີ່ລະບຸໂດຍ - ມີນາ ທາງເລືອກຈະ
ໄດ້ຮັບການຜະລິດ.
ຖືກຕ້ອງ CPU ຄ່າແມ່ນຄືກັນກັບລາຍການໂປເຊດເຊີ - ມີນາ=CPU.
-msse2avx
ຕົວເລືອກນີ້ລະບຸວ່າຕົວປະກອບຄວນເຂົ້າລະຫັດຄໍາແນະນໍາ SSE ກັບ VEX
ຄຳ ນຳ ໜ້າ.
-msse-check=none
-msse-check=ການເຕືອນໄພ
-msse-check=ຄວາມຜິດພາດ
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວ່າຕົວປະກອບຄວນກວດເບິ່ງຄໍາແນະນໍາ SSE.
-msse-check=none ຈະເຮັດໃຫ້ຜູ້ປະກອບບໍ່ກວດສອບຄໍາແນະນໍາ SSE, ເຊິ່ງແມ່ນ
Default -msse-check=ການເຕືອນໄພ ຈະເຮັດໃຫ້ຜູ້ປະກອບອອກຄໍາເຕືອນສໍາລັບ SSE ໃດໆ
ຄຳ ແນະ ນຳ. -msse-check=ຄວາມຜິດພາດ ຈະເຮັດໃຫ້ຜູ້ປະກອບບັນຫາຜິດພາດສໍາລັບ SSE ໃດໆ
ຄຳ ແນະ ນຳ.
-mavxscalar=128
-mavxscalar=256
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີທີ່ຜູ້ປະກອບຄວນເຂົ້າລະຫັດຄໍາແນະນໍາ AVX scalar.
-mavxscalar=128 ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ AVX scalar ທີ່ມີຄວາມຍາວ vector 128bit, ເຊິ່ງ
ເປັນຄ່າເລີ່ມຕົ້ນ. -mavxscalar=256 ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ AVX scalar ດ້ວຍ 256bit
ຄວາມຍາວ vector.
-mevexlig=128
-mevexlig=256
-mevexlig=512
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີທີ່ຕົວປະກອບຄວນເຂົ້າລະຫັດ EVEX ທີ່ບໍ່ມີຄວາມຍາວ (LIG)
ຄໍາແນະນໍາ. -mevexlig=128 ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ LIG EVEX ດ້ວຍ vector 128bit
ຄວາມຍາວ, ຊຶ່ງເປັນຄ່າເລີ່ມຕົ້ນ. -mevexlig=256 ແລະ -mevexlig=512 ຈະເຂົ້າລະຫັດ LIG EVEX
ຄໍາແນະນໍາທີ່ມີຄວາມຍາວ vector 256bit ແລະ 512bit, ຕາມລໍາດັບ.
-mevexwig=0
-mevexwig=1
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີທີ່ຕົວປະກອບຄວນເຂົ້າລະຫັດ w-ignored (WIG) EVEX
ຄໍາແນະນໍາ. -mevexwig=0 ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ WIG EVEX ດ້ວຍ evex.w = 0, ເຊິ່ງແມ່ນ
ຄ່າເລີ່ມຕົ້ນ. -mevexwig=1 ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ WIG EVEX ດ້ວຍ evex.w = 1.
-mmnemonic=att
-mmnemonic=intel
ຕົວເລືອກນີ້ກໍານົດຄໍາແນະນໍາ mnemonic ສໍາລັບຄໍາແນະນໍາທີ່ກົງກັນ. ໄດ້
ຄຳສັ່ງ ".att_mnemonic" ແລະ ".intel_mnemonic" ຈະເປັນແບບຢ່າງ.
-msyntax=att
-msyntax=intel
ທາງເລືອກນີ້ກໍານົດ syntax ຄໍາແນະນໍາໃນເວລາທີ່ການປຸງແຕ່ງຄໍາແນະນໍາ. ໄດ້
ຄຳສັ່ງ ".att_syntax" ແລະ ".intel_syntax" ຈະເປັນແບບຢ່າງ.
-mnaked-reg
ທາງເລືອກນີ້ລະບຸວ່າການລົງທະບຽນບໍ່ຈໍາເປັນຕ້ອງມີ a % ຄຳນຳໜ້າ. The ".att_syntax" ແລະ
ຄຳສັ່ງ ".intel_syntax" ຈະເປັນແບບຢ່າງ.
-madd-bnd-prefix
ຕົວເລືອກນີ້ບັງຄັບໃຫ້ຜູ້ປະກອບການເພີ່ມຄໍານໍາຫນ້າ BND ໃຫ້ກັບສາຂາທັງຫມົດ, ເຖິງແມ່ນວ່າຈະເປັນແບບນັ້ນ
ຄໍານໍາຫນ້າບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນໃນລະຫັດແຫຼ່ງ.
-mno-ແບ່ງປັນ
ຕາມເປົ້າຫມາຍ ELF, ປົກກະຕິແລ້ວຜູ້ປະກອບການເພີ່ມປະສິດທິພາບການຍົກຍ້າຍທີ່ບໍ່ແມ່ນ PLT ຕໍ່ກັບ
ກຳນົດເປົ້າໝາຍສາຂາທົ່ວໂລກທີ່ບໍ່ອ່ອນແອດ້ວຍການເບິ່ງເຫັນເລີ່ມຕົ້ນ. ໄດ້ -mshared ທາງເລືອກ
ບອກຜູ້ປະກອບສ້າງລະຫັດທີ່ອາດຈະເຂົ້າໄປໃນຫ້ອງສະຫມຸດທີ່ໃຊ້ຮ່ວມກັນເຊິ່ງທັງຫມົດທີ່ບໍ່ແມ່ນ.
ເປົ້າໝາຍສາຂາທົ່ວໂລກທີ່ອ່ອນແອທີ່ມີການເບິ່ງເຫັນໃນຕອນຕົ້ນສາມາດຖືກຫ້າມລ່ວງໜ້າ. ຜົນໄດ້ຮັບ
ລະຫັດແມ່ນໃຫຍ່ກວ່າເລັກນ້ອຍ. ທາງເລືອກນີ້ມີຜົນກະທົບພຽງແຕ່ການຈັດການສາຂາ
ຄໍາແນະນໍາ.
-mbig-obj
ໃນ x86-64 PE/COFF ເປົ້າຫມາຍທາງເລືອກນີ້ບັງຄັບໃຊ້ຮູບແບບໄຟລ໌ວັດຖຸໃຫຍ່, ເຊິ່ງ
ອະນຸຍາດໃຫ້ຫຼາຍກ່ວາ 32768 ພາກສ່ວນ.
-momit-lock-prefix=no
-momit-lock-prefix=yes
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີທີ່ຜູ້ປະກອບຄວນເຂົ້າລະຫັດ lock prefix. ທາງເລືອກນີ້ແມ່ນ
ມີຈຸດປະສົງເປັນການແກ້ໄຂສໍາລັບໂປເຊດເຊີ, ທີ່ລົ້ມເຫລວໃນຄໍານໍາຫນ້າ lock. ທາງເລືອກນີ້ສາມາດ
ໃຊ້ຢ່າງປອດໄພກັບຄອມພິວເຕີແກນດຽວ, ກະທູ້ດຽວເທົ່ານັ້ນ -momit-lock-prefix=yes
ຈະຍົກເລີກການນຳໜ້າລັອກທັງໝົດ. -momit-lock-prefix=no ຈະເຂົ້າລະຫັດຄຳນຳໜ້າລັອກຕາມປົກກະຕິ,
ຊຶ່ງເປັນຄ່າເລີ່ມຕົ້ນ.
-mrelax-relocations=no
-mrelax-relocations=yes
ທາງເລືອກເຫຼົ່ານີ້ຄວບຄຸມວ່າຜູ້ປະກອບຄວນສ້າງການຍົກຍ້າຍທີ່ຜ່ອນຄາຍ,
R_386_GOT32X, ໃນໂໝດ 32-ບິດ, ຫຼື R_X86_64_GOTPCRELX ແລະ R_X86_64_REX_GOTPCRELX, ໃນ
ໂໝດ 64-ບິດ. -mrelax-relocations=yes ຈະສ້າງການຍົກຍ້າຍທີ່ຜ່ອນຄາຍ.
-mrelax-relocations=no ຈະບໍ່ສ້າງການຍົກຍ້າຍທີ່ຜ່ອນຄາຍ. ຄ່າເລີ່ມຕົ້ນສາມາດເປັນ
ຄວບຄຸມໂດຍຕົວເລືອກການຕັ້ງຄ່າ --enable-x86-relax-relocations.
-mevexrcig=rne
-mevexrcig=rd
-mevexrcig=ru
-mevexrcig=rz
ຕົວເລືອກເຫຼົ່ານີ້ຄວບຄຸມວິທີທີ່ຜູ້ປະກອບຄວນເຂົ້າລະຫັດຄໍາແນະນໍາ SAE-ພຽງແຕ່ EVEX.
-mevexrcig=rne ຈະເຂົ້າລະຫັດ RC bits ຂອງຄໍາແນະນໍາ EVEX ດ້ວຍ 00, ເຊິ່ງເປັນຄ່າເລີ່ມຕົ້ນ.
-mevexrcig=rd, -mevexrcig=ru ແລະ -mevexrcig=rz ຈະເຂົ້າລະຫັດຄໍາແນະນໍາ EVEX ສະເພາະ SAE
ດ້ວຍ 01, 10 ແລະ 11 RC bits, ຕາມລໍາດັບ.
-mamd64
-mintel64
ຕົວເລືອກນີ້ລະບຸວ່າຕົວປະກອບຄວນຍອມຮັບພຽງແຕ່ AMD64 ຫຼື Intel64 ISA ໃນ
ໂໝດ 64-ບິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອຍອມຮັບທັງສອງ.
ທາງເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ Intel 80960.
-ACA | -ACA_A | -ACB | -ACC | -ອາຄາ | -AKB | -AKC | -AMC
ລະບຸວ່າຕົວແປຂອງສະຖາປັດຕະຍະກຳ 960 ໃດເປັນເປົ້າໝາຍ.
-b ເພີ່ມລະຫັດເພື່ອເກັບກໍາສະຖິຕິກ່ຽວກັບສາຂາທີ່ເອົາ.
- ບໍ່ຜ່ອນຄາຍອາລົມ
ຢ່າປ່ຽນແປງຄໍາແນະນໍາການປຽບທຽບແລະສາຂາສໍາລັບການຍົກຍ້າຍທີ່ຍາວນານ; ຜິດພາດຖ້າຫາກວ່າ
ຈໍາເປັນ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບຊຸດ Ubicom IP2K.
-mip2022ext
ລະບຸວ່າຄໍາແນະນໍາ IP2022 ຂະຫຍາຍໄດ້ຖືກອະນຸຍາດ.
-mip2022
ຟື້ນຟູພຶດຕິກໍາໃນຕອນຕົ້ນ, ທີ່ຈໍາກັດຄໍາແນະນໍາທີ່ອະນຸຍາດໃຫ້ພຽງແຕ່
IP2022 ພື້ນຖານ.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບ Renesas M32C ແລະ M16C
ຜະລິດຕະພັນ.
-m32c
ປະກອບຄໍາແນະນໍາ M32C.
-m16c
ປະກອບຄໍາແນະນໍາ M16C (ຄ່າເລີ່ມຕົ້ນ).
- ຜ່ອນຄາຍ
ເປີດໃຊ້ການສະຫນັບສະຫນູນສໍາລັບການຜ່ອນຄາຍເວລາເຊື່ອມຕໍ່.
-h-tick-hex
ສະຫນັບສະຫນູນຮູບແບບ H'00 hex ຄົງທີ່ນອກຈາກ 0x00 ແບບ.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບ Renesas M32R (ໃນເມື່ອກ່ອນ
Mitsubishi M32R) ຊຸດ.
--m32rx
ລະບຸວ່າໂປເຊດເຊີໃດໃນຄອບຄົວ M32R ແມ່ນເປົ້າໝາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນປົກກະຕິ
M32R, ແຕ່ທາງເລືອກນີ້ປ່ຽນເປັນ M32RX.
--warn-explicit-parallel-conflicts or --Wp
ຜະລິດຂໍ້ຄວາມເຕືອນເມື່ອໂຄງສ້າງຂະຫນານທີ່ມີຄໍາຖາມຖືກພົບ.
--no-warn-explicit-parallel-conflicts or --Wnp
ຢ່າຜະລິດຂໍ້ຄວາມເຕືອນເມື່ອມີໂຄງສ້າງຂະຫນານທີ່ມີຄໍາຖາມ.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບຊຸດ Motorola 68000.
-l ຫຍໍ້ການອ້າງອີງເຖິງສັນຍາລັກທີ່ບໍ່ໄດ້ກຳນົດ, ເປັນຄຳໜຶ່ງແທນສອງຄຳ.
-m68000 | -m68008 | -m68010 | -m68020 | -m68030
| -m68040 | -m68060 | -m68302 | -m68331 | -m68332
| -m68333 | -m68340 | -mcpu32 | -m5200
ລະບຸວ່າໂຮງງານຜະລິດໃດໃນຄອບຄົວ 68000 ແມ່ນເປົ້າໝາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນປົກກະຕິ
68020, ແຕ່ນີ້ສາມາດປ່ຽນແປງໄດ້ໃນເວລາຕັ້ງຄ່າ.
-m68881 | -m68882 | -mno-68881 | -mno-68882
ເຄື່ອງຈັກເປົ້າຫມາຍເຮັດ (ຫຼືບໍ່ມີ) ມີຕົວປະມວນຜົນຈຸດລອຍ. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນເພື່ອສົມມຸດ coprocessor ສໍາລັບ 68020, 68030, ແລະ cpu32. ເຖິງແມ່ນວ່າພື້ນຖານ 68000 ແມ່ນ
ບໍ່ເຂົ້າກັນໄດ້ກັບ 68881, ການປະສົມປະສານຂອງທັງສອງສາມາດຖືກກໍານົດ, ເນື່ອງຈາກວ່າມັນ
ສາມາດເຮັດໄດ້ emulation ຂອງຄໍາແນະນໍາ coprocessor ກັບໂຮງງານຜະລິດຕົ້ນຕໍ.
-m68851 | -mno-68851
ເຄື່ອງຈັກເປົ້າຫມາຍເຮັດ (ຫຼືບໍ່ມີ) ມີຫນ່ວຍປະມວນຜົນຫນ່ວຍຄວາມຈໍາການຈັດການ. ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອສົມມຸດ MMU ສໍາລັບ 68020 ຂຶ້ນໄປ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂປເຊດເຊີ Altera Nios II.
- ສ່ວນຜ່ອນຄາຍ
ແທນທີ່ສາຂານອກຂອບເຂດທີ່ລະບຸໄວ້ດ້ວຍ PC-relative "jmp" ລຳດັບເມື່ອ
ເປັນໄປໄດ້. ລໍາດັບລະຫັດທີ່ສ້າງຂຶ້ນແມ່ນເຫມາະສົມສໍາລັບການນໍາໃຊ້ໃນຕໍາແຫນ່ງເອກະລາດ
ລະຫັດ, ແຕ່ມີຂໍ້ຈໍາກັດພາກປະຕິບັດກ່ຽວກັບຂອບເຂດສາຂາທີ່ຂະຫຍາຍເນື່ອງຈາກ
ຄວາມຍາວຂອງລໍາດັບ. ຕົວເລືອກນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.
- ຜ່ອນຄາຍທັງຫມົດ
ແທນທີ່ຄໍາແນະນໍາສາຂາທີ່ບໍ່ສາມາດກໍານົດວ່າຈະຢູ່ໃນຂອບເຂດແລະຄໍາແນະນໍາການໂທທັງຫມົດ
ດ້ວຍລໍາດັບ "jmp" ແລະ "callr" (ຕາມລໍາດັບ). ທາງເລືອກນີ້ສ້າງຢ່າງແທ້ຈິງ
ການຍົກຍ້າຍກັບສັນຍາລັກເປົ້າຫມາຍແລະບໍ່ເຫມາະສົມສໍາລັບຕໍາແຫນ່ງເອກະລາດ
ລະຫັດ.
- ບໍ່ຜ່ອນຄາຍອາລົມ
ຫ້າມປ່ຽນສາຂາ ຫຼື ໂທ.
-EB ສ້າງຜົນຜະລິດໃຫຍ່.
- THE ສ້າງຜົນຜະລິດພຽງເລັກນ້ອຍ-endian. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.
- ມີນາ=ຖາປັດຕະຍະ
ຕົວເລືອກນີ້ກໍານົດສະຖາປັດຕະຍະກໍາເປົ້າຫມາຍ. ຜູ້ປະກອບອອກຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ
ຖ້າຫາກວ່າຄວາມພະຍາຍາມທີ່ຈະປະກອບຄໍາສັ່ງທີ່ຈະບໍ່ປະຕິບັດຕາມເປົ້າຫມາຍ
ຖາປັດຕະຍະ. ຊື່ສະຖາປັດຕະຍະກໍາຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "r1", "r2". ໄດ້
ຄ່າເລີ່ມຕົ້ນແມ່ນ "r1".
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂປເຊດເຊີ Meta.
"-mcpu=metac11"
ສ້າງລະຫັດສໍາລັບ Meta 1.1.
"-mcpu=metac12"
ສ້າງລະຫັດສໍາລັບ Meta 1.2.
"-mcpu=metac21"
ສ້າງລະຫັດສໍາລັບ Meta 2.1.
"-mfpu=metac21"
ອະນຸຍາດໃຫ້ລະຫັດໃຊ້ຮາດແວ FPU ຂອງ Meta 2.1.
ເບິ່ງໜ້າຂໍ້ມູນສຳລັບເອກະສານຂອງຕົວເລືອກສະເພາະ MMIX.
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບການ NDS32 processor.
"-O1"
ເພີ່ມປະສິດທິພາບສໍາລັບການປະຕິບັດ.
"-ອສ"
ເພີ່ມປະສິດທິພາບສໍາລັບພື້ນທີ່.
"-EL"
ຜະລິດຜົນຜະລິດຂໍ້ມູນ endian ພຽງເລັກນ້ອຍ.
"-EB"
ຜະລິດຜົນຜະລິດຂໍ້ມູນ endian ພຽງເລັກນ້ອຍ.
"-mpic"
ສ້າງ PIC.
"-mno-fp-as-gp-relax"
ສະກັດກັ້ນການຜ່ອນຄາຍ fp-as-gp ສໍາລັບໄຟລ໌ນີ້.
"-mb2bb-ຜ່ອນຄາຍ"
ການເພີ່ມປະສິດທິພາບສາຂາແບບກັບຄືນ.
"-mno-all- relax"
ສະກັດກັ້ນການຜ່ອນຄາຍທັງຫມົດສໍາລັບໄຟລ໌ນີ້.
"-ມີນາ= "
ປະກອບສໍາລັບຖາປັດຕະຍະ ເຊິ່ງອາດຈະເປັນ v3, v3j, v3m, v3f, v3s, v2, v2j,
v2f, v2s.
"-mbaseline= "
ປະກອບສໍາລັບພື້ນຖານ ເຊິ່ງອາດຈະເປັນ v2, v3, v3m.
"-mfpu-freg=FREG"
ລະບຸການຕັ້ງຄ່າ FPU.
"0 8 SP / 4 DP ລົງທະບຽນ"
"1 16 SP / 8 DP ລົງທະບຽນ"
"2 32 SP / 16 DP ລົງທະບຽນ"
"3 32 SP / 32 DP ລົງທະບຽນ"
"-mabi=ອາບີ"
ລະບຸເວີຊັນ abi ອາດຈະເປັນ v1, v2, v2fp, v2fpp.
"-m[ບໍ່-]mac"
ເປີດ/ປິດ ການຮອງຮັບຄໍາແນະນໍາ Multiply.
"-m[ບໍ່-]div"
ເປີດ/ປິດ ການຮອງຮັບຄຳແນະນຳການແບ່ງ.
"-m[no-]16bit-ext"
ເປີດ/ປິດໃຊ້ງານສ່ວນຂະຫຍາຍ 16-bit
"-m[no-]dx-regs"
ເປີດ/ປິດການລົງທະບຽນ d0/d1
"-m[no-]perf-ext"
ເປີດ/ປິດ ການຂະຫຍາຍປະສິດທິພາບ
"-m[no-]perf2-ext"
ເປີດ/ປິດໃຊ້ງານສ່ວນຂະຫຍາຍປະສິດທິພາບ 2
"-m[ບໍ່-]string-ext"
ເປີດ/ປິດໃຊ້ງານການຂະຫຍາຍ String
"-m[no-]reduced-regs"
ເປີດ/ປິດ ຕົວເລືອກການຕັ້ງຄ່າການລົງທະບຽນທີ່ຫຼຸດລົງ (GPR16).
"-m[no-]audio-isa-ext"
ເປີດ/ປິດການໃຊ້ງານສ່ວນຂະຫຍາຍ AUDIO ISA
"-m[ບໍ່-]fpu-sp-ext"
ເປີດ/ປິດໃຊ້ງານສ່ວນຂະຫຍາຍ FPU SP
"-m[ບໍ່-]fpu-dp-ext"
ເປີດ/ປິດໃຊ້ງານສ່ວນຂະຫຍາຍ FPU DP
"-m[ບໍ່-]fpu-fma"
ເປີດ/ປິດ FPU fused-multiply-add ຄໍາແນະນໍາ
"-mall-ext"
ເປີດການຮອງຮັບສ່ວນຂະຫຍາຍ ແລະຄຳແນະນຳທັງໝົດ
ທາງເລືອກດັ່ງຕໍ່ໄປນີ້ແມ່ນມີຢູ່ໃນເວລາທີ່ໄດ້ຖືກຕັ້ງຄ່າສໍາລັບການປະກອບດ້ວຍ PowerPC.
-a32
ສ້າງ ELF32 ຫຼື XCOFF32.
-a64
ສ້າງ ELF64 ຫຼື XCOFF64.
-K PIC
ຕັ້ງ EF_PPC_RELOCATABLE_LIB ໃນທຸງ ELF.
-mpwrx | -mpwr2
ສ້າງລະຫັດສໍາລັບ POWER/2 (RIOS2).
-mpwr
ສ້າງລະຫັດສໍາລັບ POWER (RIOS1)
-m601
ສ້າງລະຫັດສໍາລັບ PowerPC 601.
-mppc, -mppc32, -m603, -m604
ສ້າງລະຫັດສໍາລັບ PowerPC 603/604.
-m403, -m405
ສ້າງລະຫັດສໍາລັບ PowerPC 403/405.
-m440
ສ້າງລະຫັດສໍາລັບ PowerPC 440. BookE ແລະບາງຄໍາແນະນໍາ 405.
-m464
ສ້າງລະຫັດສໍາລັບ PowerPC 464.
-m476
ສ້າງລະຫັດສໍາລັບ PowerPC 476.
-m7400, -m7410, -m7450, -m7455
ສ້າງລະຫັດສໍາລັບ PowerPC 7400/7410/7450/7455.
-m750cl
ສ້າງລະຫັດສໍາລັບ PowerPC 750CL.
-m821, -m850, -m860
ສ້າງລະຫັດສໍາລັບ PowerPC 821/850/860.
-mppc64, -m620
ສ້າງລະຫັດສໍາລັບ PowerPC 620/625/630.
-ຂ້ອຍ 500, -me500x2
ສ້າງລະຫັດສໍາລັບ Motorola e500 core complex.
-me500mc
ສ້າງລະຫັດສໍາລັບ Freescale e500mc core complex.
-me500mc64
ສ້າງລະຫັດສໍາລັບ Freescale e500mc64 core complex.
-ຂ້ອຍ 5500
ສ້າງລະຫັດສໍາລັບ Freescale e5500 core complex.
-ຂ້ອຍ 6500
ສ້າງລະຫັດສໍາລັບ Freescale e6500 core complex.
-mspe
ສ້າງລະຫັດສໍາລັບຄໍາແນະນໍາ Motorola SPE.
-mtitan
ສ້າງລະຫັດສໍາລັບ AppliedMicro Titan core complex.
-mppc64bridge
ສ້າງລະຫັດສໍາລັບ PowerPC 64, ລວມທັງ Bridge insns.
-mbooke
ສ້າງລະຫັດສໍາລັບ 32-bit BookE.
-ma2
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະ A2.
-ຂ້ອຍ 300
ສ້າງລະຫັດສໍາລັບຄອບຄົວ PowerPC e300.
-maltivec
ສ້າງລະຫັດສໍາລັບໂປເຊດເຊີດ້ວຍຄໍາແນະນໍາ AltiVec.
-mvle
ສ້າງລະຫັດສໍາລັບຄໍາແນະນໍາ Freescale PowerPC VLE.
-mvsx
ສ້າງລະຫັດສໍາລັບໂປເຊດເຊີດ້ວຍຄໍາແນະນໍາຂອງ Vector-Scalar (VSX).
-mhtm
ສ້າງລະຫັດສໍາລັບໂປເຊດເຊີດ້ວຍຄໍາແນະນໍາກ່ຽວກັບ Hardware Transactional Memory.
- ພະລັງງານ 4, -mpwr4
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power4.
- ພະລັງງານ 5, -mpwr5, -mpwr5x
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power5.
- ພະລັງງານ 6, -mpwr6
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power6.
- ພະລັງງານ 7, -mpwr7
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power7.
- ພະລັງງານ 8, -mpwr8
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power8.
- ພະລັງງານ 9, -mpwr9
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Power9.
- mcell
- mcell
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ Cell Broadband Engine.
-mcom
ສ້າງລະຫັດ Power/PowerPC ຄໍາແນະນໍາທົ່ວໄປ.
- ຫຼາຍ
ສ້າງລະຫັດສໍາລັບສະຖາປັດຕະຍະກໍາ (PWR/PWRX/PPC).
-mregnames
ອະນຸຍາດໃຫ້ມີຊື່ສັນຍາລັກສໍາລັບການລົງທະບຽນ.
-mno-regnames
ບໍ່ອະນຸຍາດໃຫ້ມີຊື່ສັນຍາລັກສໍາລັບການລົງທະບຽນ.
- ສາມາດຍ້າຍໄດ້
ສະຫນັບສະຫນູນສໍາລັບ GCC ຂອງ -mrelocatable ທາງເລືອກ.
-mrelocatable-lib
ສະຫນັບສະຫນູນທາງເລືອກ -mrelocatable-lib ຂອງ GCC.
- memb
ຕັ້ງຄ່າບິດ PPC_EMB ໃນທຸງ ELF.
- ພຽງເລັກນ້ອຍ, - ປາຍນ້ອຍ, -ການ
ສ້າງລະຫັດສໍາລັບເຄື່ອງ endian ເລັກນ້ອຍ.
- ໃຫຍ່, -mbig-endian, -ເປັນ
ສ້າງລະຫັດສໍາລັບເຄື່ອງ endian ໃຫຍ່.
- msolaris
ສ້າງລະຫັດສໍາລັບ Solaris.
-mno-solaris
ຢ່າສ້າງລະຫັດສໍາລັບ Solaris.
-nops=ນັບ
ຖ້າຄໍາສັ່ງການຈັດລໍາດັບໃສ່ຫຼາຍກວ່າ ນັບ nops, ເອົາສາຂາໃນຕອນເລີ່ມຕົ້ນ
ເພື່ອຂ້າມການປະຕິບັດຂອງ nops.
ເບິ່ງໜ້າຂໍ້ມູນສຳລັບເອກະສານຂອງຕົວເລືອກສະເພາະ RX.
ທາງເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບຄອບຄົວໂປເຊດເຊີ s390.
-m31
-m64
ເລືອກຂະຫນາດຄໍາ, ບໍ່ວ່າຈະເປັນ 31/32 bits ຫຼື 64 bits.
-ເມຊາ
-mzarch
ເລືອກຮູບແບບສະຖາປັດຕະຍະກໍາ, ບໍ່ວ່າຈະເປັນ Enterprise System Architecture (esa) ຫຼື the
z/ຮູບແບບສະຖາປັດຕະຍະກໍາ (zarch).
- ມີນາ=processor
ລະບຸວ່າຕົວແປຂອງໂປເຊດເຊີ s390 ໃດເປັນເປົ້າໝາຍ, g6, g6, z900, z990, z9-109, z9-ec,
z10, z196, zEC12, ຫຼື z13.
-mregnames
-mno-regnames
ອະນຸຍາດໃຫ້ຫຼືບໍ່ອະນຸຍາດໃຫ້ຊື່ສັນຍາລັກສໍາລັບການຈົດທະບຽນ.
-mwarn-areg-ສູນ
ເຕືອນທຸກຄັ້ງທີ່ operand ສໍາລັບ base ຫຼື index register ໄດ້ຖືກລະບຸໄວ້ແຕ່
ປະເມີນເປັນສູນ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ TMS320C6000.
- ມີນາ=ໂຄ້ງ
ເປີດໃຊ້ (ເທົ່ານັ້ນ) ຄໍາແນະນໍາຈາກສະຖາປັດຕະຍະກໍາ ໂຄ້ງ. ໂດຍຄ່າເລີ່ມຕົ້ນ, ຄໍາແນະນໍາທັງຫມົດແມ່ນ
ອະນຸຍາດ.
ຄຸນຄ່າຕໍ່ໄປນີ້ຂອງ ໂຄ້ງ ໄດ້ຮັບການຍອມຮັບ: "c62x", "c64x", "c64x+", "c67x", "c67x+",
"c674x".
-mdsbt
-mno-dsbt
ໄດ້ -mdsbt ທາງເລືອກເຮັດໃຫ້ຕົວປະກອບສ້າງ "Tag_ABI_DSBT" ຄຸນລັກສະນະທີ່ມີ a
ຄ່າຂອງ 1, ສະແດງໃຫ້ເຫັນວ່າລະຫັດກໍາລັງໃຊ້ DSBT addressing. ໄດ້ -mno-dsbt ທາງເລືອກ,
default, ເຮັດໃຫ້ tag ມີມູນຄ່າ 0, ສະແດງໃຫ້ເຫັນວ່າລະຫັດບໍ່ໄດ້
ໃຊ້ DSBT ທີ່ຢູ່. ຕົວເຊື່ອມຕໍ່ຈະສົ່ງສັນຍານເຕືອນຖ້າຫາກວ່າວັດຖຸຂອງປະເພດທີ່ແຕກຕ່າງກັນ
(DSBT ແລະ non-DSBT) ແມ່ນເຊື່ອມຕໍ່ກັນ.
-mpid=ບໍ່
-mpid=ໃກ້
-mpid=ໄກ
ໄດ້ -mpid= ທາງເລືອກເຮັດໃຫ້ຕົວປະກອບສ້າງ "Tag_ABI_PID" ຄຸນລັກສະນະທີ່ມີ a
ຄ່າທີ່ຊີ້ບອກຮູບແບບຂອງຂໍ້ມູນທີ່ໃຊ້ໂດຍລະຫັດ. -mpid=ບໍ່, ຄ່າເລີ່ມຕົ້ນ,
ສະແດງໃຫ້ເຫັນການແກ້ໄຂຂໍ້ມູນທີ່ຂຶ້ນກັບຕໍາແຫນ່ງ, -mpid=ໃກ້ ສະແດງໃຫ້ເຫັນຕໍາແຫນ່ງ -
ທີ່ຢູ່ເອກະລາດທີ່ມີການເຂົ້າເຖິງ GOT ໂດຍໃຊ້ທີ່ຢູ່ໃກ້ຄຽງ DP, ແລະ -mpid=ໄກ
ຊີ້ບອກທີ່ຢູ່ຕຳແໜ່ງທີ່ເປັນເອກະລາດກັບການເຂົ້າເຖິງ GOT ໂດຍໃຊ້ທີ່ຢູ່ໄກ DP.
ຕົວເຊື່ອມຕໍ່ຈະສົ່ງສັນຍານເຕືອນຖ້າຫາກວ່າວັດຖຸທີ່ສ້າງຂຶ້ນດ້ວຍການຕັ້ງຄ່າທີ່ແຕກຕ່າງກັນຂອງທາງເລືອກນີ້
ແມ່ນເຊື່ອມຕໍ່ກັນ.
-mpic
-mno-pic
ໄດ້ -mpic ທາງເລືອກເຮັດໃຫ້ຕົວປະກອບສ້າງຄຸນລັກສະນະ "Tag_ABI_PIC" ດ້ວຍ a
ຄ່າຂອງ 1, ສະແດງໃຫ້ເຫັນວ່າລະຫັດແມ່ນໃຊ້ການລະບຸຕໍາແຫນ່ງລະຫັດເອກະລາດ,
ຕົວເລືອກ "-mno-pic", ເລີ່ມຕົ້ນ, ເຮັດໃຫ້ແທັກມີຄ່າ 0, ຊີ້ບອກ.
ການແກ້ໄຂລະຫັດທີ່ຂຶ້ນກັບຕໍາແຫນ່ງ. ຕົວເຊື່ອມຕໍ່ຈະປ່ອຍສັນຍານເຕືອນຖ້າຫາກວ່າວັດຖຸຂອງ
ປະເພດທີ່ແຕກຕ່າງກັນ (ຕໍາແຫນ່ງຂຶ້ນກັບແລະຕໍາແຫນ່ງເອກະລາດ) ແມ່ນເຊື່ອມຕໍ່ກັນ.
-mbig-endian
-mlittle-endian
ສ້າງລະຫັດສໍາລັບ endianness ທີ່ກໍານົດໄວ້. ຄ່າເລີ່ມຕົ້ນແມ່ນໜ້ອຍທີ່ສຸດ.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສຳລັບໂປເຊດເຊີ TILE-Gx.
-m32 | -m64
ເລືອກຂະຫນາດຄໍາ, ບໍ່ວ່າຈະເປັນ 32 bits ຫຼື 64 bits.
-EB | - THE
ເລືອກ endianness, ບໍ່ວ່າຈະ big-endian (-EB) ຫຼື little-endian (-EL).
ທາງເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ Visium.
-mtune=ໂຄ້ງ
ຕົວເລືອກນີ້ກໍານົດສະຖາປັດຕະຍະກໍາເປົ້າຫມາຍ. ຖ້າມີຄວາມພະຍາຍາມທີ່ຈະລວບລວມ
ຄໍາແນະນໍາທີ່ຈະບໍ່ປະຕິບັດໃນສະຖາປັດຕະຍະກໍາເປົ້າຫມາຍ, ຜູ້ປະກອບຈະອອກ
ຂໍ້ຄວາມຜິດພາດ.
ຊື່ຕໍ່ໄປນີ້ຖືກຮັບຮູ້: "mcm24" "mcm" "gr5" "gr6"
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂປເຊດເຊີ Xtensa.
--text-section-literals | --no-text-section-literals
ຄວບຄຸມການປິ່ນປົວຂອງສະນຸກເກີທີ່ຮູ້ຫນັງສື. ຄ່າເລີ່ມຕົ້ນແມ່ນ --no-text-section-literals,
ເຊິ່ງວາງຕົວໜັງສືຢູ່ໃນພາກສ່ວນຕ່າງຫາກໃນໄຟລ໌ຜົນຜະລິດ. ນີ້ອະນຸຍາດໃຫ້
ສະນຸກເກີຕົວຫນັງສືທີ່ຈະວາງໄວ້ໃນ RAM / ROM ຂໍ້ມູນ. ກັບ --text-section-literals, ການ
ຕົວໜັງສືຖືກຕັດກັນຢູ່ໃນພາກສ່ວນຂໍ້ຄວາມເພື່ອໃຫ້ພວກມັນໃກ້ຊິດກັນ
ເປັນໄປໄດ້ໃນການອ້າງອີງຂອງເຂົາເຈົ້າ. ນີ້ອາດຈະມີຄວາມຈໍາເປັນສໍາລັບໄຟລ໌ປະກອບຂະຫນາດໃຫຍ່, ບ່ອນທີ່
ຖ້າບໍ່ດັ່ງນັ້ນ, ຕົວຫນັງສືຈະຢູ່ນອກຂອບເຂດຂອງຄໍາແນະນໍາ "L32R" ໃນຂໍ້ຄວາມ
ພາກ. ຕົວໜັງສືຖືກຈັດເປັນກຸ່ມຕາມຄຳສັ່ງ ".literal_position" ຫຼື
ກ່ອນໜ້າຄຳສັ່ງ "ENTRY". ທາງເລືອກເຫຼົ່ານີ້ມີຜົນກະທົບພຽງແຕ່ຕົວຫນັງສືອ້າງອີງຜ່ານ PC-
ຄໍາແນະນໍາທີ່ກ່ຽວຂ້ອງ "L32R"; ຕົວຫນັງສືສໍາລັບຮູບແບບຢ່າງແທ້ຈິງ "L32R" ຄໍາແນະນໍາແມ່ນ
ຈັດການແຍກຕ່າງຫາກ.
--auto-litpools | --no-auto-litpools
ຄວບຄຸມການປິ່ນປົວຂອງສະນຸກເກີທີ່ຮູ້ຫນັງສື. ຄ່າເລີ່ມຕົ້ນແມ່ນ --no-auto-litpools, ເຊິ່ງໃນ
ການບໍ່ມີ --text-section-literals ວາງຕົວຫນັງສືຢູ່ໃນພາກແຍກຕ່າງຫາກໃນ
ໄຟລ໌ຜົນຜະລິດ. ອັນນີ້ອະນຸຍາດໃຫ້ຈັດວາງຕົວໜັງສືຢູ່ໃນ RAM/ROM ຂໍ້ມູນ. ກັບ
--auto-litpools, ຕົວຫນັງສືແມ່ນ interspersed ໃນພາກສ່ວນຂໍ້ຄວາມໃນຄໍາສັ່ງທີ່ຈະຮັກສາ
ເຂົາເຈົ້າໃຫ້ໃກ້ຊິດເທົ່າທີ່ເປັນໄປໄດ້ກັບການອ້າງອີງຂອງເຂົາເຈົ້າ, ຊັດເຈນ ".literal_position" ຄໍາສັ່ງ
ບໍ່ຈໍາເປັນ. ນີ້ອາດຈະເປັນສິ່ງຈໍາເປັນສໍາລັບຫນ້າທີ່ຂະຫນາດໃຫຍ່ຫຼາຍ, ບ່ອນທີ່ດຽວ
ສະນຸກເກີຕົວໜັງສືໃນຕອນຕົ້ນຂອງຟັງຊັນອາດຈະບໍ່ສາມາດເຂົ້າເຖິງໄດ້ໂດຍ "L32R"
ຄໍາແນະນໍາໃນຕອນທ້າຍ. ທາງເລືອກເຫຼົ່ານີ້ມີຜົນກະທົບພຽງແຕ່ຕົວຫນັງສືອ້າງອີງຜ່ານ PC-
ຄໍາແນະນໍາທີ່ກ່ຽວຂ້ອງ "L32R"; ຕົວຫນັງສືສໍາລັບຮູບແບບຢ່າງແທ້ຈິງ "L32R" ຄໍາແນະນໍາແມ່ນ
ຈັດການແຍກຕ່າງຫາກ. ເມື່ອໃຊ້ຮ່ວມກັນກັບ --text-section-literals, --auto-litpools
ມີຄວາມສຳຄັນກວ່າ.
--absolute-literals | --no-absolute-literals
ຊີ້ບອກຜູ້ປະກອບວ່າຄໍາແນະນໍາ "L32R" ໃຊ້ຢ່າງແທ້ຈິງຫຼື PC-relative
ທີ່ຢູ່. ຖ້າໂປເຊດເຊີປະກອບມີທາງເລືອກທີ່ຢູ່ຢ່າງແທ້ຈິງ, ຄ່າເລີ່ມຕົ້ນແມ່ນ
ເພື່ອໃຊ້ການຍົກຍ້າຍ "L32R" ຢ່າງແທ້ຈິງ. ຖ້າບໍ່ດັ່ງນັ້ນ, ມີພຽງແຕ່ PC-relative "L32R" ເທົ່ານັ້ນ.
ການຍົກຍ້າຍສາມາດຖືກນໍາໃຊ້.
--ວາງເປົ້າໝາຍ | --no-target-align
ເປີດໃຊ້ຫຼືປິດການຈັດຕໍາແຫນ່ງອັດຕະໂນມັດເພື່ອຫຼຸດຜ່ອນການລົງໂທດສາຂາໃນບາງຄ່າໃຊ້ຈ່າຍໃນ
ຂະຫນາດລະຫັດ. ການເພີ່ມປະສິດທິພາບນີ້ຖືກເປີດໃຊ້ໂດຍຄ່າເລີ່ມຕົ້ນ. ໃຫ້ສັງເກດວ່າຜູ້ປະກອບຈະ
ສະເຫມີຈັດຄໍາແນະນໍາເຊັ່ນ "LOOP" ທີ່ມີຄວາມຕ້ອງການການຈັດຕໍາແຫນ່ງຄົງທີ່.
-- ການໂທຍາວ | -- no-longcalls
ເປີດຫຼືປິດການຫັນປ່ຽນຄໍາແນະນໍາການໂທເພື່ອອະນຸຍາດໃຫ້ໂທຫາໃນທົ່ວຫຼາຍ
ຊ່ວງທີ່ຢູ່. ທາງເລືອກນີ້ຄວນຈະຖືກນໍາໃຊ້ໃນເວລາທີ່ເປົ້າຫມາຍການໂທສາມາດເປັນໄປໄດ້
ຢູ່ນອກຂອບເຂດ. ມັນອາດຈະຫຼຸດລົງທັງຂະຫນາດລະຫັດແລະການປະຕິບັດ, ແຕ່ຕົວເຊື່ອມຕໍ່ສາມາດ
ໂດຍທົ່ວໄປແລ້ວການປັບແຕ່ງຢູ່ຫ່າງ overhead ທີ່ບໍ່ຈໍາເປັນໃນເວລາທີ່ການໂທໄດ້ສິ້ນສຸດລົງຢູ່ໃນລະດັບ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ -- no-longcalls.
-- ຫັນປ່ຽນ | --no-transform
ເປີດໃຊ້ຫຼືປິດການປ່ຽນຕົວປະກອບທັງຫມົດຂອງຄໍາແນະນໍາ Xtensa, ລວມທັງທັງສອງ
ການຜ່ອນຄາຍແລະການເພີ່ມປະສິດທິພາບ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -- ຫັນປ່ຽນ; --no-transform ຄວນເທົ່ານັ້ນ
ຖືກນໍາໃຊ້ໃນກໍລະນີທີ່ຫາຍາກໃນເວລາທີ່ຄໍາແນະນໍາຈະຕ້ອງແນ່ນອນຕາມທີ່ລະບຸໄວ້ໃນ
ແຫຼ່ງປະກອບ. ການນໍາໃຊ້ --no-transform ເຮັດໃຫ້ເກີດອອກນອກໄລຍະຄຳສັ່ງຄຳສັ່ງເປັນ
ຄວາມຜິດພາດ.
--ປ່ຽນຊື່ພາກສ່ວນ ຊື່ເກົ່າ=ຊື່ໃໝ່
ປ່ຽນຊື່ ຊື່ເກົ່າ ສ່ວນທີ່ ຊື່ໃໝ່. ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ຫຼາຍຄັ້ງເພື່ອ
ປ່ຽນຊື່ຫຼາຍພາກສ່ວນ.
-- trampolines | -- ບໍ່ມີ trampolines
ເປີດໃຊ້ ຫຼືປິດການຫັນປ່ຽນຄຳແນະນຳການໂດດ ເພື່ອໃຫ້ສາມາດໂດດຂ້າມໄດ້ຫຼາຍກວ່າ
ຊ່ວງທີ່ຢູ່. ທາງເລືອກນີ້ຄວນຈະຖືກນໍາໃຊ້ໃນເວລາທີ່ເປົ້າຫມາຍໂດດສາມາດເປັນໄປໄດ້
ຢູ່ນອກຂອບເຂດ. ໃນເມື່ອບໍ່ມີການກະໂດດດັ່ງກ່າວທາງເລືອກນີ້ບໍ່ມີຜົນຕໍ່ຂະຫນາດລະຫັດຫຼື
ການປະຕິບັດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ -- trampolines.
ຕົວເລືອກຕໍ່ໄປນີ້ສາມາດໃຊ້ໄດ້ເມື່ອຖືກຕັ້ງຄ່າສໍາລັບໂຮງງານຜະລິດຄອບຄົວ Z80.
-z80
ປະກອບສໍາລັບໂຮງງານຜະລິດ Z80.
-r800
ປະກອບສໍາລັບໂຮງງານຜະລິດ R800.
-ignore-undocumented-ຄໍາແນະນໍາ
- ວູດ
ປະກອບຄໍາແນະນໍາ Z80 ທີ່ບໍ່ມີເອກະສານທີ່ຍັງເຮັດວຽກຢູ່ໃນ R800 ໂດຍບໍ່ມີການເຕືອນ.
-ignore-unportable-ຄໍາແນະນໍາ
-Wnup
ປະກອບຄໍາແນະນໍາ Z80 ທີ່ບໍ່ມີເອກະສານທັງຫມົດໂດຍບໍ່ມີການເຕືອນ.
-warn-undocumented-ຄໍາແນະນໍາ
- ວູດ
ອອກຄໍາເຕືອນສໍາລັບຄໍາແນະນໍາ Z80 ທີ່ບໍ່ມີເອກະສານທີ່ຍັງເຮັດວຽກຢູ່ໃນ R800.
-warn-unportable-ຄໍາແນະນໍາ
- ວຸບ
ອອກຄໍາເຕືອນສໍາລັບຄໍາແນະນໍາ Z80 ທີ່ບໍ່ມີເອກະສານທີ່ບໍ່ເຮັດວຽກຢູ່ໃນ R800.
-forbid-undocumented-ຄໍາແນະນໍາ
- ຟຸດ
ປະຕິບັດທຸກຄໍາແນະນໍາທີ່ບໍ່ມີເອກະສານເປັນຄວາມຜິດພາດ.
-forbid-unportable-ຄໍາແນະນໍາ
- ຟຸ
ປະຕິບັດຄໍາແນະນໍາ Z80 ທີ່ບໍ່ມີເອກະສານທີ່ບໍ່ເຮັດວຽກຢູ່ໃນ R800 ເປັນຄວາມຜິດພາດ.
ໃຊ້ alpha-linux-gnu-ເປັນອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net