# translation of opcodes-2.19.1.po to
# Finnish messages for opcodes
# This file is distributed under the same license as the binutils package.
# Copyright (C) 2005, 2009 Free Software Foundation, Inc.
#
# Jorma Karvonen <karvonen.jorma@gmail.com>, 2006-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-06-21 20:52+0200\n"
"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.2\n"
"X-Poedit-Language: Finnish\n"
"X-Poedit-Country: FINLAND\n"
"X-Poedit-SourceCharset: utf-8\n"

#: alpha-opc.c:155
msgid "branch operand unaligned"
msgstr "haaroituskohdemuuttuja ei ole tasarajalla"

#: alpha-opc.c:171 alpha-opc.c:187
msgid "jump hint unaligned"
msgstr "hyppyvihje ei ole tasarajalla"

#: arc-dis.c:77
msgid "Illegal limm reference in last instruction!\n"
msgstr "Viimeisimmän käskyn virheellinen long-tyyppinen suora muistiosoiteviittaus!\n"

#: arc-opc.c:386
msgid "unable to fit different valued constants into instruction"
msgstr "Eriarvoiset vakiot eivät sovi käskyyn"

#: arc-opc.c:395
msgid "auxiliary register not allowed here"
msgstr "apurekisteriä ei sallita tässä"

#: arc-opc.c:401 arc-opc.c:418
msgid "attempt to set readonly register"
msgstr "yritettiin asettaa kirjoittamiselta suojattua rekisteriä"

#: arc-opc.c:406 arc-opc.c:423
msgid "attempt to read writeonly register"
msgstr "yritettiin lukea lukemiselta suojattua rekisteriä"

#: arc-opc.c:428
#, c-format
msgid "invalid register number `%d'"
msgstr "Väärä rekisterinimi \"%d\""

#: arc-opc.c:594 arc-opc.c:645 arc-opc.c:673
msgid "too many long constants"
msgstr "liian monta pitkää vakiota"

#: arc-opc.c:668
msgid "too many shimms in load"
msgstr "liian monta short-tyyppistä suoraa muistiosoitetta ladattavana"

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

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

#: arc-opc.c:818 arc-opc.c:860
msgid "address writeback not allowed"
msgstr "osoitteen kirjoitus takaisin ei ole sallittu"

#: arc-opc.c:822
msgid "store value must be zero"
msgstr "tallennettavan arvon on oltava nolla"

#: arc-opc.c:847
msgid "invalid load/shimm insn"
msgstr "virheellinen lataus/short-tyyppinen suora muistiosoitekäsky"

#: arc-opc.c:856
msgid "ld operand error"
msgstr "ld-käskyn kohdemuuttujan virhe"

#: arc-opc.c:943
msgid "jump flags, but no .f seen"
msgstr "hyppyliput, mutta .f-määritettä ei ole"

#: arc-opc.c:946
msgid "jump flags, but no limm addr"
msgstr "hyppyliput, mutta long-tyyppistä suoraa muistiosoitetta ei ole"

#: arc-opc.c:949
msgid "flag bits of jump address limm lost"
msgstr "long-tyyppisen suoran muistiosoituksen hyppyosoitteen lippubitit puuttuvat"

#: arc-opc.c:952
msgid "attempt to set HR bits"
msgstr "yritettiin asettaa HR-bitit"

#: arc-opc.c:955
msgid "bad jump flags value"
msgstr "virheellinen hyppylippujen arvo"

#: arc-opc.c:988
msgid "branch address not on 4 byte boundary"
msgstr "haaroitusosoite ei ole 4-tavurajalla"

#: arc-opc.c:1024
msgid "must specify .jd or no nullify suffix"
msgstr "on määriteltävä .jd tai nollattava suffiksi"

#: arm-dis.c:1808
msgid "<illegal precision>"
msgstr "<virheellinen tarkkuus>"

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

