# Pesan bahasa indonesia untuk opcodes
# Copyright (C) 2009 Free Software Foundation, Inc.
# This file is distributed under the same license as the binutils package.
# Tedi Heriyanto <tedi_h@gmx.net>, 2002.
# Arif E. Nugroho <arif_endro@yahoo.com>, 2009.
#
msgid ""
msgstr ""
"Project-Id-Version: opcodes 2.19.1\n"
"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n"
"POT-Creation-Date: 2008-09-09 15:56+0930\n"
"PO-Revision-Date: 2009-05-26 08:00+0700\n"
"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: alpha-opc.c:155
msgid "branch operand unaligned"
msgstr "operand cabang tidak rata"

#: alpha-opc.c:171 alpha-opc.c:187
msgid "jump hint unaligned"
msgstr "petunjuk lompat tidak rata"

#: arc-dis.c:77
msgid "Illegal limm reference in last instruction!\n"
msgstr "referensi limm ilegal dalam instruksi terakhir!\n"

#: arc-opc.c:386
msgid "unable to fit different valued constants into instruction"
msgstr "tidak dapat memasukan nilai konstanta berbeda kedalam instruksi"

#: arc-opc.c:395
msgid "auxiliary register not allowed here"
msgstr "register tambahan tidak diperbolehkan disini"

#: arc-opc.c:401 arc-opc.c:418
msgid "attempt to set readonly register"
msgstr "mencoba untuk menset register baca-saja"

#: arc-opc.c:406 arc-opc.c:423
msgid "attempt to read writeonly register"
msgstr "mencoba untuk membaca register tulis-saja"

#: arc-opc.c:428
#, c-format
msgid "invalid register number `%d'"
msgstr "nomor register tidak valid `%d'"

#: arc-opc.c:594 arc-opc.c:645 arc-opc.c:673
msgid "too many long constants"
msgstr "terlalu banyak konstanta panjang"

#: arc-opc.c:668
msgid "too many shimms in load"
msgstr "terlalu banyak shimm dalam load"

#. Do we have a limm already?
#: arc-opc.c:781
msgid "impossible store"
msgstr "store tidak memungkinkan"

#: arc-opc.c:814
msgid "st operand error"
msgstr "operand st error"

#: arc-opc.c:818 arc-opc.c:860
msgid "address writeback not allowed"
msgstr "alamat writeback tidak diijinkan"

#: arc-opc.c:822
msgid "store value must be zero"
msgstr "nilai simpan harus nol"

#: arc-opc.c:847
msgid "invalid load/shimm insn"
msgstr "insn load/shimm tidak valid"

#: arc-opc.c:856
msgid "ld operand error"
msgstr "operand ld error"

#: arc-opc.c:943
msgid "jump flags, but no .f seen"
msgstr "tanda jump, tetapi tidak ada .f yang terlihat"

#: arc-opc.c:946
msgid "jump flags, but no limm addr"
msgstr "tanda jump, tetapi tidak ada alamat limm"

#: arc-opc.c:949
msgid "flag bits of jump address limm lost"
msgstr "tanda bit dari alamat jump limm hilang"

#: arc-opc.c:952
msgid "attempt to set HR bits"
msgstr "mencoba menset bit HR"

#: arc-opc.c:955
msgid "bad jump flags value"
msgstr "nilai tanda jump buruk"

#: arc-opc.c:988
msgid "branch address not on 4 byte boundary"
msgstr "alamat cabang tidak dalam kelipatan 4 byte"

#: arc-opc.c:1024
msgid "must specify .jd or no nullify suffix"
msgstr "harus menspesifikasikan .jd atau tidak ada akhiran nullify"

#: arm-dis.c:1808
msgid "<illegal precision>"
msgstr "<presisi ilegal>"

#. XXX - should break 'option' at following delimiter.
#: arm-dis.c:3818
#, c-format
msgid "Unrecognised register name set: %s\n"
msgstr "Set nama register tidak dikenal: %s\n"

#. XXX - should break 'option' at following delimiter.
#: arm-dis.c:3826
#, c-format
msgid "Unrecognised disassembler option: %s\n"
msgstr "Option disasembler tidak dikenal: %s\n"

#: arm-dis.c:4238
#, c-format
msgid ""
"\n"
"The following ARM specific disassembler options are supported for use with\n"
"the -M switch:\n"
msgstr ""
"\n"
"Option disablembler khusus ARM berikut ini didukung untuk digunakan dengan\n"
"switch -M:\n"

#: avr-dis.c:115 avr-dis.c:125
#, c-format
msgid "undefined"
msgstr "tidak didefinisikan"

#: avr-dis.c:187
#, c-format
msgid "Internal disassembler error"
msgstr "Kesalahan disasembler internal"

#: avr-dis.c:236
#, c-format
msgid "unknown constraint `%c'"
msgstr "konstrain tidak dikenal `%c'"

#: cgen-asm.c:336 fr30-ibld.c:200 frv-ibld.c:200 ip2k-ibld.c:200
#: iq2000-ibld.c:200 m32c-ibld.c:200 m32r-ibld.c:200 mep-ibld.c:200
#: mt-ibld.c:200 openrisc-ibld.c:200 xc16x-ibld.c:200 xstormy16-ibld.c:200
#, c-format
msgid "operand out of range (%ld not between %ld and %ld)"
msgstr "operand keluar batas (%ld tidak antara %ld dan %ld)"

#: cgen-asm.c:358
#, c-format
msgid "operand out of range (%lu not between %lu and %lu)"
msgstr "operand keluar batas (%lu tidak antara %lu dan %lu)"

#: d30v-dis.c:255
#, c-format
msgid "<unknown register %d>"
msgstr "<register tidak dikenal %d>"

#. Can't happen.
#: dis-buf.c:59
#, c-format
msgid "Unknown error %d\n"
msgstr "Kesalahan tidak dikenal %d\n"

