platform/upstream/linaro-gcc.git
19 years ago * config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Define.
drow [Wed, 11 May 2005 14:59:09 +0000 (14:59 +0000)]
* config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Define.
* config/arm/arm.h (SUBTARGET_FRAME_POINTER_REQUIRED): Provide
default definition.
(FRAME_POINTER_REQUIRED): Use SUBTARGET_FRAME_POINTER_REQUIRED.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99581 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agofortran/
tobi [Wed, 11 May 2005 14:52:51 +0000 (14:52 +0000)]
fortran/
* resolve.c (resolve_symbol): Copy 'pointer' and 'dimension'
attribute from result symbol to function symbol.
testsuite/
* gfortran.dg/func_result_2.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99580 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR bootstrap/21481
nathan [Wed, 11 May 2005 13:40:12 +0000 (13:40 +0000)]
PR bootstrap/21481
* crtstuff.c: Include auto-host.h again, for now.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99579 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/mips/24k.md: Remove trailing whitespace.
rsandifo [Wed, 11 May 2005 13:08:50 +0000 (13:08 +0000)]
* config/mips/24k.md: Remove trailing whitespace.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99578 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/mips/mips.md (type): Add imul3.
rsandifo [Wed, 11 May 2005 12:52:58 +0000 (12:52 +0000)]
* config/mips/mips.md (type): Add imul3.
(length, hazard, may_clobber_hilo): Check for imul3.
(mulsi3_mult3, muldi3_mult3, *muls, <su>mulsi3_highpart_mulhi_internal)
(*<su>mulsi3_highpart_neg_mulhi_internal): Set attr to imul3.
* config/mips/24k.md (r24k_int_mul3): Enable this reservation
for a 3 operand mul and its bypasses.
* config/mips/3000.md (r3k_imul): Add imul3 to reservations.
* config/mips/4000.md (r4k_imul): Likewise.
* config/mips/4100.md (r4100_imul_si, r4100_imul_di):  Likewise.
* config/mips/4130.md (vr4130_class, vr4130_mulsi)
(vr4130_muldi): Likewise.
* config/mips/4300.md (r4300_imul_si, r4300_imul_di): Likewise.
* config/mips/4600.md (r4600_imul, r4650_imul): Likewise.
* config/mips/5000.md (r5k_imul_si, r5k_imul_di): Likewise.
* config/mips/5400.md (ir_vr54_imul_si, ir_vr54_imul_di)
(ir_vr54_imadd_si): Likewise.
* config/mips/5500.md (ir_vr55_imul_si, ir_vr55_imul_di):  Likewise.
* config/mips/7000.md (rm7_impy_si_mult, rm7_impy_si_mul)
(rm7_impy_di): Likewise.
* config/mips/9000.md (rm9k_mulsi, rm9k_muldi):  Likewise.
* config/mips/generic.md (generic_imul): Likewise.
* config/mips/sb1.md (ir_sb1_mulsi, ir_sb1_muldi): Likewise.
* config/mips/sr71k.md (ir_sr70_imul_si, ir_sr70_imul_di):  Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99577 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR middle-end/20371:
amylaar [Wed, 11 May 2005 12:24:43 +0000 (12:24 +0000)]
PR middle-end/20371:
* tree.h (record_layout_info_s): New member prev_packed.
* stor-layout.c (update_alignment_for_field): Fix comment about
KNOWN_ALIGN.  For MS bitfields, if we start a new run, make sure
we start it properly aligned.
(place_field): At the beginning of a record, pass 0 as KNOWN_ALIGN
to update_alignment_for_field, and recompute it afterwards using
the alignment of the record.
When a packed bitfield precedes an MS bitfield, don't add padding
at the end of the packed bitfield on behalf of the base type of
the packed bit field.
Don't adjust rli->bitpos at the end
of an MS bitfield run if we already adjusted bitpos/offset for an
alignment as large or larger than the bitfield type size.
Take possible record alignment > BIGGEST_ALIGNMENT into account
when calculating actual_align.
Only put packed buit fields into rli->prev_field if they end up
suitably aligned.
Also set rli->remaining_in_alignment when we re-set rli->prev_field.
Update rli->remaining_in_alignment when we have already started a
run of bit fields and we process a packed bit field.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99574 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-data-ref.c (find_data_references_in_loop): Give up when
spop [Wed, 11 May 2005 11:03:31 +0000 (11:03 +0000)]
* tree-data-ref.c (find_data_references_in_loop): Give up when
the body of the loop contains a CALL_EXPR or an ASM_EXPR: they
may embed arbitrary side effects.
Remove the assumption that GIMPLE form contains a single array
access per statement.
When the statement contains virtual operands, fail if it is not
a MODIFY_EXPR or a CALL_EXPR.
Return after the dont know node is inserted.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99573 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR fortran/19478
fxcoudert [Wed, 11 May 2005 10:34:05 +0000 (10:34 +0000)]
PR fortran/19478
* io/unix.c (fd_truncate): update positions when ftruncate
fails (like writing to /dev/null).
* gfortran.dg/dev_null.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99570 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * arm.md (negsf2, negdf2): Permit these expands when compiling for VFP.
rearnsha [Wed, 11 May 2005 10:13:23 +0000 (10:13 +0000)]
* arm.md (negsf2, negdf2): Permit these expands when compiling for VFP.
* gcc.dg/arm-vfp1.c: Revert last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99569 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-11 Richard Guenther <rguenth@gcc.gnu.org>
rguenth [Wed, 11 May 2005 08:14:44 +0000 (08:14 +0000)]
2005-05-11  Richard Guenther  <rguenth@gcc.gnu.org>

PR middle-end/19807
PR tree-optimization/19639
* fold-const.c (try_move_mult_to_index): Handle INTEGER_CST
and generic summands for char* as s * delta, too, folding &a[i]
CODE x to &a[i CODE x/s].  Use tree_int_cst_equal
for comparison of steps.  Convert types for index addition.
(fold_binary): Adjust the callers to always dispatch to
try_move_mult_to_index.
* tree-ssa-propagate.c (set_rhs): Avoid setting rhs to
expr with non-gimple ARRAY_REF offset.

* g++.dg/tree-ssa/pr19807.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99568 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-11 Richard Guenther <rguenth@gcc.gnu.org>
rguenth [Wed, 11 May 2005 07:43:33 +0000 (07:43 +0000)]
2005-05-11  Richard Guenther  <rguenth@gcc.gnu.org>

* fold-const.c (fold_indirect_ref_1): Avoid removing
NOP_EXPRs with type qualifiers like const.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99566 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c/21502
rth [Wed, 11 May 2005 07:33:31 +0000 (07:33 +0000)]
    PR c/21502
        * c-decl.c (finish_decl): Propagate the completed array type of
        a global variable into the binding.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99563 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR libfortran/21471
fxcoudert [Wed, 11 May 2005 05:56:20 +0000 (05:56 +0000)]
PR libfortran/21471
* open.c (new_unit): Take care of the case where POSITION_APPEND
is specified (sseek to the end, and set u>-endfile).
* gfortran.dg/append-1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99560 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * Makefile.in (gtype-desc.o, build/genautomata.o)
kraai [Wed, 11 May 2005 05:01:34 +0000 (05:01 +0000)]
* Makefile.in (gtype-desc.o, build/genautomata.o)
(build/varray.o): Depend on $(VARRAY_H).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99559 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-optimize.c (init_tree_optimization_passes): Re-organize
dnovillo [Wed, 11 May 2005 02:24:44 +0000 (02:24 +0000)]
* tree-optimize.c (init_tree_optimization_passes): Re-organize
optimization passes to do an initial batch of scalar cleanups.

testsuite/ChangeLog

* gcc.dg/pr18501.c: XFAIL.
* gcc.dg/tree-ssa/loop-4.c: Fix expected pattern.
* gcc.dg/tree-ssa/pr20913.c: Change to link-time test.
* gcc.dg/tree-ssa/ssa-ccp-2.c: Change to a .optimized scan.
* gcc.dg/tree-ssa/ssa-ccp-7.c: Likewise.
* gcc.dg/tree-ssa/ssa-ccp-9.c: Likewise.
* gcc.dg/tree-ssa/ssa-dom-ccp-1.c: Likewise.
* gcc.dg/tree-ssa/ssa-pre-7.c: Change to a .fre scan.
* gcc.dg/tree-ssa/ssa-pre-8.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99558 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-11 Paul Brook <paul@codesourcery.com>
pbrook [Wed, 11 May 2005 01:39:32 +0000 (01:39 +0000)]
2005-05-11  Paul Brook  <paul@codesourcery.com>

