116433 Commits

Author SHA1 Message Date
Jakub Jelinek
c1d40097cb re PR target/53110 (GCC-4.7 generates stupid x86_64 asm)
PR target/53110
	* config/i386/i386.md (and<mode>3): For andq $0xffffffff, reg
	instead expand it as zero extension.

From-SVN: r186839
2012-04-25 21:40:31 +02:00
H.J. Lu
ff5f00c3a1 Assert dbx_reg_number doesn't return INVALID_REGNUM
PR debug/52857
	* dwarf2out.c (dbx_reg_number): Assert return value !=
	INVALID_REGNUM.

From-SVN: r186837
2012-04-25 12:08:23 -07:00
Jonathan Wakely
862023d77a scoped_allocator (scoped_allocator::__outermost): Do not pass non-POD to varargs function.
* include/std/scoped_allocator (scoped_allocator::__outermost): Do
	not pass non-POD to varargs function.
	* testsuite/20_util/scoped_allocator/1.cc: Fix test.

From-SVN: r186836
2012-04-25 19:03:03 +01:00
Jakub Jelinek
98095aa337 common.opt (flag_debug_types_section): Default to 0.
* common.opt (flag_debug_types_section): Default to 0.
	(dwarf_version): Default to 4.
	(dwarf_record_gcc_switches): Default to 1.
	(dwarf_strict): Default to 0.
	* toplev.c (process_options): Don't handle dwarf_strict
	or dwarf_version here.
	* config/vxworks.c (vxworks_override_options): Don't
	test whether dwarf_strict or dwarf_version are negative,
	instead test !global_options_set.x_dwarf_*.
	* config/darwin.c (darwin_override_options): Default to
	dwarf_version 2.
	* doc/invoke.texi: Note that -gdwarf-4, -grecord-gcc-switches
	and -fno-debug-types-section are now the default.

From-SVN: r186835
2012-04-25 18:59:11 +02:00
Jan Hubicka
9c8305f8fc cgraphunit.c: Update toplevel comment.
* cgraphunit.c: Update toplevel comment.
	(tree_rest_of_compilation): Merge into cgraph_expand_function.
	(cgraph_analyze_function): Make static.
	(cgraph_decide_is_function_needed): Make static.
	(cgraph_add_new_function): Use expand_function instead of
	rest_of_compilation.
	(clone_of_p, verify_edge_count_and_frequency, cgraph_debug_gimple_stmt,
	verify_edge_corresponds_to_fndecl, verify_cgraph_node, verify_cgraph):
	Move to cgraph.c
	(cgraph_inline_p): Remove.
	(cgraph_preserve_function_body_p): Move to ipa-inline-transform.
	(init_cgraph): Add comment.
	* cgraphbuild.c (record_reference, mark_address, mark_load,
	mark_store): Do not call analyze_expr hook.
	* cgraph.c: Update toplevel comment.
	(clone_of_p, verify_edge_count_and_frequency, cgraph_debug_gimple_stmt,
	verify_edge_corresponds_to_fndecl, verify_cgraph_node, verify_cgraph):
	Move fere from cgraphunit.c
	(cgraph_mark_force_output_node): Move to cgraph.h
	* cgraph.h: Reorder so the comments match the function placement.
	(cgraph_analyze_function, cgraph_decide_is_function_needed): Remove.
	(cgraph_mark_force_output_node): Move here from cgraph.c
	* tree.c (free_lang_data): Do not clear analyze_expr hook.
	* ipa-inline-transform.c (preserve_function_body_p): New function.
	(inline_transform): Update.
	* langhooks.c (lhd_callgraph_analyze_expr): Remove.
	* langhooks.h (lang_hooks_for_callgraph): Remove.
	(lang_hooks): Remove callgraph.
	* tree-inline.c (expand_call_inline): Do not use cgraph_inline_p.
	* varpool.c: Remove out of date comment.
	* langhooks-def.h (lhd_callgraph_analyze_expr): Remove.
	(LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR): Remove.

