1. 19 Aug, 2013 6 commits
    • parser.c (cp_parser_lambda_introducer, [...]): Use cp_parser_lookup_name_simple. · 9485d254
      2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* parser.c (cp_parser_lambda_introducer, cp_parser_decltype_expr):
      	Use cp_parser_lookup_name_simple.
      
      2013-08-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* name-lookup.h (pop_bindings_and_leave_scope): Declare.
      	* name-lookup.c (pop_bindings_and_leave_scope): Define.
      	* parser.c (cp_parser_lambda_declarator_opt,
      	cp_parser_direct_declarator, cp_parser_cache_defarg): Use it.
      
      From-SVN: r201839
      Paolo Carlini committed
    • target.def (TARGET_LIBC_HAS_FUNCTION): New target hook. · d33d9e47
      	* target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
      	* builtins.c (default_libc_has_function): New.
      	(gnu_libc_has_function): Ditto.
      	(no_c99_libc_has_function): Ditto.
      	(expand_builtin_cexpi): Using new target hook TARGET_LIBC_HAS_FUNCTION
      	instead of TARGET_HAS_SINCOS and TARGET_C99_FUNCTIONS.
      	(fold_builtin_sincos): Likewise.
      	(fold_builtin_cexp): Likewise.
      	* builtins.def (DEF_C94_BUILTIN): Likewise.
      	(DEF_C99_BUILTIN): Likewise.
      	(DEF_C99_C90RES_BUILTIN): Likewise.
      	(DEF_C99_COMPL_BUILTIN): New define. Change all complex c99 builtin
      	definitions to using this define.
      	* config/darwin-protos.h (darwin_libc_has_function): New.
      	* config/darwin.c: (darwin_libc_has_function: Ditto.
      	* config/alpha/linux.h: Remove TARGET_C99_FUNCTIONS and
      	TARGET_HAS_SINCOS. Redefine TARGET_LIBC_HAS_FUNCTION.
      	* config/darwin.h: Ditto.
      	* config/elfos.h: Ditto.
      	* config/freebsd.h: Ditto.
      	* config/i386/cygming.h: Ditto.
      	* config/i386/djgpp.h: Ditto.
      	* config/i386/i386-interix.h: Ditto.
      	* config/microblaze/microblaze.h: Ditto.
      	* config/mmix/mmix.h: Ditto.
      	* config/gnu-user.h: Ditto.
      	* config/ia64/hpux.h: Ditto.
      	* config/pa/pa-hpux.h: Ditto.
      	* config/pdp11/pdp11.h: Ditto.
      	* config/picochip/picochip.h: Ditto.
      	* config/linux.h: Ditto.
      	* config/netbsd.h: Ditto.
      	* config/openbsd.h: Ditto.
      	* config/rs6000/aix43.h: Ditto.
      	* config/rs6000/aix51.h: Ditto.
      	* config/rs6000/aix52.h: Ditto.
      	* config/rs6000/aix53.h: Ditto.
      	* config/rs6000/aix61.h: Ditto.
      	* config/rs6000/darwin.h: Ditto.
      	* config/rs6000/linux.h: Ditto.
      	* config/rs6000/linux64.h: Ditto.
      	* config/s390/tpf.h: Ditto.
      	* config/sol2-10.h: Ditto.
      	* config/sol2.h: Ditto.
      	* config/vms/vms.h: Ditto.
      	* config/vxworks.h: Ditto.
      	* config/linux-android.c (linux_android_libc_has_function):
      	New linux-specific implementation of TARGET_LIBC_HAS_FUNCTION.
      	* config/linux-protos.h (linux_android_libc_has_function):
      	New declaration.
      	* config/i386/i386.c (ix86_libc_has_function): New.
      	* config/i386/i386-protos.h
      	(ix86_libc_has_function): New declaration.
      	* config/i386/i386.md
      	("isinfxf2"): Change condition for TARGET_LIBC_HAS_FUNCTION.
      	("isinf<mode>2): Likewise.
      	* convert.c (convert_to_integer): Using new target hook
      	TARGET_LIBC_HAS_FUNCTION istead of TARGET_HAS_SINCOS and
      	TARGET_C99_FUNCTIONS.
      	* fortran/f95-lang.c (gfc_init_builtin_functions): Ditto.
      	* tree-ssa-math-opts.c (execute_cse_sincos): Ditto.
      	* coretypes.h (function_class): New enum for different
      	classes of functions.
      	* defaults.h: Remove TARGET_C99_FUNCTIONS and TARGET_HAS_SINCOS.
      	* doc/tm.texi.in (TARGET_C99_FUNCTIONS): Remove documentation.
      	(TARGET_HAS_SINCOS): Likewise.
      	(TARGET_LIBC_HAS_FUNCTION): New.
      	* doc/tm.texi: Regenerated.
      	* targhooks.h (default_libc_has_function): New declaration.
      	(no_c99_libc_has_function): Ditto.
      	(gnu_libc_has_function): Ditto.
      	* system.h: Add the poisoning of TARGET_C99_FUNCTIONS
      	and TARGET_HAS_SINCOS.
      
      From-SVN: r201838
      Alexander Ivchenko committed
    • Makeifle-in (ipa-devirt.o): New. · eefe9a99
      
      	* Makeifle-in (ipa-devirt.o): New.
      	(GTFILES): Add ipa-utils.h and ipa-devirt.c
      	* cgraphunit.c (decide_is_symbol_needed): Do not care about virtuals.
      	(analyze_functions): Look into possible targets of polymorphic call.
      	* dumpfile.c (dump_files): Add type-inheritance dump.
      	* dumpfile.h (TDI_inheritance): New.
      	* ipa-devirt.c: New file.
      	* ipa-utils.h (odr_type_d): Forward declare.
      	(odr_type): New type.
      	(build_type_inheritance_graph): Declare.
      	(possible_polymorphic_call_targets): Declare and introduce inline
      	variant when only edge is pased.
      	(dump_possible_polymorphic_call_targets): Likewise.
      	* timevar.def (TV_IPA_INHERITANCE, TV_IPA_VIRTUAL_CALL): New.
      	* tree.c (type_in_anonymous_namespace_p): Break out from ...
      	(types_same_for_odr): ... here.
      	* tree.h (type_in_anonymous_namespace_p): Declare.
      
      	* g++.dg/ipa/type-inheritance-1.C: New testcase.
      
      From-SVN: r201836
      Jan Hubicka committed
    • re PR fortran/46271 ([F03] OpenMP default(none) and procedure pointers) · 5eb5ec2f
      2013-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/46271
      	* openmp.c (resolve_omp_clauses): Bugfix for procedure pointers.
      
      
      2013-08-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/46271
      	* gfortran.dg/gomp/proc_ptr_1.f90: New.
      
      From-SVN: r201835
      Janus Weil committed
    • Daily bump. · 247690cd
      From-SVN: r201832
      GCC Administrator committed
  2. 18 Aug, 2013 7 commits
  3. 17 Aug, 2013 5 commits
  4. 16 Aug, 2013 11 commits
    • mips16.S (CE_STARTFN, CE_ENDFN): New macros. · 0f9bde1f
      	* config/mips/mips16.S (CE_STARTFN, CE_ENDFN): New macros.
      	(RET_FUNCTION): Use them in place of STARTFN and ENDFN.
      	(CALL_STUB_NO_RET): Likewise.
      	(CALL_STUB_RET): Likewise.
      	* config/mips/libgcc-mips16.ver: Remove __mips16_call_stub and
      	__mips16_ret call/return stub symbols.
      	* config.host <mips*-*-linux>: For non-R5900 add t-slibgcc-libgcc
      	to tmake_file.
      
      Co-Authored-By: Catherine Moore <clm@codesourcery.com>
      Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
      
      From-SVN: r201805
      Maciej W. Rozycki committed
    • Support "gcc" namespace in gengtype · c74f54a0
      gcc/
      	* gengtype.c (type_for_name): Add special-case support for
      	locating types within the "gcc::" namespace.
      	(open_base_files): Emit a "using namespace gcc" directive.
      
      From-SVN: r201800
      David Malcolm committed
    • re PR target/58160 (Power8 fusion support has a bug that shows up in running spec 2006) · f758f299
      2013-08-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/58160
      	* config/rs6000/predicates.md (fusion_gpr_mem_load): Allow the
      	memory rtx to contain ZERO_EXTEND and SIGN_EXTEND.
      
      	* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Pass operands
      	array instead of each individual operand as a separate argument.
      	(emit_fusion_gpr_load): Likewise.
      	(expand_fusion_gpr_load): Add new function declaration.
      
      	* config/rs6000/rs6000.c (fusion_gpr_load_p): Change the calling
      	signature to have the operands passed as an array, instead of as
      	separate arguments.  Allow ZERO_EXTEND to be in the memory
      	address, and also SIGN_EXTEND if -mpower8-fusion-sign.  Do not
      	depend on the register live/dead flags when peepholes are run.
      	(expand_fusion_gpr_load): New function to be called from the
      	peephole2 pass, to change the register that addis sets to be the
      	target register.
      	(emit_fusion_gpr_load): Change the calling signature to have the
      	operands passed as an array, instead of as separate arguments.
      	Allow ZERO_EXTEND to be in the memory address, and also
      	SIGN_EXTEND if -mpower8-fusion-sign.
      
      	* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): Delete unused
      	unspec enumeration.
      	(power8 fusion peephole/peephole2): Rework the fusion peepholes to
      	adjust the register addis loads up in the peephole2 pass.  Do not
      	depend on the register live/dead state when the peephole pass is
      	done.
      
      From-SVN: r201792
      Michael Meissner committed
    • Fix bad interaction between GTY((user)) and incomplete declarations · 158f4e4f
      gcc/
      	* gengtype.c (create_user_defined_type): Ensure that the kind
      	is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
      	declaration is seen before the GTY((user)) marking.
      
      From-SVN: r201791
      David Malcolm committed
    • re PR target/58105 (wrong code generation for multiversioned functions) · 22f8cea5
      	PR target/58105
      	* config/i386/i386.c (make_resolver_func): Set DECL_UNINLINABLE.
      
      From-SVN: r201790
      Bernd Edlinger committed
    • gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new arugment expected_type. · c49bdb2e
      
      	* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new
      	arugment expected_type.
      	(gimple_fold_call): Use it.
      	* gimple.h (gimple_extract_devirt_binfo_from_cst): Update prototype.
      	* ipa-cp.c (ipa_get_indirect_edge_target_1): Update.
      	* ipa-prop.c (ipa_analyze_virtual_call_uses): Use
      	obj_type_ref_class.
      	(try_make_edge_direct_virtual_call): Likewise.
      	* tree.c (obj_type_ref_class): New.
      	* tree.h (obj_type_ref_class): Use it.
      
      From-SVN: r201789
      Jan Hubicka committed
    • sched-vis.c (rtl_slim_pp_initialized): Remove. · 4042dca9
      	* sched-vis.c (rtl_slim_pp_initialized): Remove.
      	(rtl_slim_pp): Likewise.
      	(init_rtl_slim_pretty_print): Likewise.
      	(dump_value_slim):  Don't call it.  Use local pretty printer.
      	(dump_insn_slim): Likewise.
      	(dump_rtl_slim): Likewise.
      	(str_pattern_slim): Likewise.
      	* tree-mudflap.c (mf_varname_tree): Use local pretty printer.
      	Simplify.
      
      From-SVN: r201785
      Gabriel Dos Reis committed
    • regex.h (regex_traits<>::transform_primary): Avoid past-the-end dereferences. · 5073d509
      2013-08-16  Tim Shen  <timshen91@gmail.com>
      
      	* include/bits/regex.h (regex_traits<>::transform_primary):
      	Avoid past-the-end dereferences.
      
      From-SVN: r201783
      Tim Shen committed
    • re PR tree-optimization/58164 (internal compiler error: in make_decl_rtl, at varasm.c:1147) · 639dc669
      	PR tree-optimization/58164
      	* gimple.c (walk_stmt_load_store_addr_ops): For visit_addr
      	walk gimple_goto_dest of GIMPLE_GOTO.
      
      	* gcc.c-torture/compile/pr58164.c: New test.
      
      From-SVN: r201782
      Jakub Jelinek committed
    • re PR regression/58165 (internal compiler error: verify_flow_info) · 7a460594
      	PR tree-optimization/58165
      	* tree-call-cdce.c (shrink_wrap_one_built_in_call): If
      	bi_call must be the last stmt in a bb, don't split_block, instead
      	use fallthru edge from it and give up if there is none.
      	Release conds vector when returning early.
      
      	* g++.dg/opt/pr58165.C: New test.
      
      From-SVN: r201780
      Jakub Jelinek committed
    • Daily bump. · a23d240d
      From-SVN: r201779
      GCC Administrator committed
  5. 15 Aug, 2013 2 commits
  6. 14 Aug, 2013 9 commits
    • re PR c++/51912 ([C++11] G++ accepts floating point case labels) · 715a572a
      /cp
      2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51912
      	* cp-tree.h (LOOKUP_NO_NON_INTEGRAL): Add.
      	* decl.c (case_conversion): Use it.
      	* call.c (standard_conversion): Likewise.
      	(implicit_conversion): Adjust.
      
      /testsuite
      2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/51912
      	* g++.dg/cpp0x/enum28.C: New.
      	* g++.dg/cpp0x/enum15.C: Adjust.
      
      From-SVN: r201754
      Paolo Carlini committed
    • revert: configure.tgt: Add -msoft-float to XCFLAGS. · 1869217f
      2013-08-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      	Revert:
      	2013-08-02  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* configure.tgt: Add -msoft-float to XCFLAGS.
      
      From-SVN: r201753
      Andreas Krebbel committed
    • Remove unused variable and field · e3c02cc7
      From-SVN: r201752
      Xinliang David Li committed
    • re PR target/57949 ([powerpc64] Structure parameter alignment issue with vector extensions) · 6469da2c
      gcc:
      
      2013-08-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR target/57949
      	* doc/invoke.texi: Add documentation of mcompat-align-parm
      	option.
      	* config/rs6000/rs6000.opt: Add mcompat-align-parm option.
      	* config/rs6000/rs6000.c (rs6000_function_arg_boundary): For AIX
      	and Linux, correct BLKmode alignment when 128-bit alignment is
      	required and compatibility flag is not set.
      	(rs6000_gimplify_va_arg): For AIX and Linux, honor specified
      	alignment for zero-size arguments when compatibility flag is not
      	set.
      
      gcc/testsuite:
      
      2013-08-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	PR target/57949
      	* gcc.target/powerpc/pr57949-1.c: New.
      	* gcc.target/powerpc/pr57949-2.c: New.
      
      From-SVN: r201750
      Bill Schmidt committed
    • re PR middle-end/58145 (volatileness of write is discarded, perhaps in "lim1"… · 4ca890e2
      re PR middle-end/58145 (volatileness of write is discarded, perhaps in "lim1" related to loop optimizations)
      
      	PR tree-optimization/58145
      	* tree-sra.c (build_ref_for_offset): If prev_base has
      	TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS, propagate it to MEM_REF.
      
      	* gcc.dg/pr58145-1.c: New test.
      	* gcc.dg/pr58145-2.c: New test.
      
      From-SVN: r201748
      Jakub Jelinek committed
    • global-used-types.c: Request dwarf output. · a7991d53
              * gcc.dg/debug/dwarf2/global-used-types.c: Request dwarf output.
              * gcc.dg/debug/dwarf2/inline2.c: Likewise.
              * gcc.dg/debug/dwarf2/inline3.c: Likewise.
              * gcc.dg/debug/dwarf2/pr37726.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-1.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-2.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-3.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-4.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-5.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41445-6.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41543.c: Likewise.
              * gcc.dg/debug/dwarf2/pr41695.c: Likewise.
              * gcc.dg/debug/dwarf2/pr43237.c: Likewise.
              * gcc.dg/debug/dwarf2/pr47939-1.c: Likewise.
              * gcc.dg/debug/dwarf2/pr47939-2.c: Likewise.
              * gcc.dg/debug/dwarf2/pr47939-3.c: Likewise.
              * gcc.dg/debug/dwarf2/pr47939-4.c: Likewise.
              * gcc.dg/debug/dwarf2/pr53948.c: Likewise.
              * gcc.dg/debug/dwarf2/struct-loc1.c: Likewise.
      
      From-SVN: r201747
      Joern Rennecke committed
    • pr42585.c: Add avr-*-* to list of targets to exclude from scan test. · c16a952b
      	* gcc.dg/tree-ssa/pr42585.c: Add avr-*-* to list of targets to
      	exclude from scan test.
      
      From-SVN: r201744
      Joern Rennecke committed
    • re PR testsuite/52641 (Test cases fail for 16-bit int targets) · 9fdb9c91
              PR testsuite/52641
              * c-c++-common/simulate-thread/bitfields-2.c: Run test only for
              target { ! int16 }.
              * gcc.dg/tree-ssa/pr54245.c: Do slsr scan only for target { ! int16 }.
              * gcc.dg/tree-ssa/slsr-1.c: Adjust multiplicators to scan for for
              target { int16 }.  Restrict existing tests to target { int32 }
              where appropriate.
              * gcc.dg/tree-ssa/slsr-2.c, gcc.dg/tree-ssa/slsr-27.c: Likewise.
              * gcc.dg/tree-ssa/slsr-28.c, gcc.dg/tree-ssa/slsr-29.c: Likewise.
              * gcc.dg/tree-ssa/slsr-3.c, gcc.dg/tree-ssa/ssa-ccp-23.c: Likewise.
              * lib/target-supports.exp (check_effective_target_int32): New proc.
      
      From-SVN: r201743
      Joern Rennecke committed
    • re PR testsuite/52641 (Test cases fail for 16-bit int targets) · c466cffb
              PR testsuite/52641
              * c-c++-common/scal-to-vec1.c: Add !int16 and large_double conditions
              to tests that assume int/double are larger than short/float.
      
      From-SVN: r201742
      Joern Rennecke committed