Age | Commit message (Collapse) | Author | Files | Lines |
|
doesn't compile in return statement)
PR c++/63437
* cp-tree.h (REF_PARENTHESIZED_P): Also allow INDIRECT_REF.
* semantics.c (force_paren_expr): And set it.
* typeck.c (check_return_expr): And handle it.
From-SVN: r216042
|
|
This fixes fallout from r216010, which causes Firefox build failures.
Just move the gcc_assert below the new if statement.
From-SVN: r216041
|
|
2014-10-09 Marc Glisse <marc.glisse@inria.fr>
gcc/cp/
* decl.c (grokdeclarator): constexpr only implies const in C++11.
gcc/testsuite/
* g++.dg/cpp0x/constexpr-52892-1.C: Error on missing const in C++14.
* g++.dg/cpp0x/constexpr-array-ptr7.C: Likewise.
* g++.dg/cpp0x/constexpr-diag1.C: Add const.
* g++.dg/cpp0x/constexpr-diag3.C: Likewise.
* g++.dg/cpp0x/constexpr-ex1.C: Likewise.
* g++.dg/cpp0x/constexpr-ex2.C: Likewise.
* g++.dg/cpp0x/constexpr-ex4.C: Likewise.
* g++.dg/cpp0x/constexpr-initlist.C: Likewise.
* g++.dg/cpp0x/constexpr-ptrmem.C: Likewise.
* g++.dg/cpp0x/constexpr-ptrsub.C: Likewise.
* g++.dg/cpp0x/constexpr-ref4.C: Likewise.
* g++.dg/cpp0x/constexpr-static6.C: Likewise.
From-SVN: r216039
|
|
2014-10-09 Richard Biener <rguenther@suse.de>
PR tree-optimization/63380
* tree-ssa-tail-merge.c (stmt_local_def): Exclude stmts that
may trap.
* gcc.dg/torture/pr63380-1.c: New testcase.
* gcc.dg/torture/pr63380-2.c: Likewise.
From-SVN: r216038
|
|
* f95-lang.c (gfc_init_builtin_functions): Add more floating-point
built-ins.
* mathbuiltins.def (OTHER_BUILTIN): Define built-ins for logb,
remainder, rint and signbit.
* trans-decl.c (save_fp_state, restore_fp_state): Move to
trans-intrinsic.c
(gfc_generate_function_code): Use new names for these two functions.
* trans-expr.c (gfc_conv_function_expr): Catch IEEE functions to
emit code from the front-end.
* trans-intrinsic.c (gfc_save_fp_state, gfc_restore_fp_state,
conv_ieee_function_args, conv_intrinsic_ieee_builtin,
conv_intrinsic_ieee_is_normal, conv_intrinsic_ieee_is_negative,
conv_intrinsic_ieee_logb_rint, conv_intrinsic_ieee_rem,
conv_intrinsic_ieee_next_after, conv_intrinsic_ieee_scalb,
conv_intrinsic_ieee_copy_sign, gfc_conv_ieee_arithmetic_function):
New functions.
* trans.h (gfc_conv_ieee_arithmetic_function,
gfc_save_fp_state, gfc_restore_fp_state): New prototypes.
* ieee/ieee_helper.c (ieee_is_finite_*, ieee_is_nan_*,
ieee_is_negative_*, ieee_is_normal_*, ieee_copy_sign_*,
ieee_unordered_*, ieee_logb_*, ieee_rint_*, ieee_scalb_*,
ieee_rem_*, ieee_next_after_*): Remove functions.
* gfortran.map (GFORTRAN_1.5): Remove corresponding symbols.
From-SVN: r216036
|
|
* config/avr/avr.opt (mmcu=): Change to have a string value.
(mn-flash=, mskip-bug, march=, mrmw): New options.
(HeaderInclude): New.
(mmcu=): Remove Var / Init clauses.
* config/avr/avr.h (DRIVER_SELF_SPECS): Translate -mmcu into a
-specs option.
(SYMBOL_FLAG_IO, SYMBOL_FLAG_ADDRESS): Define.
(ASM_OUTPUT_ALIGNED_BSS): Use avr_asm_asm_output_aligned_bss.
(SYMBOL_FLAG_IO_LOW): Define.
(avr_device_to_as, avr_device_to_ld): Don't declare.
(avr_device_to_data_start, avr_device_to_startfiles): Likewise.
(avr_device_to_devicelib, avr_device_to_sp8): Likewise.
(EXTRA_SPEC_FUNCTIONS): Don't define.
(ASM_SPEC): Translate -arch= option to -mmcu= option.
(LINK_SPEC): Translate -arch= option to -m= option.
Don't use device_to_ld / device_to_data_start.
(STARTFILE_SPEC): Now empty.
(ASM_SPEC): Add -%{mrelax: --mlink-relax}.
* config/avr/gen-avr-mmcu-specs.c: New file.
* config/avr/t-avr (gen-avr-mmcu-specs$(build_exeext)): New rule.
(s-device-specs): Likewise.
(GCC_PASSES): Add s-device-specs.
(install-driver): Depend on install-device-specs.
(install-device-specs): New rule.
* config/avr/avr.c (avr_option_override): Look up mcu arch by
avr_arch_index and provide fallback initialization for avr_n_flash.
(varasm.h): #include.
(avr_print_operand) <i>: Allow SYMBOL_REF with SYMBOL_FLAG_IO;
(avr_handle_addr_attribute, avr_eval_addr_attrib): New functions.
(avr_attribute_table): Add "io", "address" and "io_low".
(avr_asm_output_aligned_decl_common): Change type of decl to tree.
Add special handling for symbols with "io" and/or "address" attributes.
(avr_asm_asm_output_aligned_bss): New function.
(avr_encode_section_info): Set SYMBOL_FLAG_IO and SYMBOL_FLAG_ADDRESS
as appropriate. Handle io_low attribute.
(avr_out_sbxx_branch): Handle symbolic io addresses.
(avr_xload_libgcc_p, avr_nonconst_pointer_addrspace): Use
avr_n_flash instead of avr_current_device->n_flash.
(avr_pgm_check_var_decl, avr_insert_attributes): Likewise.
(avr_emit_movmemhi): Likewise.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): Likewise.
Use TARGET_RMW instead of avr_current_device->dev_attributes.
Don't define avr_current_device->macro (that's the specfile's job).
Use TARGET_SKIP_BUG instead of avr_current_device->errata_skip.
* config/avr/avr.c (avr_2word_insn_p): Likewise.
* config/avr/avr.md (*cpse.ne): Likewise.
(mov<mode>): Use avr_eval_addr_attrib.
(cbi): Change constraint for low_io_address_operand operand to "i".
(sbi, sbix_branch, sbix_branch_bit7, insv.io, insv.not.io): Likewise.
* config/avr/predicates.md (io_address_operand):
Allow SYMBOL_REF with SYMBOL_FLAG_IO.
(low_io_address_operand): Allow SYMBOL_REF with SYMBOL_FLAG_IO_LOW.
* config/avr/avr-protos.h (avr_asm_output_aligned_decl_common):
Update prototype.
(avr_eval_addr_attrib, avr_asm_asm_output_aligned_bss): Prototype.
* config/avr/genmultilib.awk: Use -march=.
Remove Multilib matches processing.
* config/avr/t-multilib, config/avr/avr-tables.opt: Regenerate.
* config/avr/avr-arch.h: Add double include guard.
(avr_mcu_t) <library_name>: Update comment.
* config/avr/driver-avr.c (avr_device_to_as): Delete.
(avr_device_to_ld, avr_device_to_data_start): Likewise.
(avr_device_to_startfiles, avr_device_to_devicelib): Likewise.
(avr_device_to_sp8): Likewise.
* config/avr/genopt.sh: Instead avr_mcu, emit an Enum for avr_arch.
* doc/extend.texi (io, address): Document new AVR variable attributes.
(io_low): Likewise.
From-SVN: r216034
|
|
From-SVN: r216033
|
|
intentionally empty initializers (or that should be a separate option))
PR c/63480
* c-typeck.c (pop_init_level): Don't warn about initializing
with { }.
* gcc.dg/pr63480.c: New test.
From-SVN: r216031
|
|
4.9.x, and 4.8.x))
2014-10-09 Richard Biener <rguenther@suse.de>
PR tree-optimization/61969
* tree-nrv.c (pass_nrv::execute): Properly test for automatic
variables.
From-SVN: r216029
|
|
of false positives)
2014-10-09 Richard Biener <rguenther@suse.de>
PR tree-optimization/63445
* tree-vrp.c (simplify_cond_using_ranges): Only warn about
overflow for non-equality compares.
* gcc.dg/Wstrict-overflow-26.c: New testcase.
From-SVN: r216028
|
|
links/info/bisect of commits included)
PR rtl-optimization/57003
* regcprop.c (copyprop_hardreg_forward_1): If ksvd.ignore_set_reg,
also check CALL_INSN_FUNCTION_USAGE for clobbers again after
killing regs_invalidated_by_call.
From-SVN: r216026
|
|
2014-10-07 Teresa Johnson <tejohnson@google.com>
PR bootstrap/63432.
* tree-ssa-threadupdate.c (estimated_freqs_path): New function.
(ssa_fix_duplicate_block_edges): Invoke it.
(mark_threaded_blocks): Make two passes to avoid ordering dependences.
From-SVN: r216024
|
|
From-SVN: r216023
|
|
SH4A)
gcc/
PR target/52941
* config/sh/sync.md (atomic_exchangesi_hard, atomic_exchange<mode>_hard,
atomic_fetch_<fetchop_name>si_hard,
atomic_fetch_<fetchop_name><mode>_hard, atomic_fetch_nandsi_hard,
atomic_fetch_nand<mode>_hard, atomic_<fetchop_name>_fetchsi_hard,
atomic_<fetchop_name>_fetch<mode>_hard, atomic_nand_fetchsi_hard,
atomic_nand_fetch<mode>_hard): Add missing set of T_REG.
From-SVN: r216018
|
|
* gcc.dg/vmx/3c-01a.c: Add default options from vmx.exp.
* gcc.dg/vmx/ops.c: Likewise.
* gcc.dg/vmx/ops-long-1.c: Likewise.
From-SVN: r216017
|
|
2014-10-08 Dominique d'Humieres <dominiq@lps.ens.fr>
* ChangeLog: Remove duplicated gfortran.dg.
* gfortran.dg/implicit_4.f90: Fix some dg-error.
From-SVN: r216016
|
|
2014-10-08 Rong Xu <xur@google.com>
* gcc/gcov-tool.c (profile_overlap): New driver function
to compute profile overlap.
(print_overlap_usage_message): New.
(overlap_usage): New.
(do_overlap): New.
(print_usage): Add calls to overlap function.
(main): Ditto.
* libgcc/libgcov-util.c (read_gcda_file): Fix format.
(find_match_gcov_info): Ditto.
(calculate_2_entries): New.
(compute_one_gcov): Ditto.
(gcov_info_count_all_cold): Ditto.
(gcov_info_count_all_zero): Ditto.
(extract_file_basename): Ditto.
(get_file_basename): Ditto.
(set_flag): Ditto.
(matched_gcov_info): Ditto.
(calculate_overlap): Ditto.
(gcov_profile_overlap): Ditto.
* libgcc/libgcov-driver.c (compute_summary): Make
it avavilable for external calls.
* gcc/doc/gcov-tool.texi: Add documentation.
From-SVN: r216015
|
|
PR c++/63405
* pt.c (tsubst_pack_expansion): Limit simple expansion to type packs.
From-SVN: r216013
|
|
wchar_t [3]>::type and const char_type [3])
PR c++/63485
* tree.c (build_cplus_array_type): Look for a type with no
typedef-name or attributes.
From-SVN: r216012
|
|
LINUX_DRIVER_SELF_SPECS
2014-10-08 Steve Ellcey <sellcey@mips.com>
* config/mips/mti-linux.h (DRIVER_SELF_SPECS): Change
LINUX64_DRIVER_SELF_SPECS to LINUX_DRIVER_SELF_SPECS
From-SVN: r216011
|
|
matching of MEM_REF.
* ipa-polymorphic-call.c (extr_type_from_vtbl_store): Do better
pattern matching of MEM_REF.
(check_stmt_for_type_change): Update.
From-SVN: r216010
|
|
2014-10-08 Steve Ellcey <sellcey@mips.com>
* config/mips/linux64.h: Remove.
* config/mips/gnu-user64.h: Remove.
* gcc.config (mips*-*-*): Remove references to linux64.h and
gnu-user64.h
* config/mips/gnu-user.h (GNU_USER_TARGET_LINK_SPEC): Replace
with modified version from gnu-user64.h.
(LINUX_DRIVER_SELF_SPECS): Update parts from gnu-user64.h.
(LOCAL_LABEL_PREFIX): Copy from gnu-user64.h.
* config/mips/linux.h (GNU_USER_LINK_EMULATION32): Copy from
linux64.h.
(GNU_USER_LINK_EMULATION64): Ditto.
(GNU_USER_LINK_EMULATIONN32): Ditto.
(GLIBC_DYNAMIC_LINKER32): Ditto.
(GLIBC_DYNAMIC_LINKER64): Ditto.
(GLIBC_DYNAMIC_LINKERN32): Ditto.
(UCLIBC_DYNAMIC_LINKER32): Ditto.
(UCLIBC_DYNAMIC_LINKER64): Ditto.
(UCLIBC_DYNAMIC_LINKERN32): Ditto.
(BIONIC_DYNAMIC_LINKERN32): Ditto.
(GNU_USER_DYNAMIC_LINKERN32): Ditto.
(GLIBC_DYNAMIC_LINKER): Delete.
(UCLIBC_DYNAMIC_LINKER): Delete.
From-SVN: r216008
|
|
* call.c (call_copy_ctor): New.
(build_over_call): Use it to avoid infinite recursion on invalid code.
From-SVN: r216005
|
|
* cfgexpand.c (expand_debug_expr) <TARGET_MEM_REF>:
Get address space from operand 0 (BASE).
Co-Authored-By: Richard Biener <rguenther@suse.de>
From-SVN: r216000
|
|
* gcc.dg/torture/stackalign/builtin-apply-4.c: Use
dg-additional-options.
From-SVN: r215999
|
|
testsuite/ChangeLog
* g++.dg/debug/dwarf2/deleted-member-function.C: Remove comment marker
prefix from scan-assembler-times.
From-SVN: r215997
|
|
From-SVN: r215991
|
|
From-SVN: r215990
|
|
with -m64 after r211089)
2014-10-07 Iain Sandoe <iain@codesourcery.com>
PR target/61387
* config/i386/i386.c (x86_output_mi_thunk): Fix darwin fallout.
From-SVN: r215983
|
|
From-SVN: r215982
|
|
* lib/target-supports.exp (check_effective_target_fd_truncate):
Include <string.h>.
From-SVN: r215981
|
|
* dwarf2out.c: Remove current_function_has_inlines.
(gen_subprogram_die): Same.
(gen_inlined_subroutine_die): Same.
From-SVN: r215980
|
|
appropriate header files)
PR c/59717
* c-decl.c (header_for_builtin_fn): New function.
(implicitly_declare): Suggest which header to include.
* gcc.dg/pr59717.c: New test.
From-SVN: r215979
|
|
* gcc.dg/guality/pr41616-1.c: Use -fgnu89-inline.
* gcc.dg/iftrap-1.c: Fix implicit declarations.
* gcc.target/powerpc/pr26350.c: Likewise.
* gcc.target/powerpc/altivec-consts.c: Likewise.
* gcc.target/powerpc/altivec-varargs-1.c: Likewise.
* gcc.target/powerpc/le-altivec-consts.c: Likewise.
* gcc.target/powerpc/ppc-vector-memcpy.c: Likewise.
* gcc.target/powerpc/ppc-vector-memset.c: Likewise.
* gcc.target/powerpc/pr47862.c: Likewise.
* gcc.target/powerpc/pr48053-1.c: Likewise.
* gcc.target/powerpc/pr53487.c: Likewise.
* gcc.dg/vect/pr48765.c: Fix implicit declarations and defaulting
to int.
* gcc.target/powerpc/20050603-1.c: Fix defaulting to int.
* gcc.target/powerpc/altivec-2.c: Likewise.
* gcc.target/powerpc/pr47755-2.c: Likewise.
From-SVN: r215978
|
|
From-SVN: r215976
|
|
!GCC$ diagnostic (pragmas) and color)
gcc/fortran/ChangeLog:
2014-10-06 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR fortran/44054
PR fortran/54687
* gfortran.h (gfc_warning_cmdline): Add overload that takes an
option.
(gfc_error_cmdline): Declare.
* error.c (gfc_warning_cmdline): New overload that takes an option.
(gfc_error_cmdline): New.
* lang.opt (Wmissing-include-dirs): New.
* scanner.c (add_path_to_list): Use the new functions.
(load_file): Likewise.
* options.c (gfc_init_options): Wmissing-include-dirs is enabled
by default in Fortran.
(gfc_handle_option): Accept automatically handled options.
From-SVN: r215974
|
|
2014-10-02 Ilya Tocar <ilya.tocar@intel.com>
* config/i386/adxintrin.h (_subborrow_u64): Use long long for param
type.
(_addcarry_u64): Ditto.
(_addcarryx_u64): Ditto.
From-SVN: r215970
|
|
From-SVN: r215969
|
|
* cgraph.h (cgraph_node::get_fun): Declare.
* cgraph.c (cgraph_node::get_fun): New method.
* ipa-inline.c (can_inline_edge_p): Use it.
From-SVN: r215968
|
|
* g++.dg/lto/pr63270.h: New test.
* g++.dg/lto/pr63270_0.C (int main): Implementation replaced with
include.
* g++.dg/lto/pr63270_2.C: New test.
From-SVN: r215967
|
|
-ftrapping-math.
* lto-opts.c (lto_write_options): Handle -fmath-errno, -fsigned-zeros
and -ftrapping-math.
* lto-wrapper.c (merge_and_complain): Likewise.
(run_gcc): Likewise.
From-SVN: r215966
|
|
* c-convert.c (convert): Use error_operand_p.
* c-typeck.c (require_complete_type): Likewise.
(really_atomic_lvalue): Likewise.
(digest_init): Likewise.
(handle_omp_array_sections_1): Likewise.
From-SVN: r215964
|
|
2014-10-06 Rong Xu <xur@google.com>
* gcc/params.def (PARAM_INDIR_CALL_TOPN_PROFILE): New param.
* gcc/tree-profile.c: (params.h): New include.
(init_ic_make_global_vars): Make __gcov_indirect_call_topn_callee
and __gcov_indirect_call_topn_counters for
indirect_call_topn_profile.
(gimple_init_edge_profiler): New decls for
__gcov_indirect_call_topn_profiler.
(gimple_gen_ic_profiler): Generate the correct profiler call.
(gimple_gen_ic_func_profiler): Fix format.
* gcc/value-prof.c (params.h): New include.
(dump_histogram_value): Hanlde indirect_call_topn counters.
(stream_in_histogram_value): Ditto.
(gimple_indirect_call_to_profile): Use indirect_call_topn
profile when PARAM_INDIR_CALL_TOPN_PROFILE is set.
(gimple_find_values_to_profile): Hanlde indirect_call_topn
counters.
* gcc/value-prof.h (enum hist_type): Histrogram type for
indirect_call_topn counters.
* gcc/profile.c (instrument_values): Instrument
indirect_call_topn counters.
From-SVN: r215963
|
|
2014-10-06 Rong Xu <xur@google.com>
* gcc/Makefile.in: Fix dependence.
* gcc/gcov-counter.def (GCOV_COUNTER_ICALL_TOPNV): Add
indirect call topn profiler.
* gcc/gcov-io.h: Ditto.
* libgcc/Makefile.in: Ditto.
* libgcc/libgcov-driver.c (gcov_sort_n_vals): New utility function.
(gcov_sort_icall_topn_counter): Ditto.
(gcov_sort_topn_counter_arrays): Ditto.
(dump_one_gcov): Sort indirect_call topn counters.
* libgcc/libgcov-merge.c (__gcov_merge_icall_topn): New merge
function.
* libgcc/libgcov-profiler.c (__gcov_topn_value_profiler_body): New
utility function.
(__gcov_indirect_call_topn_profiler): New profiler function.
* libgcc/libgcov-util.c (__gcov_icall_topn_counter_op): New.
* libgcc/libgcov.h: New decls.
From-SVN: r215962
|
|
From-SVN: r215961
|
|
sufficiently aligned.
* calls.c (expand_call): Do not use the target as the return slot if
it is not sufficiently aligned.
From-SVN: r215958
|
|
gcc/c-family:
2014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
* c-family/c-cppbuiltin.c: Move __cpp_attribute_deprecated to the
C++11 section.
gcc/cp:
2014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
* cp/parser.c: Allow [[deprecated]] for C++11. Issue a pedwarn.
gcc/testsuite:
2014-10-06 Edward Smith-Rowland <3dw4rd@verizon.net>
* g++.dg/cpp1y/attr-deprecated-neg.C: Attribute no longer ignored.
* g++.dg/cpp1y/feat-cxx11-neg.C: Comment out __cpp_attribute_deprecated test.
* g++.dg/cpp1y/feat-cxx11.C: Add __cpp_attribute_deprecated test.
From-SVN: r215957
|
|
allowed, constexpr declarations are not)
/cp
2014-10-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/55250
* semantics.c (check_constexpr_bind_expr_vars): New.
(check_constexpr_ctor_body, massage_constexpr_body): Use it.
(build_constexpr_constructor_member_initializers): Handle
BIND_EXPR in the main conditional.
/testsuite
2014-10-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/55250
* g++.dg/cpp0x/constexpr-type-decl1.C: New.
* g++.dg/cpp0x/constexpr-type-def1.C: Likewise.
* g++.dg/cpp1y/constexpr-type-def1.C: Likewise.
From-SVN: r215954
|
|
don't handle them.
2014-10-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (analyze_swaps commentary): Add
discussion of permutes and why we don't handle them.
From-SVN: r215951
|
|
boehm-gc/
* testsuite/boehm-gc.c/gctest.c: Fix defaulting to int.
gcc/testsuite/
* c-c++-common/raw-string-3.c: Use -std=gnu89 for C.
* g++.dg/lto/pr54625-1_0.c: Fix defaulting to int.
* g++.dg/lto/pr54625-2_0.c: Likewise.
* gcc.misc-tests/gcov-14.c: Use -fgnu89-inline.
From-SVN: r215943
|