From-SVN: r186832
2012-04-25 16:31:42 +00:00
Joel Brobecker
95e5b9a43a Update config.sub to 2012-04-18 version from official repo.
ChangeLog:

        * config.sub: Update to 2012-04-18 version from official repo.

From-SVN: r186830
2012-04-25 15:48:28 +00:00
Arnaud Charlet
03ad478dc5 [multiple changes]
2012-04-25  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch9.adb: Add comments on the usage of the
	lock-free data structures.

2012-04-25  Vincent Pucci  <pucci@adacore.com>

	* exp_intr.adb (Expand_Shift): Convert the left
	operand and the operator when the type of the call differs from
	the type of the operator.

2012-04-25  Geert Bosch  <bosch@adacore.com>

	* stand.ads: Minor comment fix.

2012-04-25  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch4.adb (Analyze_Slice): Handle the case where the prefix
	is a string literal. Retrieve the first index from the base type
	when slicing a string literal.
	* sem_ch12.adb (Check_Private_View): Move the initialization
	of the type inside the loop to reflect the changing index.
	* sem_eval.adb (Eval_Relational_Op): Retrieve the first index
	from the base type when dealing with a string literal.
	* sem_res.adb (Resolve_Slice): Retrieve the first index from
	the base type when slicing a string literal.
	* sem_util.adb (Is_Internally_Generated_Renaming): New routine.
	(Is_Object_Reference): String literals may act
	as object references only when they are renamed internally.
	(Proper_First_Index): New routine.
	* sem_util.ads (Proper_First_Index): New routine.

From-SVN: r186829
2012-04-25 17:17:25 +02:00
Arnaud Charlet
39ad16657c [multiple changes]
2012-04-25  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, csinfo.adb, lib-writ.adb, sem_ch12.adb,
	lib-xref.adb: Minor reformatting.

2012-04-25  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch9.adb: Rename Lock_Free_Sub_Type
	to Lock_Free_Subprogram. Remove type Subprogram_Id.
	Rename LF_Sub_Table to Lock_Free_Subprogram_Table.
	(Allow_Lock_Free_Implementation): Renamed to
	Allows_Lock_Free_Implementation.  Update the comment on
	lock-free restrictions. Code clean up and restructuring.
	(Build_Lock_Free_Protected_Subprogram_Body): Update the
	profile and related comments. Code clean up and restructuring.
	(Build_Lock_Free_Unprotected_Subprogram_Body): Update the
	profile and related comments. Code clean up and restructuring.
	(Comp_Of): Removed.

From-SVN: r186828
2012-04-25 17:14:44 +02:00
Arnaud Charlet
d024b1268c [multiple changes]
2012-04-25  Vincent Celier  <celier@adacore.com>

	* sem_ch12.adb (Inherit_Context): Compare library units, not
	names of units, when checking if a unit is already in the context.

2012-04-25  Thomas Quinot  <quinot@adacore.com>

	* sem_ch3.adb: Reverse_Storage_Order must be propagated to
	untagged derived record types.

2012-04-25  Ed Schonberg  <schonberg@adacore.com>

	* lib-xref.adb: Adjust position of end label.

From-SVN: r186827
2012-04-25 17:12:34 +02:00
Jan Hubicka
838ff415ae re PR middle-end/53089 (gfortran.dg/coarray/atomic_1.f90 and gfortran.dg/coarray/registering_1.f90)
PR middle-end/53089 
	* cgraphunit.c (referred_to_p): Move ahead in file to avoid forward declaration.
	(cgraph_finalize_function): Finalize them here.
	* symtab.c (dump_symtab): Dump ctors and dtors.