#: dis-buf.c:68
#, c-format
msgid "Address 0x%s is out of bounds.\n"
msgstr "Alamat 0x%s di luar jangkauan.\n"

#: fr30-asm.c:93 m32c-asm.c:877 m32c-asm.c:884
msgid "Register number is not valid"
msgstr "Nomor register tidak valid"

#: fr30-asm.c:95
msgid "Register must be between r0 and r7"
msgstr "Register harus berada diantara r0 dan r7"

#: fr30-asm.c:97
msgid "Register must be between r8 and r15"
msgstr "Register harus berada diantara r8 dan r15"

#: fr30-asm.c:116 m32c-asm.c:915
msgid "Register list is not valid"
msgstr "Daftar register tidak valid"

#: fr30-asm.c:310 frv-asm.c:1263 ip2k-asm.c:511 iq2000-asm.c:459
#: m32c-asm.c:1589 m32r-asm.c:328 mep-asm.c:1001 mt-asm.c:595
#: openrisc-asm.c:241 xc16x-asm.c:376 xstormy16-asm.c:276
#, c-format
msgid "Unrecognized field %d while parsing.\n"
msgstr "Field tidak dikenal %d saat parsing.\n"

#: fr30-asm.c:361 frv-asm.c:1314 ip2k-asm.c:562 iq2000-asm.c:510
#: m32c-asm.c:1640 m32r-asm.c:379 mep-asm.c:1052 mt-asm.c:646
#: openrisc-asm.c:292 xc16x-asm.c:427 xstormy16-asm.c:327
msgid "missing mnemonic in syntax string"
msgstr "mnemonik hilang dalam string sintaks"

#. We couldn't parse it.
#: fr30-asm.c:496 fr30-asm.c:500 fr30-asm.c:587 fr30-asm.c:688 frv-asm.c:1449
#: frv-asm.c:1453 frv-asm.c:1540 frv-asm.c:1641 ip2k-asm.c:697 ip2k-asm.c:701
#: ip2k-asm.c:788 ip2k-asm.c:889 iq2000-asm.c:645 iq2000-asm.c:649
#: iq2000-asm.c:736 iq2000-asm.c:837 m32c-asm.c:1775 m32c-asm.c:1779
#: m32c-asm.c:1866 m32c-asm.c:1967 m32r-asm.c:514 m32r-asm.c:518
#: m32r-asm.c:605 m32r-asm.c:706 mep-asm.c:1187 mep-asm.c:1191 mep-asm.c:1278
#: mep-asm.c:1379 mt-asm.c:781 mt-asm.c:785 mt-asm.c:872 mt-asm.c:973
#: openrisc-asm.c:427 openrisc-asm.c:431 openrisc-asm.c:518 openrisc-asm.c:619
#: xc16x-asm.c:562 xc16x-asm.c:566 xc16x-asm.c:653 xc16x-asm.c:754
#: xstormy16-asm.c:462 xstormy16-asm.c:466 xstormy16-asm.c:553
#: xstormy16-asm.c:654
msgid "unrecognized instruction"
msgstr "instruksti tidak dikenal"

#: fr30-asm.c:543 frv-asm.c:1496 ip2k-asm.c:744 iq2000-asm.c:692
#: m32c-asm.c:1822 m32r-asm.c:561 mep-asm.c:1234 mt-asm.c:828
#: openrisc-asm.c:474 xc16x-asm.c:609 xstormy16-asm.c:509
#, c-format
msgid "syntax error (expected char `%c', found `%c')"
msgstr "kesalahan sintaks (diharapkan karakter `%c', ditemukan `%c')"

#: fr30-asm.c:553 frv-asm.c:1506 ip2k-asm.c:754 iq2000-asm.c:702
#: m32c-asm.c:1832 m32r-asm.c:571 mep-asm.c:1244 mt-asm.c:838
#: openrisc-asm.c:484 xc16x-asm.c:619 xstormy16-asm.c:519
#, c-format
msgid "syntax error (expected char `%c', found end of instruction)"
msgstr "kesalahan sintaks (diharapkan karakter `%c', ditemukan akhir instruksi)"

#: fr30-asm.c:581 frv-asm.c:1534 ip2k-asm.c:782 iq2000-asm.c:730
#: m32c-asm.c:1860 m32r-asm.c:599 mep-asm.c:1272 mt-asm.c:866
#: openrisc-asm.c:512 xc16x-asm.c:647 xstormy16-asm.c:547
msgid "junk at end of line"
msgstr "sampah di akhir baris"

#: fr30-asm.c:687 frv-asm.c:1640 ip2k-asm.c:888 iq2000-asm.c:836
#: m32c-asm.c:1966 m32r-asm.c:705 mep-asm.c:1378 mt-asm.c:972
#: openrisc-asm.c:618 xc16x-asm.c:753 xstormy16-asm.c:653
msgid "unrecognized form of instruction"
msgstr "bentuk instruksi tidak dikenal"

#: fr30-asm.c:699 frv-asm.c:1652 ip2k-asm.c:900 iq2000-asm.c:848
#: m32c-asm.c:1978 m32r-asm.c:717 mep-asm.c:1390 mt-asm.c:984
#: openrisc-asm.c:630 xc16x-asm.c:765 xstormy16-asm.c:665
#, c-format
msgid "bad instruction `%.50s...'"
msgstr "instruksi buruk `%.50s...'"

#: fr30-asm.c:702 frv-asm.c:1655 ip2k-asm.c:903 iq2000-asm.c:851
#: m32c-asm.c:1981 m32r-asm.c:720 mep-asm.c:1393 mt-asm.c:987
#: openrisc-asm.c:633 xc16x-asm.c:768 xstormy16-asm.c:668
#, c-format
msgid "bad instruction `%.50s'"
msgstr "instruksi buruk `%.50s'"