#. XXX - should break 'option' at following delimiter.
#: arm-dis.c:3826
#, c-format
msgid "Unrecognised disassembler option: %s\n"
msgstr "Tunnistamaton disassembler-valinta: %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"
"Seuraavia ARM-kohtaisia disassembler-valintoja tuetaan käytössä\n"
"-M -valinnan kanssa:\n"

#: avr-dis.c:115 avr-dis.c:125
#, c-format
msgid "undefined"
msgstr "määrittelemätön"

#: avr-dis.c:187
#, c-format
msgid "Internal disassembler error"
msgstr "Sisäinen disassembler-virhe"

#: avr-dis.c:236
#, c-format
msgid "unknown constraint `%c'"
msgstr "tuntematon rajoite \"%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 "kohdemuuttuja ei ole rajojen sisällä (%ld ei ole %ld:n ja %ld:n välillä)"

#: cgen-asm.c:358
#, c-format
msgid "operand out of range (%lu not between %lu and %lu)"
msgstr "kohdemuuttuja ei ole rajojen sisällä (%lu ei ole %lu:n ja %lu:n välillä)"

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

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

#: dis-buf.c:68
#, c-format
msgid "Address 0x%s is out of bounds.\n"
msgstr "Osoite 0x%s ei ole sallittujen rajojen sisällä.\n"

#: fr30-asm.c:93 m32c-asm.c:877 m32c-asm.c:884
msgid "Register number is not valid"
msgstr "Rekisterinumero ei ole oikea"

#: fr30-asm.c:95
msgid "Register must be between r0 and r7"
msgstr "Rekisterin on oltava r0:n ja r7:n välillä"

#: fr30-asm.c:97
msgid "Register must be between r8 and r15"
msgstr "Rekisterin on oltava r8:n ja r15:n välillä"

#: fr30-asm.c:116 m32c-asm.c:915
msgid "Register list is not valid"
msgstr "Rekisteriluettelo ei ole oikea"

#: 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 "Tunnistamaton kenttä %d jäsentämisen aikana.\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 "syntaksimerkkijonosta puuttuu muistikas"

#. 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 "tunnistamaton käsky"

#: 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 "syntaksivirhe (odotettiin merkkiä \"%c\", löydettiin \"%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 "syntaksivirhe (odotettiin merkkiä \"%c\", löydettiin käskyn loppu)"

#: 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 "roskaa rivin lopussa"

#: 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 "käskyn muoto tunnistamaton"

#: 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 "väärä käsky \"%.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 "väärä käsky \"%.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 "*tuntematon*"

#: 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 "Tunnistamaton kenttä %d käskyä tulostettaessa.\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 "kohdemuuttuja ei ole rajojen sisällä (%ld ei ole %ld:n ja %lu:n välillä)"

#: 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 "kohdemuuttuja ei ole rajojen sisällä (0x%lx ei ole 0:n ja 0x%lx:n välillä)"

#: 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 "Tunnistamaton kenttä %d käskyä muodostettaessa.\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 "Tunnistamaton kenttä %d käskyä dekoodattaessa.\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 "Tunnistamaton kenttä %d kokonaislukukohdemuuttujaa haettaessa.\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 "Tunnistamaton kenttä %d vma-kohdemuuttujaa haettaessa.\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 "Tunnistamaton kenttä %d kokonaislukukohdemuuttujaa asetettaessa.\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 "Tunnistamaton kenttä %d vma-kohdemuuttujaa asetettaessa.\n"

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

#: frv-asm.c:611 frv-asm.c:621
msgid "Special purpose register number is out of range"
msgstr "Erityiskäyttörekisterin numero ei ole rajojen sisällä"

#: frv-asm.c:908
msgid "Value of A operand must be 0 or 1"
msgstr "A-kohdemuuttujan arvon on oltava 0 tai 1"

#: frv-asm.c:944
msgid "register number must be even"
msgstr "rekisterinumeron on oltava parillinen"

#. -- 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 "\")\" puuttuu"