* Makefile.in: Regenerate dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99556 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Wed, 11 May 2005 00:16:18 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99553 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * read-rtl.c (struct macro_traverse_data): Define.
ian [Tue, 10 May 2005 22:40:37 +0000 (22:40 +0000)]
* read-rtl.c (struct macro_traverse_data): Define.
(map_attr_string): New static function, broken out of
apply_macro_to_string.
(mode_attr_index, apply_mode_maps): New static functions.
(apply_macro_to_string): Call map_attr_string.
(apply_macro_to_rtx): Add mode_maps and infile parameters.  Change
all callers.
(apply_macro_traverse): Expect data to point to a struct
macro_traverse_data.
(read_rtx): Add mode_maps local variable.  Use mode_traverse_data
to pass data through htab_traverse.
(read_rtx_1): Add mode_maps parameter.  Change all callers.
Handle mode names which are attribute strings.
* doc/md.texi (Substitutions): Rename from String Substitutions.
Change references.  Document using attributes as modes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99548 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-cfg.c (tree_duplicate_sese_region): Update profile.
rakdver [Tue, 10 May 2005 22:33:30 +0000 (22:33 +0000)]
* tree-cfg.c (tree_duplicate_sese_region): Update profile.
* tree-optimize.c (init_tree_optimization_passes) Swap
pass_ch and pass_profile.
* tree-ssa-loop-ch.c (copy_loop_headers): Do not update profile
here.  Remove rewrite_into_loop_closed_ssa call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99547 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gfortran.dg/return_1.f90: Fix dg annotation.
tobi [Tue, 10 May 2005 22:32:38 +0000 (22:32 +0000)]
* gfortran.dg/return_1.f90: Fix dg annotation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99546 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoFix previous buggy checkin to invoke.texi.
tobi [Tue, 10 May 2005 22:12:04 +0000 (22:12 +0000)]
Fix previous buggy checkin to invoke.texi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99545 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agogcc/fortran/
tobi [Tue, 10 May 2005 22:06:55 +0000 (22:06 +0000)]
gcc/fortran/
PR fortran/20178
* gfortran.h (gfc_option): Add flag_f2c.
* invoke.texi: Document '-ff2c' command line option.  Adapt
documentation for '-fno-second-underscore' and '-fno-underscoring'.
* lang.opt (ff2c): New entry.
* options.c (gfc-init_options): Set default calling convention
to -fno-f2c.  Mark -fsecond-underscore unset.
(gfc_post_options): Set -fsecond-underscore if not explicitly set
by user.
(handle_options): Set gfc_option.flag_f2c according to requested
calling convention.
* trans-decl.c (gfc_get_extern_function_decl): Use special f2c
intrinsics where necessary.
(gfc_trans_deferred_vars): Change todo error to assertion.
* trans-expr.c (gfc_conv_variable): Dereference access
to hidden result argument.
(gfc_conv_function_call): Add hidden result argument to argument
list if f2c calling conventions requested.  Slightly restructure
tests.  Convert result of default REAL function to requested type
if f2c calling conventions are used.  Dereference COMPLEX result
if f2c cc are used.
* trans-types.c (gfc_sym_type):  Return double for default REAL
function if f2c cc are used.
(gfc_return_by_reference): Slightly restructure logic.  Return
COMPLEX by reference depending on calling conventions.
(gfc_get_function_type): Correctly make hidden result argument a
pass-by-reference argument for COMPLEX.  Remove old code which does
this for derived types.
libgfortran/
PR fortran/20178
* Makefile.am (gfor_specific_src): Add 'intrinsics/f2c_intrinsics.F90'
to dependencies.
* Makefile.in: Regenerate.
* intrinsics/f2c_specific.F90: New file.
gcc/testsuite/
PR fortran/20178
* gfortran.dg/f2c_1.f90, gfortran.dg/f2c_2.f90,
gfortran.dg/f2c_3.f90: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99544 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-10 Adrian Straetling <straetling@de.ibm.com>
uweigand [Tue, 10 May 2005 20:43:36 +0000 (20:43 +0000)]
2005-05-10  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (s390_const_double_ok_for_constraint_p): New
function.
(legitimate_reload_constant_p): Add check for const double zero.
* config/s390/s390.md: Add comment for constraint letter 'G'.
("*movdf_64", "*movdf_31", "movsf"): Add constraint and proper
attributes for new case.
* config/s390/s390.h: (CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Define it as
s390_const_double_ok_for_constraint_p.
* config/s390/s390-protos.h (s390_const_double_ok_for_constraint_p):
Add prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99541 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR tree-optimization/21170
kazu [Tue, 10 May 2005 20:21:28 +0000 (20:21 +0000)]
PR tree-optimization/21170
* tree-ssa-dom.c, tree-ssa-threadupdate.c: Replace
rewrite_ssa_into_ssa in comments with update_ssa.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99540 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-ssa-loop-im.c: Include hashtab.h.
rakdver [Tue, 10 May 2005 20:04:27 +0000 (20:04 +0000)]
* tree-ssa-loop-im.c: Include hashtab.h.
(struct mem_ref_loc): New.
(struct mem_ref): Describe the set of references with the same
shape.
(max_stmt_uid, get_stmt_uid, record_mem_ref, free_mem_refs,
maybe_queue_var, fem_single_reachable_address,
for_each_memref, single_reachable_address,
is_call_clobbered_ref, determine_lsm_reg): Removed.
(record_mem_ref_loc, free_mem_ref_locs, determine_lsm_ref,
hoist_memory_reference, memref_hash, memref_eq, memref_del,
gather_mem_refs_stmt, gather_mem_refs, find_more_ref_vops):
New functions.
(rewrite_mem_refs, schedule_sm): Use mem_ref_loc list.
(determine_lsm_loop): Rewritten.
(determine_lsm): Do not set stmt uids.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99539 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-10 Adrian Straetling <straetling@de.ibm.com>
uweigand [Tue, 10 May 2005 19:25:40 +0000 (19:25 +0000)]
2005-05-10  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: Add comment lines for 'f' and 't' constraint
letters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99538 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-10 Adrian Straetling <straetling@de.ibm.com>
uweigand [Tue, 10 May 2005 19:22:05 +0000 (19:22 +0000)]
2005-05-10  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("anddi3","andsi3","andhi3","andqi3"): Merge.
("iordi3", "iorsi3", "iorhi3", "iorqi3"): Merge.
("xordi3", "xorsi3", "xorhi3", "xorqi3"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99537 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-ssa-dom.c (dom_opt_finalize_block): Do not call
law [Tue, 10 May 2005 19:19:30 +0000 (19:19 +0000)]
* tree-ssa-dom.c (dom_opt_finalize_block): Do not call
thread_across_edge for any abnormal edges.

* gcc.c-torture/compile/20050510-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99536 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcj/javaprims.h: Updated.
tromey [Tue, 10 May 2005 18:28:31 +0000 (18:28 +0000)]
* gcj/javaprims.h: Updated.
* java/lang/String.java (String(StringBuilder)): New constructor.
* java/lang/natStringBuilder.cc: New file.
* java/lang/StringBuilder.java: New file.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added StringBuilder.java.
(nat_source_files): Added natStringBuilder.cc.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99535 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * include/debug/debug.h: Fix typo in macro name.
redi [Tue, 10 May 2005 17:30:36 +0000 (17:30 +0000)]
* include/debug/debug.h: Fix typo in macro name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99529 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcc.dg/arm-vfp1.c: Remove test for fnegs.
mmitchel [Tue, 10 May 2005 16:54:36 +0000 (16:54 +0000)]
* gcc.dg/arm-vfp1.c: Remove test for fnegs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99528 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/ia64/ia64.c (ia64_expand_atomic_op): New.
rth [Tue, 10 May 2005 16:37:36 +0000 (16:37 +0000)]
    * config/ia64/ia64.c (ia64_expand_atomic_op): New.
        * config/ia64/ia64-protos.h: Declare it.
        * config/ia64/sync.md (I124MODE, FETCHOP, fetchop_name): New.
        (sync_add<I48MODE>, sync_old_add<I48MODE>): Remove.
        (sync_<FETCHOP><IMODE>, sync_nand<IMODE>): New.
        (sync_old_<FETCHOP><IMODE>, sync_old_nand<IMODE>): New.
        (sync_new_<FETCHOP><IMODE>, sync_new_nand<IMODE>): New.
        (cmpxchg_rel_<I124MODE>): Split from cmpxchg_acq_<IMODE>.  Zero
        extend result; use release semantics.
        (cmpxchg_rel_di): Rename from cmpxchg_acq_<IMODE>; use release.
        (sync_val_compare_and_swap_<IMODE>): Update to match.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99527 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcc.dg/const-elim-1.c: Remove xfail for xtensa-*-*.
bwilson [Tue, 10 May 2005 16:27:48 +0000 (16:27 +0000)]
* gcc.dg/const-elim-1.c: Remove xfail for xtensa-*-*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99526 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * optabs.c (expand_compare_and_swap_loop): Don't clobber old value
rth [Tue, 10 May 2005 16:24:41 +0000 (16:24 +0000)]
    * optabs.c (expand_compare_and_swap_loop): Don't clobber old value
        before comparing it for success.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99525 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/ia64/sync.md (sync_add<I48MODE>): Fix arguments for
rth [Tue, 10 May 2005 16:20:35 +0000 (16:20 +0000)]
    * config/ia64/sync.md (sync_add<I48MODE>): Fix arguments for
        no return value pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99524 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * libgcov.c (create_file_directory): New function. Create
nathan [Tue, 10 May 2005 16:10:54 +0000 (16:10 +0000)]
* libgcov.c (create_file_directory): New function. Create
directory for the given file name.
(gcov_max_filename): New static var. Keeps size of the longest
file name.
(gcov_exit): Always try to create directory for output
file. Relocate each filename basing on environment vars.
(__gcov_init): Remember the longest file name.
* tsystem.h: include filenames.h to get IS_DIR_SEPARATOR
* doc/gcov.texi (Cross-profiling): New node documenting
cross-profiling management.
* doc/invoke.texi (-fprofile-arcs): Add xref to cross-profiling.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99523 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/sparc/sparc.c (mem_min_alignment): Do not rely
ebotcazou [Tue, 10 May 2005 15:59:16 +0000 (15:59 +0000)]
* config/sparc/sparc.c (mem_min_alignment): Do not rely
on MEM_ALIGN if TARGET_UNALIGNED_DOUBLES.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99521 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/xtensa/lib1funcs.asm (__udivsi3, __divsi3): Rearrange special
bwilson [Tue, 10 May 2005 15:56:54 +0000 (15:56 +0000)]
* config/xtensa/lib1funcs.asm (__udivsi3, __divsi3): Rearrange special
case code to avoid one move instruction.
(__umodsi3, __modsi3): Merge duplicated code sequences.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99520 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoUpdate the address and phone number of the FSF organization.
nickc [Tue, 10 May 2005 15:33:18 +0000 (15:33 +0000)]
Update the address and phone number of the FSF organization.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99519 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoUpdate the address and phone number of the FSF organization.
nickc [Tue, 10 May 2005 15:22:21 +0000 (15:22 +0000)]
Update the address and phone number of the FSF organization.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99518 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-data-ref.c (analyze_array_indexes, analyze_array,
kazu [Tue, 10 May 2005 14:50:35 +0000 (14:50 +0000)]
* tree-data-ref.c (analyze_array_indexes, analyze_array,
init_data_ref, access_functions_are_affine_or_constant_p,
free_data_refs): Use VEC instead of VARRAY.
* tree-data-ref.h (data_reference): Change the type of
access_fns to VEC(tree,gc)*.
(DR_ACCESS_FN, DR_NUM_DIMENSIONS): Use VEC instead of VARRAY.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99517 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/mips/24k.md, config/sh/divtab.c, config/sh/sh.c,
kazu [Tue, 10 May 2005 14:42:17 +0000 (14:42 +0000)]
* config/mips/24k.md, config/sh/divtab.c, config/sh/sh.c,
config/sh/sh.md, config/sh/superh.h: Fix comment typos.
* doc/invoke.texi: Fix typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99516 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-10 Gabor Loki <loki@gcc.gnu.org>
loki [Tue, 10 May 2005 13:47:05 +0000 (13:47 +0000)]
2005-05-10  Gabor Loki <loki@gcc.gnu.org>

PR c/17913
* c-typeck.c (build_conditional_expr): Remove reducing cond_expr.
* fold-const.c (fold): Expand the condition of reducing cond_expr.
(contains_label_1, contains_label_p): New functions for checking
labels in a sub-tree.

testsuite:
2005-05-10  Gabor Loki <loki@gcc.gnu.org>

PR c/17913
* gcc.c-torture/compile/pr17913.c: Computed jump test for PR17913

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99514 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agogcc/java:
bonzini [Tue, 10 May 2005 13:23:35 +0000 (13:23 +0000)]
gcc/java:
2005-05-10  Paolo Bonzini  <bonzini@gnu.org>

PR java/21436
* class.c (maybe_layout_super_class): Look for imports in this_class.
* parse.h (ctxp_for_generation_last): New.
(do_resolve_class): Add a parameter.
* parse.y (ctxp_for_generation_last): New.
(java_pop_parser_context): Add at end of list.
(find_in_imports, find_in_imports_on_demand): Look in ctxp
if the TYPE_IMPORT_LIST or respectively the TYPE_IMPORT_DEMAND_LIST of
the given type are NULL.
(do_resolve_class): Look into the imports of the new second parameter.
Adjust recursive calls.
(resolve_class, resolve_inner_class, find_as_inner_class): Adjust
calls to do_resolve_class.
(create_class): Set the TYPE_IMPORT_LIST and TYPE_IMPORT_DEMAND_LIST.
(java_complete_class): Do not do that here.

libjava:
2005-05-10  Paolo Bonzini  <bonzini@gnu.org>

PR java/21436
* testsuite/libjava.jacks/jacks.xfail: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99513 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c/21342
jsm28 [Tue, 10 May 2005 12:38:34 +0000 (12:38 +0000)]
PR c/21342
* c-decl.c (pushdecl): When there is a declaration in the current
scope and the declarations are external linkage, check for
compatibility with the type in the external scope and update the
type in the external scope with the composite type information.
Do not form a composite type of the new type and the visible type
if they are incompatible.

testsuite:
* gcc.dg/redecl-11.c, gcc.dg/redecl-12.c, gcc.dg/redecl-13.c,
gcc.dg/redecl-14.c, gcc.dg/redecl-15.c: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99510 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * crtstuff.c: Revert part of 2005-05-08 Change.
nathan [Tue, 10 May 2005 10:27:44 +0000 (10:27 +0000)]
* crtstuff.c: Revert part of 2005-05-08 Change.
(IN_LIBGCC2): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99509 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR libfortran/20788
fxcoudert [Tue, 10 May 2005 08:34:58 +0000 (08:34 +0000)]
PR libfortran/20788
Missing entry from previous commit:
* io/unix.c (fd_to_stream): Add an avoid_mmap argument indicating
we don't we to mmap this stream. Use fd_open instead of mmap_open
in that case.
(open_external): Call fd_to_stream with avoid_mmap = 0.
(input_stream): Call fd_to_stream with avoid_mmap = 1.
(output_stream): Likewise.
(error_stream): Likewise.

Really committing:
* io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
non-blank characters of a real number.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99508 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/sparc/sparc.c (fp_sethi_p): Test !SPARC_SIMM13_P and
ebotcazou [Tue, 10 May 2005 07:50:33 +0000 (07:50 +0000)]
* config/sparc/sparc.c (fp_sethi_p): Test !SPARC_SIMM13_P and
remove redundant test.
(fp_mov_p): Accept 0.
(fp_high_losum_p): Remove redundant test.
* config/sparc/predicates.md (const_high_operand): Explicitly test
(not small_int_operand).
(fp_const_high_losum_operand): New.
* config/sparc/sparc.md (movsi_insn): Do not emit 'clr'.  Reorder.
(movdi_insn_sp32_v9): Use canonical predicates.
(movdi_insn_sp32): Test !TARGET_V9 instead of !TARGET_ARCH64.
(movdi_insn_sp64_novis): Delete.
(movdi_insn_sp64_vis): Rename into movdi_insn_sp64.
(movsf_insn_novis): Delete.
(movsf_insn_vis): Rename into movsf_insn.
(movsf_no_f_insn): Rename into movsf_insn_no_fpu.
(movsf_lo_sum): Use fp_const_high_losum_operand.
(movsf_high): Likewise.
(movsf_high_losum splitter): Likewise.
(mov<V32:mode> expander): Use register_or_zero_operand.
(mov<V64:mode> expander): Likewise.
(movdf_insn_sp32): Use register_or_zero_operand.
(movdf_no_e_insn_sp32): Use register_or_zero_operand.
Rename into movdf_insn_sp32_no_fpu.
(movdf_no_e_insn_v9_sp32): Use register_or_zero_operand.
Rename into movdf_insn_sp32_v9_no_fpu.
(movdf_insn_v9only_novis): Delete.
(movdf_insn_v9only_vis): Rename into movdf_insn_sp32_v9.
(movdf_insn_sp64_novis): Delete.
(movdf_insn_sp64_vis): Rename into movdf_insn_sp64.
(movdf_no_e_insn_sp64): Use register_or_zero_operand.
Rename into movdf_insn_sp64_no_fpu.
(movtf expander): Use register_or_zero_operand.
(movtf_insn_sp32): Delete.
(movtf_insn_vis_sp32): Use register_or_zero_operand.
Rename into movtf_insn_sp32.
(movtf_no_e_insn_sp32): Use register_or_zero_operand.
Rename into movtf_insn_sp32_no_fpu.
(movtf_insn_hq_sp64): Delete.
(movtf_insn_hq_vis_sp64): Use register_or_zero_operand.
Rename into movtf_insn_sp64_hq.
(movtf_insn_sp64): Delete.
(movtf_insn_vis_sp64): Use register_or_zero_operand.
Rename into movtf_insn_sp64.
(movtf_no_e_insn_sp64): Use register_or_zero_operand.
Rename into movtf_insn_sp64_no_fpu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99506 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/stormy16/stormy16.c (xstormy16_emit_cbranch): Use
nathan [Tue, 10 May 2005 07:44:42 +0000 (07:44 +0000)]
* config/stormy16/stormy16.c (xstormy16_emit_cbranch): Use
gcc_assert and gcc_unreachable as appropriate.
(xstormy16_split_cbranch, xstormy16_output_cbranch_hi,
xstormy16_output_cbranch_si, xstormy16_split_move,
xstormy16_initial_elimination_offset,
xstormy16_encode_section_info, xstormy16_print_operand_address,
xstormy16_expand_call, xstormy16_expand_arith,
xstormy16_output_shift, xstormy16_init_builtins): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99505 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * typeck.c (build_unary_op): Do not resort to address arithmetic
mmitchel [Tue, 10 May 2005 05:31:15 +0000 (05:31 +0000)]
* typeck.c (build_unary_op): Do not resort to address arithmetic
when taking the address of a COMPONENT_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99503 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Paolo Carlini <pcarlini@suse.de>
paolo [Tue, 10 May 2005 01:58:19 +0000 (01:58 +0000)]
2005-05-09  Paolo Carlini  <pcarlini@suse.de>
    Giovanni Bajo  <giovannibajo@gcc.gnu.org>

PR libstdc++/18604
* include/bits/deque.tcc: Fully qualify names from namespace std.
* include/bits/stl_bvector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/vector.tcc: Likewise.
* include/std/std_bitset.h: Likewise.
* testsuite/23_containers/bitset/18604.cc: New.
* testsuite/23_containers/deque/18604.cc: Likewise.
* testsuite/23_containers/list/18604.cc: Likewise.
* testsuite/23_containers/map/18604.cc: Likewise.
* testsuite/23_containers/set/18604.cc: Likewise.
* testsuite/23_containers/vector/18604.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99499 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * configure: Regenerate.
mrs [Tue, 10 May 2005 01:43:00 +0000 (01:43 +0000)]
    * configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99498 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * tree-outof-ssa.c (_elim_graph): Change the type of nodes and
kazu [Tue, 10 May 2005 01:39:22 +0000 (01:39 +0000)]
* tree-outof-ssa.c (_elim_graph): Change the type of nodes and
const_copies to VEC(tree,heap)*.
(new_elim_graph, delete_elim_graph, elim_graph_size,
elim_graph_add_node, eliminate_build, eliminate_phi): Use VEC
instead of VARRAY.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99497 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * gcc.dg/debug/pr16676.c: New test.
bje [Tue, 10 May 2005 01:35:15 +0000 (01:35 +0000)]
* gcc.dg/debug/pr16676.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99496 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use quotes on
mrs [Tue, 10 May 2005 01:31:58 +0000 (01:31 +0000)]
    * libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use quotes on
        lt_cv_sys_max_cmd_len for now.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99495 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR testsuite/21443
kazu [Tue, 10 May 2005 00:57:28 +0000 (00:57 +0000)]
PR testsuite/21443
* gcc.dg/tree-ssa/20030731-2.c, gcc.dg/tree-ssa/20030917-1.c,
gcc.dg/tree-ssa/20030917-3.c, gcc.dg/tree-ssa/ssa-ccp-1.c,
gcc.dg/tree-ssa/ssa-ccp-2.c, gcc.dg/tree-ssa/ssa-ccp-3.c,
gcc.dg/tree-ssa/ssa-ccp-7.c, gcc.dg/tree-ssa/ssa-ccp-9.c:
Change -O1 to -O2.
* gcc.dg/tree-ssa/20040721-1.c: Change -O1 to -O2.  Add
-fno-tree-dominator-opts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99493 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 David Daney <ddaney@avtrex.com>
daney [Tue, 10 May 2005 00:48:49 +0000 (00:48 +0000)]
2005-05-09  David Daney  <ddaney@avtrex.com>

        * java/util/BitSet.java (get(int, int)): Fix breakage when
        requested set doesn't start on a multiple of 64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99492 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * inclhack.def (stdio_stdarg_h, stdio_va_list): Bypass on
jsm28 [Tue, 10 May 2005 00:26:08 +0000 (00:26 +0000)]
* inclhack.def (stdio_stdarg_h, stdio_va_list): Bypass on
*-*-solaris2.1[0-9]*, not just *-*-solaris2.1[0-9].
* fixincl.x: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99487 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR other/21052
jsm28 [Tue, 10 May 2005 00:19:28 +0000 (00:19 +0000)]
PR other/21052
* doc/extend.texi (Type Attributes): Correct example syntax.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99485 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoDaily bump.
gccadmin [Tue, 10 May 2005 00:16:32 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99483 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c/21160
jsm28 [Mon, 9 May 2005 23:51:49 +0000 (23:51 +0000)]
PR c/21160
* doc/invoke.texi (-Wuninitialized): Update documentation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99478 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoAdd missing ChangeLog entry
mmitchel [Mon, 9 May 2005 22:54:03 +0000 (22:54 +0000)]
Add missing ChangeLog entry

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99477 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * arm.c (const_ok_for_arm): Use a faster algorithm.
rearnsha [Mon, 9 May 2005 22:09:47 +0000 (22:09 +0000)]
* arm.c (const_ok_for_arm): Use a faster algorithm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99476 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR target/21477
dje [Mon, 9 May 2005 22:04:48 +0000 (22:04 +0000)]
    PR target/21477
        * config/rs6000/rs6000.md (add_op2): New.
        (add<mode>3): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99475 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * arm.c (arm_gen_constant): Add new heuristic for generating
rearnsha [Mon, 9 May 2005 22:00:06 +0000 (22:00 +0000)]
* arm.c (arm_gen_constant): Add new heuristic for generating
constant integers that can be expressed as the difference of two
valid immediates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99474 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agoRevert previous (not the patch described).
rearnsha [Mon, 9 May 2005 21:57:47 +0000 (21:57 +0000)]
Revert previous (not the patch described).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99473 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * arm.c (arm_gen_constant): Add new heuristic for generating
rearnsha [Mon, 9 May 2005 21:55:08 +0000 (21:55 +0000)]
* arm.c (arm_gen_constant): Add new heuristic for generating
constant integers that can be expressed as the difference of two
valid immediates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99472 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * c-tree.h (parser_build_unary_op): New prototype.
sayle [Mon, 9 May 2005 20:48:33 +0000 (20:48 +0000)]
* c-tree.h (parser_build_unary_op): New prototype.
* c-typeck.c (parser_build_unary_op): New function to construct
a unary operation in the C parser.
* c-parser.c (c_parser_unary_expression):  Use the new function
parser_build_unary_op when appropriate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99471 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR 18655
mmitchel [Mon, 9 May 2005 20:20:21 +0000 (20:20 +0000)]
PR 18655
* dwarf2out.c (output_call_frame_info): Use DWARF2_FRAME_REG_OUT
before outputting DWARF_FRAME_RETURN_COLUMN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99470 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agofortran/
tobi [Mon, 9 May 2005 18:26:20 +0000 (18:26 +0000)]
fortran/
* match.c (gfc_match_return): Only require space after keyword when
it is obligatory.  Only give stdwarn to after matching is successful.
* dump-parse-tree.c (gfc_show_symbol): Deal with alternate returns.
testsuite/
* gfortran.dg/return_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99467 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 18:22:11 +0000 (18:22 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (s390_branch_condition_mask,
s390_branch_condition_mnemonic, s390_extra_constraint_str,
s390_const_ok_for_constraint_p, s390_expand_plus_operand,
legitimize_pic_address, s390_emit_tls_call_insn,
legitimize_tls_address, legitimize_tls_address,
s390_expand_addcc, print_shift_count_operand, print_operand,
addr_generation_dependency_p, annotate_constant_pool_refs,
s390_split_branches, find_constant_pool_ref,
replace_constant_pool_ref, s390_add_constant, s390_find_constant,
s390_find_execute, s390_mainpool_start, s390_chunkify_start,
s390_output_pool_entry, s390_function_value,
s390_call_saved_register_used, s390_emit_call): Replace
conditional aborts by gcc_assert and unconditional by gcc_unreachable.
(s390_select_ccmode, s390_match_ccmode_set, s390_extract_part,
s390_cannot_force_const_mem, s390_output_dwarf_dtprel,
get_some_local_dynamic_name, s390_function_arg_size,
s390_function_arg_advance, s390_function_arg,
s390_expand_builtin, s390_gen_rtx_const_DI): Replace abort in
default case by gcc_unreachable.
* config/s390/s390.md: ("*cjump_31", "*icjump_31", "*jump31"): Replace
conditional abort by gcc_assert.
("doloop_si31"): Replace abort in last else by gcc_unreachable.
("main_pool", "pool"): Replace unconditional abort by gcc_unreachable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99466 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 18:15:17 +0000 (18:15 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (s390_decompose_address,
tls_symbolic_operand, legitimate_pic_operand_p,
legitimate_constant_p, legitimate_reload_constant_p,
s390_expand_plus_operand, legitimate_address_p,
legitimate_la_operand_p, ): Remove 'register' from signature.
(symbolic_reference_mentioned_p,
tls_symbolic_reference_mentioned_p): Remove 'register' from local
variable declarations.
(legitimize_address): Remove 'register' from
signature and local variable declarations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99464 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 18:12:25 +0000 (18:12 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390-protos.h: (s390_match_ccmode,
s390_match_ccmode_set, reg_used_in_mem_p,
symbolic_reference_mentioned_p, tls_symbolic_reference_mentioned_p,
legitimate_la_operand_p, preferred_la_operand_p,
s390_short_displacement, addr_generation_dependency_p,
legitimate_reload_constant_p, legitimate_address_p): Change return type
into 'bool'.
(s390_tm_ccmode): Change type of parameter "mixed" into 'bool'.
* config/s390/s390.c: (s390_match_ccmode,
symbolic_reference_mentioned_p, tls_symbolic_reference_mentioned_p,
legitimate_reload_constant_p): Change return type into 'bool'.
(preferred_la_operand_p,legitimate_la_operand_p, legitimate_address_p):
Likewise.  Additionally adapted comment.
(s390_extra_constraint_p): Change Comment to reflect 'int' return type.
(s390_tm_ccmode): Change type of parameter "mixed" into 'bool'.
(s390_decompose_address): Change the type of the internal flags
"pointer", "base_ptr", "indx_ptr", and the return value into 'bool'.
(struct s390_address): Change type of "pointer" into bool.
* config/s390/s390.md: ("*tmdi_reg", "*tmsi_reg", "tm<mode>_full"):
Adapt calls for 's390_tm_ccmode' to the new signature.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99463 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 18:09:52 +0000 (18:09 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (s390_match_ccmode_set,
s390_branch_condition_mnemonic, s390_short_displacement,
s390_decompose_address, get_thread_pointer, legitimize_tls_address,
print_shift_count_operand, get_some_local_dynamic_name,
get_some_local_dynamic_name_1, reg_used_in_mem_p,
addr_generation_dependency_p, s390_split_branches,
annotate_constant_pool_refs, find_constant_pool_ref,
replace_constant_pool_ref, find_ltrel_base, replace_ltrel_base,
s390_optimize_prologue, find_unused_clobbered_reg, s390_frame_area,
s390_register_info, s390_frame_info, s390_init_frame_layout,
s390_update_frame_layout, save_fpr, restore_fpr, save_gprs,
restore_gprs, s390_function_arg_size, s390_function_arg_float,
s390_init_machine_status, s390_assemble_integer, s390_handle_option,
s390_encode_section_info, s390_cannot_force_const_mem,
s390_delegitimize_address, s390_return_in_memory, s390_init_builtins,
s390_expand_builtin, s390_output_mi_thunk, s390_safe_attr_type,
s390_adjust_priority, s390_issue_rate,
s390_first_cycle_multipass_dfa_lookahead, s390_cannot_copy_insn_p,
s390_rtx_costs, s390_address_cost, s390_reorg, s390_valid_pointer_mode,
s390_build_builtin_va_list, s390_gimplify_va_arg,
s390_function_ok_for_sibcall, s390_call_saved_register_used,
s390_pass_by_reference, s390_fixed_condition_code_regs,
s390_cc_modes_compatible s390_mainpool_start,, s390_mainpool_finish,
s390_mainpool_cancel, s390_chunkify_start, s390_chunkify_finish,
s390_chunkify_cancel, s390_start_pool, s390_end_pool,
s390_add_pool_insn, s390_find_pool, s390_add_constant,
s390_find_constant, s390_add_execute, s390_find_execute,
s390_execute_label, s390_execute_target, s390_dump_pool,
s390_dump_execute, s390_alloc_pool, s390_free_pool): Remove prototypes.
Move target macro definitions to the end of the file.  Move several
functions within the file to assure correct compiling.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99462 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * calls.c (purge_reg_equiv_notes): Remove, fold into...
steven [Mon, 9 May 2005 17:52:20 +0000 (17:52 +0000)]
* calls.c (purge_reg_equiv_notes): Remove, fold into...
(fixup_tail_calls): ...here.  Only look at insns between the
start of the function and the FUNCTION_BEG insn note.

* gcse.c (one_cprop_pass): Fix typos in dumps.

* tree-ssa-operands.h (FOR_EACH_PHI_ARG): Fix typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99461 138bc75d-0d04-0410-961f-82ee72b054a4

19 years agogcc:
amylaar [Mon, 9 May 2005 17:42:55 +0000 (17:42 +0000)]
gcc:

2005-05-09  J"orn Rennecke <joern.rennecke@st.com>

* config/sh/sh.h (OVERRIDE_OPTIONS): Don't set flag_finite_math_only
if flag_signaling_nans is set.
For TARGET_SH2E, if flag_finite_math_only is not set, set IEEE_BIT.
* doc/invoke.texi (SH -mieee): Document relation to -ffinite-math-only.

2005-05-06  J"orn Rennecke <joern.rennecke@st.com>
Merge of sh-elf specific patches from sh-elf-4_1-branch:

2005-05-05  Kaz Kojima  <kkojima@gcc.gnu.org>

  * config/sh/sh.h (ASM_OUTPUT_REG_PUSH): Provide SHMEDIA version.
  (ASM_OUTPUT_REG_POP): Likewise.

2005-05-05  J"orn Rennecke  <joern.rennecke@st.com>
    Kaz Kojima  <kkojima@gcc.gnu.org>

  * config/sh/sh.c (sh_builtin_saveregs): Use copy_to_mode_reg
  and plus_constant.

2005-05-04  Kaz Kojima  <kkojima@gcc.gnu.org>

  * config/sh/sh.c (sh_div_strategy): Initialize with
  SH_DIV_STRATEGY_DEFAULT.
  * config/sh/sh.c (SH_DIV_STR_FOR_SIZE): Define.
  (SH_DIV_STRATEGY_DEFAULT): Likewise.
  (OPTIMIZATION_OPTIONS): Set sh_div_str to SH_DIV_STR_FOR_SIZE
  when optimized for size.
  * config/sh/linux.h (SH_DIV_STRATEGY_DEFAULT): Redefine.
  (SH_DIV_STR_FOR_SIZE): Likewise.
  * config/sh/netbsd-elf.h (SH_DIV_STRATEGY_DEFAULT): Likewise.
  (SH_DIV_STR_FOR_SIZE): Likewise.

2005-05-04  J"orn Rennecke <joern.rennecke@st.com>

  * config/sh/sh-modes.def (PDImode): Add.
  * config/sh/sh-protos.h (shmedia_prepare_call_address): Declare.
  * config/sh/sh.c (print_operand): Handle IF_THEN_ELSE.
  (target_reg_operand): Allow PDImode.
  (sh_register_move_cost): If neither sh_gettrcost_str nor
  TARGET_PT_FIXED is set, assume gettr costs 100.
  (shmedia_prepare_call_address): New function.
  (sh_gettrcost_str): Initialize to empty string.
  (sh_divsi3_libfunc): New variable.
  * config/sh/sh.h (PT_FIXED_BIT, TARGET_INVALID_SYMBOLS): Define.
  (TARGET_SWITCH_SH5_32_ANY_EXTRA): Likewise.
  (TARGET_SWITCH_SH5_MEDIA_ANY_EXTRA): Likewise.
  (TARGET_SWITCHES): Use TARGET_SWITCH_SH5_32_ANY_EXTRA and
  TARGET_SWITCH_SH5_MEDIA_ANY_EXTRA.
  (TARGET_OPTIONS): Add -mdivsi3_libfunc.
  (OVERRIDE_OPTIONS): Set sh_divsi3_libfunc if it hasn't been set
  by the user.
  Also set flag_no_function_cse for (TARGET_SHMEDIA && !TARGET_PT_FIXED).
  (HARD_REGNO_MODE_OK): Allow TARGET_REGS in PDImode.
  (CONSTRAINT_LEN): Remove debug version.
  (SECONDARY_INOUT_RELOAD_CLASS:) Break out of
  (SECONDARY_OUTPUT_RELOAD_CLASS).  Use EXTRA_CONSTRAINT_Csy for check
  if a target register needs a secondary reload through GENERAL_REGS.
  (SECONDARY_INPUT_RELOAD_CLASS): Use SECONDARY_INOUT_RELOAD_CLASS.
  (sh_divsi3_libfunc): Declare.
  (FUNCTION_PROFILER): Provide SHMEDIA version.
  * config/sh/predicates.md: New file.
  * config/sh/sh.md (predicates.md): Include.
  (divsi_inv_call_combine, divsi3): Use sh_divsi3_libfunc.
  (reload_insi): Fix predicates and constraints.
  (ptabs): New expander.
  (*extendsipdi_media, *truncdipdi_media): New insns.
  (call, call_value, sibcall): Use shmedia_prepare_call_address.
  * doc/invoke.texi (-multcost, -mdiv): Document new SH options.
  (-mdivsi3_libfunc, -madjust-unroll, -mindexed-addressing): Likewise.
  (-mgettrcost, -mpt-fixed, -minvalid-symbols): Likewise.

2005-04-11  J"orn Rennecke <joern.rennecke@st.com>

  * sh.c (print_operand): Remove sh_rep_vec extraction.
  (sh_output_mi_thunk): Make i unsigned.

  * sh.c (TARGET_ADJUST_UNROLL_MAX): Only redefine if already defined.
  (sh_adjust_unroll_max): Only define if TARGET_ADJUST_UNROLL_MAX
  is defined.  Update label detection code and iteration lookup,
  enable basic functionality, but without IV analysis.

2005-04-11  J"orn Rennecke <joern.rennecke@st.com>

  * sh.h (OPTIMIZATION_OPTIONS): Don't make setting of
  flag_branch_target_load_optimize dependent on TARGET_SHMEDIA.
  Set flag_finite_math_only to 2.
  If flag_finite_math_only set set to 2, set it to 1 iff
  we use SH2E..SH4 arithmetic without full IEEE support.

2005-04-09  Kaz Kojima  <kkojima@gcc.gnu.org>

  * config/sh/lib1funcs.asm (ic_invalidate): Fix typos.
  * config/sh/t-linux (LIB1ASMFUNCS_CACHE): Add _ic_invalidate_array.

2005-04-06  J"orn Rennecke <joern.rennecke@st.com>

  Merge of SuperH / STM SH specific patches, including fix for
  PR target/20695:
  * config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.h
  when building with libgloss.
  (sh*elf): Implement --without-fp option.
  (sh64-superh-linux*): Don't multilib.
  (sh*-*-linux): Use sh3 as basic multilib.
  * config/sh/crt1.asm (SHmedia start): Add code to enable the MMU,
  and to set up vbr.  Enable FPU before calling set_fpscr.
  Load atexit address just before use.  Use __SH_FPU_ANY__.
  (SH3*/SH4* start): Add code to set up vbr.  Use __SH_FPU_ANY__.
  Set DN bit in fpscr.
  * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Merge into:
   config/sh/sh.h (SH_ASM_SPEC, SUBTARGET_ASM_ISA_SPEC): Here.
  * config/sh/lib1funcs.asm (HIDDEN_FUNC, HIDDEN_ALIAS): Define.
  (FMOVD_WORKS): Don't define for __SH5__.
  (ashiftrt_r4_0, ashiftrt_r4_1, ashiftrt_r4_2, ashiftrt_r4_3): Hide.
  (ashiftrt_r4_4, ashiftrt_r4_5, ashiftrt_r4_6, ashiftrt_r4_7): Hide.
  (ashiftrt_r4_8, ashiftrt_r4_9, ashiftrt_r4_10, ashiftrt_r4_11): Hide.
  (ashiftrt_r4_12, ashiftrt_r4_13, ashiftrt_r4_14, ashiftrt_r4_15): Hide.
  (ashiftrt_r4_16, ashiftrt_r4_17, ashiftrt_r4_18, ashiftrt_r4_19): Hide.
  (ashiftrt_r4_20, ashiftrt_r4_21, ashiftrt_r4_22, ashiftrt_r4_23): Hide.
  (ashiftrt_r4_24, ashiftrt_r4_25, ashiftrt_r4_26, ashiftrt_r4_27): Hide.
  (ashiftrt_r4_28, ashiftrt_r4_29, ashiftrt_r4_30, ashiftrt_r4_31): Hide.
  (ashiftrt_r4_32, ashrsi3, ashlsi3, lshrsi3, movmem, movstr): Hide.
  (movstrSI64, movmemSI64, movstrSI60, movmemSI60): Hide.
  (movstrSI56, movmemSI56, movstrSI52, movmemSI52): Hide.
  (movstrSI48, movmemSI48, movstrSI44, movmemSI44): Hide.
  (movstrSI40, movmemSI40, movstrSI36, movmemSI36): Hide.
  (movstrSI32, movmemSI32, movstrSI28, movmemSI28): Hide.
  (movstrSI24, movmemSI24, movstrSI20, movmemSI20): Hide.
  (movstrSI16,movmemSI16, movstrSI12,movmemSI12): Hide.
  (movstrSI8,movmemSI8, movstrSI4,movmemSI4): Hide.
  (movmemSI0, movstrSI0): Remove.
  (movmemSI4): Schedule last store into rts delay slot.
  (movmem): Shorten code.  Provide ENDFUNC.
  (movmem_i4_even, movmem_i4_odd, movmemSI12_i4, mulsi3): Hide.
  (mulsi3): Provide ENDFUNC.
  (sdivsi3_i4, sdivsi3_i4, udivsi3_i4, udivsi3, set_fpscr): Hide.
  (SH5 sdivsi3): Reimplement, using:
  (div_table): New, linear approximation table lookup for division seed.
  (sdivsi3_2): New SH5 entry point.
  (divdi3): Use hidden alias for udivdi3.
  (moddi3): Use hidden alias for umoddi3.
  (init_trampoline): Hide.  Provide exact ENDFUNC.
  (ic_invalidate): Hide.  Re-implement SH4 version, using
  (ic_invalidate_array): New global.
  (GCC_shcompact_return_trampoline, GCC_nested_trampoline): Hide.
  (GCC_push_shmedia_regs_nofpu): Only provide for __SH4_NOFPU__.
  (GCC_pop_shmedia_regs_nofpu): Likewise.
  * config/sh/libgcc-excl.ver (__mulsi3): Add.
  * config/sh/linux.h (TARGET_DEFAULT): Include TARGET_OPT_DEFAULT.
  * config/sh/sh-protos.h (sh_function_kind): New enum.
  (sh_gen_truncate, replace_n_hard_rtx): Declare.
  (function_symbol): Update declaration.
  (shmedia_cleanup_truncate, sh_contains_memref_p): Declare.
  * sh.c (cfgloop.h): Include.
  (TARGET_ADJUST_UNROLL_MAX): Redefine.
  (print_operand): Add '>' and 'U' support.  Handle TRUNCATE and
  SIGN_EXTEND.
  (function_sybol): Add arguments for target and kind of symbol.
  If not an ordinary function symbol, make sure the string becomes
  unique.  For PIC, load appropriately depending on kind of symbol.
  Changed all callers.
  (prepare_move_operands): Dont copy R0 to a pseudo for SHmedia.
  (multcosts): Check sh_multcost_str.  If not set, return 2 for
  SHMEDIA TARGET_SMALLCODE.
  (sh_rtx_costs): Lower some costs when outer_code is SET.  Add code
  for CONST_VECTOR, MINUS and PARALLEL.
  (gen_shifty_op): Don't emit nop.
  (expand_ashiftrt): While expanding to rtl, do shift by 31 using a
  register set to zero.
  (gen_datalabel_ref): Make sure that the string is shared.
  (MAX_POOL_SIZE): Define as 372.
  (find_barrier): Remove spurious adjustment.
  (sh_media_register_for_return): Return -1 for interrupt handlers.
  (sh_pch_valid_p): Use a copy of TARGET_OPTIONS.
  (general_movsrc_operand): Accept vector that match sh_rep_vec.
  (general_movdst_operand): For SHmedia, recject paradoxical DImode
  subregs before high_life / reload.
  (arith_reg_operand): Allow no-op sign extensions.
  (logical_reg_operand, fp_arith_reg_dest, xor_operand): New functions.
  (cmp_operand, shift_operator, logical_operator): Likewise.
  (minuend_operand, ua_address_operand, cache_address_operand): Likewise.
  (ua_offset, shift_count_reg_operand, shift_count_operand): Likewise.
  (sh_adjust_unroll_max, replace_n_hard_rtx, sh_gen_truncate): Likewise.
  (shmedia_cleanup_truncate, sh_contains_memref_p_1): Likewise.
  (sh_contains_memref_p): Likewise.
  (shmedia_6bit_operand): Remove.
  (arith_operand): Allow some TRUNCATEs.
  (logical_operand): Disallow subregs <= SImode of >= DImode.
  (greater_comparison_operator): Fix mode comparison.
  (less_comparison_operator): Likewise.
  (target_reg_operand, target_operand): Compare modes with Pmode.
  (sh_adjust_cost): Consider the dependency between a target register
  load and its use in a subsequent block.
  Implement mac_media latency exception.
  Before reload, anticipate floating point latencies to be at least four.
  Give preference to the ptabs feeding a casesi_jump_media.
  Handle UNSPEC in a CALL address.
  (sh_optimize_target_register_callee_saved): Improve handling of
  borderline cases.
  (sh_function_ok_for_sibcall): Allow for non-pic, and also when we
  will use the symbol with @GOTOFF addressing.
  (SH_BLTIN_UDI): Remove.
  (SH_BLTIN_LDUA_L64, SH_BLTIN_LDUA_Q64, SH_BLTIN_STUA_L64): New.
  (SH_BLTIN_STUA_Q64): Likewise.
  (signature_args, SH_BLTIN_NUM_SHARED_SIGNATURES): Update.
  (SH_BLTIN_2, SH_BLTIN_SU, SH_BLTIN_3, SH_BLTIN_SUS): Renumber.
  (SH_BLTIN_PSSV, SH_BLTIN_XXUU, SH_BLTIN_UUUU, SH_BLTIN_PV): Likewise.
  (bdesc): Add entries for alloco, mac_media, sqrtdf2, sqrtsf2, fsrra_s,
  {ld,st}{hi,lo}.[lq] and prefetch.
  Change mextr entries to use SH_BLTIN_V8QI3.
  (sh_media_init_builtins): Implement specific TARGET_SHMEDIA32 /
  TARGET_SHMEDIA64 checks for pointer arguments.
  (sh_expand_builtin): For pointer types, use ptr_mode / ptr_type_mode.
  (sh_register_move_cost): Check sh_gettrcost_str.
  (cmpsi_operand): T_REG is only allowed for TARGET_SH1.
  (sh_output_mi_thunk): Make static.  Check that needed registers are
  actually available.  Make sure that the sibcall won't go via the PLT.
  (sh_multcost_str, sh_gettrcost_str, sh_div_str): New variables.
  (cut2_workaround_str, sh_div_strategy, boardtype, osruntime): Likewise.
  (arith_reg_dest): Allow paradoxical DImode subreg for ! TARGET_SHMEDIA.
  * sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH_FPU_ANY__ and
  __SH_FPU_DOUBLE__.
  (INDEXED_ADDRESS_BIT, ADJUST_UNROLL_BIT, TARGET_DIVIDE_INV): Define.
  (TARGET_HARVARD): Also true for TARGET_SH5.
  (TARGET_DIVIDE_FP, TARGET_DIVIDE_INV_FP, TARGET_DIVIDE_CALL2): Define.
  (TARGET_DIVIDE_INV_MINLAT, TARGET_DIVIDE_INV20U): Define.
  (TARGET_DIVIDE_INV20L, TARGET_DIVIDE_INV_CALL): Define.
  (TARGET_DIVIDE_INV_CALL2, TARGET_ALLOW_INDEXED_ADDRESS): Define.
  (TARGET_ADJUST_UNROLL, TARGET_OPT_DEFAULT, SUBTARGET_OPTIONS): Define.
  (TARGET_SWITCHES): Removed excessive whitespace.  Added options
  indexed-addressing, no-indexed-addressing, adjust-unroll and
  no-adjust-unroll.
  (TARGET_DEFAULT): Add TARGET_OPT_DEFAULT.
  (TARGET_OPTIONS): Define.
  (EXTRA_SPECS): Add subtarget_asm_spec.
  (SH_ASM_SPEC): Pass cut2-workaround option.
  (SUBTARGET_ASM_ISA_SPEC): Enforce STRICT_NOFPU for SH4 --without-fp.
  (LINK_EMUL_PREFIX): If target defaults to little endian, default to shl.
  (OPTIMIZATION_OPTIONS): Set sh_div_str.  If not using if not -mieee,
  set flag_finite_math_only.
  (sh_divide_strategy_e): New enum.
  (sh_div_strategy): Declare.
  (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for TARGET_SHCOMPACT.
  Clear flag_if_conversion2 for SHMEDIA.
  Set sh_div_strategy.
  Leave profile_flag and profile_arc_flag alone.
  (LOOP_ALIGN): Replace TARGET_HARVARD test with TARGET_HARD_SH4 test.
  (HARD_REGNO_MODE_OK): Allow TImode in aligned FP registers.
  (MODES_TIEABLE_P): For TARGET_SHMEDIA, allow tying of integral modes
  of the same size.
  (CONST_OK_FOR_I): Fix detection of I06 constraint.
  (PREFERRED_RELOAD_CLASS): Also choose GENERAL_REGS for
  PIC_DIRECT_ADDR_P.
  (SECONDARY_INPUT_RELOAD_CLASS): Fix parentheses.  For TARGET_SHMEDIA,
  check for inqhi_operand, LABEL_REF and PIC_DIRECT_ADDR_P.
  (FUNCTION_VALUE, PROMOTE_MODE): Don't promote from SImode.  For
  TARGET_SHMEDIA32, promote to SImode.
  (EXTRA_CONSTRAINT_C16): Allow SIGN_EXTEND to SImode.
  (DATALABEL_REF_NO_CONST_P: Don't allow SYMBOL_REF.
  (DATALABEL_REF_P): Don't define.
  (NON_PIC_REFERENCE_P): Allow LABEL_REF and SYMBOL_REF directly inside
  a CONST.  Don't allow DATALABEL_REF_NO_CONST_P outside of a CONST.
  Allow a LABEL_REF in a sum.
  (BASE_REGISTER_RTX_P): Check TRULY_NOOP_TRUNCATION.
  (INDEX_REGISTER_RTX_P): Likewise.
  (GO_IF_LEGITIMATE_INDEX): Check if pased the address of an unaligned
  load / store.
  (ALLOW_INDEXED_ADDRESS): Define.
  (GO_IF_LEGITIMATE_ADDRESS): Use it.
  (TRULY_NOOP_TRUNCATION): Don't allow no-op truncation from 64 bit or
  beyond to less than 64 bit.
  (PRINT_OPERAND_PUNCT_VALID_P): Allow '>'.
  (rtx_equal_function_value_matters): Don't declare.
  (arith_reg_operand): Allow sign_extend.
  (PREDICATE_CODES): Allow SIGN_EXTEND in arith_reg_operand.  Add
  any_arith_reg_dest, cache_address_operand, cmp_operand,
  fp_arith_reg_dest, logical_operator, logical_reg_operand,
  minuend_operand, shift_count_operand, shift_count_reg_operand,
  shift_operator, ua_address_operand, ua_offset, unary_float_operator,
  xor_operand.  Don't allow PARALLEL in sh_1el_vec and sh_rep_vec
  Remove shmedia_6bit_operand.
  (SPECIAL_MODE_PREDICATES): Add any-arith_reg_dest, target_operand
  and target_reg_operand.
  (SIDI_OFF, SIMULTANEOUS_PREFETCHES, high_life_started): Define.
  (sh_multcost_str, sh_gettrcost_str, sh_div_str): Declare.
  (cut2_workaround_str): Declare.
  (INDEX_REG_CLASS): Is NO_REGS if ALLOW_INDEXED_ADDRESS is zero.
  (LEGITIMIZE_RELOAD_ADDRESS): Check ALLOW_INDEXED_ADDRESS.
  Substitute INDEX_REG_CLASS with R0_REGS.
  * sh.md (UNSPEC_DIV_INV_M0, UNSPEC_DIV_INV_M1): New constants.
  (UNSPEC_DIV_INV_M2, UNSPEC_DIV_INV_M3, UNSPEC_DIV_INV20): Likewise.
  (UNSPEC_ASHIFTRT, UNSPEC_THUNK): Likewise.
  (Attribute "length"): jump_media has length 8 if
  TARGET_SH5_CUT2_WORKAROUND is true.
  ("highpart"): New attribute.
  (cmpsi): Allow TARGET_SHMEDIA.
  (cmpeqsi_media, cmpgtsi_media, cmpgtusi_media): New patterns.
  (cmpsieqsi_media, cmpsieqdi_media, cmpsigtsi_media): Likewise.
  (cmpsigtdi_media, cmpsigtusi_media, cmpsigtudi_media): Likewise.
  (*cmpne0si_media, *cmpne0sisi_media, movdicc_true+1): Likewise.
  (movdicc_true+2, movsicc_false, movsicc_true): Likewise.
  (movsicc_true+1, movsicc_true+2, movsicc_true+3): Likewise.
  (*movsicc_umin, movsicc, movqicc, *adddisi3_media): Likewise.
  (addsidi3_media, subdisi3_media, mov_neg_si_t): Likewise.
  (*subsi3_media+1, *subsi3_media+2, divsi3_media_2): Likewise.
  (divsi_inv_call, *divsi_inv_call_combine, divsi_inv_m0): Likewise.
  (divsi_inv_m1, divsi_inv_m2, divsi_inv_m3, divsi_inv_m1_3): Likewise.
  (divsi_inv20, divsi_inv_fp, *divsi_inv_fp_combine, muldi3): Likewise.
  (*andsi3_media, andcsi3): Likewise.
  (cmpeqdi_media): Use cmp_operand operand predicate.
  (*adddi3_media, adddi3z_media): Use arith_reg_dest operand predicate.
  (adddi3_compact, adddi3_compact+1, addc, addc1): Likewise.
  (addsi3_media, *addsi3_compact, *subdi3_media): Likewise.
  (subdi3_compact, subdi3_compact+1, subc, subc1): Likewise.
  (*subsi3_internal, *subsi3_media, udivsi3_sh2a, divsi3_sh2a): Likewise.
  (mul_r, mulsidi3_media, mulsidi3_compact): Likewise.
  (mulsidi3_compact+1, umulsidi3_media, umulsidi3_compact): Likewise.
  (umulsidi3_compact+1, *andsi3_compact, anddi3, andcdi3): Likewise.
  (*subsi3_media): Make define_insn_and_split.  Use minuend_operand
  operand predicate.
  (subsi3): Don't force operand 1 into a register if it is a SUBREG.
  (udivsi3_i1_media, udivsi3): Use Pmode for function/target address.
  (divsi3_i1_media, beq_media, *beq_media_i, bne_media): Likewise.
  (bgt_media, bge_media, bgtu_media, bgeu_media, *bgt_media_i): Likewise.
  (*blt_media_i, bunordered, jump_media, jump, call_media): Likewise.
  (call_value_media, call, call_value, sibcall_media, sibcall): Likewise.
  (indirect_jump, casesi_jump_media, GOTaddr2picreg, *ptb): Likewise.
  (symGOT_load, casesi, casesi_shift_media, casesi_load_media): Likewise.
  (return_media_i, return_media): Likewise.
  (udivsi3_i1_media): Enable also for ! TARGET_DIVIDE_FP.
  (divsi3_i1_media): Likewise.  Don't clobber R2 / R3 / TR1 / TR2.
  (divsi3): Add support for division by multiplying with inverse.
  (andsi3): Use logical_reg_operand predicate.  Add SHmedia support.
  (iorsi3): Rename to:
  (*iorsi3_compact).
  (xorsi3): Rename to:
  (*xorsi3_compact).
  (iorsi3, *iorsi3_media, *logical_sidi3, xorsi3): New patterns.
  (*logical_sidisi3, *logical_sidi3_2, rotrdi3_mextr+1): Likewise.
  (ashrsi2_31+2, *ashlsi_c_void, *ashldisi3_media): Likewise.
  (*lshrdisi3_media, *ashrdisi3_media, ashrdisi3_media_high): Likewise.
  (ashrdisi3_media_opaque, one_cmpldi2+1, cneg, movsi_const): Likewise.
  (movsi_const_16bit, *movdi_media_I16, *shori_media_si): Likewise.
  (*beq_media_i32, *bgt_media_i32, *blt_media_i32): Likewise.
  (bunordered+1, sibcalli_thunk, ptrel_si, cmpsieqsf_media): Likewise.
  (cmpsieqdf_media, addv2hi3, ashlv2si3+1, subv2hi3, ldhi_l): Likewise.
  (ldhi_q, *ldhi_q_comb0, *ldhi_q_comb1, ldlo_l, ldlo_q): Likewise.
  (*ldlo_q_comb0, *ldlo_q_comb1, sthi_l, sthi_q): Likewise.
  (*sthi_q_comb0, *sthi_q_comb1, stlo_l, stlo_q): Likewise.
  (*stlo_q_comb0, *stlo_q_comb1, ldhi_l64, ldhi_q64, ldlo_l64): Likewise.
  (ldlo_q64, sthi_l64, sthi_q64, stlo_l64, stlo_q64, alloco_i): Likewise.
  (alloca_i+1): Likewise.
  (prefetch_media): Inhibit generator function generation.
  (prefetch_i4): Likewise.  Also enable for TARGET_SHCOMPACT.
  (*iorsi3_compact, iordi3): Use arith_reg_dest operand predicate.
  (*xorsi3_compact, xordi3, xordi3+1, rotlsi3_1, rotlsi3_31): Likewise.
  (rotlsi3_16, rotlsi3, *rotlhi3_8, ashlsi3_sh2a, ashlsi3_std): Likewise.
  (ashlhi3_k, ashlsi3_n, ashlsi3_n+1, ashlsi3_media): Likewise.
  (*ashlhi3_n, ashlhi3+1, ashrsi3_sh2a, ashrsi3_k, ashrsi2_16): Likewise.
  (ashrsi2_16+1, ashrsi2_31, ashrsi2_31+1, ashlsi_c): Likewise.
  (ashrsi3_d, ashrsi3_media, lshrsi3_sh2a, lshrsi3_d): Likewise.
  (lshrsi3_m, lshrsi3_k, lshrsi3_n, lshrsi3_n, lshrsi3_media): Likewise.
  (lshrsi3, ashldi3_k, ashldi3_mediai, lshrdi3_k): Likewise.
  (ashrdi3_k, xtrct_left, xtrct_right, negc, *negdi_media): Likewise.
  (negsi2, one_cmplsi2, one_cmpldi2, zero_extendsidi2): Likewise.
  (*zero_extendhisi2_compact, *zero_extendqisi2_compact): Likewise.
  (zero_extendqihi2, extendhisi2, *extendhisi2_compact): Likewise.
  (extendqisi2, *extendqisi2_compact, extendqihi2): Likewise.
  (movsi_const_16bit+1, *movdi_media_I16+1): Likewise.
  (movdf_media_nofpu+1, movsf_media_nofpu+1, dect, movt, seq): Likewise.
  (movnegt+1, divsf3_i): Likewise.
  (xordi3): Use xor_operand operand predicate.
  (ashlsi3_media): Use shift_count_operand operand predicate.
  (ashrsi3_media, lshrsi3_media, ashldi3_media, lshrdi3_media): Likewise.
  (ashrdi3_media): Likewise.
  (ashrsi2_31+1): Use mov_neg_si_t.
  (lshrdi3_media, ashrdi3_media): Use ext_dest_operand predicate.
  Make sure that either the destination is not a subreg, or that the
  shift generates a sufficient number of sign bit copies.
  (*loaddi_trunc): Use any_register_operand predicate.
  (ic_invalidate_line_sh4a): Likewise.
  (*zero_extendhisi2_media+1): Use simplify_gen_subreg.
  (*extendhisi2_media+1i, *extendqisi2_media+1): Likewise.
  (extendsidi2): Add fmov.sl alternative.
  (load_ra): Add mode for operand 1.
  (*movsi_media): Discourage the use of floating point registers.
  Allow TRUNCATE.
  (*movsi_media_nofpu): Ignore target register alternative for register
  preferencing.  Allow TRUNCATE.
  (movsi_const_16bit+1): Use gen_movsi_const, and add an REG_EQUAL note.
  (*movqi_media): Use extend_reg_or_0_operand predicate.
  (*movdi_media): Ignore target register alternative for register
  preferencing.  Discourage the use of floating point registers.
  (*movdi_media_nofpu): Ignore target register alternative for register
  preferencing.
  (movdi_const_16bit+1): If the source is subregged from SImode,
  sign-extend highpart.  Use ext_dest_operand predicate.
  (movdi_const_16bit+2, shori_media): Use ext_dest_operand predicate.
  (reload_outdf+7, reload_outdf+8): Check ALLOW_INDEXED_ADDRESS.
  (stuff_delay_slot): Add modes for operands 0 and 1.
  (*beq_media_i, *bgt_media_i): Add '>' to output templates.
  (*blt_media_i, jump_media): Likewise.
  (beq, bne): Pass through SImode inputs, and I06 constants.
  (bgt, blt, ble, bge, bgtu): Pass through SImode inputs, the constant 0.
  (bltu, bgeu, bleu): Likewise.
  (GOTaddr2picreg): Don't call gen_datalabel_ref.
  (ptrel): Rename to:
  (ptrel_di).
  (tls_global_dynamic, tls_local_dynamic): Add mode for call.
  (seq): Properly support input modes other than DImode.
  (slt, sle, sgt, sge,sne): Properly support SImode.
  (addsf3_i, negdf2_i, sqrtdf2_i, absdf2_i): Use fp_arith_reg_operand.
  (mac_media) Enable generator function generation.
  (fix_truncsfdi2): Use fp_arith_reg_dest operand predicate.
  (fix_truncdfdi2): Likewise.
  (movv8qi_i+3): Enable for CONST0_RTX too.
  (movv2hi_i): Use add.l, not addz.l.
  (ashlv2si3, ashlv4hi3, lshrv2si3): Use shift_count_reg_operand.
  (lshrv4hi3): Likewise.
  (ussubv8qi3): Allow zero for operand 1.
  (prefetch): Allow any mode for operand 0.  Enable for SHCOMPACT.
  Use force_reg.
  * config/sh/shmedia.md: (shmedia): Remove automaton declaration.
  (sh5inst_pipe, sh5fpu_pipe): New automatons.
  (sh5issue): Use sh5inst_pipe.
  (sh5fds): Use sh5fpu_pipe.
  (shmedia_fdiv, shmedia_dfdiv): Also use sh5issue.
  * config/sh/sshmedia.h (sh_media_GETCON, sh_media_PUTCON): Declare
  with always_inline Attribute.
  * t-sh64 (LIB1ASMFUNCS): Add _div_table.
  * config/sh/ushmedia.h (sh_media_MABS_L): Use builtin function.
  (sh_media_MABS_W, sh_media_MADD_L, sh_media_MADD_W): Likewise.
  (sh_media_MADDS_L, sh_media_MADDS_UB, sh_media_MADDS_W): Likewise.
  (sh_media_MCMPEQ_B, sh_media_MCMPEQ_L, sh_media_MCMPEQ_W): Likewise.
  (sh_media_MCMPGT_UB, sh_media_MCMPGT_L, sh_media_MCMPGT_W): Likewise.
  (sh_media_MCMV, sh_media_MCNVS_LW, sh_media_MCNVS_WB): Likewise.
  (sh_media_MCNVS_WUB, sh_media_MEXTR1, sh_media_MEXTR2): Likewise.
  (sh_media_MEXTR3, sh_media_MEXTR4, sh_media_MEXTR5): Likewise.
  (sh_media_MEXTR6, sh_media_MEXTR7, sh_media_MMACFX_WL): Likewise.
  (sh_media_MMACNFX_WL, sh_media_MMUL_L, sh_media_MMUL_W): Likewise.
  (sh_media_MMULFX_L, sh_media_MMULFX_W, sh_media_MMULFXRP_W): Likewise.
  (sh_media_MMULHI_WL, sh_media_MMULLO_WL): Likewise.
  (sh_media_MMULSUM_WQ, sh_media_MPERM_W, sh_media_MSAD_UBQ): Likewise.
  (sh_media_MSHALDS_L, sh_media_MSHALDS_W, sh_media_MSHARD_L): Likewise.
  (sh_media_MSHARD_W, sh_media_MSHARDS_Q, sh_media_MSHFHI_B): Likewise.
  (sh_media_MSHFHI_L, sh_media_MSHFHI_W, sh_media_MSHFLO_B): Likewise.
  (sh_media_MSHFLO_L, sh_media_MSHFLO_W, sh_media_MSHLLD_L): Likewise.
  (sh_media_MSHLLD_W, sh_media_MSHLRD_L, sh_media_MSHLRD_W): Likewise.
  (sh_media_MSUB_L, sh_media_MSUB_W, sh_media_MSUBS_L): Likewise.
  (sh_media_MSUBS_UB, sh_media_MSUBS_W, sh_media_FABS_D): Likewise.
  (sh_media_FABS_S, sh_media_FCMPUN_D, sh_media_FCMPUN_S): Likewise.
  (sh_media_FIPR_S, sh_media_FMAC_S, sh_media_FSQRT_D): Likewise.
  (sh_media_FSQRT_S, sh_media_FTRV_S, sh_media_LDHI_L): Likewise.
  (sh_media_LDHI_Q, sh_media_LDLO_L, sh_media_LDLO_Q): Likewise.
  (sh_media_STHI_L, sh_media_STHI_Q, sh_media_STLO_L): Likewise.
  (sh_media_STLO_Q, sh_media_NSB, sh_media_BYTEREV): Likewise.
  (sh_media_PREFO, sh_media_ALLOCO): Likewise.
  (sh_media_FCOSA_S, sh_media_FSINA_S): New function.
  (sh_media_FMOV_DQ, sh_media_FMOV_LS): Use union assignment.
  (sh_media_FMOV_QD, sh_media_FMOV_SL): Likewise.
  (sh_media_CMVEQ): Use C code. Add attribute always_inline.
  (sh_media_CMVNE): Likewise.
  (sh_media_ADDZ_L): Use C code.
  (sh_media_unaligned_LD_L): Use intrinsics directly.
  (sh_media_unaligned_LD_Q, sh_media_unaligned_ST_L): Likewise.
  (sh_media_unaligned_ST_Q): Likewise.
  * config/sh/divtab.c: New file.

2005-04-06  Andrew Stubbs <andrew.stubbs@superh.com>
    J"orn Rennecke <joern.rennecke@superh.com>

  * config/sh/superh64.h, config/sh/superh.h: New files.
  * config/sh/newlib.h, config/sh/t-superh: Likewise.
  * config.gcc: Add support for sh*-superh-elf* and sh64-superh-linux*.

gcc/testsuite:

2005-05-06  J"orn Rennecke <joern.rennecke@st.com>

* gcc.dg/pr15784-3.c: Add -fno-finite-math-only option.

* gcc.dg/20021029-1.c: For sh64*-*-*, add -mpt-fixed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99460 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:37:42 +0000 (17:37 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.h: Move xxx_REGNUM definitions to s390.md.
* config/s390/s390.md: ("SIBCALL_REGNUM", "BASE_REGNUM",
"RETURN_REGNUM", "CC_REGNUM", "TP_REGNUM"): New constants.
Replace every occurrence of '(reg:<MODE> 33)' by '(reg:<MODE>
CC_REGNUM)'.
("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): Replace
'(reg:<MODE> 36)' by '(reg:<MODE> TP_REGNUM)'.
("*sibcall_br", "*sibcall_value_br"): Replace '(reg:DI 1)' by '(reg:DI
REG_SC)'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99459 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:32:20 +0000 (17:32 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("gf") New mode attribute.
("fixuns_truncdfdi2", "fixuns_truncdfsi2", "fixuns_truncsfdi2",
"fixuns_truncsfsi2"): Merge.
("fix_truncdfdi2", "fix_truncsfdi2"): Merge.
("fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee", "fix_truncsfdi2_ieee",
"fix_truncsfsi2_ieee"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99458 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:29:33 +0000 (17:29 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("FPR") New mode macro.
("de", "dee"): New mode attributes.
("cmpdf", "cmpsf"): Merge.
("*cmpdf_ccs_0", "*cmpsf_ccs_0"): Merge.
("*cmpdf_ccs_0_ibm", "*cmpdf_ccs_0_ibm"): Merge.
("*cmpdf_ccs", "*cmpsf_ccs"): Merge.
("*cmpdf_ccs_ibm", "*cmpsf_ccs_ibm"): Merge.
("floatdidf2", "floatdisf2"): Merge.
("adddf3", "addsf3"): Merge.
("*adddf3", "*addsf3"): Merge.
("*adddf3_cc", "*addsf3_cc"): Merge.
("*adddf3_cconly", "*addsf3_cconly"): Merge.
("*adddf3_ibm", "*addsf3_ibm"): Merge.
("subdf3", "subsf3"): Merge.
("*subdf3", "*subsf3"): Merge.
("*subdf3_cc", "*subsf3_cc"): Merge.
("*subdf3_cconly", "*subsf3_cconly"): Merge.
("*subdf3_ibm", "*subsf3_ibm"): Merge.
("muldf3", "mulsf3"): Merge.
("*muldf3", "*mulsf3" "): Merge.
("*muldf3_ibm", "*mulsf3_ibm"): Merge.
("*fmadddf", "*fmaddsf"): Merge.
("*fmsubdf", "*fmsubsf"): Merge.
("divdf3", "divsf3"): Merge.
("*divdf3", "*divsf3"): Merge.
("*divdf3_ibm", "*divsf3_ibm"): Merge.
("negdf2", "negsf2"): Merge.
("*negdf2_cc", "*negsf2_cc"): Merge.
("*negdf2_cconly", "*negsf2_cconly"): Merge.
("*negdf2", "*negsf2"): Merge.
("*negdf2_ibm", "*negsf2_ibm"): Merge.
("absdf2", "abssf2"): Merge.
("*absdf2_cc", "*abssf2_cc"): Merge.
("*absdf2_cconly", "*abssf2_cconly"): Merge.
("*absdf2", "*abssf2"): Merge.
("*absdf2_ibm", "*abssf2_ibm"): Merge.
("*negabsdf2_cc", "*negabssf2_cc"): Merge.
("*negabsdf2_cconly", "*negabssf2_cconly"): Merge.
("*negabsdf2", "*negabssf2"): Merge.
("sqrtdf2", "sqrtsf2"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99457 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:24:37 +0000 (17:24 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (s390_adjust_priority): Adapt to changed
attribute names.
* config/s390/2084.md: ("x_fsimpd", "x_fsimps", "x_fdivd", "x_fdivs",
"x_floadd", "x_floads", "x_fstored", "x_fstores"): Rename to
("x_fsimpdf", "x_fsimpsf", "x_fdivdf", "x_fdivsf", "x_floaddf",
"x_floadsf", "x_fstoredf", "x_fstoresf") and replace 'type'
attribute names.
* config/s390/s390.md: ("type"): Rename "fsimpd, fsimps, floadd, floads,
fstored, fstores, fmuld, fmuls, fdivd, fdivs, fsqrtd, fsqrts" to
"fsimpdf, fsimpsf, floaddf, floadsf, fstoredf, fstoresf, fmuldf,
fmulsf, fdivdf, fdivsf, fsqrtdf, fsqrtsf".
("*cmpdf_ccs_0", "*cmpdf_css_0_ibm", "*cmpdf_ccs",
"*cmpdf_ccs_ibm", "*cmpsf_ccs_0", "*cmpsf_css_0_ibm",
"*cmpsf_ccs", "*cmpsf_ccs_ibm", "*movdi_64", "*movdi_31",
"*movsi_zarch", "*movsi_esa", "*movdf_64", "*movdf_31", "movsf",
"*muldf3", "*muldf3_ibm", "*fmadddf", "*fmsubdf", "*mulsf3",
"mulsf3_ibm", "*fmaddsf", "fmsubsf", "*divdf3", "*divdf3_ibm",
"*negdf2_cc", "*negdf2_cconly", "*negdf2", "*negdf2_ibm",
"*negsf2_cc", "*negsf2_cconly", "*negsf2", "*absdf2_cc",
"*absdf2_cconly", "*absdf2", "*absdf2_ibm", "*abssf2_cc",
"*abssf2_cconly", "*abssf2", "*abssf2_ibm", "*negabsdf2_cc",
"*negabsdf2_cconly", "*negabsdf2", "*negabssf2_cc",
"*negabssf2_cconly", "*negabssf2", "sqrtdf2", "sqrtsf2"): Rename
'type' value.
("*divsf3"): Additionally rename second pattern to
"*divsf3_ibm".
("truncdfsf2_ibm", "extendsfdf2_ieee", "extendsfdf2_ibm",
"*adddf3", "*adddf3_cc", "*adddf3_cconly", "*adddf3_ibm",
"*addsf3", "*addsf3_cc", "*addsf3_cconly", "*subdf3",
"subdf3_cc", "*subdf3_cconly", "*subdf3_ibm", "*subsf3",
"subsf3_cc", "*subsf3_cconly", "*subsf3_ibm"): Merge identical
'type values' and rename 'type' value.
("*addsf3"): Additionally rename second pattern to
"*addsf3_ibm".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99456 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:21:03 +0000 (17:21 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("SHIFT"): New mode macro.
("lr", "shift"): New mode attributes.
("ashldi3", "lshrdi3"): Merge.
("*ashldi3_31", "*lshrdi3"_31): Merge.
("*ashldi3_64", "*lshrdi3"_64): Merge.
("ashlsi3", "lshrsi3"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99455 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:18:00 +0000 (17:18 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("DSI", "SCOND"): New mode
macros.
("E", "g"): New mode attributes.
("*adddi3_alc_cc", "*addsi3_alc_cc"): Merge.
("*adddi3_alc", "*addsi3_alc"): Merge.
("*subdi3_slb_cc", "*subsi3_slb_cc"): Merge.
("*subdi3_slb", "*subsi3_slb"): Merge.
("adddicc", "addsicc"): Merge.
("*sconddi", "*scondsi"): Merge.
("*sconddi_neg", "*scondsi_neg"): Merge.
("sltu", "sgtu", "sleu", "sgeu"): Merge.
("negdi2", "negsi2"): Extract expander pattern from
"negsi2" and merge with "negdi2".
("*negdi2"): Merge with instruction pattern of "negsi2".
("*negdi2_cc", "*negsi2_cc"): Merge.
("*negdi2_cconly", "*negsi2_cconly"): Merge.
("rotldi3", "rotlsi3"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99454 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:14:22 +0000 (17:14 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("hc"): New mode attribute.
("extendhidi2", "extendqidi2"): Merge.
("*extendhidi2", "*extendqidi2"): Merge.
("extendhisi2", "extendqisi2"): Merge.
("zero_extendhidi2", "zero_extendqidi2"): Merge.
("*zero_extendhidi2", "*zero_extendqidi2"): Merge.
Merged 2 define_split.
("*zero_extendhisi2", "*zero_extendqisi2"): Merge.
("*zero_extendhisi2_64", "*zero_extendqisi2_64"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99453 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:11:23 +0000 (17:11 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("COMPARE"): New mode macro.
("beq", "bne", "bgt", "bgtu", "blt", "bltu", "bge", "bgeu",
"ble", "bleu", "bunordered", "bordered", "buneq", "bunlt",
"bungt", "bunle", "bunge", "bltgt"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99452 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:07:57 +0000 (17:07 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("INT"): New mode macro.
("one_cmpldi2", "one_cmplsi2", "one_cmplhi2", "one_cmplqi2"):
Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99451 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:04:41 +0000 (17:04 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("GPR", "P"): New mode macros.
("cmpdi", "cmpsi"): Merge.
("strlendi", "strlensi"): Merge.
("*strlendi", "*strlensi"): Merge.
("movmemdi", "movmemsi"): Merge.
("clrmemdi", "clrmemsi"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99450 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-05-09 Adrian Straetling <straetling@de.ibm.com>
uweigand [Mon, 9 May 2005 17:01:36 +0000 (17:01 +0000)]
2005-05-09  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.md: ("HQI"): New mode macro.
("icm_lo", "icm_hi", "max_uint"): New mode attributes.
("*tmhi_full", "*tmqi_full"): Merge.
("*tsthiCCT", "*tstqiCCT"): Merge.
("*tsthi", "*tstqi"): Merge.
("*tsthi_cconly", "tstqi_cconly"): Merge.
("*sethighhisi", "*sethighqisi"): Merge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99449 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago2005-04-22 Bryce McKinlay <mckinlay@redhat.com>
bryce [Mon, 9 May 2005 16:52:36 +0000 (16:52 +0000)]
2005-04-22  Bryce McKinlay  <mckinlay@redhat.com>

* testsuite/lib/libjava.exp (libjava_find_gij): Use $objdir/.. to
find gij if get_multilibs fails.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99448 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * crtstuff.c, integrate.h, tree-scalar-evolution.h,
kazu [Mon, 9 May 2005 16:26:26 +0000 (16:26 +0000)]
* crtstuff.c, integrate.h, tree-scalar-evolution.h,
config/alpha/unicosmk.h, config/arc/arc.md,
config/arm/bpabi.h, config/arm/coff.h, config/arm/elf.h,
config/arm/ieee754-df.S, config/arm/ieee754-sf.S,
config/arm/netbsd.h, config/arm/pe.c, config/arm/pe.h,
config/arm/semi.h, config/arm/uclinux-elf.h,
config/arm/wince-pe.h, config/fr30/fr30.c,
config/rs6000/altivec.h: Update copyright.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99447 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/pdp11/pdp11.c (pdp11_output_function_prologue): Use
nathan [Mon, 9 May 2005 15:58:56 +0000 (15:58 +0000)]
* config/pdp11/pdp11.c (pdp11_output_function_prologue): Use
gcc_assert and gcc_unreachable as appropriate.
(pdp11_output_function_epilogue, output_move_double,
output_move_quad, print_operand_address, output_jump,
output_addr_const_pdp11): Likewise.
* config/pdp11/pdp11.h (FUNCTION_PROFILER,
ASM_OUTPUT_ALIGN): Likewise.
* config/pdp11/pdp11.md: Likewise.
(extendhisi2, subhi3, subqi3): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99446 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR middle-end/21237
dje [Mon, 9 May 2005 14:44:51 +0000 (14:44 +0000)]
PR middle-end/21237
* dojump.c (do_jump, MINUS_EXPR): Build NE_EXPR and fall through
to NE_EXPR case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99444 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * dojump.c (do_jump, MINUS_EXPR): Build NE_EXPR and fall through
dje [Mon, 9 May 2005 14:43:09 +0000 (14:43 +0000)]
* dojump.c (do_jump, MINUS_EXPR): Build NE_EXPR and fall through
to NE_EXPR case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99443 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/ia64/ia64.c: Fix a comment typo.
kazu [Mon, 9 May 2005 14:38:07 +0000 (14:38 +0000)]
* config/ia64/ia64.c: Fix a comment typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99442 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR target/21397
rearnsha [Mon, 9 May 2005 14:15:47 +0000 (14:15 +0000)]
PR target/21397
* arm.c (ARM_OPT_SET_CPU, ARM_OPT_SET_ARCH, ARM_OPT_SET_TUNE): Define.
(arm_override_options): Use them instead of manifest constants.  Don't
allow -march to override the -mtune setting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99441 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * MAINTAINERS: Remove self, add Nick Clifton as iq2000 maintainer.
scox [Mon, 9 May 2005 13:34:05 +0000 (13:34 +0000)]
* MAINTAINERS: Remove self, add Nick Clifton as iq2000 maintainer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99435 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago DR 434. bitset::to_string() hard to use [Ready]
redi [Mon, 9 May 2005 12:45:05 +0000 (12:45 +0000)]
DR 434. bitset::to_string() hard to use [Ready]
* include/debug/bitset (to_string): Add three overloads, taking
fewer template arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99433 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/iq2000/iq2000.c (abort_with_insn): Use fancy_abort.
nathan [Mon, 9 May 2005 12:10:29 +0000 (12:10 +0000)]
* config/iq2000/iq2000.c (abort_with_insn): Use fancy_abort.
(gen_int_relational): Use gcc_unreachable and gcc_assert as necessary.
(function_arg_advance, function_arg, save_restore_insns,
iq2000_expand_prologue, iq2000_output_conditional_branch,
expand_one_builtin, print_operand):
* config/iq2000/iq2000.md (tablejump): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99432 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago PR c++/21427
nathan [Mon, 9 May 2005 11:52:44 +0000 (11:52 +0000)]
PR c++/21427
* g++.dg/inherit/covariant13.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99431 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/mips/mips.h (processor_type): Add names for the 24K.
rsandifo [Mon, 9 May 2005 11:43:50 +0000 (11:43 +0000)]
* config/mips/mips.h (processor_type): Add names for the 24K.
* config/mips/mips.c (mips_cpu_info_table): Add names for the 24K
processor family.
* config/mips/mips.md (cnv_mode): New attribute for recording the
conversion types of float convert insns.
(cpu): Add 24k and 24kx.
(include): Include 24k.md file.
(truncdfsf2, extendsfdf2, fix_truncdfsi2_insn, fix_truncdfsi2_macro)
(fix_truncdfdi2, fix_truncsfdi2, floatsidf2, floatdidf2, floatsisf2)
(floatdisf2): Setup cnv_mode.
(fix_truncsfsi2_insn, fix_truncsfsi2_macro): Changed mode to SF and
setup cnv_mode.
* config/mips/24k.md: New file, contains 24k DFA pipeline
description.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99429 138bc75d-0d04-0410-961f-82ee72b054a4

19 years ago * config/sh/sh.c (print_operand_address): Use gcc_assert and
nathan [Mon, 9 May 2005 11:24:17 +0000 (11:24 +0000)]
* config/sh/sh.c (print_operand_address): Use gcc_assert and
gcc_unreachable as appropriate.
(print_operand, prepare_move_operands, prepare_scc_operands,
output_movedouble, output_branch, shift_insns_rtx, gen_shifty_op,
gen_shl_and, shl_sext_kind, gen_datalabel_ref, dump_table,
fixup_mova, gen_far_branch, sh_reorg, split_branches,
final_prescan_insn, output_stack_adjust, sh_expand_epilogue,
sh_set_return_address, sh_setup_incoming_varargs,
initial_elimination_offset, sh_pch_valid_p, get_free_reg,
sh_expand_builtin, sh_output_mi_thunk, extract_sfunc_addr,
check_use_sfunc_addr): Likewise.
* config/sh/netbsd-elf.h (FUNCTION_PROFILER): Likewise.
* config/sh/sh.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise.
* config/sh/symbian.c (sh_symbian_mark_dllexport,
sh_symbian_mark_dllimport): Likewise.
* config/sh/sh.md: Likewise.
(movdicc, call_pop, call_value_pop, casesi_worker_1,
casesi_worker_2, casesi_shift_media, casesi_load_media,
return_media): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99425 138bc75d-0d04-0410-961f-82ee72b054a4