#. Default text to print if an instruction isn't recognized.
#: fr30-dis.c:41 frv-dis.c:41 ip2k-dis.c:41 iq2000-dis.c:41 m32c-dis.c:41
#: m32r-dis.c:41 mep-dis.c:41 mmix-dis.c:278 mt-dis.c:41 openrisc-dis.c:41
#: xc16x-dis.c:41 xstormy16-dis.c:41
msgid "*unknown*"
msgstr "*tidak dikenal*"

#: fr30-dis.c:299 frv-dis.c:396 ip2k-dis.c:288 iq2000-dis.c:189 m32c-dis.c:891
#: m32r-dis.c:256 mep-dis.c:776 mt-dis.c:290 openrisc-dis.c:135
#: xc16x-dis.c:375 xstormy16-dis.c:168
#, c-format
msgid "Unrecognized field %d while printing insn.\n"
msgstr "Field tidak dikenal %d saat mencetak insn.\n"

#: fr30-ibld.c:163 frv-ibld.c:163 ip2k-ibld.c:163 iq2000-ibld.c:163
#: m32c-ibld.c:163 m32r-ibld.c:163 mep-ibld.c:163 mt-ibld.c:163
#: openrisc-ibld.c:163 xc16x-ibld.c:163 xstormy16-ibld.c:163
#, c-format
msgid "operand out of range (%ld not between %ld and %lu)"
msgstr "operand di luar batas (%ld tidak antara %ld dan %lu)"

#: fr30-ibld.c:184 frv-ibld.c:184 ip2k-ibld.c:184 iq2000-ibld.c:184
#: m32c-ibld.c:184 m32r-ibld.c:184 mep-ibld.c:184 mt-ibld.c:184
#: openrisc-ibld.c:184 xc16x-ibld.c:184 xstormy16-ibld.c:184
#, c-format
msgid "operand out of range (0x%lx not between 0 and 0x%lx)"
msgstr "operand di luar batas (0x%lx tidak antara 0 dan 0x%lx)"

#: fr30-ibld.c:726 frv-ibld.c:852 ip2k-ibld.c:603 iq2000-ibld.c:709
#: m32c-ibld.c:1727 m32r-ibld.c:661 mep-ibld.c:1024 mt-ibld.c:745
#: openrisc-ibld.c:629 xc16x-ibld.c:748 xstormy16-ibld.c:674
#, c-format
msgid "Unrecognized field %d while building insn.\n"
msgstr "Field tidak dikenal %d saat membuild insn.\n"

#: fr30-ibld.c:931 frv-ibld.c:1169 ip2k-ibld.c:678 iq2000-ibld.c:884
#: m32c-ibld.c:2888 m32r-ibld.c:798 mep-ibld.c:1444 mt-ibld.c:965
#: openrisc-ibld.c:729 xc16x-ibld.c:968 xstormy16-ibld.c:820
#, c-format
msgid "Unrecognized field %d while decoding insn.\n"
msgstr "Field tidak dikenal %d saat mendekode insn.\n"

#: fr30-ibld.c:1077 frv-ibld.c:1447 ip2k-ibld.c:752 iq2000-ibld.c:1015
#: m32c-ibld.c:3505 m32r-ibld.c:911 mep-ibld.c:1737 mt-ibld.c:1165
#: openrisc-ibld.c:806 xc16x-ibld.c:1189 xstormy16-ibld.c:930
#, c-format
msgid "Unrecognized field %d while getting int operand.\n"
msgstr "Field tidak dikenal %d saat memperoleh operand int.\n"

#: fr30-ibld.c:1205 frv-ibld.c:1707 ip2k-ibld.c:808 iq2000-ibld.c:1128
#: m32c-ibld.c:4104 m32r-ibld.c:1006 mep-ibld.c:2012 mt-ibld.c:1347
#: openrisc-ibld.c:865 xc16x-ibld.c:1392 xstormy16-ibld.c:1022
#, c-format
msgid "Unrecognized field %d while getting vma operand.\n"
msgstr "Field tidak dikenal %d saat memperoleh operand vma.\n"

#: fr30-ibld.c:1336 frv-ibld.c:1974 ip2k-ibld.c:867 iq2000-ibld.c:1248
#: m32c-ibld.c:4691 m32r-ibld.c:1107 mep-ibld.c:2271 mt-ibld.c:1536
#: openrisc-ibld.c:931 xc16x-ibld.c:1596 xstormy16-ibld.c:1121
#, c-format
msgid "Unrecognized field %d while setting int operand.\n"
msgstr "Field tidak dikenal %d saat menset operand int.\n"

#: fr30-ibld.c:1457 frv-ibld.c:2231 ip2k-ibld.c:916 iq2000-ibld.c:1358
#: m32c-ibld.c:5268 m32r-ibld.c:1198 mep-ibld.c:2520 mt-ibld.c:1715
#: openrisc-ibld.c:987 xc16x-ibld.c:1790 xstormy16-ibld.c:1210
#, c-format
msgid "Unrecognized field %d while setting vma operand.\n"
msgstr "Field tidak dikenal %d saat menset operand vma.\n"

#: frv-asm.c:608
msgid "missing `]'"
msgstr "hilang `]'"

#: frv-asm.c:611 frv-asm.c:621
msgid "Special purpose register number is out of range"
msgstr "Nomor register tujuan spesial di luar batas"

#: frv-asm.c:908
msgid "Value of A operand must be 0 or 1"
msgstr "Nilai dari operand A harus berupa 0 atau 1"

#: frv-asm.c:944
msgid "register number must be even"
msgstr "nomor register harus genap"