#: 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 "0x%x ei ole ymmärrettävä \n"

#: h8500-dis.c:124
#, c-format
msgid "can't cope with insert %d\n"
msgstr "kohteen %d sijoittamisesta ei selviydytty\n"

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

#: i386-dis.c:9545
msgid "<internal disassembler error>"
msgstr "<sisäinen disassembler-virhe>"

#: 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"
"Seuraavat i386/x86-64-kohtaiset disassembler-valinnat ovat tuettuja käyttöön\n"
"-M -valinnan kanssa (monivalinnat pitää erottaa pilkulla):\n"

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

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

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

#: i386-dis.c:9783
#, c-format
msgid "  att         Display instruction in AT&T syntax\n"
msgstr "  att         Näyttää käskyn AT&T-syntaksissa\n"

#: i386-dis.c:9784
#, c-format
msgid "  intel       Display instruction in Intel syntax\n"
msgstr "  intel       Näyttää käskyn Intel-syntaksissa\n"

#: i386-dis.c:9785
#, c-format
msgid ""
"  att-mnemonic\n"
"              Display instruction in AT&T mnemonic\n"
msgstr ""
"  att-mnemonic\n"
"              Näyttää käskyn AT&T-syntaksissa\n"

#: i386-dis.c:9787
#, c-format
msgid ""
"  intel-mnemonic\n"
"              Display instruction in Intel mnemonic\n"
msgstr ""
"  intel-mnemonic\n"
"              Näyttää käskyn Intel-syntaksissa\n"

#: i386-dis.c:9789
#, c-format
msgid "  addr64      Assume 64bit address size\n"
msgstr "  addr64      Otaksuu osoitekooksi 64 bittiä\n"

#: i386-dis.c:9790
#, c-format
msgid "  addr32      Assume 32bit address size\n"
msgstr "  addr32      Otaksuu osoitekooksi 32 bittiä\n"

#: i386-dis.c:9791
#, c-format
msgid "  addr16      Assume 16bit address size\n"
msgstr "  addr16      Otaksuu osoitekooksi16 bittiä\n"

#: i386-dis.c:9792
#, c-format
msgid "  data32      Assume 32bit data size\n"
msgstr "  data32      Otaksuu datakooksi 32 bittiä\n"

#: i386-dis.c:9793
#, c-format
msgid "  data16      Assume 16bit data size\n"
msgstr "  data16      Otaksuu datakooksi 16 bittiä\n"

#: i386-dis.c:9794
#, c-format
msgid "  suffix      Always display instruction suffix in AT&T syntax\n"
msgstr "  suffix      Näyttää käskysuffiksin aina AT&T-syntaksissa\n"

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

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

#: i386-gen.c:674
#, c-format
msgid "can't find i386-opc.tbl for reading, errno = %s\n"
msgstr "i386-opc.tbl ei löytynyt luettavaksi, errno = %s\n"

#: i386-gen.c:851
#, c-format
msgid "can't find i386-reg.tbl for reading, errno = %s\n"
msgstr "i386-reg.tbl ei löytynyt luettavaksi, errno = %s\n"

#: i386-gen.c:943
#, c-format
msgid "can't create i386-init.h, errno = %s\n"
msgstr "ei voi luoda tiedostoa i386-init.h, errno = %s\n"

#: i386-gen.c:1032 ia64-gen.c:2850
#, c-format
msgid "unable to change directory to \"%s\", errno = %s\n"
msgstr "vaihtaminen hakemistoon \"%s\" ei onnistu, virhenumero = %s\n"

#: i386-gen.c:1039
#, c-format
msgid "%d unused bits in i386_cpu_flags.\n"
msgstr "%d käyttämättömiä bittejä  i386_cpu_flags-lipussa.\n"

#: i386-gen.c:1046
#, c-format
msgid "%d unused bits in i386_operand_type.\n"
msgstr "%d käyttämättömiä bittejä i386_operand_type-lipussa.\n"

