platform/upstream/linaro-gcc.git
12 years agogcc/
amodra [Wed, 25 Apr 2012 02:32:56 +0000 (02:32 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186800 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (rs6000_savres_strategy): Allow
amodra [Wed, 25 Apr 2012 02:21:09 +0000 (02:21 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186799 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (START_USE, END_USE, NOT_INUSE): Define.
amodra [Wed, 25 Apr 2012 02:18:56 +0000 (02:18 +0000)]
* config/rs6000/rs6000.c (START_USE, END_USE, NOT_INUSE): Define.
(rs6000_emit_prologue): Use the above to catch register overlap.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186798 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (rs6000_emit_stack_reset): Delete forward
amodra [Wed, 25 Apr 2012 02:15:48 +0000 (02:15 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186797 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (rs6000_frame_related): Don't emit a
amodra [Wed, 25 Apr 2012 02:12:12 +0000 (02:12 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186796 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Sriraman Tallam <tmsriram@google.com>
tmsriram [Wed, 25 Apr 2012 02:04:22 +0000 (02:04 +0000)]
2012-04-24  Sriraman Tallam  <tmsriram@google.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186795 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 25 Apr 2012 01:17:57 +0000 (01:17 +0000)]
2012-04-24  Benjamin Kosnik  <bkoz@redhat.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186794 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 25 Apr 2012 00:17:56 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186793 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Sriraman Tallam <tmsriram@google.com>
tmsriram [Wed, 25 Apr 2012 00:08:37 +0000 (00:08 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186789 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Chao-ying Fu <fu@mips.com>
chaoyingfu [Tue, 24 Apr 2012 22:41:33 +0000 (22:41 +0000)]
2012-04-24  Chao-ying Fu  <fu@mips.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186788 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * vi.po: Update.
jsm28 [Tue, 24 Apr 2012 22:16:24 +0000 (22:16 +0000)]
* vi.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186786 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * sv.po: Update.
jsm28 [Tue, 24 Apr 2012 22:14:54 +0000 (22:14 +0000)]
* sv.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186784 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * common.opt (gdwarf-): Initialize dwarf_version to -1 instead of 2.
hainque [Tue, 24 Apr 2012 20:34:30 +0000 (20:34 +0000)]
    * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186783 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogotest: Remove race in use of ../testdata.
ian [Tue, 24 Apr 2012 20:13:12 +0000 (20:13 +0000)]
gotest: Remove race in use of ../testdata.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186781 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Tue, 24 Apr 2012 19:21:21 +0000 (19:21 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186780 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agomksysinfo: Only define PathMax if PATH_MAX is defined.
ian [Tue, 24 Apr 2012 19:12:26 +0000 (19:12 +0000)]
mksysinfo: Only define PathMax if PATH_MAX is defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186778 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Chao-ying Fu <fu@mips.com>
chaoyingfu [Tue, 24 Apr 2012 18:23:12 +0000 (18:23 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186777 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR testsuite/52641
gjl [Tue, 24 Apr 2012 17:18:54 +0000 (17:18 +0000)]
PR testsuite/52641
PR tree-optimizations/52891
* gcc.c-torture/compile/pr52891-2.c: Fix test for 16-bit int.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186776 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Tue, 24 Apr 2012 16:25:15 +0000 (16:25 +0000)]
/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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186774 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Fix order of evalation for m[0] = len(m) when m is a map.
ian [Tue, 24 Apr 2012 16:24:38 +0000 (16:24 +0000)]
compiler: Fix order of evalation for m[0] = len(m) when m is a map.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186772 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc:
wschmidt [Tue, 24 Apr 2012 15:51:58 +0000 (15:51 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186771 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386.md (*addsi_2_zext): Remove wrong assert.
uros [Tue, 24 Apr 2012 15:23:22 +0000 (15:23 +0000)]
* config/i386.md (*addsi_2_zext): Remove wrong assert.
(*addsi_3_zext): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186769 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/53065
gjl [Tue, 24 Apr 2012 15:21:29 +0000 (15:21 +0000)]
PR target/53065
* config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186768 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Reject invalid composite literals.
ian [Tue, 24 Apr 2012 14:54:17 +0000 (14:54 +0000)]
compiler: Reject invalid composite literals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186766 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 24 Apr 2012 14:41:49 +0000 (14:41 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186764 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 24 Apr 2012 14:18:40 +0000 (14:18 +0000)]
2012-04-24  Richard Guenther  <rguenther@suse.de>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186763 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogenattrtab: avoid NULL-deref on error
meyering [Tue, 24 Apr 2012 12:07:30 +0000 (12:07 +0000)]
genattrtab: avoid NULL-deref on error

* genattrtab.c (gen_attr): Avoid NULL-deref after diagnosing
absence of an define_enum call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186761 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 24 Apr 2012 11:25:21 +0000 (11:25 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186760 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 24 Apr 2012 09:24:55 +0000 (09:24 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186759 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 24 Apr 2012 08:43:33 +0000 (08:43 +0000)]
2012-04-24  Andrew Pinski  <apinski@cavium.com>

* tree-ssa-forwprop.c (simplify_bitwise_binary):
Don't directly use def1/def2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186757 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 24 Apr 2012 08:06:20 +0000 (08:06 +0000)]
2012-04-24  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53098
* tree-vect-loop.c (vect_analyze_loop_operations): Fixup
comparison sign.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186754 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd myself in Write After Approval list in MAINTAINERS file.
naveenh [Tue, 24 Apr 2012 07:49:14 +0000 (07:49 +0000)]
Add myself in Write After Approval list in MAINTAINERS file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186753 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Tue, 24 Apr 2012 07:22:41 +0000 (07:22 +0000)]
2012-04-23  Manuel López-Ibáñez  <manu@gcc.gnu.org>

contrib/
* compare_tests: Append '/' to make 'find' traverse
symlinked directories.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186750 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Andrew Pinski <apinski@cavium.com>
pinskia [Tue, 24 Apr 2012 07:05:09 +0000 (07:05 +0000)]
2012-04-24  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/33512
* tree-ssa-forwprop.c (defcodefor_name): New function.
(simplify_bitwise_binary): Use defcodefor_name instead of manually
Simplify "( X | Y) & X" to X and "( X & Y) | X" to X.
Simplify "(~X | Y) & X" to "X & Y" and
"(~X & Y) | X" to "X | Y".

2012-04-24  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/33512
* gcc.dg/tree-ssa/andor-3.c: New testcase.
* gcc.dg/tree-ssa/andor-4.c: New testcase.
* gcc.dg/tree-ssa/andor-5.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186749 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Tue, 24 Apr 2012 07:01:52 +0000 (07:01 +0000)]
2012-04-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* recog.c (insn_invalid_p): Add IN_GROUP parameter and use
validate_change to add clobbers if IN_GROUP is nonzero.
(verify_changes): Call insn_invalid_p with IN_GROUP set to true.
* recog.h (insn_invalid_p): Add IN_GROUP parameter to function
prototype.
* gcse.c (process_insert_insn): Call insn_invalid_p with IN_GROUP
set to false.
* config/s390/s390.c (insn_invalid_p): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186748 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoUse braced string notation where applicable for v850.md
naveenh [Tue, 24 Apr 2012 06:59:57 +0000 (06:59 +0000)]
Use braced string notation where applicable for v850.md

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186747 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoUse braced string notation where applicable for h8300.md
naveenh [Tue, 24 Apr 2012 06:10:14 +0000 (06:10 +0000)]
Use braced string notation where applicable for h8300.md

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186744 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/53084
jakub [Tue, 24 Apr 2012 06:07:30 +0000 (06:07 +0000)]
PR middle-end/53084
* varasm.c (compute_reloc_for_constant): Handle ADDR_EXPR
of MEM_REF.
(output_addressed_constants): Likewise.

* gcc.c-torture/execute/pr53084.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186742 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/52999
jakub [Tue, 24 Apr 2012 06:03:43 +0000 (06:03 +0000)]
PR middle-end/52999
* varasm.c (get_section): Don't ICE for section conflicts with
built-in section kinds.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186741 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Error for invalid use of ... in call.
ian [Tue, 24 Apr 2012 05:55:27 +0000 (05:55 +0000)]
compiler: Error for invalid use of ... in call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186739 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago* config/s390/s390.h (LINK_SPEC): Remove, no longer needed.
dj [Tue, 24 Apr 2012 01:53:20 +0000 (01:53 +0000)]
* config/s390/s390.h (LINK_SPEC): Remove, no longer needed.
(LIBSTDCXX): Change to CPP2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186737 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 24 Apr 2012 00:17:57 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186734 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 23 Apr 2012 23:55:42 +0000 (23:55 +0000)]
2012-04-23  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/noexcept15.C: Adjust for Rev 186726 library changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186730 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoCheck if MASK_/TARGET_ macros defined for extra_masks
hjl [Mon, 23 Apr 2012 23:32:54 +0000 (23:32 +0000)]
Check if MASK_/TARGET_ macros defined for extra_masks

2012-04-23  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/52878
* opth-gen.awk: Check if MASK_ and TARGET_ macros are defined for
extra_masks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186729 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * go-lang.c (go_langhook_init): Set MPFR precision to 256.
ian [Mon, 23 Apr 2012 21:39:12 +0000 (21:39 +0000)]
* go-lang.c (go_langhook_init): Set MPFR precision to 256.

time: Adjust float expression so that it first integer context.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186727 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Daniel Krugler <daniel.kruegler@googlemail.com>
paolo [Mon, 23 Apr 2012 21:34:06 +0000 (21:34 +0000)]
2012-04-23  Daniel Krugler  <daniel.kruegler@googlemail.com>

* include/std/type_traits (is_nothrow_destructible): Implement.
(is_destructible): Implement LWG 2049.
* testsuite/util/testsuite_tr1.h: Add tests.
* testsuite/20_util/is_nothrow_destructible/value.cc: New.
* testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
* testsuite/20_util/is_nothrow_destructible/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_destructible/value.cc: Adjust and extend.
* testsuite/20_util/is_default_constructible/value.cc: Tweak.
* testsuite/20_util/is_constructible/value-2.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186726 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/i386.md (*add<mode>_2): Add r/r/0 alternative.
uros [Mon, 23 Apr 2012 21:24:56 +0000 (21:24 +0000)]
* config/i386/i386.md (*add<mode>_2): Add r/r/0 alternative.
(*addsi_2_zext): Ditto.
(*add<mode>_3): Ditto.
(*addsi_3_zext): Ditto.
(*add<mode>_5): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186725 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Correct handling of negative zero floating constant.
ian [Mon, 23 Apr 2012 20:49:33 +0000 (20:49 +0000)]
compiler: Correct handling of negative zero floating constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186722 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 23 Apr 2012 19:37:59 +0000 (19:37 +0000)]
2012-04-23  Andrew Pinski  <apinski@cavium.com>

* tree-ssa-forwprop.c (simplify_bitwise_binary): Simplify (A & B) OP0
(C & B) to (A OP0) & B.

2012-04-23  Andrew Pinski  <apinski@cavium.com>

* gcc.dg/tree-ssa/forwprop-17.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186721 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 23 Apr 2012 17:17:48 +0000 (17:17 +0000)]
2012-04-23  Martin Jambor  <mjambor@suse.cz>

* expr.c (expand_expr_real_1): Remove setting parent's alias set for
temporaries created for a bitfield (reverting revision 122014).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186718 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agolibgo: Make sure log/syslog subdirectory exists before using it.
ian [Mon, 23 Apr 2012 17:02:54 +0000 (17:02 +0000)]
libgo: Make sure log/syslog subdirectory exists before using it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186715 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 23 Apr 2012 14:38:16 +0000 (14:38 +0000)]
2012-04-23  Richard Guenther  <rguenther@suse.de>

* tree-vect-loop-manip.c (slpeel_add_loop_guard): Gimplify
the condition using is_gimple_condexpr and avoid the not necessary
boolification.
(set_prologue_iterations): Likewise.
(vect_loop_versioning): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186710 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc-testsuite:
wschmidt [Mon, 23 Apr 2012 14:06:11 +0000 (14:06 +0000)]
gcc-testsuite:

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

PR regression/53076
* gcc.dg/torture/builtin-explog-1.c: Skip if -O0.
* gcc.dg/torture/builtin-power-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186709 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Andrew Haley <aph@redhat.com>
aph [Mon, 23 Apr 2012 13:33:32 +0000 (13:33 +0000)]
2012-04-23  Andrew Haley  <aph@redhat.com>

* defineclass.cc (MAJOR_1_7,  MINOR_1_7): New.
(parse): Allow MAJOR_1_7 classfile version.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186707 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 23 Apr 2012 12:47:02 +0000 (12:47 +0000)]
2012-04-23  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/53070
* tree-if-conv.c (combine_blocks): Free predicates in all blocks.
(main_tree_if_conversion): Verify we succeeded in that.

* gcc.dg/torture/pr53070.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186704 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 23 Apr 2012 12:26:43 +0000 (12:26 +0000)]
2012-04-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53080
* include/std/array (tuple_element, get): static_assert I < N.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
New.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
* testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186702 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Chris Jefferson <chris@bubblescope.net>
paolo [Mon, 23 Apr 2012 11:17:28 +0000 (11:17 +0000)]
2012-04-23  Chris Jefferson  <chris@bubblescope.net>

PR testsuite/53046
* testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
of array A.
* testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186701 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lto-symtab.c (lto_cgraph_replace_node): Do not call
hubicka [Mon, 23 Apr 2012 11:13:46 +0000 (11:13 +0000)]
* lto-symtab.c (lto_cgraph_replace_node): Do not call
mark_reahcable_node.
* cgraph.c (cgraph_remove_node): Do not clear reachable.
(cgraph_mark_reachable_node): Remove.
(cgraph_mark_force_output_node): Do not set reachable.
(dump_cgraph_node): Do not dump reachable.
(cgraph_create_virtual_clone): Do not set reachable.
* cgraph.h (cgraph_node): Remove reachable flag.
(varpool_node): Remove reachable flag.
(cgraph_mark_if_needed): Remove.
(cgraph_mark_reachable_node): Remove.
* tree-emutls.c (ipa_lower_emutls): Do not check
reachable.
* cgraphunit.c (cgraph_finalize_function): Do not mark node as
reachable.
(cgraph_add_new_function): Likewise.
(cgraph_mark_if_needed): Remove.
(cgraph_analyze_function): Do not set target as reachable.
(process_function_and_variable_attributes): Do not care about dllexport.
(cgraph_analyze_functions): Do not set reachable flags.
(cgraph_mark_functions_to_output): Do not check reachability.
(cgraph_copy_node_for_versioning): Do not set reachable flag.
(dbxout_expand_expr): Update.
* c-decl.c (merge_decls): Do not track changed externs.
* ipa.c: Include pointer-set.h
(enqueue_cgraph_node): Use reachable pointer set.
(process_references): Likewise.
(cgraph_remove_unreachable_nodes): Likewise.
(whole_program_function_and_variable_visibility): Do not recompute reachable.
* trans-mem.c (ipa_tm_execute): Do not check reachable flag.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186700 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/extend.texi (AVR Named Address Spaces): Fix typos.
gjl [Mon, 23 Apr 2012 10:23:04 +0000 (10:23 +0000)]
* doc/extend.texi (AVR Named Address Spaces): Fix typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186697 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-23 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 23 Apr 2012 10:20:05 +0000 (10:20 +0000)]
2012-04-23  Richard Guenther  <rguenther@suse.de>

PR c/53060
* c-typeck.c (build_binary_op): Fix typo.

* gcc.dg/pr53060.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186696 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimizations/52891
jakub [Mon, 23 Apr 2012 10:13:39 +0000 (10:13 +0000)]
PR tree-optimizations/52891
* tree-vect-patterns.c (adjust_bool_pattern): Use
build_nonstandard_type even if rhs1 has unsigned INTEGER_TYPE,
but with non-standard precision.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186694 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Bail out at NULL tree refs.
hubicka [Mon, 23 Apr 2012 10:04:48 +0000 (10:04 +0000)]
* tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Bail out at NULL tree refs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186693 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 23 Apr 2012 00:18:11 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186692 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lto-symtab.c (lto_varpool_replace_node): Do not merge needed flags.
hubicka [Sun, 22 Apr 2012 21:28:07 +0000 (21:28 +0000)]
* lto-symtab.c (lto_varpool_replace_node): Do not merge needed flags.
* cgraphbuild.c (record_reference, record_type_list, mark_address,
mark_load, mark_store): Do not mark varpool nodes as needed.
* cgraph.c (cgraph_new_nodes): Remove.
(cgraph_create_function_alias): Do not mark nodes as reachable.
(cgraph_add_thunk): Likewise.
(cgraph_mark_reachable_node): Do not manage the queue.
* cgraph.h (cgraph_node): Remove next_needed.
(varpool_nodes_queue): Remove next_needed and prev_needed.
(x_cgraph_nodes_queue, x_cgraph_nodes_queue, cgraph_new_nodes): Remove.
(cgraph_new_nodes): Declare.
(x_varpool_nodes_queue, varpool_nodes_queue); Remove.
(varpool_analyze_pending_decls): Remove.
(varpool_analyze_node): New.
(varpool_mark_needed_node): Remove.
(varpool_first_variable, varpool_next_variable): New inlines.
(varpool_first_static_initializer, varpool_next_static_initializer): Update.
(FOR_EACH_STATIC_VARIABLE): Remove unused walker.
(varpool_first_defined_variable): New inline.
(varpool_next_defined_variable): New inline
(FOR_EACH_VARIABLE): Reimplement.
(FOR_EACH_DEFINED_VARIABLE): Reimplement.
* toplev.c (wrapup_global_declaration_2): Use analyzed instead of
needed flag.
* cgraphunit.c (cgraph_new_nodes): Declare here.
(enqueue_node): New function.
(cgraph_process_new_functions): update for new
node set; when constructing cgraph enqueue node for processing.
(cgraph_add_new_function): Use new node set.
(process_function_and_variable_attributes): Do not set varpool needed
flags.
(referred_to_p): New function.
(varpool_finalize_decl): Move here from varpool.c; enqueue needed node
when varpool is in construction.
(cgraph_analyze_functions): Rewrite.
(cgraph_expand_all_functions): Update.
(cgraph_output_in_order): Do not analyze pending decls; do not set needed flags.
(cgraph_optimize): Do not analyze pending decls.
* lto-cgraph.c (input_varpool_node): Clear analyzed flag for objects in other
partition; do not mark node as needed.
* dwarf2out.c (reference_to_unused): Use analyzed flag.
(premark_types_used_by_global_vars_helper): Likewise.
* ipa.c (process_references): Do not call varpool_mark_needed_node.
(cgraph_remove_unreachable_nodes): Do not rely on varpool and
cgrpah queues.
(function_and_variable_visibility): Do not mark node as needed.
(whole_program_function_and_variable_visibility): Likewise.
* Makefile.in (gt-varpool.h): No longer needed.
* passes.c (execute_one_pass, execute_ipa_pass_list): Update.
(ipa_write_summaries): Do not use needed flag.
* varpool.c: Do not include gt-varpool.h
(x_varpool_nodes_queue, x_varpool_last_needed_node,
x_varpool_last_needed_node, x_varpool_first_unanalyzed_node,
x_varpool_first_unanalyzed_node, varpool_assembled_nodes_queue):
Remove.
(varpool_remove_node): Do not update the lists.
(dump_varpool_node): Do not dump needed flag.
(varpool_enqueue_needed_node): Remove.
(varpool_mark_needed_node): Remove.
(varpool_reset_queue): Remove.
(varpool_finalize_decl): Move to cgraphunit.c
(varpool_analyze_node): New functions based on former
varpool_analyze_pending_decls.
(varpool_analyze_pending_decls): Remove.
(varpool_assemble_decl): Do not update the lists.
(enqueue_node): New function.
(varpool_remove_unreferenced_decls): Rewrite.
(varpool_empty_needed_queue): Remove.
(add_new_static_var): Do not mark node as needed.
(varpool_create_variable_alias): Handle expansion state
creation.
* except.c (output_ttype): Do not mark node as needed.
* varasm.c (mark_decl_referenced): Do not use mark_needed_node.
* tree-profile.c (init_ic_make_global_vars, init_ic_make_global_vars):
Likewise.
* tree-switch-conversion.c (build_one_array): Likewise.

* class.c (build_utf8_ref): Do not mark varpool node as needed.

* gcc-interface/utils.c (gnat_write_global_declarations): Do not mark
needed node.

* lto-partition.c (partition_varpool_node_p): Do not use needed flag.

* decl2.c (maybe_make_one_only): Mark keyed COMDATs as USED so they
gets finalized.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186687 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agomksysinfo: More fixes to emulate master Go library.
ian [Sun, 22 Apr 2012 20:07:23 +0000 (20:07 +0000)]
mksysinfo: More fixes to emulate master Go library.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186685 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agomksysinfo: Define more structs.
ian [Sun, 22 Apr 2012 19:26:01 +0000 (19:26 +0000)]
mksysinfo: Define more structs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186683 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Sun, 22 Apr 2012 19:17:47 +0000 (19:17 +0000)]
2012-04-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/44774
gcc/
* doc/invoke.texi (pedantic): Rename to Wpedantic.
* common.opt (Wpedantic): New.
(pedantic): Alias Wpedantic.
* diagnostic.c (warning_at): Likewise.
* c-decl.c (diagnose_mismatched_decls): Likewise.
(build_array_declarator): Likewise.
(mark_forward_parm_decls):
(check_bitfield_type_and_width): Likewise.
(grokdeclarator): Likewise.
(grokfield): Likewise.
(finish_struct): Likewise.
(build_enumerator): Likewise.
(store_parm_decls_oldstyle): Likewise.
(declspecs_add_qual): Likewise.
(declspecs_add_type): Likewise.
(finish_declspecs): Likewise.
* c-typeck.c (composite_type): Likewise.
(comp_target_types): Likewise.
(build_array_ref): Likewise.
(pointer_diff): Likewise.
(build_unary_op): Likewise.
(build_conditional_expr): Likewise.
(build_c_cast): Likewise.
(convert_for_assignment): Likewise.
(maybe_warn_string_init): Likewise.
(digest_init): Likewise.
(pop_init_level): Likewise.
(set_init_index): Likewise.
(c_finish_goto_label): Likewise.
(c_finish_return): Likewise.
(do_case): Likewise.
(build_binary_op): Likewise.
* c-parser.c (static): Likewise.
(c_parser_external_declaration): Likewise.
(c_parser_declaration_or_fndef): Likewise.
(c_parser_static_assert_declaration_no_se): Likewise.
(c_parser_enum_specifier): Likewise.
(c_parser_struct_or_union_specifier): Likewise.
(c_parser_struct_declaration): Likewise.
(c_parser_alignas_specifier): Likewise.
(c_parser_braced_init): Likewise.
(c_parser_initelt): Likewise.
(c_parser_compound_statement_nostart): Likewise.
(c_parser_conditional_expression): Likewise.
(c_parser_alignof_expression): Likewise.
(c_parser_postfix_expression): Likewise.
(c_parser_postfix_expression_after_paren_): Likewise.
(c_parser_objc_class_instance_variables): Likewise.
(c_parser_objc_method_definition): Likewise.
(c_parser_objc_methodprotolist): Likewise.

c-family/
* c.opt (Wpedantic): New.
(pedantic): Alias Wpedantic.
* c-opts.c (c_common_handle_option): Replace -pedantic with -Wpedantic.
(c_common_post_options): Likewise.
(sanitize_cpp_opts): Likewise.
* c-lex.c (interpret_float): Likewise.
* c-format.c (check_format_types): Likewise.
* c-common.c (pointer_int_sum): Likewise.
(c_sizeof_or_alignof_type): Likewise.
(c_add_case_label): Likewise.
(c_do_switch_warnings): Likewise.
* c-pragma.c (handle_pragma_float_const_decimal64): Likewise.
cp/
* typeck.c (composite_pointer_type): Likewise.
(cxx_sizeof_or_alignof_type): Likewise.
(cp_build_array_ref): Likewise.
(cp_build_function_call_vec): Likewise.
(cp_build_addr_expr_1): Likewise.
(convert_member_func_to_ptr): Likewise.
* decl.c (check_tag_decl): Likewise.
(check_static_variable_definition): Likewise.
(compute_array_index_type): Likewise.
(create_array_type_for_decl): Likewise.
(grokdeclarator): Likewise.
(grok_op_properties): Likewise.
* error.c (maybe_warn_cpp0x): Likewise.
* pt.c (maybe_process_partial_specialization): Likewise.
(convert_template_argument): Likewise.
(do_decl_instantiation): Likewise.
(do_type_instantiation): Likewise.
* parser.c (cp_parser_primary_expression): Likewise.
(cp_parser_postfix_expression): Likewise.
(cp_parser_unary_expression): Likewise.
(cp_parser_question_colon_clause): Likewise.
(cp_parser_lambda_introducer): Likewise.
(cp_parser_lambda_declarator_opt): Likewise.
(cp_parser_compound_statement): Likewise.
(cp_parser_jump_statement): Likewise.
(cp_parser_declaration_seq_opt): Likewise.
(cp_parser_enum_specifier): Likewise.
(cp_parser_enumerator_list): Likewise.
(cp_parser_initializer_list): Likewise.
(cp_parser_member_declaration): Likewise.
* call.c (build_conditional_expr_1): Likewise.
* friend.c (make_friend_class): Likewise.
* name-lookup.c (pushdecl_maybe_friend_1): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186681 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * godump.c (go_output_typedef): Dump size of structs.
ian [Sun, 22 Apr 2012 18:51:44 +0000 (18:51 +0000)]
* godump.c (go_output_typedef): Dump size of structs.

mksysinfo, syscall: Change Sizeof names from var to const.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186678 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 22 Apr 2012 17:37:57 +0000 (17:37 +0000)]
2012-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/53067
* include/bits/hashtable_policy.h: Change inheritances to public.
* testsuite/23_containers/unordered_map/requirements/53067.cc: New.
* testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186676 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-22 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 22 Apr 2012 17:28:34 +0000 (17:28 +0000)]
2012-04-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53051
        * io/list_read.c (parse_real): Support "q" for the
        exponential.
        * io/read.c (read_f): Ditto.

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

        PR fortran/53051
        * gfortran.dg/read_float_4.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186675 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/ext/alloc_traits.h (__alloc_traits::difference_type):
redi [Sun, 22 Apr 2012 14:38:33 +0000 (14:38 +0000)]
* include/ext/alloc_traits.h (__alloc_traits::difference_type):
Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186673 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd PR number to ChangeLog entry.
redi [Sun, 22 Apr 2012 14:15:51 +0000 (14:15 +0000)]
Add PR number to ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186672 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
redi [Sun, 22 Apr 2012 13:42:38 +0000 (13:42 +0000)]
* include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
* testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
rebind works.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186670 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * include/debug/forward_list (forward_list::splice_after): Check
redi [Sun, 22 Apr 2012 13:27:16 +0000 (13:27 +0000)]
* include/debug/forward_list (forward_list::splice_after): Check
allocators are equal.
* src/c++11/debug.cc: Fix spelling.
* testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
New.
* testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
Likewise.
* testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186669 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * ChangeLog: Fix.
uros [Sun, 22 Apr 2012 12:58:59 +0000 (12:58 +0000)]
* ChangeLog: Fix.
* testsuite/ChangeLog: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186668 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-20 Razya Ladelsky <razya@il.ibm.com>
razya [Sun, 22 Apr 2012 10:36:13 +0000 (10:36 +0000)]
2012-04-20  Razya Ladelsky  <razya@il.ibm.com>
                 Correcting transform_to_exit_first_loop + fix to
                 PR tree-optimization/46886
                 * tree-parloops.c (transform_to_exit_first_loop):
                 * Remove setting of number of iterations according to
                 * the loop pattern.
                 Duplicate from entry to exit->src instead of
loop->latch.
                 (pallelize_loops): Remove the condition preventing
do-while loops.
                 * tree-cfg.c (bool bb_in_region_p): New.
                 (gimple_duplicate_sese_tail): Adjust duplication of the
the subloops.
                 Adjust redirection of the duplicated iteration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186667 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sun, 22 Apr 2012 00:18:29 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186662 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * method.c (make_alias_for): Do not set TREE_SYMBOL_REFERENCED.
hubicka [Sat, 21 Apr 2012 23:59:25 +0000 (23:59 +0000)]
* method.c (make_alias_for): Do not set TREE_SYMBOL_REFERENCED.
* decl2.c (mark_needed): Likewise.
(decl_needed_p): Do not test TREE_SYMBOL_REFERENCED.

* decl2.c (cxx_callgraph_analyze_expr): Remove.
* cp-objcp-common.h (LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR): Remove.
* cp-tree.h (cxx_callgraph_analyze_expr): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186658 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Sat, 21 Apr 2012 18:55:18 +0000 (18:55 +0000)]
gcc/
PR bootstrap/53021
* rtl.def (ADDRESS): Use "i" rather than "w".
* rtl.h (find_base_term): Delete.
(may_be_sp_based_p): Declare.
* rtl.c (rtx_code_size): Remove ADDRESS special case.
* alias.h (UNIQUE_BASE_VALUE_SP, UNIQUE_BASE_VALUE_ARGP)
(UNIQUE_BASE_VALUE_FP, UNIQUE_BASE_VALUE_HFP): Move to...
* alias.c: ...here.
(find_base_term): Make static.
(may_be_sp_based_p): New function.
* dse.c (record_store): Use it.
* store-motion.c (store_killed_in_insn): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186657 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agosyscall: Additional constants, some type corrections.
ian [Sat, 21 Apr 2012 18:49:58 +0000 (18:49 +0000)]
syscall: Additional constants, some type corrections.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186655 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoInstall right version, sigh.
rsandifo [Sat, 21 Apr 2012 18:29:23 +0000 (18:29 +0000)]
Install right version, sigh.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186654 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Sat, 21 Apr 2012 18:09:16 +0000 (18:09 +0000)]
gcc/
* fold-const.c (fold_checksum_tree): Fix VECTOR_CST case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186653 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-21 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Sat, 21 Apr 2012 14:53:21 +0000 (14:53 +0000)]
2012-04-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR 35441
* c-typeck.c (inform_declaration): New.
(build_function_call_vec):  Do not pretty-print
expressions when caret is enabled.
(convert_arguments): Use inform_declaration.
cp/
* typeck.c (cp_build_function_call_vec): Do not pretty-print
expressions when caret is enabled.
testsuite/
* c-c++-common/pr35441.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186652 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sat, 21 Apr 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186649 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler: Don't call cgraph_mark_needed_node.
ian [Fri, 20 Apr 2012 21:20:36 +0000 (21:20 +0000)]
compiler: Don't call cgraph_mark_needed_node.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186644 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * go.test/go-test.exp (go-set-goarch): Recognize powerpc*-*-*.
ian [Fri, 20 Apr 2012 20:18:49 +0000 (20:18 +0000)]
* go.test/go-test.exp (go-set-goarch): Recognize powerpc*-*-*.
(go-gc-tests): Skip nilptr.go on powerpc*-*-*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186642 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agonet, syscall: Use native endianness for GNU/Linux netlink code.
ian [Fri, 20 Apr 2012 20:11:28 +0000 (20:11 +0000)]
net, syscall: Use native endianness for GNU/Linux netlink code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186640 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agocompiler, runtime: Add explicit checks for zero and overflow division.
ian [Fri, 20 Apr 2012 19:21:39 +0000 (19:21 +0000)]
compiler, runtime: Add explicit checks for zero and overflow division.