From-SVN: r186820
2012-04-25 14:54:21 +00:00
Jakub Jelinek
f1cc958978 re PR tree-optimization/52979 (likely wrong code bug w/packed bitfields)
PR middle-end/52979
	* stor-layout.c (get_best_mode): Don't return mode with bitsize
	larger than maxbits.  Don't compute maxbits modulo align.
	Also check that unit bytes long store at bitpos / unit * unit
	doesn't affect bits beyond bitregion_end.
	* expmed.c (store_bit_field_1): Avoid trying insv if OP_MODE MEM
	would not fit into bitregion_start ... bitregion_end + 1 bit
	region.
	(store_split_bit_field): Decrease unit close to end of bitregion_end
	if access is restricted in order to avoid mutual recursion.

	* gcc.c-torture/compile/pr52979-1.c: New test.
	* gcc.c-torture/execute/pr52979-1.c: New test.
	* gcc.c-torture/execute/pr52979-2.c: New test.

From-SVN: r186819
2012-04-25 16:27:08 +02:00
Richard Guenther
948e73b3d6 l_fma_float_5.c: Adjust.
2012-04-25  Richard Guenther  <rguenther@suse.de>

	* gcc.target/i386/l_fma_float_5.c: Adjust.
	* gcc.target/i386/l_fma_double_4.c: Likewise.
	* gcc.target/i386/l_fma_float_2.c: Likewise.
	* gcc.target/i386/l_fma_float_6.c: Likewise.
	* gcc.target/i386/l_fma_double_1.c: Likewise.
	* gcc.target/i386/l_fma_double_5.c: Likewise.
	* gcc.target/i386/l_fma_float_3.c: Likewise.
	* gcc.target/i386/l_fma_double_2.c: Likewise.
	* gcc.target/i386/l_fma_double_6.c: Likewise.
	* gcc.target/i386/l_fma_float_4.c: Likewise.
	* gcc.target/i386/l_fma_double_3.c: Likewise.
	* gcc.target/i386/l_fma_float_1.c: Likewise.

From-SVN: r186817
2012-04-25 13:30:19 +00:00
Jakub Jelinek
0ea62d936f re PR tree-optimization/53058 (Another ice in remove_range_assertions)
PR tree-optimization/53058
	* double-int.h (double_int_max_value, double_int_min_value): New
	prototypes.
	* double-int.c (double_int_max_value, double_int_min_value): New
	functions.
	* tree-vrp.c (register_edge_assert_for_2): Compare mask
	for LE_EXPR or GT_EXPR with double_int_max_value
	instead of double_int_mask.

	* gcc.c-torture/compile/pr53058.c: New test.

From-SVN: r186816
2012-04-25 13:35:38 +02:00
Jan Hubicka
228f466fd6 re PR middle-end/53088 (gcc.target/i386/pr39082-1.c)
PR middle-end/53088
	* gcc.target/i386/pr39082-1.c: Update warning location.

From-SVN: r186815
2012-04-25 11:31:42 +00:00
Richard Guenther
d68d56b57f tree-vectorizer.h (vect_loop_versioning): Adjust prototype.
2012-04-25  Richard Guenther  <rguenther@suse.de>

	* tree-vectorizer.h (vect_loop_versioning): Adjust prototype.
	* tree-vect-loop.c (vect_transform_loop): Adjust.
	* tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Record
	the maximum number of iterations for the epilogue loop.
	(vect_loop_versioning): Remove case re-using the peeled
	epilogue loop.

From-SVN: r186813
2012-04-25 11:19:08 +00:00
Jakub Jelinek
fdce1719a5 re PR c/52880 (-Woverride-init emitts unexpected error)
PR c/52880
	* c-typeck.c (set_nonincremental_init,
	set_nonincremental_init_from_string): Pass true instead of false
	as IMPLICIT to add_pending_init.

	* gcc.dg/pr52880.c: New test.

From-SVN: r186808
2012-04-25 11:14:02 +02:00
Manuel López-Ibáñez
32397f22f0 c-typeck.c (pop_init_level): Improve diagnostics.
2012-04-25  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* c-typeck.c (pop_init_level): Improve diagnostics.
testsuite/
	* gcc.dg/m-un-2.c: Update.
	* gcc.dg/20011021-1.c: Update.

