PR target/21397
* arm.c (ARM_OPT_SET_CPU, ARM_OPT_SET_ARCH, ARM_OPT_SET_TUNE): Define.
(arm_override_options): Use them instead of manifest constants. Don't
allow -march to override the -mtune setting.
From-SVN: r99441
DR 434. bitset::to_string() hard to use [Ready]
* include/debug/bitset (to_string): Add three overloads, taking
fewer template arguments.
From-SVN: r99433
PR libfortran/19155
* io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
non-blank characters of a real number.
* gfortran.dg/pr19155.f: New test.
From-SVN: r99424
* config/m68hc11/predicates.md (reg_or_some_mem_operand): Do not allow
the 68HC12 address indirect addressing mode as it is not supported by
bset and bclr.
* config/m68hc11/m68hc11-protos.h (m68hc11_valid_addressing_p): Declare.
(m68hc11_add_mode): Declare.
* config/m68hc11/m68hc11.c (m68hc11_valid_addressing_p): Rename from
register_indirect_p and export it.
(m68hc11_z_replacement): Use emit_insn_after when adding the save Z
instruction so that it is part of the good BB.
(m68hc11_gen_movhi): Fix invalid generation of indexed indirect
addressing with movw.
(m68hc11_gen_movqi): Use pula and pulb instead of lda and ldb for
68HC12.
* config/m68hc11/m68hc11.h (ADDR_STRICT, ADDR_INCDEC, ADDR_INDEXED,
ADDR_OFFSET, ADDR_INDIRECT, ADDR__CONST): Moved from m68hc11.c.
* config/m68hc11/m68hc11.md ("movhi_const0"): Use this pattern only
for 68HC11.
("*movhi_68hc12"): Handle movhi_const0.
("*subhi3", "subqi3"): Use general_operand for operand 1.
("*subhi3_zext"): Likewise.
From-SVN: r99405
PR target/19051
* config/m68hc11/m68hc11.md ("mulqi3"): Use general_operand for operand
1 and fix constraints.
("mulqihi3"): Use general_operand for operand 2.
From-SVN: r99399
* configure.ac: Set ld_vers_major, ld_vers_minor and ld_vers_patch for
GNU linker. Support linker version x.x.x.x.x. Require GNU linker
20050308/2.16.0 or newer for comdat group.
* configure: Regenerated.
* config.in: Regenerated.
* varasm.c (default_function_rodata_section): Put .rodata section in
COMDAT group when necessary.
(default_elf_asm_named_section): Rename HAVE_GAS_COMDAT_GROUP to
HAVE_COMDAT_GROUP.
(default_unique_section_1): Don't use .gnu.linkonce when COMDAT is
available.
Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r99395
* Makefile.in (cs-tconfig.h): Pass USED_FOR_TARGET to mkconfig.sh
* aclocal.m4 (GCC_TARGET_TEMPLATE, AH_TEMPLATE): New.
* configure.ac (enable_checking): Fix typos in runtime_checking.
(ENABLE_RUNTIME_CHECKING): Mark as target template.
(xm_file): Prepend auto-host.h
(HAVE_GAS_HIDDEN, HAVE_LD_EH_FRAME_HDR): Mark as target template.
* mkconfig.sh: Do not automatically define USED_FOR_TARGET in
tconfig.h.
* crtstuff.c: Do not include auto-host.h.
(IN_LIBGCC2): Do not define.
* gcov-io.h: Include tconfig.h, not auto-host.h.
* libgcc2.c: Do not include auto-host.h.
(abort): Do not undefine.
* libgcov.c: Remove unneeded comment about config.h.
* unwind-dw2-fde-glibc.c: Do not inlude auto-host.h.
* config.in, configure: Regenerated.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r99386
* config/mips/mips.c (mips_emit_compare): Don't reverse UNGE and UNGT
comparisons.
* config/mips/mips.md (swapped_fcond): New code macro and attribute.
(sgt_<mode>, sge_<mode>): Generalize to all members of swapped_fcond,
including sunge_<mode> and sungt_<mode>.
From-SVN: r99380
* integrate.h (get_hard_reg_initial_val): Change type of register
parameter from int to unsigned int.
(has_hard_reg_initial_val): Likewise.
* integrate.c (get_hard_reg_initial_val): Likewise.
(has_hard_reg_initial_val): Likewise. Remove cast to unsigned int.
From-SVN: r99379
* except.c (eh_status): Change the type of ttype_data to
VEC(tree,gc)*.
(add_ttypes_entry, assign_filter_values,
output_function_exception_table): Use VEC instead of VARRAY.
From-SVN: r99378
* class.c (vtbl_init_data_s): Change the type of fns to
VEC(tree,gc)*.
(build_vtbl_initializer, add_vcall_offset, add_vcall_offset):
Use VEC instead of VARRAY.
From-SVN: r99376
PR target/21441
* config/cris/cris.md ("*movdi_insn", "*mov_sidesisf_biap")
("*mov_sidesisf", "*mov_sidesisf_biap_mem", "*mov_sidesisf_mem"):
Handle moved operand being in special register.
("smulsi3_highpart", "umulsi3_highpart"): Change .error into
presumed working insn.
(mover2side): Add FIXME.
From-SVN: r99360
("*mov_sidesisf", "*mov_sidesisf_biap_mem", "*mov_sidesisf_mem"):
Handle moved operand being in special register.
("smulsi3_highpart", "umulsi3_highpart"): Change .error into
presumed working insn.
(mover2side): Add FIXME.
From-SVN: r99359
* integrate.c (get_func_hard_reg_initial_val): Delete.
(has_func_hard_reg_initial_val): Delete.
(get_hard_reg_initial_val): Inline the old implementation of
get_func_hard_reg_initial_val. Use has_hard_reg_initial_val
instead of has_func_hard_reg_initial_val to test for an existing
pseudo. Only create an rtx if a new initial value entry is needed.
(has_hard_reg_initial_val): Scan the initial value list directly.
Don't create an rtx.
From-SVN: r99358