#: i386-gen.c:1060
#, c-format
msgid "can't create i386-tbl.h, errno = %s\n"
msgstr "ei voi luoda tiedostoa i386-tbl.h, errno = %s\n"

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

#: ia64-gen.c:506 ia64-gen.c:740
#, c-format
msgid "multiple note %s not handled\n"
msgstr "monimerkkejä %s ei käsitelty\n"

#: ia64-gen.c:617
msgid "can't find ia64-ic.tbl for reading\n"
msgstr "ia64-ic.tbl ei löytynyt luettavaksi\n"

#: ia64-gen.c:822
#, c-format
msgid "can't find %s for reading\n"
msgstr "%s ei löytynyt luettavaksi\n"

#: ia64-gen.c:1046
#, c-format
msgid ""
"most recent format '%s'\n"
"appears more restrictive than '%s'\n"
msgstr ""
"viimeisin muoto \"%s\"\n"
"näyttää rajoittavammalta kuin \"%s\"\n"

#: ia64-gen.c:1057
#, c-format
msgid "overlapping field %s->%s\n"
msgstr "päällekkäinen kenttä %s->%s\n"

#: ia64-gen.c:1254
#, c-format
msgid "overwriting note %d with note %d (IC:%s)\n"
msgstr "merkki %d kirjoitetaan merkin %d päälle (IC:%s)\n"

#: ia64-gen.c:1459
#, c-format
msgid "don't know how to specify %% dependency %s\n"
msgstr "kohteen %% riippuvuutta %s ei osattu määritellä\n"

#: ia64-gen.c:1481
#, c-format
msgid "Don't know how to specify # dependency %s\n"
msgstr "Kohteen # riippuvuutta %s ei osattu määritellä\n"

#: ia64-gen.c:1520
#, c-format
msgid "IC:%s [%s] has no terminals or sub-classes\n"
msgstr "Kohteella IC:%s [%s] ei ole päätepisteitä tai alaluokkia\n"

#: ia64-gen.c:1523
#, c-format
msgid "IC:%s has no terminals or sub-classes\n"
msgstr "Kohteella IC:%s ei ole päätepisteitä tai alaluokkia\n"

#: ia64-gen.c:1532
#, c-format
msgid "no insns mapped directly to terminal IC %s [%s]"
msgstr "yhtään käskyä ei ole mapattu suoraan päätepisteeseen IC %s [%s]"

#: ia64-gen.c:1535
#, c-format
msgid "no insns mapped directly to terminal IC %s\n"
msgstr "yhtään käskyä ei ole mapattu suoraan päätepisteeseen IC %s\n"

#: ia64-gen.c:1546
#, c-format
msgid "class %s is defined but not used\n"
msgstr "luokka %s on määritelty mutta käyttämätön\n"

#: ia64-gen.c:1559
#, c-format
msgid "Warning: rsrc %s (%s) has no chks\n"
msgstr "Varoitus: kohteessa rsrc %s (%s) ei ole tarkistuksia\n"

#: ia64-gen.c:1562
#, c-format
msgid "Warning: rsrc %s (%s) has no chks or regs\n"
msgstr "Varoitus: kohteessa rsrc %s (%s) ei ole tarkistuksia tai registereitä\n"

#: ia64-gen.c:1566
#, c-format
msgid "rsrc %s (%s) has no regs\n"
msgstr "kohteessa rsrc %s (%s) ei ole rekistereitä\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-merkintä %d käskyssä %s (IC:%s) on ristiriidassa resurssin %s merkinnän %d kanssa\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-merkintä %d käskyyn %s (IC:%s) on ristiriidassa resurssin %s merkinnän %d kanssa\n"

#: ia64-gen.c:2520
#, c-format
msgid "opcode %s has no class (ops %d %d %d)\n"
msgstr "käskyssä %s ei ole luokkaa (toiminnat %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 "avainsana W virheellinen FR-kohdemuuttujavälissä."