From-SVN: r186807
2012-04-25 08:49:23 +00:00
Tobias Burnus
f1fb11f1e8 re PR fortran/52196 (Add -Wrealloc-lhs)
2012-04-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52196
        * lang.opt (Wrealloc-lhs, Wrealloc-lhs-all): New flags.
        * gfortran.h (gfc_option_t): Add them.
        * options.c (gfc_init_options, gfc_post_options,
        gfc_handle_option): Handle them.
        * invoke.texi: Document them.
        * trans-expr.c (realloc_lhs_warning): New function.
        (gfc_trans_arrayfunc_assign,
        alloc_scalar_allocatable_for_assignment,
        gfc_trans_assignment_1): Use it.

2012-04-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52196
        * gfortran.dg/realloc_on_assign_14.f90: New.

From-SVN: r186806
2012-04-25 08:25:48 +02:00
Uros Bizjak
ad1d9a5079 compare-elim.c (try_eliminate_compare): Also handle operands with implicit extensions.
* compare-elim.c (try_eliminate_compare): Also handle operands with
	implicit extensions.

From-SVN: r186805
2012-04-25 08:05:26 +02:00
Ian Lance Taylor
2b210b6f0b re PR go/52341 (crypto/rand FAILs before Solaris 11)
PR go/52341

crypto/rand: Use io.ReadFull when reading from /dev/urandom.

From-SVN: r186803
2012-04-25 04:40:49 +00:00
Ian Lance Taylor
b685de12d2 re PR go/52583 (Several new go testsuite failues on Solaris)
PR go/52583

net: Solaris fixes.

In particular fix fd_select.go to handle the case where a file
descriptor is closed by one goroutine while another goroutine
is waiting for it.

From-SVN: r186801
2012-04-25 04:26:12 +00:00
Alan Modra
b427dd7ae3 rs6000 (SAVE_INLINE_VRS, [...]): Define.
gcc/
	* config/rs6000/rs6000 (SAVE_INLINE_VRS, REST_INLINE_VRS,
	V_SAVE_INLINE, SAVRES_LR, SAVRES_SAVE, SAVRES_REG,
	SAVRES_GPR, SAVRES_FPR, SAVRES_VR): Define.
	(no_global_regs_above): Delete.
	(no_global_regs): New function.
	(rs6000_savres_strategy): Handle vector regs.  Use proper lr_save_p
	value for load multiple test.
	(savres_routine_syms): Increase size.
	(rs6000_savres_routine_name, rs6000_savres_routine_sym,
	ptr_regno_for_savres, rs6000_emit_savres_rtx): Pass in int selector
	rather than a number of boolean flags.  Update all callers.
	(rs6000_savres_routine_name): Generate vector save/restore names.
	(rs6000_savres_routine_sym): Handle vector regs.  Delete forward decl.
	(ptr_regno_for_savres, rs6000_emit_savres_rtx): Likewise.
	(rs6000_emit_prologue): Delete saving_FPRs_inline, saving_GPRs_inline
	and using_store_multiple.  Expand uses.  Don't always use r11 as
	frame reg when needed for out-of-line saves.  Set up initial offset
	for out-of-line vector saves when buying stack frame.  Handle pointer
	reg setup for out-of-line fp save.  Emit call to out-of-line vector
	save function.  Choose r11 or r12 for vrsave reg when available for
	better scheduling.
	(rs6000_output_function_prologue): Don't emit .extern for ELF.
	(rs6000_emit_epilogue): Choose a better frame reg when restoring
	from back-chain to suit out-of-line vector restore functions.  Emit
	call to out-of-line vector restore function.  Adjust register used
	for cr restore.  Tweak pointer register setup for gpr restore.
	* config/rs6000/rs6000.h (FIRST_SAVED_GP_REGNO): Take into account
	FIXED_R13.
	* config/rs6000/sysv4.h (FP_SAVE_INLINE, GP_SAVE_INLINE): Simplify.
	(V_SAVE_INLINE): Define.
	* config/rs6000/altivec.md (save_vregs_*, restore_vregs_*): New insns.