#. -- assembler routines inserted here.
#. -- asm.c
#: frv-asm.c:972 iq2000-asm.c:56 m32c-asm.c:141 m32c-asm.c:237 m32c-asm.c:279
#: m32c-asm.c:338 m32c-asm.c:360 m32r-asm.c:53 mep-asm.c:232 mep-asm.c:250
#: mep-asm.c:265 mep-asm.c:280 mep-asm.c:292 openrisc-asm.c:54
msgid "missing `)'"
msgstr "hilang `)'"

#: h8300-dis.c:327
#, c-format
msgid "Hmmmm 0x%x"
msgstr "Hmmmm 0x%x"

#: h8300-dis.c:708
#, c-format
msgid "Don't understand 0x%x \n"
msgstr "Tidak mengerti 0x%x \n"

#: h8500-dis.c:124
#, c-format
msgid "can't cope with insert %d\n"
msgstr "tidak dapat menangani insert %d\n"

#. Couldn't understand anything.
#: h8500-dis.c:324
#, c-format
msgid "%02x\t\t*unknown*"
msgstr "%02x\t\t*tidak dikenal*"

#: i386-dis.c:9545
msgid "<internal disassembler error>"
msgstr "<kesalahan asembler internal>"

#: i386-dis.c:9776
#, c-format
msgid ""
"\n"
"The following i386/x86-64 specific disassembler options are supported for use\n"
"with the -M switch (multiple options should be separated by commas):\n"
msgstr ""
"\n"
"Option disablembler khusus i386/x86-64 berikut ini didukung untuk digunakan dengan\n"
"pilihan -M (pilihan double seharusnya dipisahkan dengan koma):\n"

#: i386-dis.c:9780
#, c-format
msgid "  x86-64      Disassemble in 64bit mode\n"
msgstr "  x86-64      Disasemble dalam mode 64bit\n"

#: i386-dis.c:9781
#, c-format
msgid "  i386        Disassemble in 32bit mode\n"
msgstr "  i386        Disassemble dalam mode 32bit\n"

#: i386-dis.c:9782
#, c-format
msgid "  i8086       Disassemble in 16bit mode\n"
msgstr "  i8086       Disassemble dalam mode 16bit\n"

#: i386-dis.c:9783
#, c-format
msgid "  att         Display instruction in AT&T syntax\n"
msgstr "  att         Tampilkan instruksi dalam sintaks AT&T\n"

#: i386-dis.c:9784
#, c-format
msgid "  intel       Display instruction in Intel syntax\n"
msgstr "  intel       Tampilkan instruksi dalam sintaks Intel\n"

#: i386-dis.c:9785
#, c-format
msgid ""
"  att-mnemonic\n"
"              Display instruction in AT&T mnemonic\n"
msgstr ""
"  att-mnemonic\n"
"              Tampilkan instruksi dalam mnemonic AT&T\n"

#: i386-dis.c:9787
#, c-format
msgid ""
"  intel-mnemonic\n"
"              Display instruction in Intel mnemonic\n"
msgstr ""
"  intel-mnemonic\n"
"              Tampilkan instruksi dalam mnemonic Intel\n"

#: i386-dis.c:9789
#, c-format
msgid "  addr64      Assume 64bit address size\n"
msgstr "  addr64      Asumsikan ukuran alamat 64bit\n"

#: i386-dis.c:9790
#, c-format
msgid "  addr32      Assume 32bit address size\n"
msgstr "  addr32      Asumsikan ukuran alamat 32bit\n"

#: i386-dis.c:9791
#, c-format
msgid "  addr16      Assume 16bit address size\n"
msgstr "  addr16      Asumsikan ukuran alamat 16bit\n"

#: i386-dis.c:9792
#, c-format
msgid "  data32      Assume 32bit data size\n"
msgstr "  data32      Asumsikan ukuran data 32bit\n"

#: i386-dis.c:9793
#, c-format
msgid "  data16      Assume 16bit data size\n"
msgstr "  data16      Asumsikan ukuran data 16bit\n"

#: i386-dis.c:9794
#, c-format
msgid "  suffix      Always display instruction suffix in AT&T syntax\n"
msgstr "  akhiran     Selalu tampilkan akhiran instruksi dalam sintaks AT&T\n"

#: i386-gen.c:411 ia64-gen.c:307
#, c-format
msgid "%s: Error: "
msgstr "%s: Error: "

#: i386-gen.c:510
#, c-format
msgid "%s: %d: Unknown bitfield: %s\n"
msgstr "%s: %d: bitfield tidak diketahui: %s\n"

#: i386-gen.c:674
#, c-format
msgid "can't find i386-opc.tbl for reading, errno = %s\n"
msgstr "tidak dapat menemukan i386-opc.tbl untuk pembacaan, nomor error = %s\n"

#: i386-gen.c:851
#, c-format
msgid "can't find i386-reg.tbl for reading, errno = %s\n"
msgstr "tidak dapat menemukan i386-reg.tbl untuk pembacaan, nomor error = %s\n"

#: i386-gen.c:943
#, c-format
msgid "can't create i386-init.h, errno = %s\n"
msgstr "tidak dapat membuat i386-init.h, nomor error = %s\n"

#: i386-gen.c:1032 ia64-gen.c:2850
#, c-format
msgid "unable to change directory to \"%s\", errno = %s\n"
msgstr "tidak dapat mengubah direktori ke \"%s\", nomor error = %s\n"

#: i386-gen.c:1039
#, c-format
msgid "%d unused bits in i386_cpu_flags.\n"
msgstr "%d bit tidak digunakan dalam i386_cpu_flags.\n"

#: i386-gen.c:1046
#, c-format
msgid "%d unused bits in i386_operand_type.\n"
msgstr "%d bit tidak digunakan dalam i386_operand_type.\n"

#: i386-gen.c:1060
#, c-format
msgid "can't create i386-tbl.h, errno = %s\n"
msgstr "tidak dapat membuat i386-tbl.h, nomor error = %s\n"

#: ia64-gen.c:320
#, c-format
msgid "%s: Warning: "
msgstr "%s: Peringatan: "