* lang.opt: Add -fgo-check-divide-zero and
-fgo-check-divide-overflow.
* gccgo.texi (Invoking gccgo): Document new options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186637 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agonet/http: Ignore sigaltstack when running strace in test.
ian [Fri, 20 Apr 2012 18:51:05 +0000 (18:51 +0000)]
net/http: Ignore sigaltstack when running strace in test.

Avoids bug in strace 4.5.20 on powerpc-unknown-linux-gnu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186635 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agodebug/dwarf: Fix address lookups for different types of lines.
ian [Fri, 20 Apr 2012 18:44:09 +0000 (18:44 +0000)]
debug/dwarf: Fix address lookups for different types of lines.

This fixes the lookup when, e.g., discriminators force adding
new line arrays.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186633 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoruntime: Disable memory profiling in gc_test.
ian [Fri, 20 Apr 2012 18:40:14 +0000 (18:40 +0000)]
runtime: Disable memory profiling in gc_test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186631 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.target/x86_64/abi/avx/test_passing_unions.c: Avoid undefined
uros [Fri, 20 Apr 2012 16:12:55 +0000 (16:12 +0000)]
* gcc.target/x86_64/abi/avx/test_passing_unions.c: Avoid undefined
array access.
* gcc.target/x86_64/abi/avx/test_passing_structs.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186629 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogenmodes: don't truncate a mode name of length >= 7
meyering [Fri, 20 Apr 2012 15:38:35 +0000 (15:38 +0000)]
genmodes: don't truncate a mode name of length >= 7