#. Invalid offset present.
#: ip2k-asm.c:106
msgid "offset(IP) is not a valid form"
msgstr "siirros(IP) ei ole virheetön muoto"

#. 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)-siirros ei ole rajojen sisällä."

#. 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)-siirros ei ole rajojen sisällä."

#: ip2k-asm.c:211
msgid "illegal use of parentheses"
msgstr "sulkeiden virheellinen käyttö"

#: ip2k-asm.c:218
msgid "operand out of range (not between 1 and 255)"
msgstr "kohdemuuttuja ei ole rajojen sisällä (ei 1:n ja 255:n välillä)"

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

#: ip2k-asm.c:296
msgid "Byte address required. - must be even."
msgstr "Vaaditaan tavuosoite - täytyy olla parillinen."

#: ip2k-asm.c:305
msgid "cgen_parse_address returned a symbol. Literal required."
msgstr "cgen_parse_address palautti symbolin. Vaaditaan literaali."

#: ip2k-asm.c:360
msgid "percent-operator operand is not a symbol"
msgstr "prosenttioperaattori-kohdemuuttuja ei ole symboli."

#: ip2k-asm.c:413
msgid "Attempt to find bit index of 0"
msgstr "Yritettiin löytää 0-bitti-indeksi"

#: iq2000-asm.c:112 iq2000-asm.c:142
msgid "immediate value cannot be register"
msgstr "suoraan muistiosoitettu arvo ei voi olla rekisteri"

#: iq2000-asm.c:123 iq2000-asm.c:153
msgid "immediate value out of range"
msgstr "suoraan muistiosoitettu arvo ei ole rajojen sisällä"

#: iq2000-asm.c:182
msgid "21-bit offset out of range"
msgstr "21-bittinen siirros ei ole rajojen sisällä"

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

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

#: m32c-asm.c:117
msgid "imm:6 immediate is out of range"
msgstr "suora muistiosoitusarvo imm:6 ei ole rajojen sisällä"

#: m32c-asm.c:147
#, c-format
msgid "%dsp8() takes a symbolic address, not a number"
msgstr "%dsp8() hyväksyy symbolisen osoitteen, ei numeroa"

#: m32c-asm.c:160 m32c-asm.c:164 m32c-asm.c:255
msgid "dsp:8 immediate is out of range"
msgstr "suora muistiosoitusarvo dsp:8 ei ole rajojen sisällä"

#: m32c-asm.c:185 m32c-asm.c:189
msgid "Immediate is out of range -8 to 7"
msgstr "suora muistiosoitusarvo ei ole rajojen -8 ... 7 sisällä"

#: m32c-asm.c:210 m32c-asm.c:214
msgid "Immediate is out of range -7 to 8"
msgstr "suora muistiosoitusarvo ei ole rajojen -7 ... 8 sisällä"

#: m32c-asm.c:285
#, c-format
msgid "%dsp16() takes a symbolic address, not a number"
msgstr "%dsp16() hyväksyy symbolisen osoitteen, ei numeroa"

#: m32c-asm.c:308 m32c-asm.c:315 m32c-asm.c:378
msgid "dsp:16 immediate is out of range"
msgstr "suora muistiosoitusarvo dsp:16 ei ole rajojen sisällä"

#: m32c-asm.c:404
msgid "dsp:20 immediate is out of range"
msgstr "suora muistiosoitusarvo dsp:20 ei ole rajojen sisällä"

#: m32c-asm.c:430 m32c-asm.c:450
msgid "dsp:24 immediate is out of range"
msgstr "suora muistiosoitusarvo dsp:24 ei ole rajojen sisällä"

#: m32c-asm.c:483
msgid "immediate is out of range 1-2"
msgstr "suora muistiosoitusarvo ei ole rajojen 1-2 sisällä"

#: m32c-asm.c:501
msgid "immediate is out of range 1-8"
msgstr "suora muistiosoitusarvo ei ole rajojen 1-8 sisällä"

