Age | Commit message (Collapse) | Author | Files | Lines |
|
* Makefile.in (GTFILES): Add context.h.
* context.c (gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
* context.h (gcc::context): Add GTY((user)) marking.
(gcc::context::operator new): New.
(gcc::context::gt_ggc_mx): New.
(gcc::context::gt_pch_nx): New.
(gcc::context::gt_pch_nx): New.
(g): Add GTY marking.
(gt_ggc_mx (gcc::context *)): New.
(gt_pch_nx (gcc::context *)): New.
(gt_pch_nx (gcc::context *ctxt, gt_pointer_operator op,
void *cookie)): New.
* gengtype.c (open_base_files) <ifiles>: Add context.h.
From-SVN: r201864
|
|
From-SVN: r201863
|
|
PR target/57865
* config/rs6000/rs6000.c (rs6000_emit_prologue): Correct ool_adjust.
(rs6000_emit_epilogue): Likewise.
From-SVN: r201860
|
|
2013-08-19 Dehao Chen (dehao@google.com)
* value-prof.c (gimple_ic): Fix the bug of adding EH edge.
From-SVN: r201859
|
|
2013-08-19 Dehao Chen <dehao@google.com>
* dwarf2.def (DW_AT_GNU_discriminator): New attribute.
From-SVN: r201855
|
|
gcc/
* builtins.def (BUILT_IN_FABSD32): New DFP ABS builtin.
(BUILT_IN_FABSD64): Likewise.
(BUILT_IN_FABSD128): Likewise.
* builtins.c (expand_builtin): Add support for new DFP ABS builtins.
(fold_builtin_1): Likewise.
* config/rs6000/dfp.md (*negtd2_fpr): Handle non-overlapping destination
and source operands.
(*abstd2_fpr): Likewise.
(*nabstd2_fpr): Likewise.
gcc/testsuite/
* gcc.target/powerpc/dfp-dd-2.c: New test.
* gcc.target/powerpc/dfp-td-2.c: Likewise.
* gcc.target/powerpc/dfp-td-3.c: Likewise.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r201849
|
|
gcc/testsuite/
* gcc.target/mips/mulsize-1.c: Check for SLL as well as SUBU.
* gcc.target/mips/mulsize-2.c: Check for ADDU rather than SUBU.
Check for SLL too.
From-SVN: r201848
|
|
gcc/
* config/mips/mips.c (mips_adjust_insn_length): Add checks for
JUMP_P and INSN_P.
From-SVN: r201847
|
|
* doc/invoke.texi (-fcilkplus): Clarify that implementation is
incomplete.
From-SVN: r201846
|
|
From-SVN: r201845
|
|
PR testsuite/52641
* gcc.dg/tree-ssa/pr31261.c [int16]: Change expected unsigned type.
* gcc.dg/tree-ssa/ssa-pre-21.c [! size32plus]: Mark as xfail.
* gcc.dg/tree-ssa/vector-4.c (SItype): New typedef.
(v4si): Use it.
* gcc.dg/tree-ssa/ssa-pre-30.c: Test requires int32.
* gcc.dg/tree-ssa/vrp58.c: Adjust scan expression for int16.
From-SVN: r201844
|
|
* gcc.dg/tree-ssa/vrp55.c: Use keeps_null_pointer_checks to determine
correct test response.
From-SVN: r201843
|
|
* gcc.dg/tree-ssa/ssa-dom-thread-4.c [avr-*-*]: Expect 6 times
"Threaded".
From-SVN: r201842
|
|
2013-08-19 Paolo Carlini <paolo.carlini@oracle.com>
* parser.c (cp_parser_lambda_introducer, cp_parser_decltype_expr):
Use cp_parser_lookup_name_simple.
2013-08-19 Paolo Carlini <paolo.carlini@oracle.com>
* name-lookup.h (pop_bindings_and_leave_scope): Declare.
* name-lookup.c (pop_bindings_and_leave_scope): Define.
* parser.c (cp_parser_lambda_declarator_opt,
cp_parser_direct_declarator, cp_parser_cache_defarg): Use it.
From-SVN: r201839
|
|
* target.def (TARGET_LIBC_HAS_FUNCTION): New target hook.
* builtins.c (default_libc_has_function): New.
(gnu_libc_has_function): Ditto.
(no_c99_libc_has_function): Ditto.
(expand_builtin_cexpi): Using new target hook TARGET_LIBC_HAS_FUNCTION
instead of TARGET_HAS_SINCOS and TARGET_C99_FUNCTIONS.
(fold_builtin_sincos): Likewise.
(fold_builtin_cexp): Likewise.
* builtins.def (DEF_C94_BUILTIN): Likewise.
(DEF_C99_BUILTIN): Likewise.
(DEF_C99_C90RES_BUILTIN): Likewise.
(DEF_C99_COMPL_BUILTIN): New define. Change all complex c99 builtin
definitions to using this define.
* config/darwin-protos.h (darwin_libc_has_function): New.
* config/darwin.c: (darwin_libc_has_function: Ditto.
* config/alpha/linux.h: Remove TARGET_C99_FUNCTIONS and
TARGET_HAS_SINCOS. Redefine TARGET_LIBC_HAS_FUNCTION.
* config/darwin.h: Ditto.
* config/elfos.h: Ditto.
* config/freebsd.h: Ditto.
* config/i386/cygming.h: Ditto.
* config/i386/djgpp.h: Ditto.
* config/i386/i386-interix.h: Ditto.
* config/microblaze/microblaze.h: Ditto.
* config/mmix/mmix.h: Ditto.
* config/gnu-user.h: Ditto.
* config/ia64/hpux.h: Ditto.
* config/pa/pa-hpux.h: Ditto.
* config/pdp11/pdp11.h: Ditto.
* config/picochip/picochip.h: Ditto.
* config/linux.h: Ditto.
* config/netbsd.h: Ditto.
* config/openbsd.h: Ditto.
* config/rs6000/aix43.h: Ditto.
* config/rs6000/aix51.h: Ditto.
* config/rs6000/aix52.h: Ditto.
* config/rs6000/aix53.h: Ditto.
* config/rs6000/aix61.h: Ditto.
* config/rs6000/darwin.h: Ditto.
* config/rs6000/linux.h: Ditto.
* config/rs6000/linux64.h: Ditto.
* config/s390/tpf.h: Ditto.
* config/sol2-10.h: Ditto.
* config/sol2.h: Ditto.
* config/vms/vms.h: Ditto.
* config/vxworks.h: Ditto.
* config/linux-android.c (linux_android_libc_has_function):
New linux-specific implementation of TARGET_LIBC_HAS_FUNCTION.
* config/linux-protos.h (linux_android_libc_has_function):
New declaration.
* config/i386/i386.c (ix86_libc_has_function): New.
* config/i386/i386-protos.h
(ix86_libc_has_function): New declaration.
* config/i386/i386.md
("isinfxf2"): Change condition for TARGET_LIBC_HAS_FUNCTION.
("isinf<mode>2): Likewise.
* convert.c (convert_to_integer): Using new target hook
TARGET_LIBC_HAS_FUNCTION istead of TARGET_HAS_SINCOS and
TARGET_C99_FUNCTIONS.
* fortran/f95-lang.c (gfc_init_builtin_functions): Ditto.
* tree-ssa-math-opts.c (execute_cse_sincos): Ditto.
* coretypes.h (function_class): New enum for different
classes of functions.
* defaults.h: Remove TARGET_C99_FUNCTIONS and TARGET_HAS_SINCOS.
* doc/tm.texi.in (TARGET_C99_FUNCTIONS): Remove documentation.
(TARGET_HAS_SINCOS): Likewise.
(TARGET_LIBC_HAS_FUNCTION): New.
* doc/tm.texi: Regenerated.
* targhooks.h (default_libc_has_function): New declaration.
(no_c99_libc_has_function): Ditto.
(gnu_libc_has_function): Ditto.
* system.h: Add the poisoning of TARGET_C99_FUNCTIONS
and TARGET_HAS_SINCOS.
From-SVN: r201838
|
|
From-SVN: r201837
|
|
* Makeifle-in (ipa-devirt.o): New.
(GTFILES): Add ipa-utils.h and ipa-devirt.c
* cgraphunit.c (decide_is_symbol_needed): Do not care about virtuals.
(analyze_functions): Look into possible targets of polymorphic call.
* dumpfile.c (dump_files): Add type-inheritance dump.
* dumpfile.h (TDI_inheritance): New.
* ipa-devirt.c: New file.
* ipa-utils.h (odr_type_d): Forward declare.
(odr_type): New type.
(build_type_inheritance_graph): Declare.
(possible_polymorphic_call_targets): Declare and introduce inline
variant when only edge is pased.
(dump_possible_polymorphic_call_targets): Likewise.
* timevar.def (TV_IPA_INHERITANCE, TV_IPA_VIRTUAL_CALL): New.
* tree.c (type_in_anonymous_namespace_p): Break out from ...
(types_same_for_odr): ... here.
* tree.h (type_in_anonymous_namespace_p): Declare.
* g++.dg/ipa/type-inheritance-1.C: New testcase.
From-SVN: r201836
|
|
2013-08-19 Janus Weil <janus@gcc.gnu.org>
PR fortran/46271
* openmp.c (resolve_omp_clauses): Bugfix for procedure pointers.
2013-08-19 Janus Weil <janus@gcc.gnu.org>
PR fortran/46271
* gfortran.dg/gomp/proc_ptr_1.f90: New.
From-SVN: r201835
|
|
From-SVN: r201832
|
|
x86_64-apple-darwin10)
libgcc:
PR gcov-profile/58127
* libgcov.c (__gcov_indirect_call_callee): Don't make this a
__thread var for emulated TLS.
(__gcov_indirect_call_counters): Likewise.
From-SVN: r201829
|
|
-ftree-parallelize-loops=2)
PR tree-optimization/58006
* tree-parloops.c (take_address_of): Don't ICE if get_name
returns NULL.
(eliminate_local_variables_stmt): Remove clobber stmts.
* g++.dg/opt/pr58006.C: New test.
From-SVN: r201827
|
|
message is issued for an alias to...
* cgraphunit.c (handle_alias_pairs): Reset the alias flag after the
error message is issued for an alias to undefined symbol.
From-SVN: r201826
|
|
2013-08-18 Tim Shen <timshen91@gmail.com>
* include/bits/regex_automaton.h: _S_opcode_backref.
* include/bits/regex_automaton.tcc: Backref automaton support.
* include/bits/regex_compiler.tcc: Parsing support.
* include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
* include/bits/regex_executor.tcc: Add _S_opcode_backref support.
* testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.
From-SVN: r201825
|
|
record basic info into indirect_info.
* cgraph.c (cgraph_create_indirect_edge): Discover
polymorphic calls and record basic info into indirect_info.
* gimple-fold.c (gimple_fold_call): When doing BINFO based
devirtualization, ignore objc function calls.
* ipa-cp.c (initialize_node_lattices): Be ready for polymorphic
call with no parm index info.
* ipa-prop.c (ipa_analyze_call_uses): Likewise.
* tree.c (virtual_method_call_p): New function.
* tree.h (virtual_method_call_p): Declare.
From-SVN: r201824
|
|
PR c++/58083
* name-lookup.c (push_class_level_binding_1): It's OK to push a
lambda type after the enclosing type is complete.
From-SVN: r201822
|
|
From-SVN: r201821
|
|
* error.c (dump_scope): Add a cxx_pretty_printer parameter.
Adjust callers.
(dump_template_argument): Likewise.
(dump_template_argument_list): Likewise.
(dump_template_parameter): Likewise.
(dump_template_bindings): Likewise.
(dump_alias_template_specialization): Likewise.
(dump_type): Likewise.
(dump_typename): Likewise.
(dump_aggr_type): Likewise.
(dump_type_prefix): Likewise.
(dump_type_suffix): Likewise.
(dump_global_iord): Likewise.
(dump_simple_decl): Likewise.
(dump_decl): Likewise.
(dump_template_decl): Likewise.
(dump_function_decl): Likewise.
(dump_parameters): Likewise.
(dump_ref_qualifier): Likewise.
(dump_exception_spec): Likewise.
(dump_function_name): Likewise.
(dump_template_parms): Likewise.
(dump_call_expr_args): Likewise.
(dump_aggr_init_expr_args): Likewise.
(dump_expr_list): Likewise.
(dump_expr_init_vec): Likewise.
(dump_expr): Likewise.
(dump_binary_op): Likewise.
(dump_unary_op): Likewise.
From-SVN: r201818
|
|
PR middle-end/58179
* tree.c (obj_type_ref_class): Do not ICE on non-method calls.
From-SVN: r201817
|
|
The panic in test/fixedbugs/bug454.go was caused by the generation of an unnecessary var reference when writing a range value into a sink. If the receiving variable is a sink, there's no need to dereference a possible NULL pointer.
Fixes Issue 24.
From-SVN: r201815
|
|
* config/rs6000/rs6000.md (rs6000_get_timebase_ppc32): Add length
attribute.
From-SVN: r201812
|
|
From-SVN: r201811
|
|
* config/mips/mips16.S (CE_STARTFN, CE_ENDFN): New macros.
(RET_FUNCTION): Use them in place of STARTFN and ENDFN.
(CALL_STUB_NO_RET): Likewise.
(CALL_STUB_RET): Likewise.
* config/mips/libgcc-mips16.ver: Remove __mips16_call_stub and
__mips16_ret call/return stub symbols.
* config.host <mips*-*-linux>: For non-R5900 add t-slibgcc-libgcc
to tmake_file.
Co-Authored-By: Catherine Moore <clm@codesourcery.com>
Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
From-SVN: r201805
|
|
gcc/
* gengtype.c (type_for_name): Add special-case support for
locating types within the "gcc::" namespace.
(open_base_files): Emit a "using namespace gcc" directive.
From-SVN: r201800
|
|
spec 2006)
2013-08-14 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/58160
* config/rs6000/predicates.md (fusion_gpr_mem_load): Allow the
memory rtx to contain ZERO_EXTEND and SIGN_EXTEND.
* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Pass operands
array instead of each individual operand as a separate argument.
(emit_fusion_gpr_load): Likewise.
(expand_fusion_gpr_load): Add new function declaration.
* config/rs6000/rs6000.c (fusion_gpr_load_p): Change the calling
signature to have the operands passed as an array, instead of as
separate arguments. Allow ZERO_EXTEND to be in the memory
address, and also SIGN_EXTEND if -mpower8-fusion-sign. Do not
depend on the register live/dead flags when peepholes are run.
(expand_fusion_gpr_load): New function to be called from the
peephole2 pass, to change the register that addis sets to be the
target register.
(emit_fusion_gpr_load): Change the calling signature to have the
operands passed as an array, instead of as separate arguments.
Allow ZERO_EXTEND to be in the memory address, and also
SIGN_EXTEND if -mpower8-fusion-sign.
* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): Delete unused
unspec enumeration.
(power8 fusion peephole/peephole2): Rework the fusion peepholes to
adjust the register addis loads up in the peephole2 pass. Do not
depend on the register live/dead state when the peephole pass is
done.
From-SVN: r201792
|
|
gcc/
* gengtype.c (create_user_defined_type): Ensure that the kind
is set to TYPE_USER_STRUCT, fixing a bug seen when an incomplete
declaration is seen before the GTY((user)) marking.
From-SVN: r201791
|
|
PR target/58105
* config/i386/i386.c (make_resolver_func): Set DECL_UNINLINABLE.
From-SVN: r201790
|
|
expected_type.
* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Add new
arugment expected_type.
(gimple_fold_call): Use it.
* gimple.h (gimple_extract_devirt_binfo_from_cst): Update prototype.
* ipa-cp.c (ipa_get_indirect_edge_target_1): Update.
* ipa-prop.c (ipa_analyze_virtual_call_uses): Use
obj_type_ref_class.
(try_make_edge_direct_virtual_call): Likewise.
* tree.c (obj_type_ref_class): New.
* tree.h (obj_type_ref_class): Use it.
From-SVN: r201789
|
|
* sched-vis.c (rtl_slim_pp_initialized): Remove.
(rtl_slim_pp): Likewise.
(init_rtl_slim_pretty_print): Likewise.
(dump_value_slim): Don't call it. Use local pretty printer.
(dump_insn_slim): Likewise.
(dump_rtl_slim): Likewise.
(str_pattern_slim): Likewise.
* tree-mudflap.c (mf_varname_tree): Use local pretty printer.
Simplify.
From-SVN: r201785
|
|
2013-08-16 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h (regex_traits<>::transform_primary):
Avoid past-the-end dereferences.
From-SVN: r201783
|
|
varasm.c:1147)
PR tree-optimization/58164
* gimple.c (walk_stmt_load_store_addr_ops): For visit_addr
walk gimple_goto_dest of GIMPLE_GOTO.
* gcc.c-torture/compile/pr58164.c: New test.
From-SVN: r201782
|
|
PR tree-optimization/58165
* tree-call-cdce.c (shrink_wrap_one_built_in_call): If
bi_call must be the last stmt in a bb, don't split_block, instead
use fallthru edge from it and give up if there is none.
Release conds vector when returning early.
* g++.dg/opt/pr58165.C: New test.
From-SVN: r201780
|
|
From-SVN: r201779
|
|
From-SVN: r201758
|
|
in C++11)
2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/58163
* include/bits/basic_string.h (basic_string<>::operator[]): Fix
_GLIBCXX_DEBUG_PEDASSERT check vs C++11.
* include/ext/vstring.h: Likewise.
* testsuite/21_strings/basic_string/element_access/char/58163.cc:
New.
* testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
Likewise.
* testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
* testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
From-SVN: r201755
|
|
/cp
2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51912
* cp-tree.h (LOOKUP_NO_NON_INTEGRAL): Add.
* decl.c (case_conversion): Use it.
* call.c (standard_conversion): Likewise.
(implicit_conversion): Adjust.
/testsuite
2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51912
* g++.dg/cpp0x/enum28.C: New.
* g++.dg/cpp0x/enum15.C: Adjust.
From-SVN: r201754
|
|
2013-08-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Revert:
2013-08-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* configure.tgt: Add -msoft-float to XCFLAGS.
From-SVN: r201753
|
|
From-SVN: r201752
|
|
vector extensions)
gcc:
2013-08-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/57949
* doc/invoke.texi: Add documentation of mcompat-align-parm
option.
* config/rs6000/rs6000.opt: Add mcompat-align-parm option.
* config/rs6000/rs6000.c (rs6000_function_arg_boundary): For AIX
and Linux, correct BLKmode alignment when 128-bit alignment is
required and compatibility flag is not set.
(rs6000_gimplify_va_arg): For AIX and Linux, honor specified
alignment for zero-size arguments when compatibility flag is not
set.
gcc/testsuite:
2013-08-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/57949
* gcc.target/powerpc/pr57949-1.c: New.
* gcc.target/powerpc/pr57949-2.c: New.
From-SVN: r201750
|
|
"lim1" related to loop optimizations)
PR tree-optimization/58145
* tree-sra.c (build_ref_for_offset): If prev_base has
TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS, propagate it to MEM_REF.
* gcc.dg/pr58145-1.c: New test.
* gcc.dg/pr58145-2.c: New test.
From-SVN: r201748
|
|
* gcc.dg/debug/dwarf2/global-used-types.c: Request dwarf output.
* gcc.dg/debug/dwarf2/inline2.c: Likewise.
* gcc.dg/debug/dwarf2/inline3.c: Likewise.
* gcc.dg/debug/dwarf2/pr37726.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-1.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-2.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-3.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-4.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-5.c: Likewise.
* gcc.dg/debug/dwarf2/pr41445-6.c: Likewise.
* gcc.dg/debug/dwarf2/pr41543.c: Likewise.
* gcc.dg/debug/dwarf2/pr41695.c: Likewise.
* gcc.dg/debug/dwarf2/pr43237.c: Likewise.
* gcc.dg/debug/dwarf2/pr47939-1.c: Likewise.
* gcc.dg/debug/dwarf2/pr47939-2.c: Likewise.
* gcc.dg/debug/dwarf2/pr47939-3.c: Likewise.
* gcc.dg/debug/dwarf2/pr47939-4.c: Likewise.
* gcc.dg/debug/dwarf2/pr53948.c: Likewise.
* gcc.dg/debug/dwarf2/struct-loc1.c: Likewise.
From-SVN: r201747
|