aboutsummaryrefslogtreecommitdiff
path: root/opcodes/ppc-opc.c
AgeCommit message (Collapse)AuthorFilesLines
2005-08-15gas/Daniel Jacobowitz1-1/+2
* config/tc-ppc.c (parse_cpu): Add -me300 support. (md_show_usage): Likewise. * doc/c-ppc.texi (PowerPC-Opts): Document it. include/opcode/ * ppc.h (PPC_OPCODE_E300): Define. opcodes/ * ppc-dis.c (powerpc_dialect): Handle e300. (print_ppc_disassembler_options): Likewise. * ppc-opc.c (PPCE300): Define. (powerpc_opcodes): Mark icbt as available for the e300. binutils/ * doc/binutils.texi (objdump): Document -M e300.
2005-05-19 * ppc-dis.c (powerpc_dialect): Handle "-Mpower5".Alan Modra1-5/+20
(print_ppc_disassembler_options): Document it. * ppc-opc.c (SCV_LEV): Define. (LEV): Allow optional operand. (POWER5): Define. (powerpc_opcodes): Extend "sc". Adjust "svc" and "svcl". Add "hrfid", "popcntb", "fsqrtes", "fsqrtes.", "fre" and "fre.".
2005-05-07Update the address and phone number of the FSFNick Clifton1-2/+2
2005-04-19 * ppc-opc.c (RTO): Define.Alan Modra1-6/+4
(powerpc_opcodes <tlbsx, tlbsx., tlbre>): Combine PPC403 and BOOKE entries to suit PPC440.
2005-03-10opcodes/Alan Modra1-13/+51
* ppc-opc.c (insert_sprg, extract_sprg): New Functions. (powerpc_operands <SPRG>): Call the above. Bit field is 5 bits. (SPRG_MASK): Delete. (XSPRG_MASK): Mask off extra bits now part of sprg field. (powerpc_opcodes): Asjust mfsprg and mtsprg to suit new mask. Move mfsprg4..7 after msprg and consolidate. gas/testsuite * gas/ppc/booke.s: Add new m[t,f]sprg testcases. * gas/ppc/booke.d: Likewise.
2005-03-07 * ppc-opc.c (powerpc_opcodes): Fix encoding of efscfd.Aldy Hernandez1-1/+1
2005-01-20 * ppc-opc.c (powerpc_opcodes): Add optional 'l' arg to tlbiel.Alan Modra1-3/+3
2004-10-09 * ppc-opc.c: Revert 2004-09-09 change.Alan Modra1-1/+1
2004-10-07Replace literal "0"s with NULLs in pointer initializers.Nick Clifton1-64/+64
2004-10-06 * opcodes/ppc-opc.c (powerpc_opcodes): Add efscfd, efdabs, efdnabs,Aldy Hernandez1-0/+35
efdneg, efdadd, efdsub, efdmul, efddiv, efdcmpgt, efdcmplt, efdcmpeq, efdtstgt, efdtstlt, efdtsteq, efdcfsi, efdcfsid, efdcfui, efdcfuid, efdcfsf, efdcfuf, efdctsi, efdctsidz, efdctsiz, efdctui, efdctuidz, efdctuiz, efdctsf, efdctuf, efdctuf, efdcfs.
2004-09-09opcodes/Alan Modra1-1/+1
* ppc-opc.c (L): Make this field not optional. include/opcode/ * ppc.h (PPC_OPERAND_OPTIONAL): Fix comment.
2004-06-28opcodes/Alan Modra1-13/+22
* ppc-opc.c (insert_fxm): Handle mfocrf and mtocrf. (extract_fxm): Don't test dialect. (XFXFXM_MASK): Include the power4 bit. (XFXM): Add p4 param. (powerpc_opcodes): Add mfocrf and mtocrf. Adjust mtcr. gas/testsuite/ * gas/ppc/power4.d: Update.
2004-06-26 * ppc-opc.c (BH, XLBH_MASK): Define.Alan Modra1-5/+11
(powerpc_opcodes): Allow BH field on bclr, bclrl, bcctr, bcctrl.
2004-05-19 * ppc-opc.c (insert_fxm): Enable two operand mfcr when -many asAlan Modra1-2/+7
well as when -mpower4.
2004-05-05 * ppc-opc.c (PPCVEC): Remove PPC_OPCODE_PPC.Alan Modra1-1/+1
2004-04-30* Corrections to previous patch. Amend ChangeLog.Ben Elliston1-8/+9
* ppc-opc.c (XCMPL): Renmame to XOPL. Update users. (powerpc_opcodes): Add "dbczl" instruction for PPC970.
2004-04-30 * ppc-opc.c (powerpc_opcodes): Add "dbczl" instruction for PPC970.Ben Elliston1-11/+11
[testsuite] * gas/ppc/power4.s: Add dcbz and dcbzl test cases. * gas/ppc/power4.d: Update accordingly.
2004-03-16Revert "lsdx", "lsdi", "stsdx", "stsdi", "lmd" and "stmd" insns.Alan Modra1-12/+0
2004-03-16opcodes/Alan Modra1-118/+135
* ppc-dis.c (print_insn_powerpc): Don't print tabs. Handle PPC_OPERANDS_GPR_0. * ppc-opc.c (RA0): Define. (RAQ, RAL, RAM, RAS, RSQ, RTQ, RSO): Use PPC_OPERAND_GPR_0. (RAOPT): Rename from RAO. Update all uses. (powerpc_opcodes): Use RA0 as appropriate. Add "lsdx", "lsdi", "stsdx", "stsdi", "lmd" and "stmd" insns. include/opcode/ * ppc.h (PPC_OPERAND_GPR_0): Define. Bump other operand defines. gas/testsuite/ Update gas/ppc/. ld/testsuite/ Update ld-powerpc/.
2004-03-15 * ppc-opc.c (powerpc_opcodes): Add BOOKE versions of mfsprg.Aldy Hernandez1-0/+4
2004-02-26 * ppc-opc.c (powerpc_opcodes): Change mask for dcbt and dcbtst.Aldy Hernandez1-2/+2
2004-02-202004-02-20 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-1/+1
* ppc-opc.c (powerpc_opcodes): Move mfmcsrr0 before mfdc_dat.
2004-02-202004-02-20 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-0/+2
* ppc-opc.c (powerpc_opcodes): Add m*ivor35.
2004-02-20 * ppc-opc.c (powerpc_opcodes): Add mfivor32, mfivor33, mfivor34,Aldy Hernandez1-0/+6
mtivor32, mtivor33, mtivor34.
2004-02-202004-02-19 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-0/+1
* ppc-opc.c: Add mfmcar.
2003-12-10opcodes:Zack Weinberg1-6/+17
* ppc-opc.c (MO): Make optional. (RAO, RSO, SHO): New optional forms of RA, RS, SH operands. (tlbwe): Accept for both PPC403 and BOOKE. Make all operands optional. gas: * tc-ppc.c (md_assemble): Rewrite comment about optional operands to indicate that 'all or none' is also handled. Pluralize a word in another comment. gas/testsuite: * gas/ppc/booke.s: Add two more forms of the mbar instruction and three forms of the tlbwe instruction. * gas/ppc/booke.d: Update to match.
2003-12-03 * alpha-opc.c: Remove ARGSUSED.Kazu Hirata1-26/+0
* i370-opc.c: Likewise. * ppc-opc.c: Likewise.
2003-09-04 * ppc-dis.c (struct dis_private): New.Alan Modra1-24/+24
(powerpc_dialect): Make static. Accept -Many in addition to existing options. Save dialect in dis_private. (print_insn_big_powerpc): Retrieve dialect from dis_private. (print_insn_little_powerpc): Likewise. (print_insn_powerpc): Call powpc_dialect here. Remove unnecessary efs/altivec check. Try harder to disassemble if given -Many. * ppc-opc.c (insert_fxm): Expand comment. (PPC, PPCCOM, PPC32, PPC64, PPCVEC): Remove PPC_OPCODE_ANY. (POWER, POWER2, PPCPWR2, POWER32, COM, COM32, M601, PWRCOM): Likewise. (POWER4): Remove PPCCOM. (PPCONLY): Don't define. Update all occurrences to PPC.
2003-09-02 * ppc-opc.c (powerpc_opcodes): Combine identical PPC403/BOOKE entries.Alan Modra1-222/+206
Move duplicate mnemonic entries together. Use RS instead of RT on all mt*. * ppc-dis.c: Convert to ISO C.
2003-08-19 * ppc-opc.c (PPC440): Define.Alan Modra1-88/+92
(powerpc_opcodes): Allow mac*, mul*, nmac*, dccci, dcread, iccci, icread instructions when PPC440. Add dlmzb instruction.
2003-07-29 * ppc-opc.c (insert_mbe, extract_mbe): Shift 1L instead of 1 up.Jakub Jelinek1-3/+3
2003-07-07 * ppc-opc.c: Remove NULL pointer checks. Formatting. RemoveAlan Modra1-91/+69
extraneous ATTRIBUTE_UNUSED. * ppc-dis.c (print_insn_powerpc): Always pass a valid address to operand->extract.
2003-07-04 * ppc-opc.c: Convert to C90, removing unnecessary prototypes andAlan Modra1-267/+218
casts. Formatting.
2003-07-04 * ppc-opc.c: Remove PARAMS from prototypes.Alan Modra1-111/+123
(FXM4): Define. (insert_fxm): New function, used by both FXM and FXM4. (extract_fxm): Likewise. (XFXFXM_MASK): Remove 1 << 20 term. (powerpc_opcodes): Add Power4 version of "mfcr". Simplify "mtcr" mask.
2003-06-10Add "attn", "lq" and "stq" power4 insns.Alan Modra1-4/+116
2003-03-17 Fix formatting. Update copyright date.Nick Clifton1-63/+62
2003-03-14ppc-opc.c (powerpc_opcodes): Readd tlbre for PPC403.Daniel Jacobowitz1-0/+1
2003-01-08 * ppc-opc.c (powerpc_macros <extrwi>): Accept a shift of 32.Alan Modra1-2/+2
2002-12-052002-12-05 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-49/+2
* ppc-opc.c: Delete evsabs, evsnabs, evsneg, evsadd, evssub, evsmul, evsdiv, evscmpgt, evsgmplt, evststgt, evtstlt, evststeq, evscfui, evscfsi, evscfuf, evscfsf, evsctui, evsctuiz, evsctsi, evsctsiz, evsctuf, evsctsf, evmwhssfaa, evmwhssmaa, evmwhsmfaa, evmwhsmiaa, evmwhusiaa, evmwhumiaa, evmwhssfan, evmwhssian, evmwhsmfan, evmwhsmian, evmwhusian, evmwhumian, evmwhgssfaa, evmwhgsmfaa, evmwhgsmiaa, evmwhgumiaa, evmwhgssfan, evmwhgsmfan, evmwhgsmian, evmwhgumian. (mftb): Add to opcode table. (mtspefscr): Change RT to RS in opcode table.
2002-12-05 * ppc-opc.c: Move mbar and msync up. Change mask for mbar andAldy Hernandez1-2/+2
msync.
2002-12-042002-11-25 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-8/+0
* ppc-opc.c: Remove evmwlssf, evmwlssfa, evmwlsmf, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw, evmwlssfanw, evmwlsfanw.
2002-12-042002-12-04 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-274/+245
* ppc-opc.c (PMRN): Remove. (RA): Set to NB + 1. (powerpc_opcodes): Change PMRN to SPR. Change all RD to RS. Change mftb to look like mftbl. Move mftb before mftbl. Add mfbbtar. Add mtbbtar. Change mfpmr to use PMR. Change mtpmr to use PMR. (RD): Remove. (insert_ev2): Fix mask and shift. (extract_ev2): Same. (insert_ev4): Same. (extract_ev4): Same. (PMR): Define. (extract_pmrn): Remove. (insert_pmrn): Remove.
2002-11-082002-11-07 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-1/+1
* ppc-opc.c (EVUIMM_4): Change bit size to 32. (EVUIMM_2): Same. (EVUIMM_8): Same.
2002-11-072002-11-07 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-2/+2
* ppc-opc.c (EVUIMM_4): Change bit size to 32. (EVUIMM_2): Same.
2002-11-072002-11-06 Aldy Hernandez <aldyh@redhat.com>Aldy Hernandez1-4/+4
* opcodes/ppc-opc.c: Change RD to RS for evmerge*.
2002-09-20Allow CRFS and CRFD operands to accept CR register namesNick Clifton1-2/+2
2002-09-13Fix Book-E opcodesNick Clifton1-272/+367
2002-09-04Do not insert non-BookE32 instructions into the hash table if the target cpuNick Clifton1-2/+2
is the BookE32. (case 107575)
2002-09-04The BookE implementations of the TLBWE and TLBRE instructions do not take anyNick Clifton1-3/+3
arguments.
2002-08-192002-08-19 Elena Zannoni <ezannoni@redhat.com>Elena Zannoni1-6/+507
From matthew green <mrg@redhat.com> * ppc-dis.c (powerpc_dialect): Support `-m500', `-m500x2' and `-mefs'. Turn off AltiVec for E500 and efs. (print_insn_powerpc): Don't print an AltiVec instruction if the dialect is not efs. * ppc-opc.c (insert_pmrn, extract_pmrn, insert_ev2, extract_ev2, insert_ev4, extract_ev4, insert_ev8, extract_ev8): New functions for extracting pmrn/evld/evstd/etc operands. (CRB, CRFD, CRFS, DC, RD): New instruction fields. (CT): Make this equal to RD + 1. (PMRN): New operand. (RA): Update. (EVUIMM, EVUIMM_2, EVUIMM_4, EVUIMM_8): New operands. (WS): Update. (EVSEL, EVSEL_MASK): New instruction form and mask for EVSEL. (ISEL, ISEL_MASK): New instruction form and mask for ISEL. (XISEL, XISEL_MASK): New instruction form and mask for ISEL. (CTX, CTX_MASK): New instruction form and mask for context cache instructions. (UCTX, UCTX_MASK): New instruction form and mask for user context cache instructions. (XC, XC_MASK, XUC, XUC_MASK): New instruction forms. (CLASSIC): New define. (PPCESPE): New define. (PPCISEL, , PPCBRLK, PPCPMR, PPCCHLK, PPCRFMI): New defines for integer select, cache control, branch locking, power management, cache locking and machine check APU instructions, respectively. (efsabs, efsnabs, efsneg, efsadd, efssub, efsmul, efsdiv, efscmpgt, efscmplt, efscmpeq, efststgt, efststlt, efststeq, efscfui, efsctuiz, efscfsi, efscfuf, efscfsf, efsctui, efsctsi, efsctsiz, efsctuf, efsctsf, evaddw, evaddiw, evsubfw, evsubifw, evabs, evneg, evextsb, evextsh, evrndw, evcntlzw, evcntlsw, brinc, evand, evandc, evor, evorc, evxor, eveqv, evnand, evnor, evrlw, evrlwi, evslw, evslwi, evsrws, evsrwu, evsrwis, evsrwiu, evsplati, evsplatfi, evmergehi, evmergelo, evmergehilo, evmergelohi, evcmpgts, evcmpgtu, evcmplts, evcmpltu, evcmpeq, evsel, evldd, evlddx, evldw, evldwx, evldh, evldhx, evlwhe, evlwhex, evlwhou, evlwhoux, evlwhos, evlwhosx, evlwwsplat, evlwwsplatx, evlwhsplat, evlwhsplatx, evlhhesplat, evlhhesplatx, evlhousplat, evlhousplatx, evlhossplat, evlhossplatx, evstdd, evstddx, evstdw, evstdwx, evstdh, evstdhx, evstwwe, evstwwex, evstwwo, evstwwox, evstwhe, evstwhex, evstwho, evstwhox, evfsabs, evfsnabs, evfsneg, evfsadd, evfssub, evfsmul, evfsdiv, evfscmpgt, evfscmplt, evfscmpeq, evfststgt, evfststlt, evfststeq, evfscfui, evfsctuiz, evfscfsi, evfscfuf, evfscfsf, evfsctui, evfsctsi, evfsctsiz, evfsctuf, evfsctsf, evsabs, evsnabs, evsneg, evsadd, evssub, evsmul, evsdiv, evscmpgt, evsgmplt, evsgmpeq, evststgt, evststlt, evststeq, evscfui, evscfsi, evscfuf, evscfsf, evsctui, evsctuiz, evsctsi, evsctsiz, evsctuf, evsctsf, evmhossf, evmhossfa, evmhosmf, evmhosmfa, evmhosmi, evmhosmia, evmhoumi, evmhoumia, evmhessf, evmhessfa, evmhesmf, evmhesmfa, evmhesmi, evmhesmia, evmheumi, evmheumia, evmhossfaaw, evmhossiaaw, evmhosmfaaw, evmhosmiaaw, evmhousiaaw, evmhoumiaaw, evmhessfaaw, evmhessiaaw, evmhesmfaaw, evmhesmiaaw, evmheusiaaw, evmheumiaaw, evmhossfanw, evmhossianw, evmhosmfanw, evmhosmianw, evmhousianw, evmhoumianw, evmhessfanw, evmhessianw, evmhesmfanw, evmhesmianw, evmheusianw, evmheumianw, evmhogsmfaa, evmhogsmiaa, evmhogumiaa, evmhegsmfaa, evmhegsmiaa, evmhegumiaa, evmhogsmfan, evmhogsmian, evmhogumian, evmhegsmfan, evmhegsmian, evmhegumian, evmwhssf, evmwhssfa, evmwhssfaa, evmwhssmaa, evmwhsmfaa, evmwhsmiaa, evmwhusiaa, evmwhumiaa, evmwhssfan, evmwhssian, evmwhsmfan, evmwhsmian, evmwhusian, evmwhumian, evmwhgssfaa, evmwhgsmfaa, evmwhgsmiaa, evmwhgumiaa, evmwhgssfan, evmwhgsmfan, evmwhgsmian, evmwhgumian, evmwhsmf, evmwhsmfa, evmshsmi, evmshsmia, evmshumi, evmshumia, evmmlssf, evmmlssfa, evmwlsmf, evmwlsmfa, evmwlumi, evmwlumia, evmwlssfaaw, evmwlssiaaw, evmwlsmfaaw, evmwlsmiaaw, evmwlusiaaw, evmwlumiaaw, evmwissfanw, evmwissianw, evmwlsmfanw, evmwlsmianw, evmwlusianw, evmwlumianw, evmwssf, evmwssfa, evmwsmf, evmwsmfa, evmwsmi, evmwsmia, evmwumi, evmwumia, evmwssfaa, evmwsmfaa, evmwsmiaa, evmwumiaa, evmwssfan, evmwsmfan, evmwsmian, evmwumian, evaddssiaaw, evaddsmiaaw, evaddusiaaw, evaddumiaaw, evsubfssiaaw, evsubfsmiaaw, evsubfusiaaw, evsubfumiaaw, evmra, evdivws, evdivws): New e500x2 Core Complex instructions. (rfmci): New machine check APU instruction. (isel): New integer select APU instructino. (icbtls, icbtlse, icblc, icblce, dcbtls, dcbtlse, dcbtstls, dcbtstlse, dcblc, dcblce): New cache control APU instructions. (mtspefscr, mfspefscr): New instructions. (mfpmr, mtpmr): New performance monitor APU instructions. (savecontext): New context cache APU instructions. (bblels, bbelr): New branch locking APU instructions. (bblels, bbelr): New instructions. (mftbl, mftbu, mftb): Set as CLASSIC instructions. Add BOOKE alias.