Ini adalah perintah aarch64-linux-gnu-as yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, Windows online emulator atau MAC OS online emulator
PROGRAM:
NAMA
AS - perakit GNU portabel.
RINGKASAN
sebagai [-a[cdghlns] [=fillet]] [--bergantian] [-D]
[--kompres-debug-bagian] [--nocompress-debug-bagian]
[--debug-awalan-peta tua=yang baru]
[--defsym sim=val] [-f] [-g] [--gstab]
[--gstab+] [--kurcaci-2] [--gdwarf-bagian]
[--membantu] [-I dir] [-J]
[-K] [-L] [--daftar-lhs-lebar=NUM]
[--daftar-lhs-lebar2=NUM] [--daftar-lebar-rhs=NUM]
[--daftar-lanjutan-baris=NUM] [--keep-local]
[-o file objek] [-R]
[--ukuran hash=NUM] [--mengurangi-memori-overhead]
[--statistik]
[-v] [-versi] [--Versi: kapan]
[-W] [--memperingatkan] [--peringatan-fatal] [-w] [-x]
[-Z] [@FILE]
[--nama sekte-subst] [--size-check=[kesalahan|peringatan]]
[--target-bantuan] [opsi target]
[--|arsip ...]
target AAArch64 pilihan:
[-EB|-ITU]
[-mabi=ABI]
target alfa pilihan:
[-mcpu]
[-mdebug | -tidak-mdebug]
[-mengganti | -tidak ada tempat]
[-bersantai] [-g] [-Gukuran]
[-F] [-32tambahan]
target ARC pilihan:
[-mcpu=cpu]
[-mA6|-mARC600|-mARC601|-mA7|-mARC700|-saya|-mhs]
[-mcode-kepadatan]
[-EB|-ITU]
target ARM pilihan:
[-mcpu=prosesor[+perpanjangan...]]
[-berbaris=arsitektur[+perpanjangan...]]
[-mfpu=format titik-mengambang]
[-mfloat-abi=abi]
[-meabi=ver]
[-jempol]
[-EB|-ITU]
[-mapcs-32|-mapcs-26|-mapcs-mengapung|
-mapcs-masuk kembali]
[-ibu jari-interwork] [-k]
target Sirip hitam pilihan:
[-mcpu=prosesor[-visi]]
[-mfdpik]
[-mno-fdpic]
[-mnopik]
target CRIS pilihan:
[--menggarisbawahi | --tanpa garis bawah]
[--gambar] [-N]
[--emulasi=kriself | --emulasi=krisis]
[--maret=v0_v10 | --Maret=v10 | --Maret=v32 | --march=umum_v10_v32]
target D10V pilihan:
[-O]
target D30V pilihan:
[-O|-n|-N]
target EPIPHANI pilihan:
[-mepiphany|-mepiphany16]
target H8 / 300 pilihan:
[-h-tik-hex]
target i386 pilihan:
[---32|--x32|---64] [-n]
[-berbaris=CPU[+EXTENSION...]] [-mtune=CPU]
target i960 pilihan:
[-ACA|-ACA_A|-ACB|-ACC|-AKA|-AKB|
-AKC|-AMC]
[-b] [-tidak-santai]
target IA-64 pilihan:
[-mkonstan-gp|-mauto-gambar]
[-milp32|-milp64|-mlp64|-Mp64]
[-mle|MBE]
[-mtune=itanium1|-mtune=itanium2]
[-munwind-check=peringatan|-munwind-check=kesalahan]
[-mhint.b=oke|-mhint.b=peringatan|-mhint.b=kesalahan]
[-x|-xeksplisit] [-xotomatis] [-xdebug]
target IP2K pilihan:
[-mip2022|-mip2022ekst]
target M32C pilihan:
[-m32c|-m16c] [-santai] [-h-tik-hex]
target M32R pilihan:
[--m32rx|--[tidak-]peringatkan-eksplisit-paralel-konflik|
--W[n]p]
target M680X0 pilihan:
[-l] [-m68000|-m68010|-m68020|...]
target M68HC11 pilihan:
[-m68hc11|-m68hc12|-m68hcs12|-mm9s12x|-mm9s12xg]
[-short|-mlong]
[-mshort-ganda|-mlong-ganda]
[--force-panjang-cabang] [--cabang-pendek]
[--mode-ketat-langsung] [--print-insn-sintaks]
[--cetak-opcode] [--menghasilkan-contoh]
target LEBIH pilihan:
[-jsri2bsr] [-sifilter] [-bersantai]
[-mcpu=[210|340]]
target meta pilihan:
[-mcpu=cpu] [-mfpu=cpu] [-mdsp=cpu] target MIKROBLASI pilihan:
target MIPS pilihan:
[-nocpp] [-ITU] [-EB] [-O[optimasi tingkat]]
[-g[men-debug tingkat]] [-G num] [-KPIC] [-panggilan_berbagi]
[-tidak_dibagikan] [-xgot [-mvxworks-gambar]
[-mabi=ABI] [-32] [-n32] [-64] [-mfp32] [-mgp32]
[-mfp64] [-mgp64] [-mfpxx]
[-mod-spreg] [-mno-ganjil-spreg]
[-berbaris=CPU] [-mtune=CPU] [-mips1] [-mips2]
[-mips3] [-mips4] [-mips5] [-mips32] [-mips32r2]
[-mips32r3] [-mips32r5] [-mips32r6] [-mips64] [-mips64r2]
[-mips64r3] [-mips64r5] [-mips64r6]
[-konstruksi-mengambang] [-no-construct-float]
[-mnan=encoding]
[-perangkap] [-tidak ada istirahat] [-istirahat] [-tanpa jebakan]
[-mips16] [-tidak-mips16]
[-mmicromips] [-mno-mikromips]
[-msmartmips] [-mno-smartmips]
[-mips3d] [-tidak-mips3d]
[-mdmx] [-tidak-mdmx]
[-mdsp] [-Mno-dsp]
[-mdspr2] [-mno-dspr2]
[-mmsa] [-mno-msa]
[-mxpa] [-mno-xpa]
[-mmt] [-mno-mt]
[-mmcu] [-mno-mcu]
[-menit32] [-mno-insn32]
[-mfix7000] [-mno-perbaiki7000]
[-mfix-rm7000] [-mno-perbaiki-rm7000]
[-mfix-vr4120] [-mno-perbaiki-vr4120]
[-mfix-vr4130] [-mno-perbaiki-vr4130]
[-mdebug] [-tidak-mdebug]
[-mpdr] [-mno-pdr]
target MMIX pilihan:
[--nama-daftar-khusus-tetap] [--globalisasi-simbol]
[--gnu-sintaks] [--santai] [--tanpa-simbol-yang telah ditentukan sebelumnya]
[--tidak perluas] [--tidak-menggabungkan-greg] [-x]
[--linker-alokasi-gregs]
target Nios II pilihan:
[-santai-semua] [-relaks-bagian] [-tidak-santai]
[-EB] [-ITU]
target NDS32 pilihan:
[-ITU] [-EB] [-O] [-Os] [-mcpu=cpu]
[-misa=isa] [-mabi=abi] [-mall-ext]
[-m[tidak-]16-bit] [-m[tidak-]perf-ext] [-m[tidak-]perf2-ext]
[-m[tidak-]string-ext] [-m[tidak-]dsp-ext] [-m[tidak-]mac] [-m[tidak-]div]
[-m[tidak-]audio-isa-ext] [-m[tidak-]fpu-sp-ext] [-m[tidak-]fpu-dp-ext]
[-m[tidak-]fpu-fma] [-mfpu-freg=GRATIS] [-mreduced-reg]
[-mfull-reg] [-m[tidak-]dx-regs] [-mpik] [-mno-santai]
[-mb2bb]
target PDP11 pilihan:
[-mpik|-mno-gambar] [-mall] [-mno-ekstensi]
[-mperpanjangan|-tahu-perpanjangan]
[-mcpu] [-mmesin]
target picoJawa pilihan:
[-mb|-saya]
target PowerPC pilihan:
[.A32|.A64]
[-mpwrx|-mpwr2|-mpwr|-m601|-mppc|-mppc32|-m603|-m604|-m403|-m405|
-m440|-m464|-m476|-m7400|-m7410|-m7450|-m7455|-m750cl|-mppc64|
-m620|-saya500|-e500x2|-saya500mc|-me500mc64|-saya5500|-saya6500|-mppc64jembatan|
-buku|-kekuatan4|-mpwr4|-kekuatan5|-mpwr5|-mpwr5x|-kekuatan6|-mpwr6|
-kekuatan7|-mpwr7|-kekuatan8|-mpwr8|-kekuatan9|-mpwr9-ma2|
-mcell|-msp|-mtitan|-saya300|-mcom]
[-banyak] [-maltivec|-mvsx|-mhtm|-mvle]
[-nama-nama|-mno-ganti nama]
[-mrelokasi|-mrelokasi-lib|-K PIC] [-anggota]
[-sedikit|-mlittle-endian|-NS|-besar|-mbig-endian|-menjadi]
[-msolaris|-mno-solar]
[-tidak=menghitung]
target RL78 pilihan:
[-mg10]
[-m32bit-ganda|-m64bit-ganda]
target RX pilihan:
[-mlittle-endian|-mbig-endian]
[-m32bit-ganda|-m64bit-ganda]
[-muse-konvensional-nama-bagian]
[-msmall-data-batas]
[-mpid]
[-santai]
[-mint-daftar=jumlah]
[-mgcc-abi|-mrx-abi]
target s390 pilihan:
[-m31|-m64] [-mesa|-mzarch] [-berbaris=CPU]
[-nama-nama|-mno-ganti nama]
[-mwarn-areg-nol]
target SCORE pilihan:
[-EB][-ITU][-PERBAIKI][-NPERINGATAN]
[-SKOR5][-SKOR5U][-SKOR7][-SKOR3]
[-maret=skor7][-maret=skor3]
[-GUNAKAN_R1][-KPIC][-O0][-G num][-V]
target SPARC pilihan:
[-Av6|-Av7|-Av8|-Asparklet|-Asparklit
-Av8plus|-Av8plusa|-Av9|-Av9a]
[-xarch=v8plus|-xarch=v8plusa] [-menabrak]
[-32|-64]
target TIC54X pilihan:
[-mcpu=54[123589]|-mcpu=54[56]lp] [-mfar-mode|-mf]
[-kesalahan-ke-file |-saya ]
target TIC6X pilihan:
[-maret=lengkungan] [-mbig-endian|-mlittle-endian]
[-mdsbt|-mno-dsbt] [-mpid=tidak|-mpid=dekat|-mpid=jauh]
[-mpik|-mno-gambar]
target TILE-Gx pilihan:
[-m32|-m64][-EB][-ITU]
target Visium pilihan:
[-mtune=lengkungan]
target Xtensa pilihan:
[--[no-]teks-bagian-literal] [--[tidak-]litpool otomatis]
[--[tidak-]absolut-literal]
[--[tidak-]penyelarasan target] [--[tidak-]panggilan panjang]
[--[tidak-]berubah]
[--ganti nama-bagian nama lama=nama baru]
[--[tidak-]trampolin]
target Z80 pilihan:
[-z80] [-r800]
[ -abaikan-petunjuk-tidak berdokumen] [-Wnud]
[ -abaikan-unportable-instruksi] [-Kemenangan]
[ -peringatan-tidak berdokumen-petunjuk] [-wud]
[ -peringatan-tidak portabel-petunjuk] [-Wup]
[ -melarang-tidak berdokumen-instruksi] [-Fud]
[ -melarang-tidak-portabel-petunjuk] [-Fup]
DESKRIPSI
GNU as benar-benar keluarga assembler. Jika Anda menggunakan (atau pernah menggunakan) assembler GNU aktif
satu arsitektur, Anda harus menemukan lingkungan yang cukup mirip saat Anda menggunakannya di arsitektur lain
Arsitektur. Setiap versi memiliki banyak kesamaan dengan yang lain, termasuk file objek
format, sebagian besar arahan assembler (sering disebut operasi semu) dan sintaks assembler.
as terutama dimaksudkan untuk merakit output dari kompiler GNU C "gcc" untuk digunakan oleh
penghubung "ld". Namun demikian, kami telah mencoba untuk membuat as merakit dengan benar segala sesuatu yang
perakit lain untuk mesin yang sama akan berkumpul. Pengecualian apa pun didokumentasikan
secara eksplisit. Ini tidak berarti as selalu menggunakan sintaks yang sama dengan assembler lain untuk
arsitektur yang sama; misalnya, kami mengetahui beberapa versi perakitan 680x0 yang tidak kompatibel
sintaksis bahasa.
Setiap kali Anda berlari as itu merakit tepat satu program sumber. Program sumber dibuat
dari satu atau lebih file. (Input standar juga merupakan file.)
Anda memberikan as baris perintah yang memiliki nol atau lebih nama file input. File masukan adalah
baca (dari nama file kiri ke kanan). Argumen baris perintah (dalam posisi apa pun) yang memiliki
tidak ada arti khusus yang dianggap sebagai nama file input.
Jika Anda memberi as tidak ada nama file yang mencoba membaca satu file input dari as standard
input, yang biasanya merupakan terminal Anda. Anda mungkin harus mengetik ctl-D untuk memberi tahu as tidak ada
lebih banyak program untuk dirakit.
penggunaan -- jika Anda perlu secara eksplisit memberi nama file input standar di baris perintah Anda.
Jika sumbernya kosong, as menghasilkan file objek kecil yang kosong.
as mungkin menulis peringatan dan pesan kesalahan ke file kesalahan standar (biasanya
terminal). Ini seharusnya tidak terjadi ketika kompiler berjalan as secara otomatis. Peringatan
laporkan asumsi yang dibuat sehingga as bisa terus merakit program yang cacat; laporan kesalahan
masalah serius yang menghentikan perakitan.
Jika Anda memohon as melalui kompiler GNU C, Anda dapat menggunakan -Wa pilihan untuk lulus
argumen melalui assembler. Argumen assembler harus dipisahkan dari masing-masing
lainnya (dan -Wa) dengan koma. Sebagai contoh:
gcc -c -g -O -Wa,-alh,-L file.c
Ini melewati dua opsi ke assembler: -alh (pancarkan daftar ke output standar dengan
sumber tingkat tinggi dan perakitan) dan -L (pertahankan simbol lokal di tabel simbol).
Biasanya Anda tidak perlu menggunakan ini -Wa mekanisme, karena banyak baris perintah kompiler
opsi secara otomatis diteruskan ke assembler oleh kompiler. (Anda dapat menghubungi GNU
driver kompiler dengan -v opsi untuk melihat dengan tepat opsi apa yang diberikannya ke masing-masing
kompilasi pass, termasuk assembler.)
PILIHAN
@fillet
Baca opsi baris perintah dari fillet. Opsi yang dibaca disisipkan sebagai pengganti
asli @fillet pilihan. Jika fillet tidak ada, atau tidak dapat dibaca, maka opsi
akan diperlakukan secara harfiah, dan tidak dihapus.
Opsi dalam fillet dipisahkan oleh spasi. Karakter spasi putih dapat disertakan
dalam sebuah opsi dengan mengelilingi seluruh opsi dalam tanda kutip tunggal atau ganda. Setiap
karakter (termasuk garis miring terbalik) dapat dimasukkan dengan mengawali karakter menjadi
disertakan dengan garis miring terbalik. NS fillet mungkin sendiri mengandung tambahan @fillet pilihan; setiap
opsi tersebut akan diproses secara rekursif.
-a[cdghlmns]
Aktifkan cantuman, dengan berbagai cara:
- dan hilangkan syarat palsu
-iklan abaikan arahan debug
-ag sertakan informasi umum, seperti versi dan opsi yang diteruskan
-ah sertakan sumber tingkat tinggi
-Al termasuk perakitan
-saya termasuk ekspansi makro
-sebuah abaikan pemrosesan formulir
-sebagai termasuk simbol
= file
atur nama file daftar
Anda dapat menggabungkan opsi ini; misalnya gunakan -aln untuk daftar perakitan tanpa
pemrosesan formulir. NS = file opsi, jika digunakan, harus yang terakhir. Dengan sendirinya, -a
default ke -ahl.
--bergantian
Mulailah dalam mode makro alternatif.
--kompres-debug-bagian
Kompres bagian debug DWARF menggunakan zlib dengan SHF_COMPRESSED dari ELF ABI. NS
file objek yang dihasilkan mungkin tidak kompatibel dengan tautan dan file objek yang lebih lama
keperluan. Perhatikan jika kompresi akan membuat bagian tertentu lebih besar maka tidak
dikompresi.
--compress-debug-sections=tidak ada
--kompres-debug-bagian=zlib
--kompres-debug-bagian=zlib-gnu
--kompres-debug-bagian=zlib-gabi
Opsi ini mengontrol bagaimana bagian debug DWARF dikompresi.
--compress-debug-sections=tidak ada adalah setara dengan --nocompress-debug-bagian.
--kompres-debug-bagian=zlib dan --kompres-debug-bagian=zlib-gabi setara
untuk --kompres-debug-bagian. --kompres-debug-bagian=zlib-gnu kompres DWARF
debug bagian menggunakan zlib. Bagian debug diganti namanya untuk memulai .zdebug.
Perhatikan jika kompresi akan membuat bagian tertentu lebih besar maka itu tidak dikompresi atau
berganti nama.
--nocompress-debug-bagian
Jangan kompres bagian debug DWARF. Ini biasanya default untuk semua target
kecuali x86/x86_64, tetapi opsi waktu konfigurasi dapat digunakan untuk menimpanya.
-D Diabaikan. Opsi ini diterima untuk kompatibilitas skrip dengan panggilan ke lainnya
perakit.
--debug-awalan-peta tua=yang baru
Saat merakit file dalam direktori tua, catat informasi debug yang menjelaskannya
seperti dalam yang baru sebagai gantinya.
--defsym sim=nilai
Tentukan simbolnya sim menjadi nilai sebelum merakit file input. nilai harus menjadi
konstanta bilangan bulat. Seperti pada C, sebuah lead 0x menunjukkan nilai heksadesimal, dan memimpin
0 menunjukkan nilai oktal. Nilai simbol dapat diganti di dalam sumber
file melalui penggunaan pseudo-op ".set".
-f "cepat" --- lewati spasi putih dan prapemrosesan komentar (anggap sumber adalah keluaran kompiler).
-g
--gen-debug
Hasilkan informasi debug untuk setiap baris sumber assembler menggunakan debug mana pun
format lebih disukai oleh target. Ini berarti STABS, ECOFF atau
kurcaci2.
--gstab
Hasilkan informasi debug tusukan untuk setiap baris assembler. Ini dapat membantu debugging
kode assembler, jika debugger dapat menanganinya.
--gstab+
Hasilkan informasi debug tusukan untuk setiap baris assembler, dengan ekstensi GNU yang
mungkin hanya gdb yang bisa menangani, dan itu bisa membuat debugger lain mogok atau menolak
membaca program Anda. Ini dapat membantu men-debug kode assembler. Saat ini satu-satunya GNU
ekstensi adalah lokasi direktori kerja saat ini pada waktu perakitan.
--kurcaci-2
Hasilkan informasi debug DWARF2 untuk setiap baris assembler. Ini mungkin membantu
debugging kode assembler, jika debugger dapat menanganinya. Catatan --- opsi ini hanya
didukung oleh beberapa target, tidak semuanya.
--gdwarf-bagian
Alih-alih membuat bagian .debug_line, buat rangkaian .debug_line.foo bagian
dimana foo adalah nama bagian kode yang sesuai. Misalnya bagian kode
bernama .teks.fungsi akan memiliki informasi nomor baris kerdil yang ditempatkan ke dalam bagian
bernama .debug_line.teks.fungsi. Jika bagian kode baru saja dipanggil .teks lalu debug
bagian garis akan tetap dipanggil hanya .debug_line tanpa akhiran apapun.
--size-check=kesalahan
--size-check=peringatan
Mengeluarkan kesalahan atau peringatan untuk direktif ELF .size yang tidak valid.
--membantu
Cetak ringkasan opsi baris perintah dan keluar.
--target-bantuan
Cetak ringkasan semua opsi spesifik target dan keluar.
-I dir
Tambahkan direktori dir ke daftar pencarian untuk arahan ".include".
-J Jangan peringatkan tentang overflow yang ditandatangani.
-K Keluarkan peringatan ketika tabel perbedaan diubah untuk perpindahan panjang.
-L
--keep-local
Simpan (dalam tabel simbol) simbol lokal. Simbol-simbol ini dimulai dengan sistem khusus
awalan label lokal, biasanya .L untuk sistem ELF atau L untuk sistem a.out tradisional.
--daftar-lhs-lebar=jumlah
Atur lebar maksimum, dengan kata-kata, dari kolom data keluaran untuk daftar assembler ke
jumlah.
--daftar-lhs-width2=jumlah
Atur lebar maksimum, dengan kata-kata, dari kolom data keluaran untuk baris lanjutan di
daftar assembler ke jumlah.
--daftar-rhs-lebar=jumlah
Atur lebar maksimum baris sumber input, seperti yang ditampilkan dalam daftar, ke jumlah
byte.
--daftar-lanjutan-garis=jumlah
Atur jumlah maksimum baris yang dicetak dalam daftar untuk satu baris input ke
jumlah + 1.
-o file objek
Beri nama output file-objek dari as file objek.
-R Lipat bagian data ke dalam bagian teks.
--ukuran hash=jumlah
Atur ukuran default tabel hash GAS ke bilangan prima yang mendekati jumlah.
Meningkatkan nilai ini dapat mengurangi lama waktu yang dibutuhkan assembler untuk bekerja
tugasnya, dengan mengorbankan kebutuhan memori assembler.
Demikian pula mengurangi nilai ini dapat mengurangi kebutuhan memori dengan mengorbankan
kecepatan.
--mengurangi-memori-overhead
Opsi ini mengurangi kebutuhan memori GAS, dengan mengorbankan pembuatan rakitan
proses lebih lambat. Saat ini sakelar ini adalah sinonim untuk --ukuran hash=4051, tetapi di
masa depan mungkin memiliki efek lain juga.
--nama sekte-subst
Hormati urutan substitusi dalam nama bagian.
--statistik
Cetak ruang maksimum (dalam byte) dan total waktu (dalam detik) yang digunakan oleh perakitan.
--strip-lokal-mutlak
Hapus simbol absolut lokal dari tabel simbol keluar.
-v
-versi
Cetak as versi.
--Versi: kapan
Cetak as versi dan keluar.
-W
--tidak-peringatan
Menekan pesan peringatan.
--peringatan-fatal
Perlakukan peringatan sebagai kesalahan.
--memperingatkan
Jangan menyembunyikan pesan peringatan atau memperlakukannya sebagai kesalahan.
-w Diabaikan.
-x Diabaikan.
-Z Hasilkan file objek bahkan setelah kesalahan.
-- | arsip ...
Input standar, atau file sumber untuk dirakit.
Opsi berikut tersedia saat dikonfigurasi untuk mode 64-bit ARM
Arsitektur (AArch64).
-EB Opsi ini menetapkan bahwa output yang dihasilkan oleh assembler harus ditandai sebagai:
sedang dikodekan untuk prosesor big-endian.
-ITU Opsi ini menetapkan bahwa output yang dihasilkan oleh assembler harus ditandai sebagai:
dikodekan untuk prosesor little-endian.
-mabi=abi
Tentukan ABI mana yang digunakan kode sumber. Argumen yang diakui adalah: "ilp32" dan
"lp64", yang menentukan file objek yang dihasilkan dalam format ELF32 dan ELF64
masing-masing. Standarnya adalah "lp64".
-mcpu=prosesor[+perpanjangan...]
Opsi ini menentukan prosesor target. Assembler akan mengeluarkan pesan kesalahan
jika ada upaya untuk merakit instruksi yang tidak akan dieksekusi pada target
prosesor. Nama prosesor berikut dikenali: "cortex-a35", "cortex-a53",
"cortex-a57", "cortex-a72", "exynos-m1", "qdf24xx", "thunderx", "xgene1" dan "xgene2".
Nama khusus "semua" dapat digunakan untuk memungkinkan assembler menerima instruksi yang valid
untuk prosesor yang didukung, termasuk semua ekstensi opsional.
Selain set instruksi dasar, assembler dapat diberitahu untuk menerima, atau
membatasi, berbagai mnemonik ekstensi yang memperpanjang prosesor.
Jika beberapa implementasi dari prosesor tertentu dapat memiliki ekstensi, maka
ekstensi tersebut diaktifkan secara otomatis. Akibatnya, Anda biasanya tidak akan memiliki
untuk menentukan ekstensi tambahan.
-maret=arsitektur[+perpanjangan...]
Opsi ini menentukan arsitektur target. Assembler akan mengeluarkan kesalahan
pesan jika ada upaya untuk merakit instruksi yang tidak akan dieksekusi pada
arsitektur sasaran. Nama arsitektur berikut dikenali: "armv8-a",
"armv8.1-a" dan "armv8.2-a".
Jika keduanya -mcpu dan -berbaris ditentukan, assembler akan menggunakan pengaturan untuk -mcpu.
Jika tidak ada yang ditentukan, assembler akan default ke -mcpu=semua.
Opsi arsitektur dapat diperluas dengan ekstensi set instruksi yang sama
pilihan sebagai -mcpu pilihan. Tidak seperti -mcpu, ekstensi tidak selalu diaktifkan oleh
bawaan,
-mverbose-kesalahan
Opsi ini mengaktifkan pesan kesalahan verbose untuk gas AArch64. Opsi ini diaktifkan oleh
standar.
-mno-verbose-kesalahan
Opsi ini menonaktifkan pesan kesalahan verbose di gas AArch64.
Opsi berikut tersedia saat dikonfigurasi untuk prosesor Alpha.
-mcpu
Opsi ini menentukan prosesor target. Jika ada upaya untuk merakit dan
instruksi yang tidak akan dijalankan pada prosesor target, assembler dapat
memperluas instruksi sebagai makro atau mengeluarkan pesan kesalahan. Pilihan ini adalah
setara dengan direktif ".arch".
Nama prosesor berikut dikenali: 21064, "21064a", 21066, 21068, 21164,
"21164a", "21164pc", 21264, "21264a", "21264b", "ev4", "ev5", "lca45", "ev5", "ev56",
"pca56", "ev6", "ev67", "ev68". Nama khusus "semua" dapat digunakan untuk memungkinkan
assembler untuk menerima instruksi yang valid untuk setiap prosesor Alpha.
Untuk mendukung praktik yang ada di OSF/1 sehubungan dengan ".arch", dan yang ada
berlatih di dalam MILO (bootloader Linux ARC), nama prosesor bernomor (mis
21064) mengaktifkan instruksi PALcode khusus prosesor, sedangkan "electro-vlasic"
nama (misalnya "ev4") tidak.
-mdebug
-tidak-mdebug
Mengaktifkan atau menonaktifkan pembuatan enkapsulasi ".mdebug" untuk arahan tikaman dan
deskriptor prosedur. Standarnya adalah mengaktifkan ".mdebug" secara otomatis saat
arahan tusukan pertama terlihat.
-bersantai
Opsi ini memaksa semua relokasi untuk dimasukkan ke dalam file objek, alih-alih menyimpan
ruang dan menyelesaikan beberapa relokasi pada waktu perakitan. Perhatikan bahwa opsi ini tidak
menyebarkan semua simbol aritmatika ke dalam file objek, karena tidak semua simbol
aritmatika dapat direpresentasikan. Namun, opsi ini masih dapat berguna secara spesifik
aplikasi.
-mengganti
-tidak ada tempat
Mengaktifkan atau menonaktifkan pengoptimalan panggilan prosedur, baik di assemblage maupun di
menghubungkan waktu. Opsi ini hanya tersedia untuk target VMS dan "-ganti" adalah
bawaan. Lihat bagian 1.4.1 dari OpenVMS Linker Utility Manual.
-g Opsi ini digunakan ketika kompiler menghasilkan informasi debug. Kapan gcc sedang menggunakan
mips-tfile untuk menghasilkan informasi debug untuk ECOFF, label lokal harus diteruskan
melalui ke file objek. Jika tidak, opsi ini tidak akan berpengaruh.
-Gukuran
Simbol umum lokal yang lebih besar dari ukuran ditempatkan di ".bss", sedangkan simbol yang lebih kecil adalah
ditempatkan di ".sbss".
-F
-32tambahan
Opsi ini diabaikan untuk kompatibilitas mundur.
Opsi berikut tersedia saat dikonfigurasi untuk prosesor ARC.
-mcpu=cpu
Opsi ini memilih varian prosesor inti.
-EB | -ITU
Pilih keluaran big-endian (-EB) atau little-endian (-EL).
-mcode-kepadatan
Aktifkan instruksi ekstensi Code Density.
Opsi berikut tersedia jika dikonfigurasi untuk keluarga prosesor ARM.
-mcpu=prosesor[+perpanjangan...]
Tentukan varian prosesor ARM mana yang menjadi target.
-maret=arsitektur[+perpanjangan...]
Tentukan varian arsitektur ARM mana yang digunakan oleh target.
-mfpu=format titik-mengambang
Pilih arsitektur Floating Point mana yang menjadi target.
-mfloat-abi=abi
Pilih floating point ABI yang digunakan.
-jempol
Aktifkan decoding instruksi Thumb only.
-mapcs-32 | -mapcs-26 | -mapcs-mengapung | -mapcs-masuk kembali
Pilih konvensi pemanggilan prosedur mana yang digunakan.
-EB | -ITU
Pilih keluaran big-endian (-EB) atau little-endian (-EL).
-ibu jari-interwork
Tentukan bahwa kode telah dibuat dengan interworking antara Thumb dan kode ARM
dalam pikiran.
-mccs
Mengaktifkan mode kompatibilitas sintaks rakitan CodeComposer Studio.
-k Tentukan bahwa kode PIC telah dibuat.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor Blackfin
keluarga.
-mcpu=prosesor[-visi]
Opsi ini menentukan prosesor target. opsional visi tidak digunakan di
perakit. Di sinilah GCC dapat dengan mudah mewariskan opsi "-mcpu=". NS
assembler akan mengeluarkan pesan kesalahan jika ada upaya untuk merakit instruksi
yang tidak akan dijalankan pada prosesor target. Nama prosesor berikut adalah:
dikenali: "bf504", "bf506", "bf512", "bf514", "bf516", "bf518", "bf522", "bf523",
"bf524", "bf525", "bf526", "bf527", "bf531", "bf532", "bf533", "bf534", "bf535" (bukan
belum diimplementasikan), "bf536", "bf537", "bf538", "bf539", "bf542", "bf542m", "bf544",
"bf544m", "bf547", "bf547m", "bf548", "bf548m", "bf549", "bf549m", "bf561", dan
"bf592".
-mfdpik
Berkumpul untuk FDPIC ABI.
-mno-fdpic
-mnopik
Nonaktifkan -mfdpic.
Lihat halaman info untuk dokumentasi opsi khusus CRIS.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor D10V.
-O Optimalkan output dengan memparalelkan instruksi.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor D30V.
-O Optimalkan output dengan memparalelkan instruksi.
-n Peringatkan saat nops dibuat.
-N Peringatkan saat nop setelah instruksi perkalian 32-bit dibuat.
Opsi berikut tersedia saat dikonfigurasi untuk prosesor Epiphany.
-mepiphany
Menentukan bahwa instruksi 32 dan 16 bit diperbolehkan. Ini defaultnya
tingkah laku.
-mepiphany16
Membatasi instruksi yang diizinkan hanya untuk set 16 bit.
Opsi berikut tersedia saat dikonfigurasi untuk prosesor H8/300.
@chapter H8/300 Fitur Dependen
Opsi
Versi "sebagai" Renesas H8/300 memiliki satu opsi yang bergantung pada mesin:
-h-tik-hex
Mendukung konstanta hex gaya H'00 selain gaya 0x00.
-makh=nama
Menyetel varian mesin H8300. Nama mesin berikut dikenali: "h8300h",
"h8300hn", "h8300s", "h8300sn", "h8300sx" dan "h8300sxn".
Opsi berikut tersedia saat dikonfigurasi untuk prosesor i386.
---32 | --x32 | ---64
Pilih ukuran kata, baik 32 bit atau 64 bit. ---32 menyiratkan Intel i386
arsitektur, sedangkan --x32 dan ---64 menyiratkan arsitektur AMD x86-64 dengan 32-bit atau 64-bit
ukuran kata masing-masing.
Opsi ini hanya tersedia dengan format file objek ELF, dan mengharuskan:
dukungan BFD yang diperlukan telah disertakan (pada platform 32-bit Anda harus menambahkan
--enable-64-bit-bfd untuk mengkonfigurasi mengaktifkan penggunaan 64-bit dan menggunakan x86-64 sebagai target
peron).
-n Secara default, x86 GAS menggantikan beberapa instruksi nop yang digunakan untuk penyelarasan dalam kode
bagian dengan instruksi nop multi-byte seperti leal 0(%esi,1),%esi. Saklar ini
menonaktifkan pengoptimalan.
--membagi
Pada platform turunan SVR4, karakter / diperlakukan sebagai karakter komentar, yang
berarti tidak dapat digunakan dalam ekspresi. NS --membagi pilihan berubah / menjadi
karakter biasa. Ini tidak menonaktifkan / di awal baris mulai a
komentar, atau pengaruhi penggunaan # untuk memulai komentar.
-maret=CPU[+EXTENSION...]
Opsi ini menentukan prosesor target. Assembler akan mengeluarkan pesan kesalahan
jika ada upaya untuk merakit instruksi yang tidak akan dieksekusi pada target
prosesor. Nama prosesor berikut dikenali: "i8086", "i186", "i286",
"i386", "i486", "i586", "i686", "pentium", "pentiumpro", "pentiumii", "pentiumiii",
"pentium4", "prescott", "nocona", "inti", "core2", "corei7", "l1om", "k1om", "iamcu",
"k6", "k6_2", "athlon", "opteron", "k8", "amdfam10", "bdver1", "bdver2", "bdver3",
"bdver4", "znver1", "btver1", "btver2", "generic32" dan "generic64".
Selain set instruksi dasar, assembler dapat diberitahu untuk menerima berbagai
mnemonik ekstensi. Misalnya, "-march=i686+sse4+vmx" meluas i686 dengan se4 dan
vmx. Ekstensi berikut saat ini didukung: 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" dan "gembok". Perhatikan bahwa daripada memperluas dasar
set instruksi, mnemonik ekstensi yang dimulai dengan "tidak" mencabut masing-masing
fungsionalitas.
Ketika direktif ".arch" digunakan dengan -berbaris, direktif ".arch" akan mengambil
preseden.
-mtune=CPU
Opsi ini menentukan prosesor yang akan dioptimalkan. Ketika digunakan bersama dengan
-berbaris pilihan, hanya instruksi dari prosesor yang ditentukan oleh -berbaris pilihan akan
dihasilkan.
Sah CPU nilainya identik dengan daftar prosesor -maret=CPU.
-msse2avx
Opsi ini menetapkan bahwa assembler harus mengkodekan instruksi SSE dengan VEX
awalan.
-msse-cek=tak satupun
-msse-cek=peringatan
-msse-cek=kesalahan
Opsi ini mengontrol apakah assembler harus memeriksa instruksi SSE.
-msse-cek=tak satupun akan membuat assembler tidak memeriksa instruksi SSE, yang merupakan
standar. -msse-cek=peringatan akan membuat assembler mengeluarkan peringatan untuk SSE apa pun
petunjuk. -msse-cek=kesalahan akan membuat assembler mengeluarkan kesalahan untuk SSE apa pun
petunjuk.
-mavxskalar=128
-mavxskalar=256
Opsi ini mengontrol bagaimana assembler harus mengkodekan instruksi AVX skalar.
-mavxskalar=128 akan mengkodekan instruksi AVX skalar dengan panjang vektor 128bit, yang
adalah defaultnya. -mavxskalar=256 akan mengkodekan instruksi AVX skalar dengan 256bit
panjang vektor.
-mevexlig=128
-mevexlig=256
-mevexlig=512
Opsi ini mengontrol bagaimana assembler harus mengkodekan EVEX yang diabaikan panjang (LIG)
petunjuk. -mevexlig=128 akan mengkodekan instruksi LIG EVEX dengan vektor 128bit
panjang, yang merupakan default. -mevexlig=256 dan -mevexlig=512 akan mengkodekan LIG EVEX
instruksi dengan panjang vektor 256bit dan 512bit, masing-masing.
-mevexwig=0
-mevexwig=1
Opsi ini mengontrol bagaimana assembler harus menyandikan w-ignored (WIG) EVEX
petunjuk. -mevexwig=0 akan mengkodekan instruksi WIG EVEX dengan evex.w = 0, yaitu
default. -mevexwig=1 akan mengkodekan instruksi WIG EVEX dengan evex.w = 1.
-mmnemonik=untuk
-mmnemonik=intel
Opsi ini menentukan mnemonic instruksi untuk instruksi yang cocok. NS
Direktif ".att_mnemonic" dan ".intel_mnemonic" akan didahulukan.
-msintaks=untuk
-msintaks=intel
Opsi ini menentukan sintaks instruksi saat memproses instruksi. NS
Direktif ".att_syntax" dan ".intel_syntax" akan didahulukan.
-mnaked-reg
Opsi ini menetapkan bahwa register tidak memerlukan a % awalan. ".att_syntax" dan
Direktif ".intel_syntax" akan didahulukan.
-madd-bnd-awalan
Opsi ini memaksa assembler untuk menambahkan awalan BND ke semua cabang, meskipun demikian
awalan tidak secara eksplisit ditentukan dalam kode sumber.
-mno-dibagikan
Pada target ELF, assembler biasanya mengoptimalkan relokasi non-PLT terhadap
menetapkan target cabang global non-lemah dengan visibilitas default. NS -mshared Option
memberitahu assembler untuk menghasilkan kode yang mungkin masuk ke perpustakaan bersama di mana semua non-
target cabang global yang lemah dengan visibilitas default dapat didahulukan. yang dihasilkan
kode sedikit lebih besar. Opsi ini hanya memengaruhi penanganan cabang
petunjuk.
-mbig-obj
Pada target PE/COFF x86-64, opsi ini memaksa penggunaan format file objek besar, yang
memungkinkan lebih dari 32768 bagian.
-momit-lock-awalan=tidak
-momit-lock-awalan=iya nih
Opsi ini mengontrol bagaimana assembler harus mengkodekan awalan kunci. Pilihan ini adalah
dimaksudkan sebagai solusi untuk prosesor, yang gagal pada awalan kunci. Opsi ini dapat
hanya dapat digunakan dengan aman dengan komputer single-core, single-thread -momit-lock-awalan=iya nih
akan menghilangkan semua awalan kunci. -momit-lock-awalan=tidak akan mengkodekan awalan kunci seperti biasa,
yang merupakan default.
-mrelax-relokasi=tidak
-mrelax-relokasi=iya nih
Opsi ini mengontrol apakah assembler harus menghasilkan relokasi santai,
R_386_GOT32X, dalam mode 32-bit, atau R_X86_64_GOTPCRELX dan R_X86_64_REX_GOTPCRELX, dalam
modus 64-bit. -mrelax-relokasi=iya nih akan menghasilkan relokasi santai.
-mrelax-relokasi=tidak tidak akan menghasilkan relokasi santai. Defaultnya bisa
dikendalikan oleh opsi konfigurasi --enable-x86-santai-relokasi.
-mevexrcig=rn
-mevexrcig=rd
-mevexrcig=ru
-mevexrcig=rz
Opsi ini mengontrol bagaimana assembler harus mengkodekan instruksi EVEX SAE saja.
-mevexrcig=rn akan mengkodekan bit RC dari instruksi EVEX dengan 00, yang merupakan default.
-mevexrcig=rd, -mevexrcig=ru dan -mevexrcig=rz akan mengkodekan instruksi EVEX khusus SAE
dengan 01, 10 dan 11 bit RC, masing-masing.
-mamd64
-mintel64
Opsi ini menetapkan bahwa assembler harus menerima hanya AMD64 atau Intel64 ISA di
modus 64-bit. Standarnya adalah menerima keduanya.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor Intel 80960.
-ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC
Tentukan varian arsitektur 960 mana yang menjadi target.
-b Tambahkan kode untuk mengumpulkan statistik tentang cabang yang diambil.
-tidak-santai
Jangan mengubah instruksi bandingkan-dan-cabang untuk perpindahan panjang; kesalahan jika
perlu.
Opsi berikut tersedia saat dikonfigurasi untuk seri Ubicom IP2K.
-mip2022ekst
Menentukan bahwa instruksi IP2022 diperpanjang diperbolehkan.
-mip2022
Mengembalikan perilaku default, yang membatasi instruksi yang diizinkan hanya untuk
IP2022 dasar.
Opsi berikut tersedia saat dikonfigurasi untuk Renesas M32C dan M16C
prosesor.
-m32c
Merakit instruksi M32C.
-m16c
Merakit instruksi M16C (default).
-bersantai
Aktifkan dukungan untuk relaksasi link-time.
-h-tik-hex
Mendukung konstanta hex gaya H'00 selain gaya 0x00.
Opsi berikut tersedia saat dikonfigurasi untuk Renesas M32R (sebelumnya
Mitsubishi M32R) seri.
--m32rx
Tentukan prosesor mana dalam keluarga M32R yang menjadi target. Standarnya biasanya adalah
M32R, tetapi opsi ini mengubahnya menjadi M32RX.
--peringatkan-eksplisit-paralel-konflik or --Wp
Menghasilkan pesan peringatan ketika konstruksi paralel dipertanyakan ditemui.
--tidak-memperingatkan-eksplisit-paralel-konflik or --Wnp
Jangan menghasilkan pesan peringatan ketika konstruksi paralel dipertanyakan ditemui.
Opsi berikut tersedia jika dikonfigurasi untuk seri Motorola 68000.
-l Persingkat referensi ke simbol yang tidak ditentukan, menjadi satu kata, bukan dua.
-m68000 | -m68008 | -m68010 | -m68020 | -m68030
| -m68040 | -m68060 | -m68302 | -m68331 | -m68332
| -m68333 | -m68340 | -mcpu32 | -m5200
Tentukan prosesor apa dalam keluarga 68000 yang menjadi target. Standarnya biasanya adalah
68020, tetapi ini dapat diubah pada waktu konfigurasi.
-m68881 | -m68882 | -mno-68881 | -mno-68882
Mesin target tidak (atau tidak) memiliki koprosesor titik-mengambang. Standarnya
adalah untuk mengasumsikan coprocessor untuk 68020, 68030, dan cpu32. Meskipun dasar 68000 adalah
tidak kompatibel dengan 68881, kombinasi keduanya dapat ditentukan, karena itu
memungkinkan untuk melakukan emulasi instruksi koprosesor dengan prosesor utama.
-m68851 | -mno-68851
Mesin target tidak (atau tidak) memiliki koprosesor unit manajemen memori. NS
default adalah mengasumsikan MMU untuk 68020 dan lebih tinggi.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor Altera Nios II.
-relaks-bagian
Ganti cabang di luar jangkauan yang diidentifikasi dengan urutan "jmp" relatif PC ketika
mungkin. Urutan kode yang dihasilkan cocok untuk digunakan dalam posisi-independen
kode, tetapi ada batasan praktis pada jangkauan cabang yang diperluas karena
panjang dari urutan. Opsi ini adalah default.
-santai-semua
Ganti instruksi cabang yang tidak dapat ditentukan berada dalam jangkauan dan semua instruksi panggilan
dengan urutan "jmp" dan "callr" (masing-masing). Opsi ini menghasilkan absolut
relokasi terhadap simbol target dan tidak sesuai untuk posisi-independen
kode.
-tidak-santai
Jangan mengganti cabang atau panggilan apa pun.
-EB Hasilkan keluaran big-endian.
-ITU Hasilkan keluaran little-endian. Ini adalah default.
-maret=arsitektur
Opsi ini menentukan arsitektur target. Assembler mengeluarkan pesan kesalahan
jika ada upaya untuk merakit instruksi yang tidak akan dieksekusi pada target
Arsitektur. Nama arsitektur berikut dikenali: "r1", "r2". NS
standarnya adalah "r1".
Opsi berikut tersedia saat dikonfigurasi untuk prosesor Meta.
"-mcpu=metac11"
Hasilkan kode untuk Meta 1.1.
"-mcpu=metac12"
Hasilkan kode untuk Meta 1.2.
"-mcpu=metac21"
Hasilkan kode untuk Meta 2.1.
"-mfpu=metac21"
Izinkan kode untuk menggunakan perangkat keras FPU Meta 2.1.
Lihat halaman info untuk dokumentasi opsi khusus MMIX.
Opsi berikut tersedia saat dikonfigurasi untuk prosesor NDS32.
"-O1"
Optimalkan untuk kinerja.
"-O"
Optimalkan ruang.
"-EL"
Menghasilkan keluaran data little endian.
"-EB"
Menghasilkan keluaran data little endian.
"-mpic"
Menghasilkan PIC.
"-mno-fp-as-gp-santai"
Tekan relaksasi fp-as-gp untuk file ini.
"-mb2bb-santai"
Optimalisasi cabang back-to-back.
"-mno-semua-santai"
Menekan semua relaksasi untuk file ini.
"-maret= "
Merakit untuk arsitektur yang bisa berupa v3, v3j, v3m, v3f, v3s, v2, v2j,
v2f, v2s.
"-mbaseline= "
Merakit untuk baseline yang bisa berupa v2, v3, v3m.
"-mfpu-freg=GRATIS"
Tentukan konfigurasi FPU.
"0 8 SP / 4 DP register"
"1 16 SP / 8 DP register"
"2 32 SP / 16 DP register"
"3 32 SP / 32 DP register"
"-mabi=abi"
Tentukan versi abi bisa v1, v2, v2fp, v2fpp.
"-m[tidak-]mak"
Aktifkan/Nonaktifkan dukungan instruksi Multiply.
"-m[tidak-]div"
Aktifkan/Nonaktifkan dukungan instruksi Divide.
"-m[no-]16bit-ext"
Aktifkan/Nonaktifkan ekstensi 16-bit
"-m[no-]dx-regs"
Aktifkan/Nonaktifkan register d0/d1
"-m[no-]perf-ext"
Aktifkan/Nonaktifkan ekstensi Performa
"-m[no-]perf2-ext"
Aktifkan/Nonaktifkan ekstensi Kinerja 2
"-m[no-]string-ext"
Aktifkan/Nonaktifkan ekstensi String
"-m[no-]reduce-regs"
Aktifkan/Nonaktifkan opsi Konfigurasi Register yang Dikurangi (GPR16)
"-m[no-]audio-isa-ext"
Aktifkan/Nonaktifkan ekstensi AUDIO ISA
"-m[no-]fpu-sp-ext"
Aktifkan/Nonaktifkan ekstensi FPU SP
"-m[no-]fpu-dp-ext"
Aktifkan/Nonaktifkan ekstensi DP FPU
"-m[no-]fpu-fma"
Aktifkan/Nonaktifkan instruksi FPU fused-multiply-add
"-mall-ext"
Aktifkan semua ekstensi dan dukungan instruksi
Opsi berikut tersedia saat dikonfigurasi untuk prosesor PowerPC.
.A32
Hasilkan ELF32 atau XCOFF32.
.A64
Hasilkan ELF64 atau XCOFF64.
-K PIC
Setel EF_PPC_RELOCATABLE_LIB dalam flag ELF.
-mpwrx | -mpwr2
Hasilkan kode untuk POWER/2 (RIOS2).
-mpwr
Hasilkan kode untuk POWER (RIOS1)
-m601
Hasilkan kode untuk PowerPC 601.
-mppc, -mppc32, -m603, -m604
Buat kode untuk PowerPC 603/604.
-m403, -m405
Buat kode untuk PowerPC 403/405.
-m440
Hasilkan kode untuk PowerPC 440. BookE dan beberapa instruksi 405.
-m464
Hasilkan kode untuk PowerPC 464.
-m476
Hasilkan kode untuk PowerPC 476.
-m7400, -m7410, -m7450, -m7455
Buat kode untuk PowerPC 7400/7410/7450/7455.
-m750cl
Hasilkan kode untuk PowerPC 750CL.
-m821, -m850, -m860
Hasilkan kode untuk PowerPC 821/850/860.
-mppc64, -m620
Hasilkan kode untuk PowerPC 620/625/630.
-saya500, -saya500x2
Hasilkan kode untuk kompleks inti Motorola e500.
-saya500mc
Hasilkan kode untuk kompleks inti e500mc Freescale.
-me500mc64
Hasilkan kode untuk kompleks inti e500mc64 Freescale.
-saya5500
Hasilkan kode untuk kompleks inti Freescale e5500.
-saya6500
Hasilkan kode untuk kompleks inti Freescale e6500.
-msp
Buat kode untuk instruksi Motorola SPE.
-mtitan
Hasilkan kode untuk kompleks inti AppliedMicro Titan.
-mppc64jembatan
Hasilkan kode untuk PowerPC 64, termasuk bridge insns.
-buku
Hasilkan kode untuk BookE 32-bit.
-ma2
Menghasilkan kode untuk arsitektur A2.
-saya300
Hasilkan kode untuk keluarga PowerPC e300.
-maltivec
Hasilkan kode untuk prosesor dengan instruksi AltiVec.
-mvle
Hasilkan kode untuk instruksi Freescale PowerPC VLE.
-mvsx
Hasilkan kode untuk prosesor dengan instruksi Vector-Scalar (VSX).
-mhtm
Hasilkan kode untuk prosesor dengan instruksi Memori Transaksional Perangkat Keras.
-kekuatan4, -mpwr4
Hasilkan kode untuk arsitektur Power4.
-kekuatan5, -mpwr5, -mpwr5x
Hasilkan kode untuk arsitektur Power5.
-kekuatan6, -mpwr6
Hasilkan kode untuk arsitektur Power6.
-kekuatan7, -mpwr7
Hasilkan kode untuk arsitektur Power7.
-kekuatan8, -mpwr8
Hasilkan kode untuk arsitektur Power8.
-kekuatan9, -mpwr9
Hasilkan kode untuk arsitektur Power9.
-mcell
-mcell
Menghasilkan kode untuk arsitektur Cell Broadband Engine.
-mcom
Buat kode instruksi umum Power/PowerPC.
-banyak
Hasilkan kode untuk arsitektur apa pun (PWR/PWRX/PPC).
-nama-nama
Izinkan nama simbolis untuk register.
-mno-ganti nama
Jangan izinkan nama simbolis untuk register.
-mrelokasi
Dukungan untuk opsi -mrelocatable GCC.
-mrelokasi-lib
Dukungan untuk opsi -mrelocatable-lib GCC.
-anggota
Setel bit PPC_EMB dalam flag ELF.
-sedikit, -mlittle-endian, -NS
Hasilkan kode untuk mesin little endian.
-big, -mbig-endian, -menjadi
Hasilkan kode untuk mesin big endian.
-msolaris
Buat kode untuk Solaris.
-mno-solar
Jangan buat kode untuk Solaris.
-tidak=menghitung
Jika direktif keselarasan menyisipkan lebih dari menghitung tidak, letakkan cabang di awal
untuk melewatkan eksekusi nops.
Lihat halaman info untuk dokumentasi opsi khusus RX.
Opsi berikut tersedia saat dikonfigurasi untuk keluarga prosesor s390.
-m31
-m64
Pilih ukuran kata, baik 31/32 bit atau 64 bit.
-mesa
-mzarch
Pilih mode arsitektur, baik Enterprise System Architecture (esa) atau
z/Mode arsitektur (zarch).
-maret=prosesor
Tentukan varian prosesor s390 mana yang menjadi target, g6, g6, z900, z990, z9-109, z9-ec,
z10, z196, zEC12, atau z13.
-nama-nama
-mno-ganti nama
Izinkan atau larang nama simbolis untuk register.
-mwarn-areg-nol
Peringatkan setiap kali operan untuk register basis atau indeks telah ditentukan tetapi
mengevaluasi ke nol.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor TMS320C6000.
-maret=lengkungan
Aktifkan (hanya) instruksi dari arsitektur lengkungan. Secara default, semua instruksi adalah
diizinkan.
Nilai berikut dari lengkungan diterima: "c62x", "c64x", "c64x+", "c67x", "c67x+",
"c674x".
-mdsbt
-mno-dsbt
-mdsbt opsi menyebabkan assembler menghasilkan atribut "Tag_ABI_DSBT" dengan a
nilai 1, menunjukkan bahwa kode tersebut menggunakan pengalamatan DSBT. NS -mno-dsbt pilihan,
default, menyebabkan tag memiliki nilai 0, menunjukkan bahwa kode tidak
menggunakan pengalamatan DSBT. Linker akan mengeluarkan peringatan jika objek dari tipe yang berbeda
(DSBT dan non-DSBT) dihubungkan bersama.
-mpid=tidak
-mpid=dekat
-mpid=jauh
-mpid= opsi menyebabkan assembler menghasilkan atribut "Tag_ABI_PID" dengan a
nilai yang menunjukkan bentuk pengalamatan data yang digunakan oleh kode. -mpid=tidak, defaultnya,
menunjukkan pengalamatan data yang bergantung pada posisi, -mpid=dekat menunjukkan posisi-
pengalamatan independen dengan akses GOT menggunakan pengalamatan DP dekat, dan -mpid=jauh
menunjukkan pengalamatan independen posisi dengan akses GOT menggunakan pengalamatan DP jauh.
Linker akan mengeluarkan peringatan jika objek dibangun dengan pengaturan yang berbeda dari opsi ini
dihubungkan bersama.
-mpik
-mno-gambar
-mpik opsi menyebabkan assembler menghasilkan atribut "Tag_ABI_PIC" dengan a
nilai 1, menunjukkan bahwa kode tersebut menggunakan pengalamatan kode posisi-independen,
Opsi "-mno-pic", default, menyebabkan tag memiliki nilai 0, yang menunjukkan
pengalamatan kode yang bergantung pada posisi. Linker akan mengeluarkan peringatan jika objek dari
jenis yang berbeda (tergantung posisi dan tidak tergantung posisi) dihubungkan bersama.
-mbig-endian
-mlittle-endian
Hasilkan kode untuk endianness yang ditentukan. Standarnya adalah little-endian.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor TILE-Gx.
-m32 | -m64
Pilih ukuran kata, baik 32 bit atau 64 bit.
-EB | -ITU
Pilih endianness, baik big-endian (-EB) atau little-endian (-EL).
Opsi berikut ini tersedia saat dikonfigurasi untuk prosesor Visium.
-mtune=lengkungan
Opsi ini menentukan arsitektur target. Jika ada upaya untuk merakit dan
instruksi yang tidak akan dieksekusi pada arsitektur target, assembler akan mengeluarkan
sebuah pesan kesalahan.
Nama-nama berikut dikenali: "mcm24" "mcm" "gr5" "gr6"
Opsi berikut tersedia saat dikonfigurasi untuk prosesor Xtensa.
--teks-bagian-literal | --no-teks-bagian-literal
Kontrol perawatan kolam literal. Standarnya adalah --no-teks-bagian-literal,
yang menempatkan literal di bagian terpisah dalam file output. Hal ini memungkinkan
kumpulan literal untuk ditempatkan dalam data RAM/ROM. Dengan --teks-bagian-literal, yang
literal diselingi di bagian teks untuk membuatnya sedekat
mungkin untuk referensi mereka. Ini mungkin diperlukan untuk file perakitan besar, di mana:
literalnya akan berada di luar jangkauan instruksi "L32R" dalam teks
bagian. Literal dikelompokkan ke dalam kumpulan mengikuti arahan ".literal_position" atau
instruksi "ENTRY" sebelumnya. Opsi ini hanya memengaruhi literal yang dirujuk melalui PC-
instruksi "L32R" relatif; literal untuk instruksi mode absolut "L32R" adalah
ditangani secara terpisah.
--kolam litium otomatis | --tanpa-auto-litpools
Kontrol perawatan kolam literal. Standarnya adalah --tanpa-auto-litpools, yang di
tidak adanya --teks-bagian-literal menempatkan literal di bagian terpisah di
berkas keluaran. Ini memungkinkan kumpulan literal untuk ditempatkan dalam RAM/ROM data. Dengan
--kolam litium otomatis, literal diselingi di bagian teks untuk menjaga
mereka sedekat mungkin dengan referensi mereka, arahan ".literal_position" eksplisit
tidak diperlukan. Ini mungkin diperlukan untuk fungsi yang sangat besar, di mana single
kumpulan literal di awal fungsi mungkin tidak dapat dijangkau oleh "L32R"
instruksi di akhir. Opsi ini hanya memengaruhi literal yang dirujuk melalui PC-
instruksi "L32R" relatif; literal untuk instruksi mode absolut "L32R" adalah
ditangani secara terpisah. Ketika digunakan bersama dengan --teks-bagian-literal, --kolam litium otomatis
diutamakan.
--mutlak-literal | --tidak-mutlak-literal
Tunjukkan kepada assembler apakah instruksi "L32R" menggunakan absolut atau relatif PC
menangani. Jika prosesor menyertakan opsi pengalamatan absolut, defaultnya adalah
untuk menggunakan relokasi "L32R" mutlak. Jika tidak, hanya "L32R" relatif PC
relokasi dapat digunakan.
--target-sejajarkan | --no-target-sejajarkan
Aktifkan atau nonaktifkan penyelarasan otomatis untuk mengurangi hukuman cabang dengan biaya tertentu
ukuran kode. Pengoptimalan ini diaktifkan secara default. Perhatikan bahwa assembler akan
selalu menyelaraskan instruksi seperti "LOOP" yang memiliki persyaratan penyelarasan tetap.
--panggilan panjang | --tidak ada panggilan panjang
Aktifkan atau nonaktifkan transformasi instruksi panggilan untuk memungkinkan panggilan di lebih besar
jangkauan alamat. Opsi ini harus digunakan ketika target panggilan berpotensi
diluar jangkauan. Ini dapat menurunkan ukuran dan kinerja kode, tetapi tautan dapat
umumnya mengoptimalkan overhead yang tidak perlu ketika panggilan berakhir dalam jangkauan.
Standarnya adalah --tidak ada panggilan panjang.
--mengubah | --tidak-berubah
Mengaktifkan atau menonaktifkan semua transformasi assembler dari instruksi Xtensa, termasuk keduanya
relaksasi dan optimalisasi. Standarnya adalah --mengubah; --tidak-berubah seharusnya saja
digunakan dalam kasus yang jarang terjadi ketika instruksi harus persis seperti yang ditentukan dalam
sumber perakitan. Menggunakan --tidak-berubah menyebabkan operan instruksi di luar jangkauan menjadi
kesalahan.
--ganti nama-bagian nama lama=nama baru
Ganti nama nama lama bagian ke nama baru. Opsi ini dapat digunakan beberapa kali untuk
ganti nama beberapa bagian.
--trampolin | --tanpa trampolin
Aktifkan atau nonaktifkan transformasi instruksi lompat untuk memungkinkan lompatan melintasi yang lebih besar
jangkauan alamat. Opsi ini harus digunakan ketika target lompatan berpotensi
diluar jangkauan. Dengan tidak adanya lompatan seperti itu, opsi ini tidak memengaruhi ukuran kode atau
pertunjukan. Standarnya adalah --trampolin.
Opsi berikut tersedia jika dikonfigurasi untuk prosesor keluarga Z80.
-z80
Merakit untuk prosesor Z80.
-r800
Merakit untuk prosesor R800.
-abaikan-petunjuk-tidak berdokumen
-Wnud
Merakit instruksi Z80 tidak berdokumen yang juga bekerja pada R800 tanpa peringatan.
-abaikan-unportable-instruksi
-Kemenangan
Kumpulkan semua instruksi Z80 yang tidak berdokumen tanpa peringatan.
-peringatan-tidak berdokumen-petunjuk
-wud
Mengeluarkan peringatan untuk instruksi Z80 tidak berdokumen yang juga bekerja pada R800.
-peringatan-tidak portabel-petunjuk
-Wup
Mengeluarkan peringatan untuk instruksi Z80 tidak berdokumen yang tidak bekerja pada R800.
-melarang-tidak berdokumen-instruksi
-Fud
Perlakukan semua instruksi tidak berdokumen sebagai kesalahan.
-melarang-tidak-portabel-petunjuk
-Fup
Perlakukan instruksi Z80 tidak berdokumen yang tidak bekerja pada R800 sebagai kesalahan.
Gunakan aarch64-linux-gnu-sebagai online menggunakan layanan onworks.net