* genmodes.c (make_complex_modes): Don't truncate a mode name of
length 7 or more when prepending a "C".  Suggested by Richard Guenther.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186628 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR target/53042
hubicka [Fri, 20 Apr 2012 15:18:39 +0000 (15:18 +0000)]
PR target/53042
* decl2.c (maybe_emit_vtables): Do not initialize same_comdat_group
list when target has no support for it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186627 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * error.c (pedwarn_cxx98): Move va_end call after user
matz [Fri, 20 Apr 2012 14:40:09 +0000 (14:40 +0000)]
* error.c (pedwarn_cxx98): Move va_end call after user
of the va_list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186626 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc:
wschmidt [Fri, 20 Apr 2012 14:19:13 +0000 (14:19 +0000)]
gcc:

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

PR rtl-optimization/44214
* fold-const.c (exact_inverse): New function.
(fold_binary_loc): Fold vector and complex division by constant into
multiply by recripocal with flag_reciprocal_math; fold vector division
by constant into multiply by reciprocal with exact inverse.

gcc/testsuite:

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

PR rtl-optimization/44214
* gcc.dg/pr44214-1.c: New test.
* gcc.dg/pr44214-2.c: Likewise.
* gcc.dg/pr44214-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186625 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * lto-symtab.c (lto_cgraph_replace_node): Merge needed instead of force flags.
hubicka [Fri, 20 Apr 2012 14:09:11 +0000 (14:09 +0000)]
* lto-symtab.c (lto_cgraph_replace_node): Merge needed instead of force flags.
* cgraph.c (cgraph_add_thunk): Use mark_reachable_node.
(cgraph_remove_node): Update.
(cgraph_mark_needed_node): Remove.
(cgraph_mark_force_output_node): New.
(dump_cgraph_node): Do not dump needed flag.
(cgraph_node_cannot_be_local_p_1): Update.
(cgraph_can_remove_if_no_direct_calls_and_refs): Update.
* cgraph.h (symtab_node_base): Add force_output flag.
(cgraph_node): Remove needed flag.
(varpool_node): Remove force_output flag.
(cgraph_mark_needed_node): Remove.
(cgraph_mark_force_output_node): New.
(cgraph_only_called_directly_or_aliased_p,
varpool_can_remove_if_no_refs, varpool_all_refs_explicit_p): Update.
* ipa-cp.c (ipcp_generate_summary): Remove out of date assert.
* cgraphunit.c (cgraph_decide_is_function_needed): rewrite.
(cgraph_add_new_function); Update.
(cgraph_mark_if_needed); Update.
(verify_cgraph_node): Update.
(cgraph_analyze_function): Alias target is reachable.
(process_function_and_variable_attributes): Update: externally_visible
flag makes function reachable.
(cgraph_analyze_functions): Update dumping.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node,
input_overwrite_node, input_varpool_node): Update streaming.
* lto-streamer-out.c (produce_symtab): Use force_output.
* ipa.c (process_references): Weakrefs must be processed.
(cgraph_remove_unreachable_nodes): Likewise; update for new
force_output flag.
(varpool_externally_visible_p); Weakrefs are externally visible
even if they are not.
(function_and_variable_visibility): Update; when processing alias
pair force the targets to be output.
(whole_program_function_and_variable_visility): Use mark_reachable_node.
* trans-mem.c (ipa_tm_mark_needed_node): Remove
(ipa_tm_mark_force_output_node): New function.
(ipa_tm_create_version_alias, ipa_tm_create_version): Update.
* gimple-fold.c (can_refer_decl_in_current_unit_p): Be lax about aliases.
* varasm.c (mark_decl_referenced): Update.
(find_decl_and_mark_needed): Remove.
(find_decl): New function.
(weak_finish, finish_aliases_1, assemble_alias): Update; do not mark
alias targets as needed.
(dump_tm_clone_pairs): Update.
* tree-inline.c (copy_bb): Update check.
* symtab.c (dump_symtab_base): Dump force_output.
* tree-ssa-structalias.c (ipa_pta_execute): Use force_output.
* passes.c (execute_todo): Fix dumping.
* varpool.c (decide_is_variable_needed, varpool_finalize_decl): Update.
(varpool_analyze_pending_decls): Alias target is reachable.
(varpool_create_variable_alias): Finalize weakrefs.