#: ia64-gen.c:506 ia64-gen.c:740
#, c-format
msgid "multiple note %s not handled\n"
msgstr "catatan ganda %s tidak ditangani\n"

#: ia64-gen.c:617
msgid "can't find ia64-ic.tbl for reading\n"
msgstr "tidak dapat menemukan ia64-ic.tbl untuk pembacaan\n"

#: ia64-gen.c:822
#, c-format
msgid "can't find %s for reading\n"
msgstr "tidak dapat menemukan %s untuk pembacaan\n"

#: ia64-gen.c:1046
#, c-format
msgid ""
"most recent format '%s'\n"
"appears more restrictive than '%s'\n"
msgstr ""
"format paling baru '%s'\n"
"tampak lebih terbatas dari '%s'\n"

#: ia64-gen.c:1057
#, c-format
msgid "overlapping field %s->%s\n"
msgstr "daerah saling menimpa %s->%s\n"

#: ia64-gen.c:1254
#, c-format
msgid "overwriting note %d with note %d (IC:%s)\n"
msgstr "catatan saling menulis %d dengan catatan %d (IC:%s)\n"

#: ia64-gen.c:1459
#, c-format
msgid "don't know how to specify %% dependency %s\n"
msgstr "tidak tahu bagaimana menspesifikasikan %% ketergantungan %s\n"

#: ia64-gen.c:1481
#, c-format
msgid "Don't know how to specify # dependency %s\n"
msgstr "Tidak tahu bagaimana menspesifikasikan # ketergantungan %s\n"

#: ia64-gen.c:1520
#, c-format
msgid "IC:%s [%s] has no terminals or sub-classes\n"
msgstr "IC:%s [%s] tidak memiliki terminal atau sub-kelas\n"

#: ia64-gen.c:1523
#, c-format
msgid "IC:%s has no terminals or sub-classes\n"
msgstr "IC:%s tidak memiliki terminal atau sub-kelas\n"

#: ia64-gen.c:1532
#, c-format
msgid "no insns mapped directly to terminal IC %s [%s]"
msgstr "tidak ada insns terpetakan secara langsung ke terminal IC %s [%s]"

#: ia64-gen.c:1535
#, c-format
msgid "no insns mapped directly to terminal IC %s\n"
msgstr "tidak ada insns terpetakan langsung ke terminal IC %s\n"

#: ia64-gen.c:1546
#, c-format
msgid "class %s is defined but not used\n"
msgstr "kelas %s didefinisikan tetapi tidak digunakan\n"

#: ia64-gen.c:1559
#, c-format
msgid "Warning: rsrc %s (%s) has no chks\n"
msgstr "Peringatan: rsrc %s (%s) tidak memiliki chks\n"

#: ia64-gen.c:1562
#, c-format
msgid "Warning: rsrc %s (%s) has no chks or regs\n"
msgstr "Peringatan: rsrc %s (%s) tidak memiliki chks atau regs\n"

#: ia64-gen.c:1566
#, c-format
msgid "rsrc %s (%s) has no regs\n"
msgstr "rsrc %s (%s) tidak memiliki regs\n"

#: ia64-gen.c:2478
#, c-format
msgid "IC note %d in opcode %s (IC:%s) conflicts with resource %s note %d\n"
msgstr "IC catatan %d dalam opcode %s (IC:%s) konflik dengan sumber daya %s catatan %d\n"

#: ia64-gen.c:2506
#, c-format
msgid "IC note %d for opcode %s (IC:%s) conflicts with resource %s note %d\n"
msgstr "IC catatan %d untuk opcode %s (IC:%s) konflik dengan sumber data %s catatan %d\n"

#: ia64-gen.c:2520
#, c-format
msgid "opcode %s has no class (ops %d %d %d)\n"
msgstr "opcode %s tidak memiliki kelas (ops %d %d %d)\n"

#. We've been passed a w.  Return with an error message so that
#. cgen will try the next parsing option.
#: ip2k-asm.c:81
msgid "W keyword invalid in FR operand slot."
msgstr "W kata kunci tidak valid dalam FR operand slot."

#. Invalid offset present.
#: ip2k-asm.c:106
msgid "offset(IP) is not a valid form"
msgstr "offset(IP) bukan sebuah bentuk valid"

#. Found something there in front of (DP) but it's out
#. of range.
#: ip2k-asm.c:154
msgid "(DP) offset out of range."
msgstr "(DP) ofset di luar batas."

#. Found something there in front of (SP) but it's out
#. of range.
#: ip2k-asm.c:195
msgid "(SP) offset out of range."
msgstr "(SP) ofset di luar batas."

#: ip2k-asm.c:211
msgid "illegal use of parentheses"
msgstr "penggunaan tidak legal dari tanda petik"

#: ip2k-asm.c:218
msgid "operand out of range (not between 1 and 255)"
msgstr "operand di luar batas (tidak antara 1 dan 255)"

#. Something is very wrong. opindex has to be one of the above.
#: ip2k-asm.c:242
msgid "parse_addr16: invalid opindex."
msgstr "parse_addr16: opindex tidak valid."

#: ip2k-asm.c:296
msgid "Byte address required. - must be even."
msgstr "Alamat byte dibutuhkan. - harus genap."

#: ip2k-asm.c:305
msgid "cgen_parse_address returned a symbol. Literal required."
msgstr "cgen_parse_address mengembalikan sebuah simbol. Literal dibutuhkan."

#: ip2k-asm.c:360
msgid "percent-operator operand is not a symbol"
msgstr "percent-operator operand bukan sebuah simbol"

#: ip2k-asm.c:413
msgid "Attempt to find bit index of 0"
msgstr "Mencoba untuk menemukan bit index dari 0"

#: iq2000-asm.c:112 iq2000-asm.c:142
msgid "immediate value cannot be register"
msgstr "nilai langsung tidak dapat berupa register"