libgcc/
	* config/rs6000/crtsavevr.S: New file.
	* config/rs6000/crtrestvr.S: New file.
	* config/rs6000/t-savresfgpr: Build the above.
	* config/rs6000/t-netbsd: Likewise.

From-SVN: r186800
2012-04-25 12:02:56 +09:30
Alan Modra
1bf7c2a71c rs6000.c (rs6000_savres_strategy): Allow out-of-line save/restore for large frames.
* config/rs6000/rs6000.c (rs6000_savres_strategy): Allow
	out-of-line save/restore for large frames.  Don't disable
	out-of-line saves on ABI_AIX when using static chain reg.
	(rs6000_emit_prologue): Adjust cr_save_regno on ABI_AIX to not
	clobber static chain reg, and tweak for out-of-line gpr saves
	that use r1.

From-SVN: r186799
2012-04-25 11:51:09 +09:30
Alan Modra
c344e2656a rs6000.c (START_USE, [...]): Define.
* config/rs6000/rs6000.c (START_USE, END_USE, NOT_INUSE): Define.
	(rs6000_emit_prologue): Use the above to catch register overlap.

From-SVN: r186798
2012-04-25 11:48:56 +09:30
Alan Modra
544055ae65 rs6000.c (rs6000_emit_stack_reset): Delete forward decl.
* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Delete forward
	decl.  Move logic selecting update reg to callers.  Update all callers.
	(rs6000_emit_allocate_stack): Add copy_off param.
	(emit_frame_save): Don't handle reg+reg addressing.
	(ptr_regno_for_savres): New function, extracted from..
	(rs6000_emit_savres_rtx): ..here.  Add lr_offset param.
	(rs6000_emit_prologue): Generate frame_ptr_rtx as we need it.
	Set frame_reg_rtx to r11 whenever r11 is needed, and merge
	frame offset adjustment for out-of-line save with copy from sp.
	Simplify condition controlling whether cr is saved early or
	late.  Use ptr_regno_for_savres to verify correct reg is set
	up for out-of-line saves.  Pass the actual pointer reg used to
	rs6000_emit_savres_rtx so rtl matches insns in out-of-line
	function.  Rearrange spe vars so code is similar to that
	elsewhere in this function.  Don't update frame_off when spe
	save code will restore r11.  Use emit_frame_save for spe and
	gpr saves.  Consolidate darwin out-of-line gpr setup with that
	for other abis.  Don't assume frame_offset is zero and frame
	reg is sp when setting up altivec reg saves, and calculate
	exact offset requirement.
	(rs6000_emit_epilogue): Use HOST_WIDE_INT for frame_off.  Tidy
	spe restore code.  Consolidate darwin out-of-line gpr setup
	with that for other abis.

From-SVN: r186797
2012-04-25 11:45:48 +09:30
Alan Modra
471df90fad rs6000.c (rs6000_frame_related): Don't emit a REG_FRAME_RELATED_EXPR note when...
* config/rs6000/rs6000.c (rs6000_frame_related): Don't emit a
	REG_FRAME_RELATED_EXPR note when the instruction exactly matches
	the replacement.
	(emit_frame_save): Delete frame_ptr param.  Rename total_size to
	frame_reg_to_sp.
	(rs6000_emit_prologue): Add sp_off.  Update rs6000_frame_related
	and emit_frame_save calls.  Cope with possibly missing note.

From-SVN: r186796
2012-04-25 11:42:12 +09:30
Sriraman Tallam
ad491329d9 i386-cpuinfo.c: Set __cpu_vendor always.
2012-04-24  Sriraman Tallam  <tmsriram@google.com>

	* libgcc/config/i386/i386-cpuinfo.c: Set __cpu_vendor always.

From-SVN: r186795
2012-04-25 02:04:22 +00:00
Benjamin Kosnik
3b34ddb8e0 re PR libstdc++/52689 (static linking with libstdc++ fails)
2012-04-24  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/52689
	* testsuite/17_intro/static.cc: New.