#: m32c-asm.c:519
msgid "immediate is out of range 0-7"
msgstr "suora muistiosoitusarvo ei ole rajojen 0-7 sisällä"

#: m32c-asm.c:555
msgid "immediate is out of range 2-9"
msgstr "suora muistiosoitusarvo ei ole rajojen 2-9 sisällä"

#: m32c-asm.c:573
msgid "Bit number for indexing general register is out of range 0-15"
msgstr "Indeksoivan yleisrekisterin bittinumero ei ole alueella 0-15"

#: m32c-asm.c:611 m32c-asm.c:667
msgid "bit,base is out of range"
msgstr "bitti, kanta ei ole rajojen sisällä"

#: m32c-asm.c:618 m32c-asm.c:623 m32c-asm.c:671
msgid "bit,base out of range for symbol"
msgstr "bitti, kanta ei ole symbolin rajojen sisällä"

#: m32c-asm.c:807
msgid "not a valid r0l/r0h pair"
msgstr "r0l/r0h-pari ei ole oikea"

#: m32c-asm.c:837
msgid "Invalid size specifier"
msgstr "Virheellinen kokomäärite"

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

#: m68k-dis.c:1320
#, c-format
msgid "<internal error in opcode table: %s %s>\n"
msgstr "<sisäinen virhe käskytaulukossa: %s %s>\n"

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

#: mep-asm.c:114
msgid "Only $tp or $13 allowed for this opcode"
msgstr "Vain $tp tai $13 sallittu tälle käskykoodille"

#: mep-asm.c:128
msgid "Only $sp or $15 allowed for this opcode"
msgstr "Vain $sp tai $15 sallittu tälle käskykoodille"

#: mep-asm.c:299 mep-asm.c:455
#, c-format
msgid "invalid %function() here"
msgstr "virheellinen %function() tässä"

#: mips-dis.c:781
msgid "# internal error, incomplete extension sequence (+)"
msgstr "# sisäinen virhe, epätäydellinen laajennussekvenssi (+)"

#: mips-dis.c:915
#, c-format
msgid "# internal error, undefined extension sequence (+%c)"
msgstr "# sisäinen virhe, määrittelemätön laajennussekvenssi (+%c)"

#: mips-dis.c:1274
#, c-format
msgid "# internal error, undefined modifier (%c)"
msgstr "# sisäinen virhe, määrittelemätön määrite (%c)"

#: mips-dis.c:1881
#, c-format
msgid "# internal disassembler error, unrecognised modifier (%c)"
msgstr "# sisäinen disassembler-virhe, tunnistamaton määrite (%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"
"Seuraavat MIPS-kohtaiset disassembler-valinnat ovat tuettuja käyttöön\n"
"-M -valinnan kanssa (monivalinnat pitää erottaa pilkulla):\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            Tulosta GPR-nimet määritellyn ABI:n mukaisesti.\n"
"                           Oletus: perustuu disassembloitavaan binääritiedostoon.\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            Tulosta FPR-nimet määritellyn ABI:n mukaisesti.\n"
"                           Oletus: numeerinen.\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           Tulosta CP0-rekisterinimet\n"
"                           määritellyn arkkitehtuurin mukaisesti.\n"
"                           Oletus: perustuu disassemloitavaan binääritiedostoon.\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           Tulosta HWR-nimet määritellyn\n"
"\t\t\t   arkkitehtuurin mukaisesti.\n"
"                           Oletus: perustuu disassembloitavaan binääritiedostoon.\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            Tulosta GPR- ja FPR-nimet määritellyn\n"
"                           ABI:n mukaisesti.\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           Tulosta CP0-rekisteri ja HWR-nimet määritellyn\n"
"                           arkkitehtuurin mukaisesti.\n"

