Steven Bosscher [Thu, 7 Jan 2010 11:49:25 +0000 (11:49 +0000)]
gcse.c (execute_rtl_cprop, [...]): Do not add the DF_NOTE problem.
* gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
Do not add the DF_NOTE problem.
* store-motion.c (execute_rtl_store_motion): Likewise.
Martin Jambor [Thu, 7 Jan 2010 10:38:25 +0000 (11:38 +0100)]
re PR tree-optimization/42157 (ICE building stage 1 libgcc: SEGV in compare_access_positions)
2010-01-07 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42157
* tree-sra.c (compare_access_positions): Stabilize sort if both
accesses have integer types, return zero immediately if they are the
same.
Paolo Carlini [Thu, 7 Jan 2010 00:22:51 +0000 (00:22 +0000)]
re PR libstdc++/26701 (std::time_get parses only 2 digits of year, in en_GB locale.)
2010-01-06 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/26701
* include/bits/locale_facets_nonio.tcc (time_get<>::_M_extract_num):
Encode short two digits over four parsings to negative numbers.
(time_get<>::_M_extract_via_format): Adjust, accept both two digits
and four digits for both 'y' and 'Y'.
(time_get<>::do_get_year): Call time_get<>::_M_extract_num.
* doc/xml/manual/prerequisites.xml: Add en_GB.
* testsuite/lib/libstdc++.exp: Adjust
* testsuite/22_locale/time_get/get_date/char/26701.cc: New.
* testsuite/22_locale/time_get/get_date/wchar_t/26701.cc: Likewise.
Benjamin Kosnik [Wed, 6 Jan 2010 22:55:52 +0000 (22:55 +0000)]
re PR libstdc++/42491 (performance/30_threads/future/polling.cc fails at compile time)
2010-01-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/42491
* scripts/check_performance (CXX): Add -std=gnu++0x.
* testsuite/performance/30_threads/future/polling.cc: Mark up as
using threads.
Nick Clifton [Wed, 6 Jan 2010 17:37:31 +0000 (17:37 +0000)]
rx.h (enum rx_cpu_type): Add RX200.
* config/rx/rx.h (enum rx_cpu_type): Add RX200.
(CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
used together.
(OVERRIDE_OPTIONS): Delete.
(OPTIMIZATION_OPTIONS): Define.
(ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
* config/rx/rx.c (rx_handle_option): Issue an error message if
-mcpu=rx200 and -fpu are used together.
(rx_set_optimization_options): New function. Issue an error
message if an optimization attribute attempts to reset the FPU/
math optimization pairing.
* config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
* config/rx/rx.opt: Set the default to 32-bit doubles.
* config/rx/t-rx: Add multilibs for -nofpu option.
* doc/invoke.texi: Update documentation of RX options.
* tree-ssa-pre.c (name_to_id): New global.
(alloc_expression_id): Simplify SSA name handling.
(lookup_expression_id): Likewise.
(init_pre): Zero name_to_id.
(fini_pre): Free it.
Eric Botcazou [Tue, 5 Jan 2010 22:29:18 +0000 (22:29 +0000)]
re PR target/42564 (unrecognizable insn with -O -fPIC)
PR target/42564
* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
(legitimize_tls_address): Likewise.
(sparc_tls_referenced_p): Likewise.
* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
and adjust calls to legitimize_pic_address.
(legitimate_constant_p) Use sparc_tls_referenced_p.
(legitimate_pic_operand_p): Likewise.
(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
(sparc_tls_symbol_ref_1): Delete.
(sparc_tls_referenced_p): Make static, recognize specific patterns.
(legitimize_tls_address): Make static, handle CONST patterns.
(legitimize_pic_address): Make static, remove unused parameter and
adjust recursive calls.
(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
and adjust call to legitimize_pic_address.
(sparc_output_mi_thunk): Likewise.
H.J. Lu [Tue, 5 Jan 2010 20:44:14 +0000 (12:44 -0800)]
Properly convert GTU to GT for V4SI and V2DI
gcc/
2010-01-05 Paolo Bonzini <bonzinI@gnu.rg>
H.J. Lu <hongjiu.lu@intel.com>
PR target/42542
* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
operands to make them signed.
* config/i386/sse.md (umaxv4si3): Revert the last change.
(umin<mode>3): Likewise.
(uminv8hi3): Removed.
(uminv4si3): Likewise.
gcc/testsuite/
2010-01-05 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/pr42542-1.c (res): Make it 8 elements.
Martin Jambor [Tue, 5 Jan 2010 19:42:32 +0000 (20:42 +0100)]
re PR tree-optimization/42462 (wrong-code with computed-goto)
2010-01-05 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42462
* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
current_function_decl to helper functions and macros.
* gcc/testsuite/g++.dg/torture/pr42462.C: New test.
Nick Clifton [Tue, 5 Jan 2010 15:43:43 +0000 (15:43 +0000)]
rx.c (rx_get_stack_layout): Fix allocation of second register to push into the stack frame when...
* config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
register to push into the stack frame when the accumulator has to
be saved during interrupts.
Eric Fisher [Tue, 5 Jan 2010 12:30:30 +0000 (12:30 +0000)]
invoke.texi: Remove the documentation about option -Wunreachable-code.
2010-01-05 Eric Fisher <joefoxreal@gmail.com>
* doc/invoke.texi: Remove the documentation about option
-Wunreachable-code.
* common.opt (Wunreachable-code): Preserved for backward
compatibility.
* tree-cfg.c: Remove the implementation of -Wunreachable-code.
* opts.c (common_handle_option): Add OPT_Wunreachable_code to
the backward compatibility flag section.
Jakub Jelinek [Tue, 5 Jan 2010 08:40:50 +0000 (09:40 +0100)]
re PR tree-optimization/42508 (wrong code with "-O1 -fipa-sra")
PR tree-optimization/42508
* tree-sra.c (convert_callers): Check for recursive call
by comparing cgraph nodes instead of decls.
(modify_function): Call ipa_modify_formal_parameters also
on all same_body aliases.
* g++.dg/opt/pr42508.C: New test.
* cgraphunit.c (cgraph_materialize_all_clones): Compare
cgraph nodes when checking for same_body aliases.
tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate a new entry only if needed.
2010-01-04 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
a new entry only if needed.
* tree-ssa-dom.c (lookup_avail_expr): Likewise.
* tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
hashtable lookup.
* tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
the result array.
(phi_translate): Handle CONSTANTs early.
Martin Jambor [Mon, 4 Jan 2010 18:25:14 +0000 (19:25 +0100)]
re PR tree-optimization/42398 (internal compiler error: in sra_modify_expr, at tree-sra.c:2175)
2010-01-04 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42398
* tree-sra.c (struct access): Removed flag grp_different_types.
(dump_access): Do not dump the removed flag.
(sort_and_splice_var_accesses): Do not set the removed flag.
(sra_modify_expr): Check for type compatibility directly.
* testsuite/gcc.c-torture/compile/pr42398.c: New test.
Martin Jambor [Mon, 4 Jan 2010 18:18:54 +0000 (19:18 +0100)]
re PR tree-optimization/42366 (ICE in ipa_write_node_info, at ipa-prop.c:2023)
2010-01-04 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42366
* ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
edges with variable number of parameters.
* ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
flag instead of asserting it.
(ipa_read_node_info): Read uses_analysis_done flag.
Jakub Jelinek [Mon, 4 Jan 2010 16:02:41 +0000 (17:02 +0100)]
re PR driver/42442 (-march=native doesn't apply to multiple files)
PR driver/42442
* gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
(do_self_spec): For switches with SWITCH_IGNORE set set also
SWITCH_IGNORE_PERMANENTLY.
(check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
of SWITCH_IGNORE.
Tobias Burnus [Mon, 4 Jan 2010 07:30:49 +0000 (08:30 +0100)]
re PR fortran/41872 (wrong-code: Issues with allocatable scalars)
2009-01-04 Tobias Burnus <burnus@net-b.de>
PR fortran/41872
* trans-expr.c (gfc_conv_procedure_call): Add indirect ref
for functions returning allocatable scalars.
* trans-stmt.c (gfc_trans_allocate): Emmit error when
reallocating an allocatable scalar.
* trans.c (gfc_allocate_with_status): Fix pseudocode syntax
in comment.
* trans-decl.c (gfc_trans_deferred_vars): Nullify local
allocatable scalars.
(gfc_generate_function_code): Nullify result variable for
allocatable scalars.
PR fortran/40849
* module.c (gfc_use_module): Fix warning string to allow
for translation.
PR fortran/42517
* invoke.texi (-fcheck=recursion): Mention that the checking
is also disabled for -frecursive.
* trans-decl.c (gfc_generate_function_code): Disable
-fcheck=recursion when -frecursive is used.
Paolo Carlini [Sun, 3 Jan 2010 20:30:28 +0000 (20:30 +0000)]
set.h: Implement DR 130 here too.
2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/set.h: Implement DR 130 here too.
* include/debug/multiset.h: Likewise.
* include/debug/map.h: Likewise.
* include/debug/multimap.h: Likewise.
* include/profile/set.h: Implement DR 130 fully.
* include/profile/multiset.h: Likewise.
* include/profile/map.h: Likewise.
* include/profile/multimap.h: Likewise.
* include/debug/list: Implement DR 1133 here too.
* include/ext/pb_ds/detail/debug_map_base.hpp: Comment out for
now uses of __gnu_cxx::throw_allocator.
* testsuite/21_strings/basic_string/40160.cc: Don't pass
explicitly -D_GLIBCXX_DEBUG, doesn't play well with profile-mode
testing.
Paolo Carlini [Sun, 3 Jan 2010 16:17:44 +0000 (16:17 +0000)]
bitset (bitset<>::bitset(unsigned long long)): Add in C++0x mode.
2010-01-03 Paolo Carlini <paolo.carlini@oracle.com>
* include/profile/bitset (bitset<>::bitset(unsigned long long)): Add
in C++0x mode.
* include/debug/bitset (bitset<>::bitset(unsigned long long)):
Likewise.
re PR tree-optimization/42438 (Fix for PR38819 is too conservative)
2010-01-03 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42438
* tree-ssa-pre.c (struct bb_bitmap_sets): Add
contains_may_not_return_call flag.
(BB_MAY_NOTRETURN): New.
(valid_in_sets): Trapping nary operations are not valid
in blocks that may not return.
(insert_into_preds_of_block): Remove check for trapping
expressions.
(compute_avail): Compute also BB_MAY_NOTRETURN.
re PR middle-end/42577 (array bounds false positive with -O3, goes away with -O2)
2010-01-02 Richard Guenther <rguenther@suse.de>
PR middle-end/42577
* tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
(simplify_switch_using_ranges): Mark to be removed edges
as non-executable.