Sebastian Pop
ab02cc4e2c
re PR middle-end/23410 (FAIL: gcc.c-torture/execute/950612-1.c execution, at -Os and -O3)
...
PR tree-optimization/23410
* tree-ssa-loop-niter.c (scev_probably_wraps_p): Check that the
sequence is not wrapping during the first step.
From-SVN: r103733
2005-09-01 15:09:41 +00:00
Jakub Jelinek
ac156e9176
re PR debug/7241 (DWARF encoding for "char" incorrect in gcc)
...
PR debug/7241
* dwarf2out.c (base_type_die): Compare char_type_node with
TYPE_MAIN_VARIANT (type), not type.
* gcc.dg/debug/dwarf2/dwarf-char1.c: New test.
* gcc.dg/debug/dwarf2/dwarf-char2.c: New test.
* gcc.dg/debug/dwarf2/dwarf-char3.c: New test.
* gcc.dg/debug/dwarf2/dwarf-die1.c: Fix a typo.
* gcc.dg/debug/dwarf2/dwarf-die2.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die3.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die5.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die6.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-die7.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf-uninit.c: Likewise.
* gcc.dg/debug/dwarf2/dwarf2-macro.c: Likewise.
From-SVN: r103727
2005-09-01 15:53:45 +02:00
Richard Guenther
355866de65
re PR tree-optimization/15366 ([3.4 only][unit-at-a-time] -fno-inline-functions is ignored for static functions)
...
2005-09-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/15366
* common.opt: Add -finline-functions-called-once.
Put -fearly-inlining in alphabetically ordered place.
* doc/invoke.texi: Document new option.
* ipa-inline.c (cgraph_decide_inlining): Honour
flag_inline_functions_called_once.
From-SVN: r103722
2005-09-01 08:54:40 +00:00
Jakub Jelinek
95c37cdb41
re PR rtl-optimization/23478 (Miscompilation due to reloading of a var that is also used in EH pad)
...
PR rtl-optimization/23478
* local-alloc.c (struct qty): Add n_throwing_calls_crossed field.
(alloc_qty): Initialize it.
(update_equiv_regs): Clear REG_N_THROWING_CALLS_CROSSED.
(combine_regs): Combine also n_throwing_calls_crossed fields.
(find_free_reg): Don't attempt to caller-save pseudos crossing
calls that might throw.
* global.c (struct allocno): Add throwing_calls_crossed field.
(global_alloc): Revert 2005-08-22 change. Initialize
throwing_calls_crossed.
(find_reg): Don't attempt to caller-save pseudos crossing calls that
might throw.
From-SVN: r103718
2005-09-01 07:29:03 +02:00
Alan Modra
1990cd7969
re PR target/23649 (gcc.dg/ppc-and-1.c failure due to not using rlwinm)
...
PR target/23649
* config/rs6000/predicates.md (mask_operand): Only handle rlwinm masks.
(mask64_operand): Reinstate code prior to 2005-06-11 change.
(mask64_2_operand): Reinstate code prior to 2004-11-11 change.
(and64_2_operand): Tweak to use predicate.
(and_operand): Adjust for mask_operand changes.
* config/rs6000/rs6000.c (num_insns_constant): Revert 2005-06-11.
(print_operand): Likewise.
(rs6000_rtx_costs): Pass mode to mask_operand and use mask64_operand.
(mask64_1or2_operand): Delete.
* rs6000/rs6000-protos.h (mask64_1or2_operand): Delete.
* config/rs6000/rs6000.h (EXTRA_CONSTRAINT <S>): Revert 2005-06-11.
(EXTRA_CONSTRAINT <T>): Pass operand mode to predicate.
(EXTRA_CONSTRAINT <t>): Disallow mask64_operand matches.
* config/rs6000/rs6000.md (andsi3_internal3 split): Revert 2005-06-11.
(rotldi3_internal4): Likewise.
(rotldi3_internal5, rotldi3_internal5 split): Likewise.
(rotldi3_internal6, rotldi3_internal6 split): Likewise.
(ashldi3_internal7): Likewise.
(ashldi3_internal8, ashldi3_internal8 split): Likewise.
(ashldi3_internal, ashldi3_internal9 split): Likewise.
(anddi3 split): Don't match mask64_operand.
(anddi3_internal2): Add rlwinm. Modify 't' splitter predicate.
(anddi3_internal3): Add rlwinm. Use and64_2_operand in non-cr0
splitter and match TARGET_64BIT not TARGET_POWERPC64. Modify
't' splitter predicate.
(movdi_internal64 + 2): Revert 2005-06-11 change.
From-SVN: r103716
2005-09-01 12:17:59 +09:30
DJ Delorie
e9555b1376
m32c.c (m32c_valid_pointer_mode): New.
...
* config/m32c/m32c.c (m32c_valid_pointer_mode): New.
(m32c_asm_integer): Add support for 32 bit pointers.
From-SVN: r103715
2005-08-31 21:52:26 -04:00
Richard Henderson
8476af981e
emit-rtl.c (set_mem_attributes_minus_bitpos): Look through component-like references for setting MEM_NOTRAP_P.
...
* emit-rtl.c (set_mem_attributes_minus_bitpos): Look through
component-like references for setting MEM_NOTRAP_P.
* config/i386/i386.c (ix86_setup_incoming_varargs): Set MEM_NOTRAP_P.
* config/alpha/alpha.c (alpha_setup_incoming_varargs): Likewise.
From-SVN: r103714
2005-08-31 18:41:30 -07:00
Richard Henderson
0fd662ee04
expr.c (expand_expr_real_1): Force subregs into a pseudo before applying gen_lowpart.
...
* expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Force subregs
into a pseudo before applying gen_lowpart.
From-SVN: r103712
2005-08-31 18:06:45 -07:00
Geoffrey Keating
960ac6e129
install.texi (Specific): Update cctools version required for full functionality.
...
* doc/install.texi (Specific): Update cctools version required
for full functionality.
* config/darwin.h (LINK_SPEC): Pass -mmacosx-version-min to the
linkers as -macosx_version_min.
From-SVN: r103702
2005-08-31 21:43:06 +00:00
J"orn Rennecke
4802062c16
re PR target/21255 (%R and %S are not safe to use from asms)
...
2005-08-31 J"orn Rennecke <joern.rennecke@st.com>
gcc:
PR target/21255
* sh.c (print_operand, %R and %S): Add handling of floating point
registers, memory, constants and invalid operands.
gcc/testsuite:
PR target/21255
* gcc.dg/pr21255-1.c: New test.
* gcc.dg/pr21255-2-mb.c: Likewise.
* gcc.dg/pr21255-2-ml.c: Likewise.
* gcc.dg/pr21255-3.c: Likewise.
* gcc.dg/pr21255-4.c: Likewise.
From-SVN: r103700
2005-08-31 20:51:17 +01:00
Daniel Berlin
d4feded787
ipa-pure-const.c: Change dump name.
...
2005-08-31 Daniel Berlin <dberlin@dberlin.org>
* ipa-pure-const.c: Change dump name.
From-SVN: r103692
2005-08-31 17:33:58 +00:00
Uros Bizjak
d16093fdff
re PR target/23570 (internal compiler error: in merge_assigned_reloads, at reload1.c:6091)
...
PR target/23570
* config/i386/sse.md (*sse_concatv2sf): Change operand 2 constraint
to "reg_or_0_operand".
(sse2_loadld): Change operand 1 constraint to "reg_or_0_operand".
From-SVN: r103690
2005-08-31 10:27:53 -07:00
Dale Johannesen
c9eb80971d
loop-iv.c (iv_number_of_iterations): Fix overflow check for loops that count down.
...
2005-08-31 Dale Johannesen <dalej@apple.com>
* loop-iv.c (iv_number_of_iterations): Fix overflow check for
loops that count down.
From-SVN: r103689
2005-08-31 17:25:36 +00:00
Richard Henderson
35210087ce
No, I had the number right the first time. Sigh.
...
From-SVN: r103684
2005-08-31 09:41:47 -07:00
Richard Henderson
e7fad296a1
Fix typo in pr number.
...
From-SVN: r103681
2005-08-31 09:29:13 -07:00
Richard Henderson
be0c514c74
re PR rtl-optimization/23601 (reload may drop non-call exception information)
...
PR rtl-opt/23601
* reload1.c (reload): Set MEM_NOTRAP_P in spill slots.
(fixup_eh_region_note): New.
(reload_as_needed): Call it.
(fixup_abnormal_edges): Allow all throwing insns to be deleted;
don't call find_many_sub_basic_blocks; call verify_flow_info.
* function.c (assign_stack_local_1): Set MEM_NOTRAP_P.
(keep_stack_depressed): Likewise.
(assign_stack_temp_for_type): Likewise; use adjust_address_nv.
From-SVN: r103680
2005-08-31 09:26:51 -07:00
Richard Henderson
5d3018cee7
i386.c (ix86_function_ok_for_sibcall): Fix test for fp return matching.
...
* config/i386/i386.c (ix86_function_ok_for_sibcall): Fix test for
fp return matching.
From-SVN: r103679
2005-08-31 09:16:31 -07:00
Fariborz Jahanian
dc38a61086
Fix ppc -m64 constant address expression expansion bug.
...
Oked by Richard Henderson.
From-SVN: r103676
2005-08-31 15:55:52 +00:00
Andrew Pinski
f471f0fcc7
Fix a couple of dates in the changelog
...
From-SVN: r103674
2005-08-31 06:48:39 -07:00
Richard Guenther
c525013985
re PR middle-end/23477 (default-initializing array new expression uses makes stack usage go way up)
...
2005-08-31 Richard Guenther <rguenther@suse.de>
PR middle-end/23477
* expr.c (all_zeros_p): New function.
(expand_expr_real_1): Handle the case of an all-zero
non-addressable constructor separately.
From-SVN: r103670
2005-08-31 11:20:38 +00:00
Adrian Straetling
ab17392846
builtins.c: (expand_builtin_strcpy...
...
2005-08-31 Adrian Straetling <straetling@de.ibm.com>
* builtins.c: (expand_builtin_strcpy, expand_builtin_strcat): Change
arguments, adjust all callers.
(expand_builtin_strcat): Rewrite to call strcpy instead of mempcpy.
From-SVN: r103661
2005-08-31 07:49:27 +00:00
Richard Henderson
fabaaf3678
re PR target/23630 (built-ins MMX regression)
...
PR target/23630
* expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Use gen_lowpart
whenever the mode sizes match.
From-SVN: r103660
2005-08-30 22:00:37 -07:00
Alan Modra
40b0345dda
calls.c (load_register_parameters): Fix comment typo.
...
* calls.c (load_register_parameters): Fix comment typo.
* expr.c (emit_push_insn): Comment formatting.
From-SVN: r103656
2005-08-31 13:03:23 +09:30
Ian Lance Taylor
c2e493dccc
x-cygwin (host-cygwin): Change dependency from hosthooks-def.h to $(HOSTHOOKS_DEF_H).
...
* config/i386/x-cygwin (host-cygwin): Change dependency from
hosthooks-def.h to $(HOSTHOOKS_DEF_H).
From-SVN: r103648
2005-08-30 21:26:36 +00:00
Geoffrey Keating
9fc5fa7b8b
[multiple changes]
...
2005-08-29 Geoffrey Keating <geoffk@apple.com>
* config/i386/i386.c (ix86_expand_vector_init_one_var): Don't modify
parts of 'vals'.
Index: testsuite/ChangeLog
2005-08-30 Geoffrey Keating <geoffk@apple.com>
* g++.dg/other/i386-1.C: New.
From-SVN: r103632
2005-08-30 07:32:39 +00:00
Andrew Pinski
57247f4b28
[multiple changes]
...
2005-08-18 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/23408
* ipa-inline.c (cgraph_decide_inlining_incrementally): Remove the
call to ggc_collect.
2005-08-28 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/23408
* gcc.dg/pr23408.c: New test.
From-SVN: r103612
2005-08-29 10:48:58 -07:00
Paolo Bonzini
3a6ebcdcee
re PR bootstrap/21268 (Bootstrap, configuration problem and insn-conditions.c)
...
2005-08-18 Paolo Bonzini <bonzini@gnu.org>
PR bootstrap/21268
* Makefile.in (ALL_CPPFLAGS): Include $(INCLUDES) at the
beginning. Remove $(INCLUDES) from all the rules, if following
$(ALL_CPPFLAGS) or $(BUILD_CPPFLAGS).
From-SVN: r103601
2005-08-29 13:52:32 +00:00
Jakub Jelinek
f28d3046d2
re PR middle-end/23484 (__builtin___memcpy_chk miscompilation)
...
PR middle-end/23484
* builtins.c (fold_builtin_memory_chk, fold_builtin_stxcpy_chk,
fold_builtin_strncpy_chk, fold_builtin_snprintf_chk): If len is
not constant, but maxlen is, don't set len to maxlen, rather
set maxlen to len if len is a constant.
* gcc.c-torture/execute/builtins/pr23484-chk.c: New test.
* gcc.c-torture/execute/builtins/pr23484-chk-lib.c: New file.
From-SVN: r103594
2005-08-29 10:40:48 +02:00
Zdenek Dvorak
37261a5c97
re PR tree-optimization/23475 (Frequences are not updated for empty loop removal)
...
PR tree-optimization/23475
* tree-ssa-loop-ivcanon.c (remove_empty_loop): Update frequencies
and counts.
From-SVN: r103593
2005-08-29 07:13:06 +00:00
Daniel Berlin
46c5394b31
re PR middle-end/22455 (ICE tree check: expected function_decl, have type_decl in fold_checksum_tree, at fold-const.c:10282)
...
2005-08-28 Daniel Berlin <dberlin@dberlin.org>
Fix PR middle-end/22455
* fold-const.c (fold_checksum_tree): Adjust for now-largest tree size.
Checksum only the parts of the tree that exist for the tree code.
From-SVN: r103586
2005-08-29 00:12:19 +00:00
Dale Johannesen
ea407814d0
i386.c (nocona_cost): Increase MOVE_RATIO.
...
2005-08-28 Dale Johannesen <dalej@apple.com>
* config/i386/i386.c (nocona_cost): Increase MOVE_RATIO.
From-SVN: r103585
2005-08-28 23:28:57 +00:00
Andrew Pinski
87e71ff43b
tree-vrp.c: Remove obsolete comment in front of vrp_initialize.
...
2005-08-28 Andrew Pinski <pinskia@physics.uc.edu>
* tree-vrp.c: Remove obsolete comment in front of vrp_initialize.
From-SVN: r103584
2005-08-28 14:08:28 -07:00
Richard Henderson
490272b474
stor-layout.c (finalize_type_size): Revert workaround from 08-26.
...
* stor-layout.c (finalize_type_size): Revert workaround from 08-26.
* tree.c (make_node_stat): Use BITS_PER_UNIT instead of alignment
of char_type_node.
From-SVN: r103583
2005-08-28 09:28:59 -07:00
Jakub Jelinek
a6017253cb
re PR ada/23593 (5 ACATS compiler SEGV c371002 c371003 c52008b
cc51004 cc51b03)
...
PR ada/23593
* builtins.c (get_memory_rtx): Don't strip nops
in between COMPONENT_REFs.
From-SVN: r103578
2005-08-28 13:01:31 +02:00
Andrew Pinski
412f898605
re PR middle-end/23463 (va-arg-22.c execution fails)
...
2005-08-27 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/23463
* gimplify.c (gimplify_modify_expr_rhs): Remove check for zero sized
types.
(gimplify_modify_expr): Check for zero sized types and gimplify the
rhs and lhs as statements.
2005-08-27 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/23463
* gcc.c-torture/execute/zero-struct-1.c: New test.
From-SVN: r103571
2005-08-27 14:37:53 -07:00
John David Anglin
147a8fb1ca
re PR target/23508 (FAIL: PR218)
...
PR libgcj/23508
* pa/linux-unwind.h (pa32_fallback_frame_state): Use r0 slot in frame
state for return address column of signal frames.
From-SVN: r103568
2005-08-27 18:36:46 +00:00
David Edelsohn
ec53fc93d0
re PR target/23539 (C & C++ compiler generating misaligned references regardless of compiler flags)
...
PR target/23539
* config/rs6000/rs6000.c (expand_block_clear): Use HImode when
bytes >= 2 not bytes == 2.
(expand_block_move): Same.
From-SVN: r103564
2005-08-27 11:44:26 -04:00
Richard Guenther
f013cadc88
re PR target/23575 (ICE: output_operand: unterminated assembly dialect alternative)
...
2005-08-27 Richard Guenther <rguenther@gcc.gnu.org>
PR target/23575
* config/i386/sse.md (sse2_movsd): Add missing closing
braces.
* gcc.target/i386/pr23575.c: New testcase.
From-SVN: r103559
2005-08-27 12:04:28 +00:00
Paul Brook
0cd6c85a31
genrecog.c (enum decision_type): Add DT_num_insns.
...
2005-08-27 Paul Brook <paul@codesourcery.com>
* genrecog.c (enum decision_type): Add DT_num_insns.
(struct decision_test): Add u.num_insns.
(add_to_sequence): Add DT_num_insns test.
(maybe_both_true_2, nodes_identical_1): Handle DT_num_insns.
(write_cond, debug_decision_2): Ditto.
(change_state): Assume peep2_next_insn never fails.
Remove "afterward" argument.
(write afterward, write_tree): Update to match.
* recog.c (peep2_current_count): New variable.
(peep2_next_insn): Check it.
(peephole2_optimize): Set peep2_current_count.
* recog.h (peep2_current_count): Declare.
From-SVN: r103553
2005-08-27 02:08:29 +00:00
Josh Conner
1b0d2d1789
re PR tree-optimization/23584 (ipa-pure-const pass ignores dereferencing a volatile pointer type)
...
PR middle-end/23584
* ipa-pure-const.c (check_tree): Check for volatile-ness
when considering a dereference.
From-SVN: r103546
2005-08-26 22:42:44 +00:00
Jakub Jelinek
24b7d7c318
* rtl.h (MEM_IN_STRUCT_P): Fix comment typo.
...
From-SVN: r103542
2005-08-27 00:05:57 +02:00
Jakub Jelinek
435bb2a125
re PR rtl-optimization/23561 (nonoverlapping_memrefs_p returns true even for overlapping memory references)
...
PR rtl-optimization/23561
* builtins.c (get_memory_rtx): Add LEN argument. If MEM_EXPR is
a COMPONENT_REF, remove all COMPONENT_REF from MEM_EXPR unless
at most LEN bytes long memory fits into the field.
(expand_builtin_memcpy, expand_builtin_mempcpy, expand_movstr,
expand_builtin_strncpy, expand_builtin_memset, expand_builtin_memcmp,
expand_builtin_strcmp, expand_builtin_strncmp): Adjust callers.
* gcc.c-torture/execute/20050826-1.c: New test.
From-SVN: r103541
2005-08-27 00:02:44 +02:00
Richard Henderson
52e772ba4b
re PR rtl-optimization/23560 (Strength-reduction breaking unsigned COMPARE)
...
PR rtl-opt/23560
* loop.c (biased_biv_may_wrap_p): New.
(maybe_eliminate_biv_1): Use it to suppress non-equality
comparison transformations. Delete disabled code.
From-SVN: r103539
2005-08-26 23:57:25 +02:00
Ian Lance Taylor
8f34bde689
combine.c (make_extraction): Avoid reference outside object.
...
2005-08-26 Ian Lance Taylor <ian@airs.com>
* combine.c (make_extraction): Avoid reference outside object.
From-SVN: r103537
2005-08-26 21:52:23 +00:00
J"orn Rennecke
d6cde48033
stor-layout.c (finalize_type_size): Restore behaviour for non-aggregate types to the status quo ante of the patch...
...
* stor-layout.c (finalize_type_size): Restore behaviour for
non-aggregate types to the status quo ante of the patch for
pr 23467. Document why it matters.
From-SVN: r103527
2005-08-26 18:17:05 +01:00
Jakub Jelinek
39627fed89
re PR c/23506 (Bad array access in DEF_GCC_BUILTIN)
...
PR c/23506
* c-common.c (c_common_nodes_and_builtins): Increase builtin_types
array by one element, initialize the BT_LAST element with NULL.
From-SVN: r103526
2005-08-26 18:26:50 +02:00
David Edelsohn
297abd0d40
rs6000.md (eq<mode>_compare): Only enable when optimizing for size.
...
* config/rs6000/rs6000.md (eq<mode>_compare): Only enable when
optimizing for size.
(plus_eqsi): Same.
(compare_plus_eqsi): Same.
(plus_eqsi_compare): Same.
(neg_eq0<mode>): Same.
(neg_eq<mode>): Same.
* config/rs6000/aix52.h (PROCESSOR_DEFAULT): Change to
PROCESSOR_POWER4.
From-SVN: r103522
2005-08-26 10:24:20 -04:00
Nick Clifton
2ec6cd51b6
v850.c (ep_memory_operand): Return FALSE if TARGET_EP is not defined.
...
* config/v850/v850.c (ep_memory_operand): Return FALSE if TARGET_EP is not
defined.
* config/v850/c850.h (TARGET_CPU_CPP_BUILTINS): Define __EP__ if TARGET_EP is
enabled.
(OPTIMIZATION_OPTIONS): Do not define MASK_EP when optimizing.
* config/v850/v850.md (save_all_interrupt): Only use the EP register if
TARGET_EP is defined.
(restore_all_interrupt): Likewise.
* config/v850/lib1funcs.asm: Update functions so that the EP register is only
used if __EP__ is defined.
From-SVN: r103520
2005-08-26 13:45:42 +00:00
David Ung
e296c00c32
mips.c (mips_expand_prologue): Handle case when generating for MIPS16 and the outgoing argument area is more...
...
* config/mips/mips.c (mips_expand_prologue): Handle case when
generating for MIPS16 and the outgoing argument area is more than
SMALL_OPERAND. Use the frame pointer as temporary to generate the
add instruction.
From-SVN: r103519
2005-08-26 13:15:14 +00:00
Paul Woegerer
55d61dbacc
crx.md: Make doloop_end pattern usage controllable via mloop-nesting=<max-nesting>...
...
* config/crx/crx.md: Make doloop_end pattern usage controllable
via mloop-nesting=<max-nesting> command line switch. Make sure
the combiner cannot use doloop_end_<mode> in an illegal way.
* config/crx/crx.c: Use regs up to r6 for argument passing.
Refine crx_address_cost (non cst4 displacements are expensive).
* config/crx/crx.opt: Add switch for mloop-nesting=.
From-SVN: r103518
2005-08-26 08:20:55 +00:00