#: iq2000-asm.c:123 iq2000-asm.c:153
msgid "immediate value out of range"
msgstr "nilai langsung di luar batas"

#: iq2000-asm.c:182
msgid "21-bit offset out of range"
msgstr "21-bit ofset di luar batas"

#: m10200-dis.c:158 m10300-dis.c:582
#, c-format
msgid "unknown\t0x%04lx"
msgstr "tidak dikenal\t0x%04lx"

#: m10200-dis.c:328
#, c-format
msgid "unknown\t0x%02lx"
msgstr "tidak dikenal\t0x%02lx"

#: m32c-asm.c:117
msgid "imm:6 immediate is out of range"
msgstr "imm:6 nilai langsung di luar batas"

#: m32c-asm.c:147
#, c-format
msgid "%dsp8() takes a symbolic address, not a number"
msgstr "%dsp8() mengambil sebuah alamat simbolik, bukan sebuah angka"

#: m32c-asm.c:160 m32c-asm.c:164 m32c-asm.c:255
msgid "dsp:8 immediate is out of range"
msgstr "dsp:8 nilai langsung di luar batas"

#: m32c-asm.c:185 m32c-asm.c:189
msgid "Immediate is out of range -8 to 7"
msgstr "nilai langsung di luar dari jangkauan -8 ke 7"

#: m32c-asm.c:210 m32c-asm.c:214
msgid "Immediate is out of range -7 to 8"
msgstr "nilai langsung di luar dari jangkauan -7 ke 8"

#: m32c-asm.c:285
#, c-format
msgid "%dsp16() takes a symbolic address, not a number"
msgstr "%dsp16() mengambil sebuah alamat simbolik, tetapi bukan sebuah angka"

#: m32c-asm.c:308 m32c-asm.c:315 m32c-asm.c:378
msgid "dsp:16 immediate is out of range"
msgstr "dsp:16 nilai langsung di luar batas"

#: m32c-asm.c:404
msgid "dsp:20 immediate is out of range"
msgstr "dsp:20 nilai langsung di luar batas"

#: m32c-asm.c:430 m32c-asm.c:450
msgid "dsp:24 immediate is out of range"
msgstr "dsp:24 nilai langsung di luar batas"

#: m32c-asm.c:483
msgid "immediate is out of range 1-2"
msgstr "nilai langsung di luar dari jangkauan 1-2"

#: m32c-asm.c:501
msgid "immediate is out of range 1-8"
msgstr "nilai langsung di luar dari jangkauan 1-8"

#: m32c-asm.c:519
msgid "immediate is out of range 0-7"
msgstr "nilai langsung di luar dari jangkauan 0-7"

#: m32c-asm.c:555
msgid "immediate is out of range 2-9"
msgstr "nilai langsung di luar dari jangkauan 2-9"

#: m32c-asm.c:573
msgid "Bit number for indexing general register is out of range 0-15"
msgstr "Nomor bit untuk register umum pengindeksan diluar dari jangkauan 0-15"

#: m32c-asm.c:611 m32c-asm.c:667
msgid "bit,base is out of range"
msgstr "bit,bas di luar batas"

#: m32c-asm.c:618 m32c-asm.c:623 m32c-asm.c:671
msgid "bit,base out of range for symbol"
msgstr "bit,base di luar dari jangkauan untuk simbol"

#: m32c-asm.c:807
msgid "not a valid r0l/r0h pair"
msgstr "bukan sebuah valid pasangan r0l/r0h"

#: m32c-asm.c:837
msgid "Invalid size specifier"
msgstr "Ukuran penspesifikasi tidak valid"

#: m68k-dis.c:1163
#, c-format
msgid "<function code %d>"
msgstr "<kode fungsi %d>"

#: m68k-dis.c:1320
#, c-format
msgid "<internal error in opcode table: %s %s>\n"
msgstr "<kesalahan internal dalam tabel opcode: %s %s>\n"

#: m88k-dis.c:679
#, c-format
msgid "# <dis error: %08lx>"
msgstr "# <kesalahan dis: %08lx>"

#: mep-asm.c:114
msgid "Only $tp or $13 allowed for this opcode"
msgstr "Hanya $tp atau $13 diperbolehkan untuk opcode ini"

#: mep-asm.c:128
msgid "Only $sp or $15 allowed for this opcode"
msgstr "Hanya $sp atau $15 diperbolehkan untuk opcode ini"

#: mep-asm.c:299 mep-asm.c:455
#, c-format
msgid "invalid %function() here"
msgstr "%function disini tidak valid"

#: mips-dis.c:781
msgid "# internal error, incomplete extension sequence (+)"
msgstr "# internal error, urutan ekstensi (+) tidak lengkap"

#: mips-dis.c:915
#, c-format
msgid "# internal error, undefined extension sequence (+%c)"
msgstr "# kesalahan internal, tidak terdefinisi urutan ekstensi(+%c)"

#: mips-dis.c:1274
#, c-format
msgid "# internal error, undefined modifier (%c)"
msgstr "# kesalahan internal, tidak terdefinisi pemodifikasi(%c)"

#: mips-dis.c:1881
#, c-format
msgid "# internal disassembler error, unrecognised modifier (%c)"
msgstr "# kesalahan internal disasembler, modifier tidak dikenal (%c)"

#: mips-dis.c:2112
#, c-format
msgid ""
"\n"
"The following MIPS specific disassembler options are supported for use\n"
"with the -M switch (multiple options should be separated by commas):\n"
msgstr ""
"\n"
"Pilihan disablembler khusus MIPS berikut ini didukung untuk digunakan dengan\n"
"pilihan -M (pilihan ganda seharusnya dipisahkan dengan koma):\n"