* class.c (make_local_function_alias): Do not mark symbol referenced.

* objc-acct.c (mark_referenced_methods); Use
cgraph_mark_force_output_node.

* gcc-interface/utils.c (gnat_write_global_declarations): Update for new
force_output placement.

* lto/lto-partition.c (partition_cgraph_node_p): Use force_output.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186624 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR bootstrap/53021
jakub [Fri, 20 Apr 2012 12:19:51 +0000 (12:19 +0000)]
PR bootstrap/53021
* alias.h (UNIQUE_BASE_VALUE_SP, UNIQUE_BASE_VALUE_ARGP,
UNIQUE_BASE_VALUE_FP, UNIQUE_BASE_VALUE_HFP): Define.
* alias.c (init_alias_targets): Use UNIQUE_BASE_VALUE_*
macros instead of constants.
* dse.c (record_store): Check for SP ADDRESS by comparing
XWINT to UNIQUE_BASE_VALUE_SP instead of expecting
XEXP to be stack_pointer_rtx.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186623 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2012-04-20 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 20 Apr 2012 11:56:33 +0000 (11:56 +0000)]
2012-04-20  Richard Guenther  <rguenther@suse.de>

* tree-ssa-copy.c (propagate_tree_value_into_stmt): Use
update_call_from_tree when propagating into a call.

* g++.dg/torture/20120420-1.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186622 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/rs6000/rs6000.c (rs6000_emit_savres_rtx): Formatting.
amodra [Fri, 20 Apr 2012 11:46:58 +0000 (11:46 +0000)]
* config/rs6000/rs6000.c (rs6000_emit_savres_rtx): Formatting.
(rs6000_emit_prologue, rs6000_emit_epilogue): Likewise.  Rename
sp_offset to frame_off.  Move world save code earlier.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186621 138bc75d-0d04-0410-961f-82ee72b054a4