Skip to content
Snippets Groups Projects
  1. Jun 19, 2017
    • Martin Liska's avatar
      Fix multi-versioning issues (PR ipa/80732). · 871cc215
      Martin Liska authored
      2017-06-19  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/80732
      	* attribs.c (make_dispatcher_decl): Do not append '.ifunc'
      	to dispatcher function name.
      	* multiple_target.c (replace_function_decl): New function.
      	(create_dispatcher_calls): Redirect both edges and references.
      2017-06-19  Martin Liska  <mliska@suse.cz>
      
      	PR ipa/80732
      	* gcc.target/i386/mvc5.c: Scan indirect_function.
      	* gcc.target/i386/mvc7.c: Likewise.
      	* gcc.target/i386/pr80732.c: New test.
      
      From-SVN: r249365
      871cc215
    • Paolo Carlini's avatar
      re PR c++/66093 (g++ produces incorrect output on code with constexpr function... · 431abe69
      Paolo Carlini authored
      re PR c++/66093 (g++ produces incorrect output on code with constexpr function initializing class with private fields)
      
      2017-06-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/66093
      	* g++.dg/cpp1y/constexpr-66093.C: New.
      
      From-SVN: r249364
      431abe69
    • Rainer Orth's avatar
      Update Solaris baselines for GCC 8.0 (PR libstdc++/81092) · a06a5385
      Rainer Orth authored
      	* config/abi/post/i386-solaris2.10/baseline_symbols.txt: Regenerate.
      	* config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: Likewise.
      	* config/abi/post/i386-solaris2.11/baseline_symbols.txt: Likewise.
      	* config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: Likewise.
      	* config/abi/post/sparc-solaris2.10/baseline_symbols.txt: Likewise.
      	* config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
      	Likewise.
      	* config/abi/post/sparc-solaris2.11/baseline_symbols.txt: Likewise.
      	* config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
      	Likewise.
      
      From-SVN: r249362
      a06a5385
    • Jan Hubicka's avatar
      Fix typo · b2c2a7e4
      Jan Hubicka authored
      From-SVN: r249361
      b2c2a7e4
    • Jan Hubicka's avatar
      profile-count.c (profile_count::dump): Dump quality. · 4e9a497f
      Jan Hubicka authored
      	* profile-count.c (profile_count::dump): Dump quality.
      	(profile_count::differs_from_p): Update for unsigned val.
      	* profile-count.h (profile_count_quality): New enum.
      	(profile_count): Turn m_val to 62bit unsigned, add quality tracking.
      
      From-SVN: r249360
      4e9a497f
    • Rainer Orth's avatar
      Remove reference to Solaris 2.[56] · fe1ae165
      Rainer Orth authored
      	* g++.dg/other/unused1.C: Remove *-*-solaris2.[56]* from
      	dg-skip-if list.
      
      From-SVN: r249359
      fe1ae165
    • Richard Biener's avatar
      tree-ssa-loop-niter.h (estimate_numbers_of_iterations): Take struct function as arg. · adb7eaa2
      Richard Biener authored
      2017-06-19  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-loop-niter.h (estimate_numbers_of_iterations): Take
      	struct function as arg.
      	(estimate_numbers_of_iterations): Export overload with loop arg.
      	(free_numbers_of_iterations_estimates_loop): Use an overload of
      	free_numbers_of_iterations_estimates instead.
      	* tree-cfg.c (remove_bb): Adjust.
      	* tree-cfgcleanup.c (remove_forwarder_block_with_phi): Likewise.
      	* tree-parloops.c (gen_parallel_loop): Likewise.
      	* tree-ssa-loop-ivcanon.c (canonicalize_induction_variables):
      	Likewise.
      	(tree_unroll_loops_completely): Likewise.
      	* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
      	Use an overload instead and export.
      	(estimated_loop_iterations): Adjust.
      	(max_loop_iterations): Likewise.
      	(likely_max_loop_iterations): Likewise.
      	(estimate_numbers_of_iterations): Take struct function as arg
      	and adjust.
      	(loop_exits_before_overflow): Adjust.
      	(free_numbers_of_iterations_estimates_loop): Use an overload.
      	* tree-vect-loop.c (vect_analyze_loop_form): Adjust.
      	* tree-vectorizer.c (vect_free_loop_info_assumptions): Likewise.
      
      From-SVN: r249358
      adb7eaa2
    • Richard Biener's avatar
      re PR ipa/81112 (internal compiler error: tree check: expected integer_cst,... · db9bbdec
      Richard Biener authored
      re PR ipa/81112 (internal compiler error: tree check: expected integer_cst, have range_expr in get_len, at tree.h:5321)
      
      2017-06-19  Richard Biener  <rguenther@suse.de>
      
      	PR ipa/81112
      	* ipa-prop.c (find_constructor_constant_at_offset): Handle
      	RANGE_EXPR conservatively.
      
      	* g++.dg/torture/pr81112.C: New testcase.
      
      From-SVN: r249357
      db9bbdec
    • GCC Administrator's avatar
      Daily bump. · 245ad722
      GCC Administrator authored
      From-SVN: r249356
      245ad722
  2. Jun 18, 2017
  3. Jun 17, 2017
  4. Jun 16, 2017
    • Carl Love's avatar
      rs6000-c.c (altivec_overloaded_builtins): Add definitions for vec_float,... · be1418c7
      Carl Love authored
      rs6000-c.c (altivec_overloaded_builtins): Add definitions for vec_float, vec_float2, vec_floato, vec_floate built-ins.
      
      gcc/ChangeLog:
      
      2017-06-16  Carl Love  <cel@us.ibm.com>
      
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
      	definitions for vec_float, vec_float2, vec_floato,
      	vec_floate built-ins.
      	* config/rs6000/vsx.md (define_c_enum "unspec"): Add RTL code
      	for instructions vsx_xvcvsxws vsx_xvcvuxwsp, float2, floato and
      	floate.
      	* config/rs6000/rs6000-builtin.def (FLOAT2_V2DI, FLOATE_V2DF,
      	FLOATE_2DI, FLOATO_V2DF, FLOATEE_V2DI, XVCVSXWSP_V4SF,
      	UNS_FLOATO_V2DI, UNS_FLOATE_V2DI): Add definitions.
      	* config/altivec.md (define_insn "p8_vmrgew_<mode>",
      	define_mode_attr VF_sxddp): Add V4SF type to p8_vmrgew.
      	* config/rs6000/altivec.h (vec_float, vec_float2, vec_floate,
      	vec_floato): Add builtin defines.
      	* doc/extend.texi (vec_float, vec_float2, vec_floate, vec_floato):
      	Update the built-in documentation file for the new built-in
      	functions.
      
      gcc/testsuite/ChangeLog:
      
      2017-06-16  Carl Love  <cel@us.ibm.com>
      
      	* gcc.target/powerpc/builtins-3-runnable.c (test_result_sp,
      	main): Add runnable tests and test checker for vec_float,
      	vec_float2, vec_floate and vec_floato builtins.
      
      From-SVN: r249311
      be1418c7
    • Richard Earnshaw's avatar
      [arm] Fix various tests · e3e266bf
      Richard Earnshaw authored
      The neon-thumb2-move.c test was overriding the options that had been
      detected as being necessary to enable Neon.  The result was that the
      combination of the test's options and those auto-detected were not
      compatible with neon leading to a test failure.  The correct fix here
      is to stick with the options that dg-add-options arm_neon has worked
      out.
      
      The thumb2-slow-flash-data tests were relying (incorrectly) on a
      particular FPU being enabled by default.  These tests are fixed by
      adding +fp to the architecture selected.
      
      	* gcc.target/arm/neon-thumb2-move.c (dg-options): Don't override
      	the architecture options added by dg-add-options arm_neon.
      	* gcc.target/arm/thumb2-slow-flash-data-2.c (dg-opitions): Add +fp
      	to the architecture.
      	* gcc.target/arm/thumb3-slow-flash-data-3.c (dg-opitions): Likewise.
      	* gcc.target/arm/thumb4-slow-flash-data-3.c (dg-opitions): Likewise.
      	* gcc.target/arm/thumb5-slow-flash-data-3.c (dg-opitions): Likewise.
      
      From-SVN: r249310
      e3e266bf
    • Richard Earnshaw's avatar
      [arm] Mark -marm and -mthumb as being inverse options · 718a3eab
      Richard Earnshaw authored
      -marm and -mthumb are opposites: one cancels out the other.  This patch
      marks them as such so that the driver will eliminate all but the last
      option on the command line.  This aids multilib selection which otherwise
      can get confused if both are present.
      
      	* config/arm/arm.opt (marm): Mark as the negative of of -mthumb.
      	(mthumb): Mark as the negative of -marm.
      
      From-SVN: r249309
      718a3eab
    • Richard Earnshaw's avatar
      [arm][doc] Document changes to -mcpu, -mtune and -mfpu. · f54133ea
      Richard Earnshaw authored
      This patch adds the remainder of the main documentation changes.  It
      adds the changes for -mcpu, -mtune and -mfpu.  I've chosen to document
      the extension options under -mcpu rather than under -mtune because,
      while they are permitted with -mtune, they do not affect the behaviour
      of the tuning done by the compiler.
      
      I've also inverted the sense of the table (making the primary index
      the extension name and then listing the CPU names to which it applies.
      This is because the extensions are much more orthoganal in meaning
      here and having a primary entry via the CPU name would lead to
      enormous duplication.
      
      Finally, it adds the relevant changes to -mfpu.  I haven't stated yet
      that any setting of -mfpu other than 'auto' is deprecated, but that is
      certainly the long-term goal of this patch series.
      
      	* doc/invoke.texi (ARM Options, -mcpu): Document supported
      	extension options.
      	(ARM Options, -mtune): Document that this accepts the same
      	extension options as -mcpu.
      	(ARM Options, -mfpu): Document addition of -mfpu=auto.
      
      From-SVN: r249308
      f54133ea
    • Richard Earnshaw's avatar
      [arm][doc] Document new -march= syntax. · 6d2f99aa
      Richard Earnshaw authored
      This adds documentation for the new extension options to -march= on ARM.
      I tried a number of different ways of formatting the information, but this
      seems the best, given what can be achieved in texinfo format.
      
      	* doc/invoke.texi (ARM Options, -march=): Document new syntax and
      	permitted extensions.
      
      From-SVN: r249307
      6d2f99aa
    • Richard Earnshaw's avatar
      [arm] Add a few missing architecture extension options. · ffc12690
      Richard Earnshaw authored
      Reviewing the list of options for the purposes of writing the
      documentation revealed that a small number of options were missing.
      Mostly these are aliases for existing options, but in a couple of
      cases we lacked the ability to disable certain other options.
      
      	* config/arm/arm-cpus.in (armv7): Add extension +nofp.
      	(armv7-r): Add aliases vfpv3xd and vfpv3-d16.
      	(armv8-m.main): Add option +nodsp.
      	* config/arm/arm-cpu-cdata.h: Regenerated.
      
      From-SVN: r249306
      ffc12690
    • Richard Earnshaw's avatar
      [arm] Rework multilib support · be5c4e06
      Richard Earnshaw authored
      It looks like the fuchsia port relied on inheriting the multilib rules from
      the bare-metal port (the t-arm-elf makefile fragment), but that has now been
      rewritten on the assuption that the base architecture is ARMv4t; fuchsia
      has a base architecture of ARMv7-a.
      
      To account for this, I've cloned the original t-arm-elf rules into a
      new makefile fragment t-fuchsia and arranged for that to be used when
      targetting this system.
      
      	* config/arm/t-fuchsia: New file.
      	* config.gcc (arm*-*-fuchsia*): Use it.
      
      From-SVN: r249305
      be5c4e06
    • Richard Earnshaw's avatar
      [arm] Rework multlib builds for symbianelf · e61a3cdd
      Richard Earnshaw authored
      Symbianelf used to build multilib for armv5t with softfp, but that
      architecture doesn't really support floating point instructions.  This
      patch reworks the multilib configuration to use armv5te as the base
      when building for floating point.
      
      I'm not sure just how useful the symbian port is these days, so this
      has only been very lightly tested (checks that libgcc builds for all
      multilib variants).  Perhaps we should consider deprecating this
      config?
      
      	* config/arm/t-symbian: Rewrite for new option infrastructure.
      
      From-SVN: r249304
      e61a3cdd
    • Richard Earnshaw's avatar
      [arm] reset all multilib variables · 99d6bcf7
      Richard Earnshaw authored
      NB.  This configuration does not build in GCC-7 and doesn't build now either.
      
      This patch resets a couple of multlib variables which previously were
      not cleared.
      
      It almost certainly needs further work to make it use the new option
      framework correctly, but since the library configurations are already
      clearly wrong, it's not clear what the changes need to be.  In
      particular it tries to build a hard-float library for ARM7TDMI in both
      ARM and thumb modes, but ARMv4t does not support any floating-point
      instructions; furthermore, GCC has never supported a hard-float thumb1
      library.
      
      	* config/arm/t-phoenix (MULTILIB_REUSE): Clear variable.
      	(MULTILIB_REQUIRED): Likewise.
      
      From-SVN: r249303
      99d6bcf7
    • Richard Earnshaw's avatar
      [arm] Ensure all multilib variables are reset · e1674337
      Richard Earnshaw authored
      No real change, but for consistency reset all multilib related variables.
      
      	* config/arm/t-linux-eabi (MULTILIB_EXCEPTIONS): Set to empty.
      	(MULTILIB_RESUE): Likewise.
      	(MULTILIB_MATCHES): Likewise.
      	(MULTLIB_REQUIRED): Likewise.
      
      From-SVN: r249302
      e1674337
    • Richard Earnshaw's avatar
      [arm] Update t-rtems for new option framework · d59ee314
      Richard Earnshaw authored
      [This patch has only been fairly lightly tested (I've built a compiler
      with all the relevant multilibs and smoke-tested a few combinations to
      check that the tools still produce a sensible object file).]
      
      This patch updates the RTEMS build to use the new option framework.
      It tries as far as possible to keep the existing supported options,
      but there are two necessary changes and one cleanup.  I've also
      restructed the file slightly to make it slightly easier (IMO) to
      understand.
      
      Necessary changes:
      
      1: ARMv4t does not support a hard-float ABI, the earliest supported
      architecture with floating-point support is ARMv5te, so I've rebased
      the original fpu/hard libraries to that revision of the architecture.
      
      2: Similarly, the earliest version of the -m profile to support
      hardware floating-point is armv7e-m (not armv7-m), so the base
      architecture for m-profile with FP has been correspondingly updated.
      
      Clean-up:
      
      1: For greater consistency I've changed the
      -mcpu=cortex-m7/-mfpu=fpv5-d16/-mhard-float to
      -march=armv7e-m+fp.dp/-mhard-float.  The built-in -mcpu rewrite rules
      take care of mapping the existing option sets onto the architecture
      string to ensure compatibility.
      
      Since the existing rule set does not contain any MULTILIB_REUSE rules,
      I have not added any here this time around, but it would be worth the
      maintainers of this file considering whether adding some rules would
      make their toolchain more friendly to users.
      
      Finally, I've added lines to reset all the multilib variables at the
      head of the file.  I found during testing that some definitions from
      t-arm-elf were leaking through and causing unexpected behviour.
      
      	* config/arm/t-rtems: Rewrite for new option framework.
      
      From-SVN: r249301
      d59ee314
Loading