From-SVN: r186794
2012-04-25 01:17:57 +00:00
GCC Administrator
6e58c9ab85 Daily bump.
From-SVN: r186793
2012-04-25 00:17:56 +00:00
Sriraman Tallam
792317cc77 This patch adds new builtins to check for cpu type and features.
2012-04-24  Sriraman Tallam  <tmsriram@google.com>

This patch adds new builtins to check for cpu type and features. 

* __builtin_cpu_is ("<CPUNAME>")
* __builtin_cpu_supports ("<FEATURE>")

apart from the cpu init builtin, __builtin_cpu_init.

List of CPU names :

* "amd"
* "intel"
* "atom"
* "core2"
* "corei7"
* "nehalem"
* "westmere"
* "sandybridge"
* "amdfam10h"
* "barcelona"
* "shanghai"
* "istanbul"
* "bdver1"
* "bdver2"

List of CPU features :

* "cmov"
* "mmx"
* "popcnt"
* "sse"
* "sse2"
* "sse3"
* "ssse3"
* "sse4.1"
* "sse4.2"
* "avx"

        * config/i386/i386.c (build_processor_model_struct): New function.
        (make_var_decl): New function.
        (fold_builtin_cpu): New function.
        (ix86_fold_builtin): New function.
        (make_cpu_type_builtin): New function.
        (ix86_init_platform_type_builtins): New function.
        (ix86_expand_builtin): Expand new builtins by folding them.
        (ix86_init_builtins): Make new builtins to detect CPU type.
        (TARGET_FOLD_BUILTIN): New macro.
        (IX86_BUILTIN_CPU_INIT): New enum value.
        (IX86_BUILTIN_CPU_IS): New enum value.
        (IX86_BUILTIN_CPU_SUPPORTS): New enum value.
        * config/i386/i386-builtin-types.def: New function type.
        * testsuite/gcc.target/builtin_target.c: New testcase.
        * doc/extend.texi: Document builtins.

        * libgcc/config/i386/i386-cpuinfo.c: New file.
        * libgcc/config/i386/t-cpuinfo: New file.
        * libgcc/config.host: Include t-cpuinfo.
        * libgcc/config/i386/libgcc-glibc.ver: Version symbol __cpu_model.

From-SVN: r186789
2012-04-25 00:08:37 +00:00
Chao-ying Fu
e1be98a467 unwind-dw2-fde-dip.c: Define USE_PT_GNU_EH_FRAME for BIONIC.
2012-04-24  Chao-ying Fu  <fu@mips.com>

	* unwind-dw2-fde-dip.c: Define USE_PT_GNU_EH_FRAME for BIONIC.

From-SVN: r186788
2012-04-24 22:41:33 +00:00
Joseph Myers
70a33f264b * vi.po: Update.
From-SVN: r186786
2012-04-24 23:16:24 +01:00
Joseph Myers
d0b82b2731 * sv.po: Update.
From-SVN: r186784
2012-04-24 23:14:54 +01:00
Olivier Hainque
7a9cf7e9c3 common.opt (gdwarf-): Initialize dwarf_version to -1 instead of 2.
* common.opt (gdwarf-): Initialize dwarf_version to -1 instead of 2.
        * toplev.c (process_options): Default to dwarf_version 2.
        * config/vxworks.c (vxworks_override_options): Default to strict-dwarf
        and dwarf_version 2.

From-SVN: r186783
2012-04-24 20:34:30 +00:00
Ian Lance Taylor
bc9201591d gotest: Remove race in use of ../testdata.
From-SVN: r186781
2012-04-24 20:13:12 +00:00
Manuel López-Ibáñez
21e417158c tree-pretty-print.h (default_tree_printer): Do not declare.
2012-04-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

gcc/
	* tree-pretty-print.h (default_tree_printer): Do not declare.
	* tree-diagnostic.c: Include tree-pretty-print.h, tree-pass.h and
	intl.h.
	(default_tree_diagnostic_starter): Make static.
	(default_tree_printer): Move to here. Make static.
	(tree_diagnostics_defaults): New.
	* tree-diagnostic.h (default_tree_diagnostic_starter): Do not declare.
	* tree.c (free_lang_data): Use tree_diagnostics_defaults.
	* toplev.c: Do not include tree-pass.h.
	(default_tree_printer): Move from here.
	(general_init): Use tree_diagnostics_defaults.