#: mips-dis.c:2142
#, c-format
msgid ""
"\n"
"  For the options above, the following values are supported for \"ABI\":\n"
"   "
msgstr ""
"\n"
"  Ylläolevista valinnoista \"ABI\" tukee seuraavia arvoja:\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"
"  Ylläolevista valinnoista \"ARCH\" tukee seuraavia arvoja:\n"
"   "

#: mmix-dis.c:35
#, c-format
msgid "Bad case %d (%s) in %s:%d\n"
msgstr "%d (%s) on virheellinen tapaus kohteessa %s:%d\n"

#: mmix-dis.c:45
#, c-format
msgid "Internal: Non-debugged code (test-case missing): %s:%d"
msgstr "Sisäinen: Debuggaamaton koodi (testitapaus puuttuu): %s:%d"

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

#: mmix-dis.c:513
#, c-format
msgid "*unknown operands type: %d*"
msgstr "*tuntematon kohdemuuttujatyyppi: %d*"

#: mt-asm.c:110 mt-asm.c:190
msgid "Operand out of range. Must be between -32768 and 32767."
msgstr "Kohdemuuttuja ei ole rajojen sisällä. Täytyy olla -32768:n ja 32767:n välillä."

#: mt-asm.c:149
msgid "Biiiig Trouble in parse_imm16!"
msgstr "Iso pulma parse_imm16-käskyssä!"

#: mt-asm.c:157
msgid "The percent-operator's operand is not a symbol"
msgstr "prosenttioperaattori-kohdemuuttuja ei ole symboli"

#: mt-asm.c:395
msgid "invalid operand.  type may have values 0,1,2 only."
msgstr "virheellinen kohdemuuttuja. tyypin arvo saa olla vain 0,1 tai 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 "$<määrittelemätön>"

#: ppc-opc.c:862 ppc-opc.c:890
msgid "invalid conditional option"
msgstr "virheellinen ehdollinen valinta"

#: ppc-opc.c:892
msgid "attempt to set y bit when using + or - modifier"
msgstr "yritys asettaa y-bitti kun käytetään + tai - määritettä"

#: ppc-opc.c:924
msgid "invalid mask field"
msgstr "virheellinen maskikenttä"

#: ppc-opc.c:950
msgid "ignoring invalid mfcr mask"
msgstr "virheellistä mfcr-maskia ei oteta huomioon"

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

#: ppc-opc.c:1155
msgid "index register in load range"
msgstr "indeksirekisteri on latauslukurajojen sisällä"

#: ppc-opc.c:1171
msgid "source and target register operands must be different"
msgstr "lähde- ja kohderekisterin kohdemuuttujien on oltava erilaiset"

#: ppc-opc.c:1186
msgid "invalid register operand when updating"
msgstr "rekisterin kohdemuuttuja virheellinen päivitettäessä"

#: ppc-opc.c:1265
msgid "invalid sprg number"
msgstr "virheellinen sprg-numero"

#: 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"
"Seuraavat S/390-kohtaiset disassembler-valinnat ovat tuettuja käyttöön\n"
"-M -valinnan kanssa (monivalinnat pitää erottaa pilkulla):\n"

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

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

#: score-dis.c:220 score-dis.c:383
msgid "<illegal instruction>"
msgstr "<virheellinen käsky>"

#: sparc-dis.c:282
#, c-format
msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "Sisäinen virhe:  virheellinen sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"

#: sparc-dis.c:293
#, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
msgstr "Sisäinen virhe: virheellinen sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"

#: sparc-dis.c:343
#, c-format
msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
msgstr "Sisäinen virhe: virheellinen sparc-opcode.h: \"%s\" == \"%s\"\n"

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

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

#: v850-dis.c:253
#, c-format
msgid "unknown pop reg: %d\n"
msgstr "tuntematon pop-rekisteri: %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 "Uudelleensijoitusarvo ei ole rajojen sisällä eikä sijaitse tasarajalla"

#: v850-opc.c:49
msgid "displacement value is out of range"
msgstr "uudelleensijoitusarvo ei ole rajojen sisällä"