#: mips-dis.c:2116
#, c-format
msgid ""
"\n"
"  gpr-names=ABI            Print GPR names according to  specified ABI.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  gpr-names=ABI            Tampilkan nama GPR menurut ABI yang dispesifikasikan.\n"
"                           Baku: berdasar dari binari yang sedang diassembled.\n"

#: mips-dis.c:2120
#, c-format
msgid ""
"\n"
"  fpr-names=ABI            Print FPR names according to specified ABI.\n"
"                           Default: numeric.\n"
msgstr ""
"\n"
"  fpr-names=ABI            Tampilkan nama FPR menurut ABI yang dispesifikasikan.\n"
"                           Baku: numerik.\n"

#: mips-dis.c:2124
#, c-format
msgid ""
"\n"
"  cp0-names=ARCH           Print CP0 register names according to\n"
"                           specified architecture.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  cp0-names=ARCH           Tampilkan nama register CP0 menurut arsitektur\n"
"                           yang dispesifikasikan.\n"
"                           Baku: berdasar dari binari yang sedang diassembled.\n"

#: mips-dis.c:2129
#, c-format
msgid ""
"\n"
"  hwr-names=ARCH           Print HWR names according to specified \n"
"\t\t\t   architecture.\n"
"                           Default: based on binary being disassembled.\n"
msgstr ""
"\n"
"  hwr-names=ARCH           Tampilkan nama HWR menurut arsitektur\n"
"\t\t\t  yang dispesifikasikan.\n"
"                           Baku: berdasar dari binari yang sedang diassembled.\n"

#: mips-dis.c:2134
#, c-format
msgid ""
"\n"
"  reg-names=ABI            Print GPR and FPR names according to\n"
"                           specified ABI.\n"
msgstr ""
"\n"
"  reg-names=ABI            Tampilkan nama GPR dan FPR menurut ABI yang\n"
"                           dispesifikasikan.\n"

#: mips-dis.c:2138
#, c-format
msgid ""
"\n"
"  reg-names=ARCH           Print CP0 register and HWR names according to\n"
"                           specified architecture.\n"
msgstr ""
"\n"
"  reg-names=ARCH           Tampilkan nama register CP0 dan HWR menurut\n"
"                           arsitektur yang dispesifikasikan.\n"

#: mips-dis.c:2142
#, c-format
msgid ""
"\n"
"  For the options above, the following values are supported for \"ABI\":\n"
"   "
msgstr ""
"\n"
"  Untuk pilihan diatas, nilai berikut didukung untuk \"ABI\":\n"
"   "

#: mips-dis.c:2147 mips-dis.c:2155 mips-dis.c:2157
#, c-format
msgid "\n"
msgstr "\n"

#: mips-dis.c:2149
#, c-format
msgid ""
"\n"
"  For the options above, The following values are supported for \"ARCH\":\n"
"   "
msgstr ""
"\n"
"  Untuk pilihan diatas, nilai berikut didukung untuk \"ARCH\":\n"
"   "

#: mmix-dis.c:35
#, c-format
msgid "Bad case %d (%s) in %s:%d\n"
msgstr "Case buruk %d (%s) dalam %s:%d\n"

#: mmix-dis.c:45
#, c-format
msgid "Internal: Non-debugged code (test-case missing): %s:%d"
msgstr "Internal: Kode belum didebug (tidak ada test-case): %s:%d"

#: mmix-dis.c:54
msgid "(unknown)"
msgstr "(tidak dikenal)"

#: mmix-dis.c:513
#, c-format
msgid "*unknown operands type: %d*"
msgstr "*tipe operand tidak dikenal: %d*"

#: mt-asm.c:110 mt-asm.c:190
msgid "Operand out of range. Must be between -32768 and 32767."
msgstr "Operand di luar batas. Harus berada diantara -32768 dan 32767."

#: mt-asm.c:149
msgid "Biiiig Trouble in parse_imm16!"
msgstr "Masalah BESAR dalam parse_imm16!"

#: mt-asm.c:157
msgid "The percent-operator's operand is not a symbol"
msgstr "Operand percent-operator bukan sebuah simbol"

#: mt-asm.c:395
msgid "invalid operand.  type may have values 0,1,2 only."
msgstr "operand tidak valid. tipe mungkin hanya memiliki nilai 0,1,2."

#. I and Z are output operands and can`t be immediate
#. A is an address and we can`t have the address of
#. an immediate either. We don't know how much to increase
#. aoffsetp by since whatever generated this is broken
#. anyway!
#: ns32k-dis.c:534
#, c-format
msgid "$<undefined>"
msgstr "$<tidak didefinisikan>"

#: ppc-opc.c:862 ppc-opc.c:890
msgid "invalid conditional option"
msgstr "option kondisional tidak valid"

#: ppc-opc.c:892
msgid "attempt to set y bit when using + or - modifier"
msgstr "berusaha menset bit y saat menggunakan modifier + atau -"

#: ppc-opc.c:924
msgid "invalid mask field"
msgstr "topeng daerah tidak valid"

#: ppc-opc.c:950
msgid "ignoring invalid mfcr mask"
msgstr "mengabaikan topeng mfcr tidak valid"

#: ppc-opc.c:1000 ppc-opc.c:1035
msgid "illegal bitmask"
msgstr "bitmask ilegal"

#: ppc-opc.c:1155
msgid "index register in load range"
msgstr "register indeks dalam daerah pemuatan"

#: ppc-opc.c:1171
msgid "source and target register operands must be different"
msgstr "sumber dan target operand register harus berbeda"

#: ppc-opc.c:1186
msgid "invalid register operand when updating"
msgstr "operand register tidak valid saat mengupdate"

#: ppc-opc.c:1265
msgid "invalid sprg number"
msgstr "nomor sprg tidak valid"

