aboutsummaryrefslogtreecommitdiff
path: root/opcodes/ppc-opc.c
AgeCommit message (Collapse)AuthorFilesLines
2007-11-06 * ppc-opc.c (powerpc_opcodes): Remove the dcffix and dcffix. opcodesPeter Bergner1-3/+0
which are not included in the "Preliminary Decimal Floating-Point Architecture" document.
2007-10-16 * ppc-opc.c (powerpc_opcodes): Fix the first two operands ofPeter Bergner1-1/+1
dquaiq. to use the TE and FRT macros.
2007-10-16gas/Peter Bergner1-6/+6
* config/tc-ppc.c (ppc_setup_opcodes): Verify instructions are sorted according to major opcode number. opcodes/ * ppc-opc.c (TE): Correct signedness. (powerpc_opcodes): Sort psq_st and psq_stu according to major opcode number.
2007-08-24binutils/Ben Elliston1-3/+100
* doc/binutils.texi (objdump): Document -Mppcps. gas/ * config/tc-ppc.c (parse_cpu): Handle "750cl". (pre_defined_registers): Add "gqr0" to "gqr7", "gqr.0" to "gqr.7". (md_show_usage): Document -m750cl. (md_assemble): Handle two delimiters in succession (eg. `),'). * doc/c-ppc.texi (PowerPC-Opts): Document -m750cl. * testsuite/gas/ppc/ppc.exp: Run ppc70ps dump tests. * testsuite/gas/ppc/ppc750ps.s: New file. * testsuite/gas/ppc/ppc750ps.d: Likewise. include/opcode/ * ppc.h (PPC_OPCODE_PPCPS): New. opcodes/ * ppc-opc.c (PSW, PSWM, PSQ, PSQM, PSD, MTMSRD_L): New. (XOPS, XOPS_MASK, XW, XW_MASK): Likewise. (PPCPS): Likewise. (powerpc_opcodes): Add all pair singles instructions. * ppc-dis.c (powerpc_dialect): Handle "ppcps". (print_ppc_disassembler_options): Document -Mppcps.
2007-07-27 * ppc-opc (PPC7450): New.Nathan Sidwell1-1/+2
(powerpc_opcodes): Use it in dcba.
2007-07-05Change source files over to GPLv3.Nick Clifton1-12/+12
2007-05-17 * ppc-dis.c (operand_value_powerpc, skip_optional_operands): New.Peter Bergner1-7/+19
(print_insn_powerpc): Use the new operand_value_powerpc and skip_optional_operands functions to omit or print all optional operands as a group. * ppc-opc.c (BFF, W, XFL_L, XWRA_MASK): New. (XFL_MASK): Delete L and W bits from the mask. (mtfsfi, mtfsfi.): Replace use of BF with BFF. Relpace use of XRA_MASK with XWRA_MASK. Use W. (mtfsf, mtfsf.): Use XFL_L and W.
2007-04-30opcodes/Alan Modra1-1/+1
PR 4436 * ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE. gas/ PR 4436 * config/tc-ppc.c (ppc_insert_operand): Disable range check if min > max.
2007-04-21 * ppc-opc.c (powerpc_operands): Delete duplicate entries.Alan Modra1-58/+29
(BA_MASK, FXM_MASK, STRM_MASK, VA_MASK, VB_MASK, VC_MASK): Delete. (VD_MASK, WS_MASK, MTMSRD_L, XRT_L): Delete. (powerpc_opcodes): Replace uses of MTMSRD_L and XRT_L.
2007-04-20include/opcode/Alan Modra1-360/+108
* ppc.h (struct powerpc_operand): Replace "bits" with "bitm". (num_powerpc_operands): Declare. (PPC_OPERAND_SIGNED et al): Redefine as hex. (PPC_OPERAND_PLUS1): Define. opcodes/ * ppc-dis.c (print_insn_powerpc): Adjust for struct powerpc_operand change. * ppc-opc.c (powerpc_operands): Replace bit count with bit mask in all entries. Add PPC_OPERAND_SIGNED to DE entry. Remove references to following deleted functions. (insert_bd, extract_bd, insert_dq, extract_dq): Delete. (insert_ds, extract_ds, insert_de, extract_de): Delete. (insert_des, extract_des, insert_li, extract_li): Delete. (insert_nb, insert_rsq, insert_rtq, insert_ev2, extract_ev2): Delete. (insert_ev4, extract_ev4, insert_ev8, extract_ev8): Delete. (num_powerpc_operands): New constant. (XSPRG_MASK): Remove entire SPRG field. (powerpc_opcodes <bcctre, bcctrel>): Use XLBB_MASK not XLYBB_MASK. gas/ * messages.c (as_internal_value_out_of_range): Extend to report errors for values with invalid low bits set. * config/tc-ppc.c (ppc_setup_opcodes): Check powerpc_operands bitm fields. Check that operands and opcode fields are disjoint. (ppc_insert_operand): Check operands using mask rather than bit count. Check low bits too. Handle PPC_OPERAND_PLUS1. Adjust insertion code. (md_apply_fix): Adjust for struct powerpc_operand change.
2007-04-20 * ppc-opc.c (DCM, DGM, TE, RMC, R, SP, S): Correct shift.Alan Modra1-37/+31
(Z2_MASK): Define. (powerpc_opcodes): Use Z2_MASK in all insns taking RMC operand.
2007-04-19 * ppc-opc.c (powerpc_opcodes): Add cctpl, cctpm, cctph, db8cyc,Alan Modra1-0/+7
db10cyc, db12cyc, db16cyc.
2007-04-18 * ppc-opc.c (powerpc_opcodes): Recognize three-operand tlbsxe.Alan Modra1-2/+2
2007-02-02 * ppc-opc.c (insert_bdm): -Many comment.Alan Modra1-31/+43
(valid_bo): Add "extract" param. Accept both powerpc and power4 BO fields when disassembling with -Many. (insert_bo, extract_bo, insert_boe, extract_boe): Adjust valid_bo call.
2006-11-06 * ppc-opc.c: Restore COM to mfcr wrongly removed 2003-07-04.Alan Modra1-1/+1
2006-10-262006-10-26 Ben Elliston <bje@au.ibm.com>Peter Bergner1-12/+249
Anton Blanchard <anton@samba.org> Peter Bergner <bergner@vnet.ibm.com> * ppc-opc.c (A_L, DCM, DGM, TE, RMC, R, SP, S, SH16, XRT_L, EH, AFRALFRC_MASK, Z, ZRC, Z_MASK, XLRT_MASK, XEH_MASK): Define. (POWER6): Define. (powerpc_opcodes): Extend "lwarx", "ldarx", "dcbf", "fres", "fres.", "frsqrtes", "frsqrtes." "fre", "fre.", "frsqrte" and "frsqrte.". Add "doze", "nap", "sleep", "rvwinkle", "dcbfl", "prtyw", "prtyd", "mfcfar", "cmpb", "lfdpx", "stfdpx", "mtcfar", "mffgpr", "mftgpr", "lwzcix", "lhzcix", "lbzcix", "ldcix", "lfiwax", "stwcix", "sthcix", "stbcix", "stdcix", "lfdp", "dadd", "dadd.", "dqua", "dqua.", "dmul", "dmul.", "drrnd", "drrnd.", "dscli", "dscli.", "dquai", "dquai.", "dscri", "dscri.", "drintx", "drintx.", "dcmpo", "dtstex", "dtstdc", "dtstdg", "dtstsf", "drintn", "drintn.", "dctdp", "dctdp.", "dctfix", "dctfix.", "ddedpd", "ddedpd.", "dxex", "dxex.", "dsub", "dsub.", "ddiv", "ddiv.", "dcmpu", "drsp", "drsp.", "dcffix", "dcffix.", "denbcd", "denbcd.", "diex", "diex.", "stfdp", "daddq", "daddq.", "dquaq", "dquaq.", "fcpsgn", "fcpsgn.", "dmulq", "dmulq.", "drrndq", "drrndq.", "dscliq", "dscliq.", "dquaiq", "dquaiq.", "dscriq", "dscriq.", "drintxq", "drintxq.", "dcmpoq", "dtstexq", "dtstdcq", "dtstdgq", "dtstsfq", "drintnq", "drintnq.", "dctqpq", "dctqpq.", "dctfixq", "dctfixq.", "ddedpdq", "ddedpdq.", "dxexq", "dxexq.", "dsubq", "dsubq.", "ddivq", "ddivq.", "dcmpuq", "drdpq", "drdpq.", "dcffixq", "dcffixq.", "denbcdq", "denbcdq.", "diexq" and "diexq." opcodes.
2006-10-24Add powerpc cell support.Alan Modra1-2/+17
2005-11-15 * ppc-opc.c (powerpc_opcodes): Add frin,friz,frip,frim. CorrectAlan Modra1-2/+11
frsqrtes.
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.