From-SVN: r186780
2012-04-24 19:21:21 +00:00
Ian Lance Taylor
1a985a5642 mksysinfo: Only define PathMax if PATH_MAX is defined.
From-SVN: r186778
2012-04-24 19:12:26 +00:00
Chao-ying Fu
3eab78f4e6 config.gcc (mips64*-*-linux*): Append mips/linux-common.h to tm_file.
2012-04-24  Chao-ying Fu  <fu@mips.com>

	* config.gcc (mips64*-*-linux*): Append mips/linux-common.h to tm_file.
	(mips*-*-linux*): Append mips/linux-common.h to tm_file.
	* config/mips/gnu-user.h
	(SUBTARGET_CC1_SPEC): Use GNU_USER_TARGET_CC1_SPEC directly.
	(GNU_USER_TARGET_LINK_SPEC): New define.
	(LINK_SPEC): Use GNU_USER_TARGET_LINK_SPEC.
	(LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC directly.
	(GNU_USER_TARGET_MATHFILE_SPEC): New define.
	(ENDFILE_SPEC): Use GNU_USER_TARGET_MATHFILE_SPEC and
	GNU_USER_TARGET_ENDFILE_SPEC.
	* config/mips/gnu-user64.h (LIB_SPEC): Remove.
	(GNU_USER_TARGET_LINK_SPEC): New define.
	(LINK_SPEC): Use GNU_USER_TARGET_LINK_SPEC.
	* config/mips/linux-common.h: New file.

From-SVN: r186777
2012-04-24 18:23:12 +00:00
Georg-Johann Lay
e900e6bd30 re PR testsuite/52641 (Test cases fail for 16-bit int targets)
PR testsuite/52641
	PR tree-optimizations/52891
	* gcc.c-torture/compile/pr52891-2.c: Fix test for 16-bit int.

From-SVN: r186776
2012-04-24 17:18:54 +00:00
Paolo Carlini
b40e334f1f re PR c++/52363 (Presence/absence of -pedantic compilation affects run-time behavior)
/cp
2012-04-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52363
	* call.c (tourney, perform_overload_resolution,
	build_operator_new_call, build_user_type_conversion_1,
	build_user_type_conversion, perform_overload_resolution,
	add_template_candidate, add_template_candidate_real,
	add_template_conv_candidate, add_builtin_candidates,
	add_builtin_candidate, build_builtin_candidate,
	add_conv_candidate, add_function_candidate, implicit_conversion,
	reference_binding, build_list_conv, conditional_conversion,
	add_candidates, can_convert_array, build_aggr_conv,
	build_array_conv, build_complex_conv, conditional_conversion):
	Add tsubst_flags_t parameter.
	(joust): Likewise, use it to handle SFINAE as if pedantic.
	(add_list_candidates, build_integral_nontype_arg_conv,
	perform_overload_resolution, build_new_function_call,
	build_operator_new_call, build_op_call_1,
	build_conditional_expr_1, build_new_op_1, convert_like_real,
	convert_arg_to_ellipsis, convert_default_arg,
	convert_for_arg_passing, build_over_call,
	build_new_method_call_1, can_convert_arg, can_convert_arg_bad,
	perform_implicit_conversion_flags,
	perform_direct_initialization_if_possible,
	initialize_reference): Adjust.
	* typeck.c (casts_away_constness, casts_away_constness_r):
	Add tsubst_flags_t parameter.
	(convert_arguments, check_for_casting_away_constness,
	build_static_cast_1, build_ptrmemfunc, convert_for_assignment):
	Adjust.
	* decl.c (reshape_init_r, check_default_argument): Likewise.
	* cp-gimplify.c (cxx_omp_clause_apply_fn): Likewise.
	* pt.c (convert_nontype_argument, check_non_deducible_conversion):
	Likewise.
	* init.c (build_new_1): Likewise.
	* cvt.c (convert_to_reference, ocp_convert, build_type_conversion,
	build_expr_type_conversion, ): Likewise.
	* search.c (check_final_overrider): Likewise.
	* cp-tree.h (build_user_type_conversion,
	build_operator_new_call, can_convert, can_convert_arg,
	can_convert_arg_bad, convert_default_arg,
	convert_arg_to_ellipsis, convert_for_arg_passing):
	Adjust declaration.

/testsuite
2012-04-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/52363
	* g++.dg/cpp0x/sfinae35.C: New.
	* g++.dg/cpp0x/sfinae36.C: Likewise.

From-SVN: r186774
2012-04-24 16:25:15 +00:00
Ian Lance Taylor
5ada012290 compiler: Fix order of evalation for m[0] = len(m) when m is a map.
From-SVN: r186772
2012-04-24 16:24:38 +00:00
Bill Schmidt
24d5b351b1 re PR target/47197 (ICE in gimplify_expr, at gimplify.c:7153 on AltiVec code (vec_dst))
gcc:

2012-04-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/47197
	* config/rs6000/rs6000-c.c (fully_fold_convert): New function.
	(altivec_build_resolved_builtin): Call fully_fold_convert.

gcc/testsuite:

2012-04-24  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR target/47197
	* gcc.target/powerpc/pr47197.c: New test.

From-SVN: r186771
2012-04-24 15:51:58 +00:00
Uros Bizjak
814671217c i386.md (*addsi_2_zext): Remove wrong assert.
* config/i386.md (*addsi_2_zext): Remove wrong assert.
	(*addsi_3_zext): Ditto.

From-SVN: r186769
2012-04-24 17:23:22 +02:00
Georg-Johann Lay
59d9ade4ae re PR target/53065 (ICE replace_reg_with_saved_mem, at caller-save.c:1125)
PR target/53065
	* config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define.

From-SVN: r186768
2012-04-24 15:21:29 +00:00
Ian Lance Taylor
929eeacd4c compiler: Reject invalid composite literals.
From-SVN: r186766
2012-04-24 14:54:17 +00:00
Richard Guenther
46b380a23b re PR tree-optimization/53085 (writes to volatile struct members is missing)
2012-04-24  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53085
	* tree-ssa-pre.c (eliminate): Do not eliminate volatile redundant
	stores.

	* g++.dg/torture/pr53085.C: New testcase.

From-SVN: r186764
2012-04-24 14:41:49 +00:00
Richard Biener
05232ff6d3 tree-if-conv.c (main_tree_if_conversion): Move bb under ENABLE_CHECKING.
2012-04-24  Richard Guenther  <rguenther@suse.de>

	* tree-if-conv.c (main_tree_if_conversion): Move bb under
	ENABLE_CHECKING.

From-SVN: r186763
2012-04-24 14:18:40 +00:00
Jim Meyering
57f10fe5f4 genattrtab: avoid NULL-deref on error
* genattrtab.c (gen_attr): Avoid NULL-deref after diagnosing
absence of an define_enum call.

From-SVN: r186761
2012-04-24 12:07:30 +00:00
Richard Guenther
7d5a99f479 tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): If the epilogue loop is not re-used as unvectorized version record the its...
2012-04-24  Richard Guenther  <rguenther@suse.de>

	* tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): If
	the epilogue loop is not re-used as unvectorized version
	record the its maximum number of iterations.

From-SVN: r186760
2012-04-24 11:25:21 +00:00
Tristan Gingold
c1041240bf fixincl.c (fix_with_system): Add missing specifier.
2012-04-24  Tristan Gingold  <gingold@adacore.com>

        * fixincl.c (fix_with_system): Add missing specifier.
        * configure.ac: Default to twoprocess on vms.
        * configure: Regenerate.

From-SVN: r186759
2012-04-24 09:24:55 +00:00