#: s390-dis.c:276
#, c-format
msgid ""
"\n"
"The following S/390 specific disassembler options are supported for use\n"
"with the -M switch (multiple options should be separated by commas):\n"
msgstr ""
"\n"
"Pilihan disablembler khusus S/390 berikut ini didukung untuk digunakan dengan\n"
"pilihan -M (pilihan ganda seharusnya dipisahkan dengan koma):\n"

#: s390-dis.c:280
#, c-format
msgid "  esa         Disassemble in ESA architecture mode\n"
msgstr "  esa         Disassemble dalam mode arsitektur ESA\n"

#: s390-dis.c:281
#, c-format
msgid "  zarch       Disassemble in z/Architecture mode\n"
msgstr "  zarch       Disassemble dalam mode z/Architecture\n"

#: score-dis.c:220 score-dis.c:383
msgid "<illegal instruction>"
msgstr "<instruksi tidak legal>"

#: sparc-dis.c:282
#, c-format
msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "Kesalahan internal:  sparc-opcode.h buruk: \"%s\", %#.8lx, %#.8lx\n"

#: sparc-dis.c:293
#, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "Kesalahan internal: sparc-opcode.h buruk: \"%s\", %#.8lx, %#.8lx\n"

#: sparc-dis.c:343
#, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
msgstr "Kesalahan internal: sparc-opcode.h buruk: \"%s\" == \"%s\"\n"

#. Mark as non-valid instruction.
#: sparc-dis.c:1013
msgid "unknown"
msgstr "tidak dikenal"

#: v850-dis.c:239
#, c-format
msgid "unknown operand shift: %x\n"
msgstr "shift operand tidak dikenal: %x\n"

#: v850-dis.c:253
#, c-format
msgid "unknown pop reg: %d\n"
msgstr "reg pop tidak dikenal: %d\n"

#. The functions used to insert and extract complicated operands.
#. Note: There is a conspiracy between these functions and
#. v850_insert_operand() in gas/config/tc-v850.c.  Error messages
#. containing the string 'out of range' will be ignored unless a
#. specific command line option is given to GAS.
#: v850-opc.c:48
msgid "displacement value is not in range and is not aligned"
msgstr "nilai displacement tidak dalam jangkauan dan tidak rata"

#: v850-opc.c:49
msgid "displacement value is out of range"
msgstr "nilai displacement di luar batas"

#: v850-opc.c:50
msgid "displacement value is not aligned"
msgstr "nilai displacement tidak rata"

#: v850-opc.c:52
msgid "immediate value is out of range"
msgstr "nilai langsung di luar batas"

#: v850-opc.c:60
msgid "branch value not in range and to odd offset"
msgstr "nilai cabang tidak dalam jangkauan"

#: v850-opc.c:62 v850-opc.c:89
msgid "branch value out of range"
msgstr "nilai cabang di luar jangkauan"

#: v850-opc.c:65 v850-opc.c:92
msgid "branch to odd offset"
msgstr "cabang offset ganjil"

#: v850-opc.c:87
msgid "branch value not in range and to an odd offset"
msgstr "nilai cabang di luar jangkauan dan offset ganjil"

#: v850-opc.c:279
msgid "invalid register for stack adjustment"
msgstr "register tidak valid untuk penyesuaian stack"

#: v850-opc.c:299
msgid "immediate value not in range and not even"
msgstr "nilai langsung tidak dalam jangkauan dan tidak genap"

#: v850-opc.c:304
msgid "immediate value must be even"
msgstr "nilai langsung harus genap"

#: xc16x-asm.c:66
msgid "Missing '#' prefix"
msgstr "Hilang awalan '#'"

#: xc16x-asm.c:82
msgid "Missing '.' prefix"
msgstr "Hilang awalan '.'"

#: xc16x-asm.c:98
msgid "Missing 'pof:' prefix"
msgstr "Hilang awalan 'pof:'"

#: xc16x-asm.c:114
msgid "Missing 'pag:' prefix"
msgstr "Hilang awalan 'pag:'"

#: xc16x-asm.c:130
msgid "Missing 'sof:' prefix"
msgstr "Hilang awalan 'sof:'"

#: xc16x-asm.c:146
msgid "Missing 'seg:' prefix"
msgstr "Hilanga awalan 'seg:'"

#: xstormy16-asm.c:71
msgid "Bad register in preincrement"
msgstr "register buruk dalam preinkremen"

#: xstormy16-asm.c:76
msgid "Bad register in postincrement"
msgstr "Register buruk dalam pascainkremen"

#: xstormy16-asm.c:78
msgid "Bad register name"
msgstr "Nama register buruk"

#: xstormy16-asm.c:82
msgid "Label conflicts with register name"
msgstr "Label konflik dengan nama register"

#: xstormy16-asm.c:86
msgid "Label conflicts with `Rx'"
msgstr "Label konflik dengan `Rx'"

#: xstormy16-asm.c:88
msgid "Bad immediate expression"
msgstr "Ekspresi langsung yang buruk"

#: xstormy16-asm.c:109
msgid "No relocation for small immediate"
msgstr "Tidak ada relokasi untuk immediate kecil"

#: xstormy16-asm.c:119
msgid "Small operand was not an immediate number"
msgstr "Operand kecil bukan sebuah angka immediate"

#: xstormy16-asm.c:157
msgid "Operand is not a symbol"
msgstr "Operand bukan sebuah simbol"

#: xstormy16-asm.c:165
msgid "Syntax error: No trailing ')'"
msgstr "Sintaks error: Tidak ada akhiran ')'"

#~ msgid "unknown\t0x%04x"
#~ msgstr "tidak dikenal\t0x%04x"

#~ msgid "offset not between -2048 and 2047"
#~ msgstr "offset tidak berada antara -2048 dan 2047"

#~ msgid "offset not between -8192 and 8191"
#~ msgstr "offset tidak berada antara -8192 dan 8191"

#~ msgid "ignoring least significant bits in branch offset"
#~ msgstr "mengabaikan least significant bit dalam offset cabang"
