aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-12-05i386.c (ix86_expand_builtin): Generate reg for readflags built-in when ↵Kirill Yukhin3-9/+19
optimizing. * config/i386/i386.c (ix86_expand_builtin): Generate reg for readflags built-in when optimizing. * config/i386/i386.md (*pushfl<mode>): Rename to ... (pushfl<mode>2): This. Fix iterator. (*popfl<mode>): Rename to ... (*popfl<mode>1): This. Fix iterator. From-SVN: r205707
2013-12-05c-common.c (c_sizeof_or_alignof_type): Move a declaration into ↵Marek Polacek2-2/+8
[ADJUST_FIELD_ALIGN]. 2013-12-05 Marek Polacek <polacek@redhat.com> c-family/ * c-common.c (c_sizeof_or_alignof_type): Move a declaration into [ADJUST_FIELD_ALIGN]. From-SVN: r205705
2013-12-05atomic_stack.c: New test.Max Ostapenko17-0/+557
2013-12-05 Max Ostapenko <m.ostapenko@partner.samsung.com> * c-c++-common/tsan/atomic_stack.c: New test. * c-c++-common/tsan/fd_pipe_race.c: New test. * c-c++-common/tsan/free_race.c: New test. * c-c++-common/tsan/mutexset1.c: New test. * c-c++-common/tsan/race_on_barrier.c: New test. * c-c++-common/tsan/sleep_sync.c: New test. * c-c++-common/tsan/thread_leak.c: New test. * c-c++-common/tsan/thread_leak1.c: New test. * c-c++-common/tsan/thread_leak2.c: New test. * c-c++-common/tsan/tiny_race.c: New test. * c-c++-common/tsan/tls_race.c: New test. * c-c++-common/tsan/write_in_reader_lock.c: New test. * lib/tsan-dg.exp: New file. * gcc.dg/tsan/tsan.exp: New file. * g++.dg/tsan/tsan.exp: New file. * g++.dg/dg.exp: Prune tsan subdirectory. From-SVN: r205704
2013-12-05i386.c (IX86_BUILTIN_READ_FLAGS): New.Kirill Yukhin7-0/+175
ChangeLog/ * config/i386/i386.c(IX86_BUILTIN_READ_FLAGS): New. (IX86_BUILTIN_WRITE_FLAGS): Ditto. (ix86_init_mmx_sse_builtins): Define __builtin_ia32_writeeflags_u32, __builtin_ia32_writeeflags_u64, __builtin_ia32_readeflags_u32, __builtin_ia32_readeflags_u64. (ix86_expand_builtin): Expand them. * config/i386/ia32intrin.h (__readeflags): New. (__writeeflags): Ditto. * gcc/config/i386/i386.md (*pushfl<mode>): Ditto. (*popfl<mode>1): Ditto. testsuite/ChangeLog/ * gcc.target/i386/readeflags-1.c: New. * gcc.target/i386/writeeflags-1.c: Ditto. From-SVN: r205703
2013-12-05re PR sanitizer/59369 (c-c++-common/asan/pr59063-[1,2].c fails on darwin)Yury Gribov3-2/+8
2013-12-05 Yury Gribov <y.gribov@samsung.com> PR sanitizer/59369 * c-c++-common/asan/pr59063-1.c: Disable on non-Linux platforms. * c-c++-common/asan/pr59063-2.c: Likewise. From-SVN: r205699
2013-12-05decl.c (duplicate_decls): Replace pairs of errors and permerrors with error ↵Paolo Carlini23-77/+112
+ inform (permerror + inform... /cp 2013-12-05 Paolo Carlini <paolo.carlini@oracle.com> * decl.c (duplicate_decls): Replace pairs of errors and permerrors with error + inform (permerror + inform, respectively). /testsuite 2013-12-05 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/cpp0x/constexpr-46336.C: Adjust expected messages. * g++.dg/cpp0x/defaulted2.C: Likewise. * g++.dg/cpp1y/auto-fn8.C: Likewise. * g++.dg/gomp/udr-3.C: Likewise. * g++.dg/lookup/extern-c-redecl5.C: Likewise. * g++.dg/lookup/linkage1.C: Likewise. * g++.dg/overload/new1.C: Likewise. * g++.dg/parse/friend5.C: Likewise. * g++.dg/parse/namespace-alias-1.C: Likewise. * g++.dg/parse/namespace10.C: Likewise. * g++.dg/parse/redef2.C: Likewise. * g++.dg/template/friend44.C: Likewise. * g++.old-deja/g++.brendan/crash42.C: Likewise. * g++.old-deja/g++.brendan/crash52.C: Likewise. * g++.old-deja/g++.brendan/crash55.C: Likewise. * g++.old-deja/g++.jason/overload21.C: Likewise. * g++.old-deja/g++.jason/overload5.C: Likewise. * g++.old-deja/g++.jason/redecl1.C: Likewise. * g++.old-deja/g++.law/arm8.C: Likewise. * g++.old-deja/g++.other/main1.C: Likewise. From-SVN: r205697
2013-12-05re PR tree-optimization/56787 (Vectorization fails because of CLOBBER ↵Richard Biener2-1/+7
statements) 2013-12-05 Richard Biener <rguenther@suse.de> PR tree-optimization/56787 * gcc.dg/vect/pr56787.c: Adjust to not require vector float division. From-SVN: r205696
2013-12-05libsanitizer merge from upstream r196090Kostya Serebryany2-1/+5
From-SVN: r205695
2013-12-05re PR tree-optimization/59374 (-ftree-slp-vectorize breaks unique_ptr's move ↵Richard Biener5-58/+82
constructor) 2013-12-05 Richard Biener <rguenther@suse.de> PR tree-optimization/59374 * tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependence): Commonize known and unknown dependence case fixing the allowed read-write dependence case and dropping code that should not matter. * gcc.dg/torture/pr59374-1.c: New testcase. * gcc.dg/torture/pr59374-2.c: Likewise. From-SVN: r205694
2013-12-05ia64.md (prologue_allocate_stack): Block auto- generation of predicated version.Kirill Yukhin5-2/+73
ChangeLog/ * config/ia64/ia64.md (prologue_allocate_stack): Block auto- generation of predicated version. (epilogue_deallocate_stack): Ditto. (prologue_allocate_stack_pr): Add explicit predicated version. (epilogue_deallocate_stack_pr): Ditto. * config/ia64/ia64.c (ia64_single_set): Use explicit versions. testsuite/ChangeLog/ * gcc.target/ia64/pr52731.c: New. From-SVN: r205692
2013-12-05* configure.ac (BUILD_CXXFLAGS) Don't use ALL_CXXFLAGS forAlan Modra3-10/+15
build != host. <recursive call for build != host>: Clear GMPINC. Don't bother saving CFLAGS. From-SVN: r205690
2013-12-04common.opt: Split up -fisolate-erroneous-paths into ↵Jeff Law12-35/+89
-fisolate-erroneous-paths-dereference... * common.opt: Split up -fisolate-erroneous-paths into -fisolate-erroneous-paths-dereference and -fisolate-erroneous-paths-attribute. * invoke.texi: Corresponding changes. * gimple.c (infer_nonnull_range): Add and use new arguments to control what kind of statements can be used to infer a non-null range. * gimple.h (infer_nonnull_range): Update prototype. * tree-vrp.c (infer_value_range): Corresponding changes. * opts.c (default_options_table): Update due to option split. * gimple-ssa-isolate-paths.c: Fix trailing whitespace. (find_implicit_erroneous_behaviour): Pass additional arguments to infer_nonnull_range. (find_explicit_erroneous_behaviour): Similarly. (gate_isolate_erroneous_paths): Check both of the new options. testsuite/ * gcc.dg/pr38984.c: Use -fno-isolate-erroneous-paths-dereference. * gcc.dg/tree-ssa/isolate-2.c: Explicitly turn on -fisolate-erroneous-paths-attribute. * gcc.dg/tree-ssa/isolate-4.c: Likewise. From-SVN: r205689
2013-12-05Daily bump.GCC Administrator1-1/+1
From-SVN: r205688
2013-12-04re PR c/52023 ([C11] _Alignof (double) yields wrong value on x86)Joseph Myers11-11/+109
PR c/52023 c-family: * c-common.c (c_sizeof_or_alignof_type): Add parameter min_alignof and check field alignment if set. * c-common.h (c_sizeof_or_alignof_type): Update prototype. (c_sizeof, c_alignof): Update calls to c_sizeof_or_alignof_type. c: * c-parser.c (c_parser_alignas_specifier): Use c_sizeof_or_alignof_type instead of c_alignof. (c_parser_alignof_expression): Likewise, with min_alignof parameter depending on alignof spelling used. cp: * typeck.c (cxx_sizeof_or_alignof_type): Update call to c_sizeof_or_alignof_type. objc: * objc-act.c (objc_synthesize_getter): Update calls to c_sizeof_or_alignof_type. testsuite: * gcc.dg/c11-align-6.c: New test. From-SVN: r205685
2013-12-04Implement -fsanitize=signed-integer-overflow.Marek Polacek27-28/+1063
From-SVN: r205684
2013-12-04* expr.c (expand_assignment): Update comments.Jeff Law2-4/+8
From-SVN: r205683
2013-12-04re PR ada/59382 (gnatmake is not able to compile libraries)Eric Botcazou2-0/+72
PR ada/59382 gnattools/ * configure.ac (target parameterization): Rewrite. * configure: Regenerate. gcc/ada/ * indepsw-darwin.adb: New file. From-SVN: r205681
2013-12-04re PR c/54113 (-Wmissing-prototypes produces false alarms for C99 inline ↵Marek Polacek4-1/+18
functions) PR c/54113 c/ * c-decl.c (start_function): Don't warn for missing prototype for inline functions. testsuite/ * gcc.dg/pr54113.c: New test. From-SVN: r205680
2013-12-04re PR debug/37132 (Debug: No DW_TAG_namelist emitted for NAMELISTS)Tobias Burnus10-4/+207
gcc/ 2013-12-04 Tobias Burnus <burnus@net-b.de> PR debug/37132 * lto-streamer.h (LTO_tags): Add LTO_namelist_decl_ref. * tree.def (NAMELIST_DECL): Add. * tree.h (NAMELIST_DECL_ASSOCIATED_DECL): New macro. * tree.c (initialize_tree_contains_struct): Add asserts for it. * dwarf2out.c (gen_namelist_decl): New function. (gen_decl_die, dwarf2out_decl): Call it. (dwarf2out_imported_module_or_decl_1): Handle NAMELIST_DECL. * lto-streamer-in.c (lto_input_tree_ref): Handle NAMELIST_DECL. (lto_input_tree_ref, lto_input_tree_1): Update lto_tag_check_range call. * lto-streamer-out.c (lto_output_tree_ref): Handle * NAMELIST_DECL. gcc/fortran 2013-12-04 Tobias Burnus <burnus@net-b.de> PR debug/37132 * trans-decl.c (generate_namelist_decl, create_module_nml_decl): New static functions. (gfc_generate_module_vars, generate_local_vars): Call them. (gfc_trans_use_stmts): Handle namelists for debug genertion. From-SVN: r205679
2013-12-04Update changed bit when constraint set changesXinliang David Li2-8/+28
From-SVN: r205677
2013-12-04* ChangeLog: Fix whitespace.Uros Bizjak1-49/+32
From-SVN: r205676
2013-12-04re PR c++/59268 ([c++11] ICE with constexpr in a virtual function)Jakub Jelinek4-0/+34
PR c++/59268 * pt.c (tsubst_copy_and_build): Handle POINTER_PLUS_EXPR. * g++.dg/cpp0x/constexpr-template6.C: New test. From-SVN: r205674
2013-12-04Put a breakpoint on __asan_report_error for ASANH.J. Lu4-0/+27
* configure.ac: Append gdbasan.in to .gdbinit if CFLAGS contains -fsanitize=address. * configure: Regenerated. * gdbasan.in: New file. From-SVN: r205669
2013-12-04decl.c (components_to_record): Add specific handling for fields with zero ↵Eric Botcazou4-0/+88
size and no representation clause. * gcc-interface/decl.c (components_to_record): Add specific handling for fields with zero size and no representation clause. From-SVN: r205665
2013-12-04re PR rtl-optimization/58726 (wrong code at -Os on x86_64-linux-gnu ↵Jakub Jelinek4-12/+50
(affecting trunk/4.7/4.6, but not 4.8)) PR rtl-optimization/58726 * combine.c (force_to_mode): Fix comment typo. Don't destructively modify x for ROTATE, ROTATERT and IF_THEN_ELSE. * gcc.c-torture/execute/pr58726.c: New test. From-SVN: r205664
2013-12-04re PR target/59163 (program compiled with g++ -O3 segfaults)Jakub Jelinek1-2/+2
PR target/59163 * config/i386/i386.c (ix86_legitimate_combined_insn): If for !TARGET_AVX there is misaligned MEM operand with vector mode and get_attr_ssememalign is 0, return false. (ix86_expand_special_args_builtin): Add get_pointer_alignment computed alignment and for non-temporal loads/stores also at least GET_MODE_ALIGNMENT as MEM_ALIGN. * config/i386/sse.md (<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>, <sse>_storeu<ssemodesuffix><avxsizesuffix>, <sse2_avx_avx512f>_loaddqu<mode><mask_name>, <sse2_avx_avx512f>_storedqu<mode>, <sse3>_lddqu<avxsizesuffix>, sse_vmrcpv4sf2, sse_vmrsqrtv4sf2, sse2_cvtdq2pd, sse_movhlps, sse_movlhps, sse_storehps, sse_loadhps, sse_loadlps, *vec_interleave_highv2df, *vec_interleave_lowv2df, *vec_extractv2df_1_sse, sse2_movsd, sse4_1_<code>v8qiv8hi2, sse4_1_<code>v4qiv4si2, sse4_1_<code>v4hiv4si2, sse4_1_<code>v2qiv2di2, sse4_1_<code>v2hiv2di2, sse4_1_<code>v2siv2di2, sse4_2_pcmpestr, *sse4_2_pcmpestr_unaligned, sse4_2_pcmpestri, sse4_2_pcmpestrm, sse4_2_pcmpestr_cconly, sse4_2_pcmpistr, *sse4_2_pcmpistr_unaligned, sse4_2_pcmpistri, sse4_2_pcmpistrm, sse4_2_pcmpistr_cconly): Add ssememalign attribute. * config/i386/i386.md (ssememalign): New define_attr. * g++.dg/torture/pr59163.C: New test. From-SVN: r205663
2013-12-04trans.c (Case_Statement_to_gnu): Do not push a binding level for each branch ↵Eric Botcazou2-6/+17
if... * gcc-interface/trans.c (Case_Statement_to_gnu): Do not push a binding level for each branch if this is a case expression in Ada 2012. (gnat_to_gnu) <case N_Expression_With_Actions>: Adjust comment. From-SVN: r205662
2013-12-04re PR target/59163 (program compiled with g++ -O3 segfaults)Jakub Jelinek6-4/+167
PR target/59163 * config/i386/i386.c (ix86_legitimate_combined_insn): If for !TARGET_AVX there is misaligned MEM operand with vector mode and get_attr_ssememalign is 0, return false. (ix86_expand_special_args_builtin): Add get_pointer_alignment computed alignment and for non-temporal loads/stores also at least GET_MODE_ALIGNMENT as MEM_ALIGN. * config/i386/sse.md (<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>, <sse>_storeu<ssemodesuffix><avxsizesuffix>, <sse2_avx_avx512f>_loaddqu<mode><mask_name>, <sse2_avx_avx512f>_storedqu<mode>, <sse3>_lddqu<avxsizesuffix>, sse_vmrcpv4sf2, sse_vmrsqrtv4sf2, sse2_cvtdq2pd, sse_movhlps, sse_movlhps, sse_storehps, sse_loadhps, sse_loadlps, *vec_interleave_highv2df, *vec_interleave_lowv2df, *vec_extractv2df_1_sse, sse2_movsd, sse4_1_<code>v8qiv8hi2, sse4_1_<code>v4qiv4si2, sse4_1_<code>v4hiv4si2, sse4_1_<code>v2qiv2di2, sse4_1_<code>v2hiv2di2, sse4_1_<code>v2siv2di2, sse4_2_pcmpestr, *sse4_2_pcmpestr_unaligned, sse4_2_pcmpestri, sse4_2_pcmpestrm, sse4_2_pcmpestr_cconly, sse4_2_pcmpistr, *sse4_2_pcmpistr_unaligned, sse4_2_pcmpistri, sse4_2_pcmpistrm, sse4_2_pcmpistr_cconly): Add ssememalign attribute. * config/i386/i386.md (ssememalign): New define_attr. * g++.dg/torture/pr59163.C: New test. Co-Authored-By: Uros Bizjak <ubizjak@gmail.com> From-SVN: r205661
2013-12-04re PR tree-optimization/59355 (ICE: SIGSEGV in ↵Jakub Jelinek5-3/+31
hash_table::find_slot_with_hash() with -fno-devirtualize) PR tree-optimization/59355 * ipa-devirt.c (gate_ipa_devirt): Return false if !flag_devirtualize. * opts.c (common_handle_option): Fix comment spelling. * g++.dg/ipa/pr59355.C: New test. From-SVN: r205656
2013-12-04gimple-ssa-strength-reduction.c: Include tree-affine.h.Yufeng Zhang5-11/+139
gcc/ * gimple-ssa-strength-reduction.c: Include tree-affine.h. (name_expansions): New static variable. (alt_base_map): Ditto. (get_alternative_base): New function. (find_basis_for_candidate): For CAND_REF, optionally call find_basis_for_base_expr with the returned value from get_alternative_base. (record_potential_basis): Add new parameter 'base' of type 'tree'; add an assertion of non-NULL base; use base to set node->base_expr. (alloc_cand_and_find_basis): Update; call record_potential_basis for CAND_REF with the returned value from get_alternative_base. (replace_refs): Dump details on the replacing. (execute_strength_reduction): Call pointer_map_create for alt_base_map; call free_affine_expand_cache with &name_expansions. gcc/testsuite/ * gcc.dg/tree-ssa/slsr-39.c: Update. * gcc.dg/tree-ssa/slsr-41.c: New test. From-SVN: r205655
2013-12-04Daily bump.GCC Administrator1-1/+1
From-SVN: r205651
2013-12-03ibm-ldouble.c (__gcc_qadd): Fix add of normal number and qNaN to not raise ↵Adhemerval Zanella2-0/+23
an inexact exception. libgcc/ChangeLog: 2013-12-03 Adhemerval Zanella <azanella@linux.vnet.ibm.com> * config/rs6000/ibm-ldouble.c (__gcc_qadd): Fix add of normal number and qNaN to not raise an inexact exception. gcc/testsuite/ChangeLog: 2013-12-03 Adhemerval Zanella <azanella@linux.vnet.ibm.com> * gcc.target/powerpc/pr57363.c: New test. From-SVN: r205645
2013-12-03re PR rtl-optimization/59020 (internal compiler error: in ↵Wei Mi7-49/+101
maybe_add_or_update_dep_1, at sched-deps.c:933) 2013-12-03 Wei Mi <wmi@google.com> PR rtl-optimization/59020 * sched-deps.c (try_group_insn): Move it from haifa-sched.c to here. (sched_analyze_insn): Call try_group_insn. (sched_analyze): Cleanup SCHED_GROUP_P before start the analysis. * haifa-sched.c (try_group_insn): Moved to sched-deps.c. (group_insns_for_macro_fusion): Removed. (sched_init): Remove calling group_insns_for_macro_fusion. 2013-12-03 Wei Mi <wmi@google.com> PR rtl-optimization/59020 * testsuite/gcc.dg/pr59020.c: New. * testsuite/gcc.dg/macro-fusion-1.c: New. * testsuite/gcc.dg/macro-fusion-2.c: New. From-SVN: r205644
2013-12-03htmintrin.h (_TEXASR_INSTRUCTION_FETCH_CONFLICT): Fix typo in macro name.Peter Bergner2-2/+8
* config/rs6000/htmintrin.h (_TEXASR_INSTRUCTION_FETCH_CONFLICT): Fix typo in macro name. (_TEXASRU_INSTRUCTION_FETCH_CONFLICT): Likewise. From-SVN: r205641
2013-12-03re PR sanitizer/59063 (ASAN: segfault in __interceptor_clock_gettime)Yury Gribov3-2/+11
PR sanitizer/59063 * lib/asan-dg.exp: Don't add anything to flags if libsanitizer has not been found. * lib/ubsan-dg.exp: Likewise. Append to flags also -B${gccpath}/libsanitizer/. From-SVN: r205639
2013-12-03costmodel-slp-34.c: Skip for little endian.Bill Schmidt2-0/+6
2013-12-03 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.dg/vect/costmodel/ppc/costmodel-slp-34.c: Skip for little endian. From-SVN: r205638
2013-12-03aarch64.c (aarch64_frame_pointer_required): Check LR_REGNUM.Vladimir Makarov2-2/+9
2013-12-03 Vladimir Makarov <vmakarov@redhat.com> * config/aarch64/aarch64.c (aarch64_frame_pointer_required): Check LR_REGNUM. (aarch64_can_eliminate): Don't check elimination source when frame_pointer_required is false. From-SVN: r205637
2013-12-03avr.c (avr_option_override): Warn if asked to generate position independent ↵Senthil Kumar Selvaraj3-1/+17
code. * config/avr/avr.c (avr_option_override): Warn if asked to generate position independent code. * config/avr/avr.h: Modify LINK_SPEC to reject -shared. From-SVN: r205633
2013-12-03Adjust destination address after gen_strsetH.J. Lu4-0/+43
gcc/ PR target/59363 * config/i386/i386.c (emit_memset): Adjust destination address after gen_strset. (expand_setmem_epilogue): Likewise. gcc/testsuite/ PR target/59363 * gcc.target/i386/pr59363.c: New file. From-SVN: r205630
2013-12-03re PR middle-end/56344 (ICE for program with very large structs returned by ↵Marek Polacek2-0/+15
value) PR middle-end/56344 * calls.c (expand_call): Disallow passing huge arguments by value. From-SVN: r205628
2013-12-03re PR c/59351 (ICE on empty compound literal with -pedantic)Marek Polacek4-1/+22
PR c/59351 c/ * c-decl.c (build_compound_literal): Allow compound literals with empty initial value. testsuite/ * gcc.dg/pr59351.c: New test. From-SVN: r205627
2013-12-03Fix some testcases for nds32 target and provide new nds32 target specific tests.Chung-Ju Wu20-8/+164
gcc/testsuite/ * gcc.dg/20020312-2.c: Add __nds32__ case. * gcc.dg/builtin-apply2.c: Skip for nds32*-*-*. * gcc.dg/sibcall-3.c: Expected fail for nds32*-*-*. * gcc.dg/sibcall-4.c: Expected fail for nds32*-*-*. * gcc.dg/stack-usage-1.c (SIZE): Define case for __nds32__. * gcc.dg/torture/pr37868.c: Skip for nds32*-*-*. * gcc.dg/torture/stackalign/builtin-apply-2.c: Skip for nds32*-*-*. * gcc.dg/tree-ssa/20040204-1.c: Expected fail for nds32*-*-*. * gcc.dg/tree-ssa/pr42585.c: Skip for nds32*-*-*. * gcc.dg/tree-ssa/sra-12.c: Skip for nds32*-*-*. * gcc.target/nds32: New nds32 specific directory and testcases. * lib/target-supports.exp (check_profiling_available): Check for nds32*-*-elf. From-SVN: r205625
2013-12-03re PR tree-optimization/59362 (Abort in fini_object_sizes)Jakub Jelinek4-6/+43
PR tree-optimization/59362 * tree-object-size.c (object_sizes): Change into array of vec<unsigned HOST_WIDE_INT>. (compute_builtin_object_size): Check computed bitmap for non-NULL instead of object_sizes. Call safe_grow on object_sizes vector if new SSA_NAMEs appeared. (init_object_sizes): Check computed bitmap for non-NULL. Call safe_grow on object_sizes elements instead of initializing it with XNEWVEC. (fini_object_sizes): Call release on object_sizes elements, don't set it to NULL. * gcc.c-torture/compile/pr59362.c: New test. From-SVN: r205623
2013-12-03re PR middle-end/59011 (ICE in make_decl_rtl, at varasm.c:1147)Jakub Jelinek4-4/+53
PR middle-end/59011 * gimplify.c (nonlocal_vla_vars): New variable. (gimplify_var_or_parm_decl): Put VAR_DECLs for VLAs into nonlocal_vla_vars chain. (gimplify_body): Call declare_vars on nonlocal_vla_vars chain if outer_bind has DECL_INITIAL (current_function_decl) block. * gcc.dg/pr59011.c: New test. From-SVN: r205621
2013-12-03re PR target/58864 (ICE in connect_traces, at dwarf2cfi.c:NNNN)Jakub Jelinek9-19/+95
PR target/58864 * dojump.c (save_pending_stack_adjust, restore_pending_stack_adjust): New functions. * expr.h (struct saved_pending_stack_adjust): New type. (save_pending_stack_adjust, restore_pending_stack_adjust): New prototypes. * optabs.c (emit_conditional_move): Call save_pending_stack_adjust and get_last_insn before do_pending_stack_adjust, call restore_pending_stack_adjust after delete_insns_since. * expr.c (expand_expr_real_2): Don't call do_pending_stack_adjust before calling emit_conditional_move. * expmed.c (expand_sdiv_pow2): Likewise. * calls.c (expand_call): Use {save,restore}_pending_stack_adjust. * g++.dg/opt/pr58864.C: New test. From-SVN: r205618
2013-12-02re PR tree-optimization/59322 (ICE with segfault on valid code at -O1, -O2, ↵Jeff Law4-20/+42
and -O3 on x86_64-linux-gnu) PR tree-optimization/59322 * tree-ssa-threadedge.c (create_edge_and_update_destination_phis): Remove code which copied jump threading paths. PR tree-optimization/59322 * gcc.c-torture/compile/pr59322.c: New test From-SVN: r205617
2013-12-03This patch fixes PR 58944Sriraman Tallam5-6/+205
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58944 ix86_valid_target_attribute_tree in config/i386/i386.c was refactored to not depend on global_options structure and to be able to use any gcc_options structure. One clean way to fix this is by having target_option_default_node save all the default target options which can be restored to any gcc_options structure. The root cause of the above bugs was that ix86_arch_string and ix86_tune_string was not saved in target_option_deault_node. This patch saves all the target options used in i386.opt which are either obtained from the command-line or set to some default. Testing: Patch tested for bootstrap on all default languages(also obj-c++ and ada) on x86_64 and regression testsuite checked for parity with RUNTESTFLAGS -m32 and m64. From-SVN: r205616
2013-12-03re PR c/58235 (Missing diagnostic on assignment to array in c89)Joseph Myers4-0/+39
PR c/58235 c: * c-typeck.c (build_modify_expr): Diagnose assignment to expression with array type. testsuite: * gcc.dg/c90-array-lval-8.c: New test. From-SVN: r205615
2013-12-03Daily bump.GCC Administrator1-1/+1
From-SVN: r205612
2013-12-02epiphany.h: Wrap rtl_opt_pass declarations in #ifndef IN_LIBGCC2 / #endif.Joern Rennecke2-0/+7
* config/epiphany/epiphany.h: Wrap rtl_opt_pass declarations in #ifndef IN_LIBGCC2 / #endif. From-SVN: r205609