1. 01 Feb, 2017 1 commit
  2. 15 Aug, 2016 1 commit
  3. 15 Nov, 2013 4 commits
  4. 04 Sep, 2013 1 commit
    • Tristan Gingold's avatar
      gas/ · ac21e7da
      Tristan Gingold authored
      	* config/tc-ppc.c (md_apply_fix): Handle defined after use toc
      	symbols.
      
      gas/testsuite/
      	* gas/ppc/aix.exp: Run xcoff-toc-1 test.
      	* gas/ppc/xcoff-toc-1.s, gas/ppc/xcoff-toc-1.d: New test.
      ac21e7da
  5. 16 Aug, 2013 2 commits
  6. 14 Aug, 2013 1 commit
  7. 24 Jul, 2013 1 commit
    • Tristan Gingold's avatar
      bfd/ · 7fa9fcb6
      Tristan Gingold authored
      2013-07-24  Tristan Gingold  <gingold@adacore.com>
      
              * coff-rs6000.c (xcoff_howto_table): Fix masks and pc_relative for
              R_RBR.  Add numbers in comments.
              (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_PPC_B16.
              * coff64-rs6000.c: Likewise.
      
      gas/
      2013-07-24  Tristan Gingold  <gingold@adacore.com>
      
              * config/tc-ppc.c (md_apply_fix): Adjust BFD_RELOC_PPC_B16 on
              xcoff targets.
      
      gas/testsuite/
      2013-07-24  Tristan Gingold  <gingold@adacore.com>
      
              * gas/ppc/test2xcoff32.s, gas/ppc/test2xcoff32.d: New files
              * gas/ppc/ppc.exp: Add new test.
              * gas/ppc/xcoff-br16-1.s, gas/ppc/xcoff-br16-1.d,
              gas/ppc/xcoff-br16-2.s, gas/ppc/xcoff-br16-2.d: New files
              * gas/ppc/aix.exp: Add new tests.
      7fa9fcb6
  8. 02 Jul, 2013 1 commit
    • Alan Modra's avatar
      bfd/ · f40da81b
      Alan Modra authored
      	* elf64-ppc.c (ppc64_elf_relocate_section): Set "relocation" for
      	.TOC. after relocatable check.
      gas/
      	* config/tc-ppc.c (ppc_elf_adjust_symtab): Don't make .TOC. weak.
      f40da81b
  9. 21 May, 2013 1 commit
    • Peter Bergner's avatar
      opcodes/ · c0637f3a
      Peter Bergner authored
      	* ppc-dis.c (powerpc_init_dialect): Set default dialect to power8.
      	* ppc-opc.c (BHRBE, ST, SIX, PS, SXL, VXPS_MASK, XX1RB_MASK,
      	XLS_MASK, PPCVSX2): New defines.
      	(powerpc_opcodes) <bcdadd., bcdsub., bctar, bctar, bctarl, clrbhrb,
      	fmrgew, fmrgow, lqarx, lxsiwax, lxsiwzx, lxsspx, mfbhrbe,
      	mffprd, mffprwz, mfvrd, mfvrwz, mfvsrd, mfvsrwz, msgclrp, msgsndp,
      	mtfprd, mtfprwa, mtfprwz, mtsle, mtvrd, mtvrwa, mtvrwz, mtvsrd,
      	mtvsrwa, mtvsrwz, pbt., rfebb, stqcx., stxsiwx, stxsspx,
      	vaddcuq, vaddecuq, vaddeuqm, vaddudm, vadduqm, vbpermq, vcipher,
      	vcipherlast, vclzb, vclzd, vclzh, vclzw, vcmpequd, vcmpequd.,
      	vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud., veqv, vgbbd, vmaxsd,
      	vmaxud, vminsd, vminud, vmrgew, vmrgow, vmulesw, vmuleuw, vmulosw,
      	vmulouw, vmuluwm, vnand, vncipher, vncipherlast, vorc, vpermxor,
      	vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd, vpmsumh,
      	vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
      	vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq,
      	vsubeuqm, vsubudm, vsubuqm, vupkhsw, vupklsw, waitasec, xsaddsp,
      	xscvdpspn, xscvspdpn, xscvsxdsp, xscvuxdsp, xsdivsp, xsmaddasp,
      	xsmaddmsp, xsmsubasp, xsmsubmsp, xsmulsp, xsnmaddasp, xsnmaddmsp,
      	xsnmsubasp, xsnmsubmsp, xsresp, xsrsp, xsrsqrtesp, xssqrtsp,
      	xssubsp, xxleqv, xxlnand, xxlorc>: New instructions.
      	<lxvx, stxvx>: New extended mnemonics.
      
      gas/
      	* config/tc-ppc.c (ppc_setup_opcodes): Use new_seg to fix error
      	and clean up warning when using PRINT_OPCODE_TABLE.
      
      gas/testsuite/
      	* gas/ppc/altivec2.d <bcdadd., bcdadd., vaddcuq, vaddecuq, vaddeuqm,
      	vaddudm, vadduqm, vbpermq, vcipher, vcipherlast, vclzb, vclzd, vclzh,
      	vclzw, vcmpequd, vcmpequd., vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud.,
      	veqv, vgbbd, vmaxsd, vmaxud, vminsd, vminud, vmrgew, vmrgow, vmulesw,
      	vmuleuw, vmulosw, vmulouw, vmuluwm, vnand, vncipher, vncipherlast,
      	vorc, vpermxor, vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd,
      	vpmsumh, vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
      	vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq, vsubeuqm,
      	vsubudm, vsubuqm, vupkhsw, vupklsw>: Add new tests.
      	* gas/ppc/altivec2.s: Likewise.
      	* gas/ppc/power8.d <bcdadd., bcdsub., bctar, bctarl, clrbhrb, fmrgew,
      	fmrgow, lqarx, lxsiwax, lxsiwzx, lxsspx, mfbhrbe, mfvsrd, mfvsrwz,
      	msgclrp, msgsndp, mtsle, mtvsrd, mtvsrwa, mtvsrwz, pbt., rfebb,
      	stqcx., stxsiwx, stxsspx, vaddcuq, vaddecuq, vaddeuqm, vaddudm,
      	vadduqm, vbpermq, vcipher, vcipherlast, vclzb, vclzd, vclzh, vclzw,
      	vcmpequd, vcmpequd., vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud., veqv,
      	vgbbd, vmaxsd, vmaxud, vminsd, vminud, vmrgow, vmulesw, vmuleuw,
      	vmulosw, vmulouw, vmuluwm, vnand, vncipher, vncipherlast, vorc,
      	vpermxor, vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd,
      	vpmsumh, vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
      	vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq, vsubeuqm,
      	vsubuqm, vupkhsw, vupklsw, waitasec, xsaddsp, xscvdpspn, xscvspdpn,
      	xscvsxdsp, xscvuxdsp, xsdivsp, xsmaddasp, xsmaddmsp, xsmsubasp,
      	xsmsubmsp, xsmulsp, xsnmaddasp, xsnmaddmsp, xsnmsubasp, xsnmsubmsp,
      	xsresp, xsrsp, xsrsqrtesp, xssqrtsp, xssubsp, xxleqv, xxlnand,
      	xxlorc>: Add new tests.
      	* gas/ppc/power8.s Likewise.
      	* gas/ppc/vsx.d <lxvd2x, stxvd2x>: Add new tests.
      	* gas/ppc/vsx.s Likewise.
      	* gas/ppc/vsx2.d: New test file.
      	* gas/ppc/vsx2.s: Likewise.
      	* gas/ppc/ppc.exp: Run it.
      c0637f3a
  10. 20 May, 2013 1 commit
  11. 16 May, 2013 1 commit
    • Tristan Gingold's avatar
      bfd/ · 9f6e76f4
      Tristan Gingold authored
      2013-05-16  Tristan Gingold  <gingold@adacore.com>
      
      	* coff-rs6000.c (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_16.
      	* coff64-rs6000.c (xcoff64_reloc_type_lookup): Likewise.
      
      
      gas/
      2013-05-16  Tristan Gingold  <gingold@adacore.com>
      
      	* config/tc-ppc.c (ppc_is_toc_sym): Symbols of class XMC_TC
      	are also TOC symbols.
      9f6e76f4
  12. 09 May, 2013 1 commit
  13. 06 May, 2013 1 commit
    • Alan Modra's avatar
      * config/tc-ppc.c (PPC_VLE_SPLIT16A): Delete unused macro. · c5f8c205
      Alan Modra authored
      	(PPC_VLE_SPLIT16D, PPC_VLE_LO16A, PPC_VLE_LO16D): Likewise.
      	(PPC_VLE_HI16A, PPC_VLE_HI16D): Likewise.
      	(PPC_VLE_HA16A, PPC_VLE_HA16D): Likewise.
      	(md_apply_fix): Set fx_no_overflow for assorted relocations.
      	Shift and sign-extend fieldval for use by some VLE reloc
      	operand->insert functions.
      c5f8c205
  14. 25 Jan, 2013 1 commit
  15. 16 Jan, 2013 1 commit
  16. 11 Jan, 2013 1 commit
    • Peter Bergner's avatar
      include/opcode/ · 5817ffd1
      Peter Bergner authored
      	* ppc.h (PPC_OPCODE_POWER8): New define.
      	(PPC_OPCODE_HTM): Likewise.
      
      opcodes/
      	* ppc-dis.c (ppc_opts): Add "power8", "pwr8" and "htm" entries.
      	* ppc-opc.c (HTM_R, HTM_SI, XRTRB_MASK, XRTRARB_MASK, XRTLRARB_MASK,
      	XRTARARB_MASK, XRTBFRARB_MASK, XRCL, POWER8, PPCHTM): New defines.
      	(SH6): Update.
      	<"tabort.", "tabortdc.", "tabortdci.", "tabortwc.",
      	"tabortwci.", "tbegin.", "tcheck", "tend.", "trechkpt.",
      	"treclaim.", "tsr.">: Add POWER8 HTM opcodes.
      	<"tendall.", "tresume.", "tsuspend.">: Add POWER8 HTM extended opcodes.
      
      gas/
      	* doc/as.texinfo (Target PowerPC): Document -mpower8 and -mhtm.
      	* doc/c-ppc.texi (PowerPC-Opts):  Likewise.
      	* config/tc-ppc.c (md_show_usage): Likewise.
      	(ppc_handle_align): Handle power8's group ending nop.
      
      gas/testsuite/
      	* gas/ppc/htm.d: New test.
      	* gas/ppc/htm.s: Likewise.
      	* gas/ppc/power8.d: Likewise.
      	* gas/ppc/power8.s: Likewise.
      	* gas/ppc/ppc.exp: Run them.
      5817ffd1
  17. 23 Nov, 2012 1 commit
    • Alan Modra's avatar
      include/opcode/ · 776fc418
      Alan Modra authored
      	* ppc.h (ppc_parse_cpu): Update prototype.
      opcodes/
      	* ppc-dis.c (ppc_parse_cpu): Add "sticky" param.  Track bits
      	set from ppc_opts.sticky in it.  Delete "retain_mask".
      	(powerpc_init_dialect): Choose default dialect from info->mach
      	before parsing -M options.  Handle more bfd_mach_ppc variants.
      	Update common default to power7.
      gas/
      	* config/tc-ppc.c (sticky): New var.
      	(md_parse_option, ppc_machine): Update ppc_parse_cpu calls.
      gas/testsuite/
      	* gas/ppc/astest2.d: Pass -Mppc to objdump.
      ld/testsuite/
      	* ld-powerpc/plt1.d: Update for default "at" branch hints.
      	* ld-powerpc/tlsexe.d: Likewise.
      	* ld-powerpc/tlsexetoc.d: Likewise.
      	* ld-powerpc/tlsopt1.d: Likewise.
      	* ld-powerpc/tlsopt1_32.d: Likewise.
      	* ld-powerpc/tlsopt2.d: Likewise.
      	* ld-powerpc/tlsopt2_32.d: Likewise.
      	* ld-powerpc/tlsopt4.d: Likewise.
      	* ld-powerpc/tlsopt4_32.d: Likewise.
      	* ld-powerpc/tlsso.d: Likewise.
      	* ld-powerpc/tlstocso.d: Likewise.
      776fc418
  18. 14 Nov, 2012 1 commit
    • Ulrich Weigand's avatar
      gas/ChangeLog: · 46b596ff
      Ulrich Weigand authored
      	* config/tc-ppc.c (md_apply_fix): Leave field zero when emitting
      	an ELF reloc on data as well.
      
      gas/testsuite/ChangeLog:
      
      	* gas/ppc/astest.d: Update for fixup changes.
      	* gas/ppc/astest64.d: Likewise.
      	* gas/ppc/astest2.d: Likewise.
      	* gas/ppc/astest2_64.d: Likewise.
      	* gas/ppc/test1elf32.d: Likewise.
      	* gas/ppc/test1elf64.d: Likewise.
      46b596ff
  19. 06 Nov, 2012 2 commits
    • Alan Modra's avatar
      bfd/ · a38a07e0
      Alan Modra authored
      	* elf64-ppc.c (struct ppc_link_hash_table): Add dot_toc_dot.
      	(ppc64_elf_size_stubs): Lookup ".TOC.".
      	(ppc64_elf_relocate_section): Resolve special symbol ".TOC.".
      gas/
      	* config/tc-ppc.c (ppc_elf_adjust_symtab): New function, split out..
      	(ppc_frob_file_before_adjust): ..from here.
      	(md_apply_fix): Set BSF_KEEP on .TOC. if not @tocbase.
      	* config/tc-ppc.h (ppc_elf_adjust_symtab): Declare.
      	(tc_adjust_symtab): Define.
      a38a07e0
    • Alan Modra's avatar
      1ec2d25e
  20. 05 Nov, 2012 1 commit
    • Alan Modra's avatar
      * config/tc-ppc.c (md_chars_to_number): Delete. · 3b8b57a9
      Alan Modra authored
      	(ppc_setup_opcodes): Assert num_powerpc_operands fit.
      	(ppc_is_toc_sym): Move earlier in file.
      	(md_assemble): Move code setting reloc from md_apply_fix.  Combine
      	non-ELF code setting fixup with ELF code.  Stash opindex in
      	fx_pcrel_adjust.  Adjust fixup offset for VLE.  Don't set
      	fx_no_overflow here.
      	(md_apply_fix): Rewrite to use ppc_insert_operand for all
      	resolved instruction fields.  Leave insn field zero when
      	emitting an ELF reloc in most cases.
      3b8b57a9
  21. 29 Oct, 2012 1 commit
    • Alan Modra's avatar
      binutils/ · ce23608f
      Alan Modra authored
      	* dlltool.c (INIT_SEC_DATA): Move.
      	(secdata <DLLTOOL_PPC>): Use here too.
      binutils/testsuite/
      	* binutils-all/copy-3.d: Exclude all cygwin and mingw targets,
      	and rs6000.
      gas/
      	* config/tc-ppc.c (ppc_znop): Remove unused vars.
      ld/
      	* configure.tgt (powerpcle-pe,winnt,cygwin): Add deffilep.o
      	and pe-dll.o.
      ce23608f
  22. 26 Oct, 2012 1 commit
    • Alan Modra's avatar
      PR target/14758 · 1fe532cf
      Alan Modra authored
      bfd/
      	* elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
      	bfd_reloc values.  Map to corresponding D-form relocs.
      	(is_insn_ds_form, is_insn_qs_form): New functions.
      	(ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
      	fields using D-form reloc.
      gas/
      	* config/tc-ppc.c (ppc_setup_opcodes): Fix comment.
      	(md_assemble): Translate to _DS relocs for ppc32 as well as ppc64.
      	(tc_gen_reloc): Handle _DS relocs in ppc32 mode.
      1fe532cf
  23. 01 Aug, 2012 1 commit
    • James Lemke's avatar
      gas/ChangeLog: · 8fbf7334
      James Lemke authored
      2012-08-01  James Lemke  <jwlemke@codesourcery.com>
      
      	* gas/dwarf2dbg.c (out_set_addr): Allow for non-constant value of
      	DWARF2_LINE_MIN_INSN_LENGTH
      	* gas/config/tc-ppc.c (ppc_dwarf2_line_min_insn_length): Declare
      	and initialize.
      	(md_apply_fix): Branch addr can be a multiple of 2 or 4.
      	* gas/config/tc-ppc.h (DWARF2_LINE_MIN_INSN_LENGTH): Now a
      	variable reference.
      
      gas/testsuite/ChangeLog:
      2012-08-01  James Lemke  <jwlemke@codesourcery.com>
      
      	* gas/cfi/cfi-ppc-1.d: Allow for code alignment of 2 or 4.
      
      ld/ChangeLog:
      2012-08-01  James Lemke  <jwlemke@codesourcery.com>
      
      	* ld/testsuite/ld-gc/pr13683.d: XFAIL for powerpc*-*-eabivle.
      8fbf7334
  24. 18 May, 2012 1 commit
  25. 14 May, 2012 1 commit
    • James Lemke's avatar
      · b9c361e0
      James Lemke authored
      Add support for PowerPC VLE.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      
      	* NEWS:  Mention PowerPC VLE port.
      
      2012-05-14  James Lemke <jwlemke@codesourcery.com>
      	    Catherine Moore  <clm@codesourcery.com>
      
      	bfd/
      	* bfd.c (bfd_lookup_section_flags): Add section parm.
      	* ecoff.c (bfd_debug_section): Remove flag_info initializer.
      	* elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
      	(bfd_elf_lookup_section_flags): Add section parm.
      	* elf32-ppc.c (is_ppc_vle): New function.
      	(ppc_elf_modify_segment_map): New function.
      	(elf_backend_modify_segment_map): Define.
      	(has_vle_insns): New define.
      	* elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
      	* elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
      	Move in logic to omit / include a section.
      	* libbfd-in.h (bfd_link_info): Add section parm.
      	(bfd_generic_lookup_section_flags): Likewise.
      	* reloc.c (bfd_generic_lookup_section_flags): Likewise.
      	* section.c (bfd_section): Move out section_flag_info.
      	(BFD_FAKE_SECTION): Remove flag_info initializer.
      	* targets.c (_bfd_lookup_section_flags): Add section parm.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      
      	bfd/
      	* archures.c (bfd_mach_ppc_vle): New.
      	* bfd-in2.h: Regenerated.
      	* cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
      	* elf32-ppc.c (split16_format_type): New enumeration.
      	(ppc_elf_vle_split16): New function.
      	(HOWTO): Add entries for R_PPC_VLE relocations.
      	(ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
      	(ppc_elf_section_flags): New function.
      	(ppc_elf_lookup_section_flags): New function.
      	(ppc_elf_section_processing): New function.
      	(ppc_elf_check_relocs): Handle PPC_VLE relocations.
      	(ppc_elf_relocation_section): Likewise.
      	(elf_backend_lookup_section_flags_hook): Define.
      	(elf_backend_section_flags): Define.
      	(elf_backend_section_processing): Define.
      	* elf32-ppc.h (ppc_elf_section_processing): Declare.
      	* libbfd.h: Regenerated.
      	* reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
      	BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
      	BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
      	BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
      	BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
      	BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
      	BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
      	BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
      	BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      
      	gas/
      	* config/tc-ppc.c (insn_validate): New func of existing code to call..
      	(ppc_setup_opcodes): ..from 2 places here.
      	Revise for second (VLE) opcode table.
      	Add #ifdef'd code to print opcode tables.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      
      	gas/
      	* config/tc-ppc.c (ppc_setup_opcodes): Allow out-of-order
      	for the VLE conditional branches.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
                  Maciej W. Rozycki  <macro@codesourcery.com>
      	    Rhonda Wittels  <rhonda@codesourcery.com>
      
      	gas/
      	* config/tc-ppc.c (PPC_VLE_SPLIT16A): New macro.
      	(PPC_VLE_SPLIT16D): New macro.
      	(PPC_VLE_LO16A): New macro.
      	(PPC_VLE_LO16D): New macro.
      	(PPC_VLE_HI16A): New macro.
      	(PPC_VLE_HI16D): New macro.
      	(PPC_VLE_HA16A): New macro.
      	(PPC_VLE_HA16D): New macro.
      	(PPC_APUINFO_VLE): New definition.
      	(md_chars_to_number): New function.
      	(md_parse_option): Check for combinations of little
      	endian and -mvle.
      	(md_show_usage): Document -mvle.
      	(ppc_arch): Recognize VLE.
      	(ppc_mach): Recognize bfd_mach_ppc_vle.
      	(ppc_setup_opcodes): Print the opcode table if
      	* config/tc-ppc.h (ppc_frag_check): Declare.
      	* doc/c-ppc.texi: Document -mvle.
      	* NEWS:  Mention PowerPC VLE port.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      
      	gas/
      	* config/tc-ppc.h (ppc_dw2_line_min_insn_length): Declare.
      	(DWARF2_LINE_MIN_INSN_LENGTH): Redefine.
      	* config/tc-ppc.c (ppc_dw2_line_min_insn_length): New.
      	* dwarf2dbg.c (scale_addr_delta): Handle values of 1
      	for DWARF2_LINE_MIN_INSN_LENGTH.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
                  Maciej W. Rozycki  <macro@codesourcery.com>
      	    Rhonda Wittels  <rhonda@codesourcery.com>
      
      	gas/testsuite/
      	* gas/ppc/ppc.exp: Run new tests.
      	* gas/ppc/vle-reloc.d: New test.
      	* gas/ppc/vle-reloc.s: New test.
      	* gas/ppc/vle-simple-1.d: New test.
      	* gas/ppc/vle-simple-1.s: New test.
      	* gas/ppc/vle-simple-2.d: New test.
      	* gas/ppc/vle-simple-2.s: New test.
      	* gas/ppc/vle-simple-3.d: New test.
      	* gas/ppc/vle-simple-3.s: New test.
      	* gas/ppc/vle-simple-4.d: New test.
      	* gas/ppc/vle-simple-4.s: New test.
      	* gas/ppc/vle-simple-5.d: New test.
      	* gas/ppc/vle-simple-5.s: New test.
      	* gas/ppc/vle-simple-6.d: New test.
      	* gas/ppc/vle-simple-6.s: New test.
      	* gas/ppc/vle.d: New test.
      	* gas/ppc/vle.s: New test.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      	include/elf/
      	* ppc.h (SEC_PPC_VLE): Remove.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      	    James Lemke  <jwlemke@codesourcery.com>
      
      	include/elf/
      	* ppc.h (R_PPC_VLE_REL8): New reloction.
      	(R_PPC_VLE_REL15): Likewise.
      	(R_PPC_VLE_REL24): Likewise.
      	(R_PPC_VLE_LO16A): Likewise.
      	(R_PPC_VLE_LO16D): Likewise.
      	(R_PPC_VLE_HI16A): Likewise.
      	(R_PPC_VLE_HI16D): Likewise.
      	(R_PPC_VLE_HA16A): Likewise.
      	(R_PPC_VLE_HA16D): Likewise.
      	(R_PPC_VLE_SDA21): Likewise.
      	(R_PPC_VLE_SDA21_LO): Likewise.
      	(R_PPC_VLE_SDAREL_LO16A): Likewise.
      	(R_PPC_VLE_SDAREL_LO16D): Likewise.
      	(R_PPC_VLE_SDAREL_HI16A): Likewise.
      	(R_PPC_VLE_SDAREL_HI16D): Likewise.
      	(R_PPC_VLE_SDAREL_HA16A): Likewise.
      	(R_PPC_VLE_SDAREL_HA16D): Likewise.
      	(SEC_PPC_VLE): Remove.
      	(PF_PPC_VLE): New program header flag.
      	(SHF_PPC_VLE): New section header flag.
      	(vle_opcodes, vle_num_opcodes): New.
      	(VLE_OP): New macro.
      	(VLE_OP_TO_SEG): New macro.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
                  Maciej W. Rozycki  <macro@codesourcery.com>
      	    Rhonda Wittels  <rhonda@codesourcery.com>
      
      	include/opcode/
      	* ppc.h (PPC_OPCODE_VLE): New definition.
      	(PPC_OP_SA): New macro.
      	(PPC_OP_SE_VLE): New macro.
      	(PPC_OP): Use a variable shift amount.
      	(powerpc_operand): Update comments.
      	(PPC_OPSHIFT_INV): New macro.
      	(PPC_OPERAND_CR): Replace with...
      	(PPC_OPERAND_CR_BIT): ...this and
      	(PPC_OPERAND_CR_REG): ...this.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      
      	ld/
      	* ldlang.c (walk_wild_consider_section): Don't copy section_flag_list.
      	Pass it to callback.
      	(walk_wild_section_general): Pass section_flag_list to callback.
      	(lang_add_section): Add sflag_list parm.
      	Move out logic to keep / omit a section & call bfd_lookup_section_flags.
      	(output_section_callback_fast): Add sflag_list parm.
      	Add new parm to lang_add_section calls.
      	(output_section_callback): Likewise.
      	(check_section_callback): Add sflag_list parm.
      	(lang_place_orphans): Add new parm to lang_add_section calls.
      	(gc_section_callback): Add sflag_list parm.
      	(find_relro_section_callback): Likewise.
      	* ldlang.h (callback_t): Add flag_info parm.
      	(lang_add_section): Add sflag_list parm.
      	* emultempl/armelf.em (elf32_arm_add_stub_section):
      	Add lang_add_section parm.
      	* emultempl/beos.em (gld*_place_orphan): Likewise.
      	* emultempl/elf32.em (gld*_place_orphan): Likewise.
      	* emultempl/hppaelf.em (hppaelf_add_stub_section): Likewise.
      	* emultempl/m68hc1xelf.em (m68hc11elf_add_stub_section): Likewise.
      	* emultempl/mipself.em (mips_add_stub_section): Likewise.
      	* emultempl/mmo.em (mmo_place_orphan): Likewise.
      	* emultempl/pe.em (gld_*_place_orphan): Likewise.
      	* emultempl/pep.em (gld_*_place_orphan): Likewise.
      	* emultempl/ppc64elf.em (ppc_add_stub_section): Likewise.
      	* emultempl/spuelf.em (spu_place_special_section): Likewise.
      	* emultempl/vms.em (vms_place_orphan): Likewise.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      
      	ld/testsuite/
      	* ld-powerpc/powerpc.exp: Create ppceabitests.
      	* ld-powerpc/vle-multiseg.s: New.
      	* ld-powerpc/vle-multiseg-1.d: New.
      	* ld-powerpc/vle-multiseg-1.ld: New.
      	* ld-powerpc/vle-multiseg-2.d: New.
      	* ld-powerpc/vle-multiseg-2.ld: New.
      	* ld-powerpc/vle-multiseg-3.d: New.
      	* ld-powerpc/vle-multiseg-3.ld: New.
      	* ld-powerpc/vle-multiseg-4.d: New.
      	* ld-powerpc/vle-multiseg-4.ld: New.
      	* ld-powerpc/vle-multiseg-5.d: New.
      	* ld-powerpc/vle-multiseg-5.ld: New.
      	* ld-powerpc/vle-multiseg-6.d: New.
      	* ld-powerpc/vle-multiseg-6.ld: New.
      	* ld-powerpc/vle-multiseg-6a.s: New.
      	* ld-powerpc/vle-multiseg-6b.s: New.
      	* ld-powerpc/vle-multiseg-6c.s: New.
      	* ld-powerpc/vle-multiseg-6d.s: New.
      	* ld-powerpc/powerpc.exp: Run new tests.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      
      	ld/
      	* NEWS:  Mention PowerPC VLE port.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
      
      	ld/testsuite/
      	* ld-powerpc/apuinfo.rd: Update for VLE.
      	* ld-powerpc/vle-reloc-1.d: New.
      	* ld-powerpc/vle-reloc-1.s: New.
      	* ld-powerpc/vle-reloc-2.d: New.
      	* ld-powerpc/vle-reloc-2.s: New.
      	* ld-powerpc/vle-reloc-3.d: New.
      	* ld-powerpc/vle-reloc-3.s: New.
      	* ld-powerpc/vle-reloc-def-1.s: New.
      	* ld-powerpc/vle-reloc-def-2.s: New.
      	* ld-powerpc/vle-reloc-def-3.s: New.
      
      2012-05-14  James Lemke  <jwlemke@codesourcery.com>
      
      	opcodes/
      	* ppc-dis.c (get_powerpc_dialect): Use is_ppc_vle.
      	(PPC_OPCD_SEGS, VLE_OPCD_SEGS): New defines.
      	(vle_opcd_indices): New array.
      	(lookup_vle): New function.
      	(disassemble_init_powerpc): Revise for second (VLE) opcode table.
      	(print_insn_powerpc): Likewise.
      	* ppc-opc.c: Likewise.
      
      2012-05-14  Catherine Moore  <clm@codesourcery.com>
                  Maciej W. Rozycki  <macro@codesourcery.com>
      	    Rhonda Wittels  <rhonda@codesourcery.com>
      	    Nathan Froyd <froydnj@codesourcery.com>
      
      	opcodes/
      	* ppc-opc.c (insert_arx, extract_arx): New functions.
      	(insert_ary, extract_ary): New functions.
      	(insert_li20, extract_li20): New functions.
      	(insert_rx, extract_rx): New functions.
      	(insert_ry, extract_ry): New functions.
      	(insert_sci8, extract_sci8): New functions.
      	(insert_sci8n, extract_sci8n): New functions.
      	(insert_sd4h, extract_sd4h): New functions.
      	(insert_sd4w, extract_sd4w): New functions.
      	(insert_vlesi, extract_vlesi): New functions.
      	(insert_vlensi, extract_vlensi): New functions.
      	(insert_vleui, extract_vleui): New functions.
      	(insert_vleil, extract_vleil): New functions.
       	(BI_MASK, BB_MASK, BT): Use PPC_OPERAND_CR_BIT.
       	(BI16, BI32, BO32, B8): New.
      	(B15, B24, CRD32, CRS): New.
       	(CRD, OBF, BFA, CR, CRFS): Use PPC_OPERAND_CR_REG.
      	(DB, IMM20, RD, Rx, ARX, RY, RZ): New.
      	(ARY, SCLSCI8, SCLSCI8N, SE_SD, SE_SDH): New.
      	(SH6_MASK): Use PPC_OPSHIFT_INV.
      	(SI8, UI5, OIMM5, UI7, BO16): New.
      	(VLESIMM, VLENSIMM, VLEUIMM, VLEUIMML): New.
      	(XT6, XA6, XB6, XB6S, XC6): Use PPC_OPSHIFT_INV.
      	(ALLOW8_SPRG): New.
      	(insert_sprg, extract_sprg): Check ALLOW8_SPRG.
      	(OPVUP, OPVUP_MASK OPVUP): New
      	(BD8, BD8_MASK, BD8IO, BD8IO_MASK): New.
      	(EBD8IO, EBD8IO1_MASK, EBD8IO2_MASK, EBD8IO3_MASK): New.
      	(BD15, BD15_MASK, EBD15, EBD15_MASK, EBD15BI, EBD15BI_MASK): New.
      	(BD24,BD24_MASK, C_LK, C_LK_MASK, C, C_MASK): New.
       	(IA16, IA16_MASK, I16A, I16A_MASK, I16L, I16L_MASK): New.
      	(IM7, IM7_MASK, LI20, LI20_MASK, SCI8, SCI8_MASK): New.
      	(SCI8BF, SCI8BF_MASK, SD4, SD4_MASK): New.
      	(SE_IM5, SE_IM5_MASK): New.
      	(SE_R, SE_R_MASK, SE_RR, SE_RR_MASK): New.
      	(EX, EX_MASK, BO16F, BO16T, BO32F, BO32T): New.
      	(BO32DNZ, BO32DZ): New.
      	(NO371, PPCSPE, PPCISEL, PPCEFS, MULHW): Include PPC_OPCODE_VLE.
      	(PPCVLE): New.
      	(powerpc_opcodes): Add new VLE instructions.  Update existing
      	instruction to include PPCVLE if supported.
      	* ppc-dis.c (ppc_opts): Add vle entry.
      	(get_powerpc_dialect): New function.
      	(powerpc_init_dialect): VLE support.
      	(print_insn_big_powerpc): Call get_powerpc_dialect.
      	(print_insn_little_powerpc): Likewise.
      	(operand_value_powerpc): Handle negative shift counts.
      	(print_insn_powerpc): Handle 2-byte instruction lengths.
      b9c361e0
  26. 09 Mar, 2012 1 commit
    • Alan Modra's avatar
      include/opcode/ · aea77599
      Alan Modra authored
      	* ppc.h: Add PPC_OPCODE_ALTIVEC2, PPC_OPCODE_E6500, PPC_OPCODE_TMR.
      opcodes/
      	* ppc-dis.c (ppc_opts): Add entries for "e5500" and "e6500".
      	* ppc-opc.c (insert_ls, TMR, ESYNC, XSYNCLE_MASK): New.
      	(PPCVEC2, PPCTMR, E6500): New short names.
      	(powerpc_opcodes): Add vabsdub, vabsduh, vabsduw, dni, mvidsplt,
      	mviwsplt, icblq., mftmr, mttmr, dcblq., miso, lvexbx, lvexhx,
      	lvexwx, stvexbx, stvexhx, stvexwx, lvepx, lvepxl, stvepx, stvepxl,
      	lvtrx, lvtrxl, lvtlx, lvtlxl, stvfrx, stvfrxl, stvflx, stvflxl,
      	lvswx, lvswxl, stvswx, stvswxl, lvsm mnemonics. Accept LS, ESYNC
      	optional operands on sync instruction for E6500 target.
      bfd/
      	* archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
      	* bfd-in2.h: Regenerate.
      	* cpu-powerpc.c (bfd_powerpc_archs): Add entryies for
      	bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
      gas/
      	* config/tc-ppc.c (md_show_usage): Document -me5500 and -me6500.
      	(ppc_handle_align): Add termination nop opcode for e500mc family.
      	* doc/as.texinfo: Document options -me5500 and -me6500.
      	* doc/c-ppc.texi: Likewise.
      gas/testsuite/
      	* gas/ppc/e500mc64_nop.s: New test case for e500mc family
      	termination nops.
      	* gas/ppc/e500mc64_nop.d: Likewise.
      	* gas/ppc/e5500_nop.s: Likewise.
      	* gas/ppc/e5500_nop.d: Likewise.
      	* gas/ppc/e6500_nop.s: Likewise.
      	* gas/ppc/e6500_nop.d: Likewise.
      	* gas/ppc/e6500.s: New.
      	* gas/ppc/e6500.d: Likewise.
      	* gas/ppc/ppc.exp: Run e6500, e500mc64_nop, e5500_nop, and e6500_nop.
      aea77599
  27. 21 Nov, 2011 1 commit
  28. 14 Jun, 2011 1 commit
    • Tristan Gingold's avatar
      gas/ · 2fb4b302
      Tristan Gingold authored
      2011-06-14  Tristan Gingold  <gingold@adacore.com>
      
      	* config/tc-ppc.h (struct ppc_tc_sy): Complete comment on within.
      	(tc_new_dot_label): Define.
      	(ppc_new_dot_label): Declare.
      	* config/tc-ppc.c (ppc_frob_label): Set within target field.
      	(ppc_fix_adjustable): Use this field to adjust the reloc.
      	(ppc_new_dot_label): New function.
      
      
      gas/testsuite/
      2011-06-14  Tristan Gingold  <gingold@adacore.com>
      
      	* gas/ppc/test1xcoff32.d: Adjust for csect anchor.
      2fb4b302
  29. 02 Jun, 2011 1 commit
  30. 18 May, 2011 1 commit
    • Tristan Gingold's avatar
      bfd · 85645aed
      Tristan Gingold authored
      2011-05-18  Tristan Gingold  <gingold@adacore.com>
      
      	* libxcoff.h (struct xcoff_dwsect_name): New type.
      	(XCOFF_DWSECT_NBR_NAMES): New macro.
      	(xcoff_dwsect_names): Declare.
      	* coffcode.h (sec_to_styp_flags): Handle xcoff dwarf sections.
      	(styp_to_sec_flags): Ditto.
      	(coff_new_section_hook): Ditto.
      	(coff_slurp_symbol_table): Handle C_DWARF and C_INFO.
      	* coff-rs6000.c (xcoff_dwsect_name): New variable.
      
      gas
      2011-05-18  Tristan Gingold  <gingold@adacore.com>
      
      	* config/tc-ppc.h (ppc_tc_sy): Reorder fields.
      	Put size into an union with dw.
      	(OBJ_COPY_SYMBOL_ATTRIBUTES): Adjust.
      	(ppc_xcoff_end): Declare.
      	(md_end): Define.
      	* config/tc-ppc.c: Add includes for xcoff.
      	(ppc_dwsect): New function.
      	(md_pseudo_table): Add dwsect.
      	(struct dw_subsection): New.
      	(dw_sections): New.
      	(ppc_change_debug_section): New function.
      	(ppc_xcoff_end): Ditto.
      	(ppc_function): Adjust for ppc_tc_sy.
      	(ppc_symbol_new_hook): Ditto.
      	(ppc_frob_symbol): Ditto.
      	(ppc_frob_section): Do not set vma for debug sections.
      	(ppc_fix_adjustable): Return true for debug sections.
      	* config/obj-coff.c: Add includes for xcoff.
      	(coff_frob_section): Handle dwarf section.
      
      gas/testsuite
      2011-05-18  Tristan Gingold  <gingold@adacore.com>
      
      	* gas/ppc/xcoff-dwsect-1-32.d: New test.
      	* gas/ppc/xcoff-dwsect-1-64.d: Ditto.
      	* gas/ppc/xcoff-dwsect-1.s: New file.
      	* gas/ppc/aix.exp (do_align_test): Add tests.
      85645aed
  31. 30 Mar, 2011 1 commit
  32. 10 Feb, 2011 1 commit
  33. 04 Nov, 2010 1 commit
    • Alan Modra's avatar
      * config/tc-ppc.c (nop_limit): New var. · cef4f754
      Alan Modra authored
      	(OPTION_NOPS): Define.
      	(md_longopts): Add --nops.
      	(md_parse_option): Handle it.
      	(md_show_usage): Publish.
      	(ppc_handle_align): Pad with a branch followed by nops if more
      	than nop_limit nops.
      cef4f754
  34. 29 Jul, 2010 1 commit
  35. 28 Jul, 2010 1 commit