#: v850-opc.c:50
msgid "displacement value is not aligned"
msgstr "uudelleensijoitusarvo ei ole tasarajalla"

#: v850-opc.c:52
msgid "immediate value is out of range"
msgstr "suora muistiosoitusarvo ei ole rajojen sisällä"

#: v850-opc.c:60
msgid "branch value not in range and to odd offset"
msgstr "haaroitusarvo ei ole rajojen sisällä ja kohdistuu parittomaan siirrososoitteeseen"

#: v850-opc.c:62 v850-opc.c:89
msgid "branch value out of range"
msgstr "haaroitusarvo ei ole rajojen sisällä"

#: v850-opc.c:65 v850-opc.c:92
msgid "branch to odd offset"
msgstr "haaroitus parittomaan siirrososoitteeseen"

#: v850-opc.c:87
msgid "branch value not in range and to an odd offset"
msgstr "haaroitusarvo ei ole rajojen sisällä ja sijaitsee parittomassa siirrososoitteessa"

#: v850-opc.c:279
msgid "invalid register for stack adjustment"
msgstr "virheellinen rekisteri pinosäädössä"

#: v850-opc.c:299
msgid "immediate value not in range and not even"
msgstr "suora muistiosoitusarvo ei ole rajojen sisällä eikä ole parillinen"

#: v850-opc.c:304
msgid "immediate value must be even"
msgstr "Suoran muistiosoitusarvon täytyy olla parillinen"

#: xc16x-asm.c:66
msgid "Missing '#' prefix"
msgstr "Puuttuva \"#\" prefiksi"

#: xc16x-asm.c:82
msgid "Missing '.' prefix"
msgstr "Puuttuva \".\" prefiksi"

#: xc16x-asm.c:98
msgid "Missing 'pof:' prefix"
msgstr "Puuttuva \"pof:\" prefiksi"

#: xc16x-asm.c:114
msgid "Missing 'pag:' prefix"
msgstr "Puuttuva \"pag:\" prefiksi"

#: xc16x-asm.c:130
msgid "Missing 'sof:' prefix"
msgstr "Puuttuva \"sof:\" prefiksi"

#: xc16x-asm.c:146
msgid "Missing 'seg:' prefix"
msgstr "Puuttuva \"seg:\" prefiksi"

#: xstormy16-asm.c:71
msgid "Bad register in preincrement"
msgstr "Väärä rekisteri ennakkokasvatuksessa"

#: xstormy16-asm.c:76
msgid "Bad register in postincrement"
msgstr "Väärä rekisteri jälkikasvatuksessa"

#: xstormy16-asm.c:78
msgid "Bad register name"
msgstr "Väärä rekisterinimi"

#: xstormy16-asm.c:82
msgid "Label conflicts with register name"
msgstr "Otsikko ristiriidassa rekisterin nimen kanssa"

#: xstormy16-asm.c:86
msgid "Label conflicts with `Rx'"
msgstr "Otsikko ristiriidassa kohteen \"Rx\" kanssa"

#: xstormy16-asm.c:88
msgid "Bad immediate expression"
msgstr "Virheellinen suora muistiosoituslauseke"

#: xstormy16-asm.c:109
msgid "No relocation for small immediate"
msgstr "Ei sijoitusta pienikokoiselle suoralle muistiosoitukselle"

#: xstormy16-asm.c:119
msgid "Small operand was not an immediate number"
msgstr "Pieni kohdemuuttuja ei ollut suora muistiosoitusnumero"

#: xstormy16-asm.c:157
msgid "Operand is not a symbol"
msgstr "Kohdemuuttuja ei ole symboli"

#: xstormy16-asm.c:165
msgid "Syntax error: No trailing ')'"
msgstr "Syntaksivirhe: loppukaarisulku \")\" puuttuu"

#~ msgid "%operator operand is not a symbol"
#~ msgstr "%operaattori-kohdemuuttuja ei ole symboli."
