Commit Graph

1758 Commits

Author SHA1 Message Date
Richard Stallman
027cec3ba1 (install-cross-tools): Install nm from tooldir.
From-SVN: r1759
1992-08-04 00:28:05 +00:00
Richard Kenner
600a5d8863 (gen_rtx, case REG): Don't use frame_pointer_rtx or arg_pointer_rtx if
reload is in progress.

From-SVN: r1758
1992-08-02 21:44:23 -04:00
Richard Kenner
0782cd717f (jump_optimize): When replacing jumps with logical expressions, use
preserve_subexpressions_p.

From-SVN: r1757
1992-08-02 21:43:53 -04:00
Richard Kenner
1b2ac43859 (identify_blocks, reorder_blocks): Don't use SET_NOTE_BLOCK_NUMBER.
From-SVN: r1756
1992-08-02 21:43:22 -04:00
Richard Kenner
3da3fb2f61 (NOTE_BLOCK_NUMBER): Change definition to simpler form.
(SET_NOTE_BLOCK_NUMBER): Deleted.

From-SVN: r1755
1992-08-02 21:42:35 -04:00
Richard Kenner
b61b1c9177 (main): Don't cast pointers to int unnecessarily.
From-SVN: r1754
1992-08-02 21:41:53 -04:00
Richard Kenner
fb351073b9 (const_hash, SYMHASH): Use HOST_WIDE_INT instead of int when casting
pointers to integers.

From-SVN: r1753
1992-08-02 21:41:01 -04:00
Richard Kenner
d69c4bd158 (TYPE_HASH): Use HOST_WIDE_INT instead of int when casting pointers to
integers.

From-SVN: r1752
1992-08-02 21:40:19 -04:00
Richard Kenner
66b4c3adf7 (print_node): Use HOST_WIDE_INT instead of int when casting pointers
to integers.

From-SVN: r1751
1992-08-02 21:39:37 -04:00
Richard Kenner
c4fd10e7e2 (canon_hash): Use HOST_WIDE_INT instead of int when casting pointers
to integers.

From-SVN: r1750
1992-08-02 21:38:38 -04:00
Richard Kenner
ab17642530 (expand_inline_function): Cast -1 to (HOST_WIDE_INT) first.
From-SVN: r1749
1992-08-02 21:37:53 -04:00
Richard Kenner
6fa5c10660 (find_use_as_address): Use HOST_WIDE_INT instead of int when comparing a pointer to an integer constant...
(find_use_as_address): Use HOST_WIDE_INT instead of int when comparing a
pointer to an integer constant; also when returning int.

From-SVN: r1748
1992-08-02 21:37:21 -04:00
Richard Kenner
854e97f078 (expand_call): Use HOST_WIDE_INT instead of int when comparing a
pointer to an integer constant.

From-SVN: r1747
1992-08-02 21:36:27 -04:00
Richard Kenner
d0ab8cd3f3 (reg_sign_bit_copies): New variable.
(combine_instructions): Initialize it.
(set_significant): Set it.
(try_combine): Set subst_low_cuid immediately before calling `subst' to
the INSN_CUID of the lowest insn involved in the call.   Change XOR with
out-of-range constant to (not (xor ...)).
Call both split_insns and find_split_point; pass extra parm to
find_split_point.
Record I2DEST's value if I2 now sets it; similarly for I1DEST.
(find_split_point): Add new arg INSN.
If AND'ing with a large single-bit constant and we only care about
equality with zero, replace with bit extraction.
Make two shifts for ZERO_EXTRACTs unless very narrow.
(subst): Move RESTART label earlier.
If we have a simple operation applied to IF_THEN_ELSE, move the operation
inside the two arms.
(subst, case SUBREG): Use force_to_mode.
(subst, case NOT): Change (not (xor X C)) to (xor X ~C).
(subst, case NEG): Remove (neg (abs X)); redundant.
Convert (neg (xor A 1)) to (plus A -1) if A is known to be 0 or 1.
(subst, case IF_THEN_ELSE): Simplify if an arm contains a register being
tested by substiting the known value.
Put constant integer in last arm if can reverse comparison.
(subst, case SET): Use gen_lowpart_for_combine.
(subst, case AND): Make IF_THEN_ELSE when appropriate.
(subst, case IOR): (ior A C) can sometimes be just C.
(subst, case XOR): Go back and restart when canonicalizing.
(subst, case ABS): Use num_sign_bit_copies.
(make_extraction): Call force_to_mode.
(make_compound_operation): Look at optabs rather that explicitly checking
for operations and assuming we have SImode.
Handle (ashiftrt (OP (ashift foo C1) C3) C2).
(force_to_mode): Only change mode of arithmetic if optab says we have
operation in that mode.
Remove unneeded ASHIFTRT; add handling for IF_THEN_ELSE.
(significant_bits, case NEG): Call num_sign_bit_copies.
(significant_bits, case ABS, case [US]{MIN,MAX}, IF_THEN_ELSE): New.
(num_sign_bit_copies): New function.
(simplify_shift_const): Remove ASHIFTRT if value is known -1 or 0.
Use num_sign_bit_copies to simplify (ashiftrt (ashift ...) ...)
and (ashiftrt (neg ...) ...).
Remove now redundant case when VAROP is a PLUS.
(simplify_comparison): If A is known to be -1 or 0, A != -1 is A == 0.
Simplify unsigned tests that really check the sign bit.
(simplify_comparison, case ASHIFTRT): Convert to LSHIFTRT if equality
comparison with zero.
(get_last_value): Check if the desired register is set in the
insn before the one whose INSN_CUID is subst_low_cuid.

From-SVN: r1746
1992-08-02 21:35:35 -04:00
Richard Kenner
cda0ec81ab (expand_builtin, case BUILT_INT_CONSTANT_P): Add missing call to
TREE_CODE.

From-SVN: r1745
1992-08-02 21:32:38 -04:00
Richard Kenner
b2f15f9433 (reload): Set reload_in_progress earlier.
From-SVN: r1744
1992-08-02 21:32:01 -04:00
Richard Kenner
c0b9d4c816 (optimize_bit_field_compare): Correct bogus use of types in expressions...
(optimize_bit_field_compare): Correct bogus use of types in
expressions; always do computation in a type wide enough for the
result.

From-SVN: r1743
1992-08-02 21:31:25 -04:00
Richard Stallman
fde9637ebe (ASM_OUTPUT_DWARF_STRING): redefinition was incorrect, and uneeded...
(ASM_OUTPUT_DWARF_STRING): redefinition was
incorrect, and uneeded; while Solaris as doesn't support .string, it
does support .asciz, and sparcv4.h takes care of including that definition.

From-SVN: r1742
1992-08-01 18:20:03 +00:00
Richard Stallman
6c07cb3c1d (HANDLE_PRAGMA_WEAK): Define only if SET_ASM_OP defined.
From-SVN: r1741
1992-08-01 18:18:31 +00:00
Richard Stallman
165b394157 Find the links to directories by finding each link and testing it with test.
From-SVN: r1740
1992-08-01 18:11:28 +00:00
Richard Stallman
e2301a83da (layout_record): Take account of
maximum_field_alignment when using the field's alignment.

From-SVN: r1739
1992-08-01 18:08:36 +00:00
Richard Stallman
88dd95c1c0 (yylex): When traditional, convert 0x80000000 to -0x80000000.
From-SVN: r1738
1992-08-01 18:07:21 +00:00
Richard Kenner
aaf5be8b93 entered into RCS
From-SVN: r1737
1992-07-31 13:30:09 -04:00
Richard Kenner
ce65beeb7c Include stddef.h when __STDC__ is defined.
From-SVN: r1736
1992-07-31 12:08:48 -04:00
Richard Kenner
bf52625270 (reposition_prologue_and_epilogue_notes): Search for the notes without using...
(reposition_prologue_and_epilogue_notes): Search for the notes without
using basic_block_end[0] or basic_block_head[N-1].

From-SVN: r1735
1992-07-31 08:18:06 -04:00
Richard Kenner
6842690ec1 Add declarations for malloc and realloc..
(PTR_INT_TYPE): New macro.
(pcfinclude): Use it.

From-SVN: r1734
1992-07-31 08:16:45 -04:00
Richard Kenner
530fb43c7b (init_decl_processing): __builtin_return_address,
__builtin_frame_address, and __builtin_saveregs all return void *.

From-SVN: r1733
1992-07-31 08:15:55 -04:00
Richard Kenner
3dc4195c6a (convert_move): Put FROM into a register if it is a SUBREG.
From-SVN: r1732
1992-07-31 08:15:14 -04:00
Richard Kenner
58c8c59349 entered into RCS
From-SVN: r1731
1992-07-31 08:13:38 -04:00
Richard Kenner
510dd77e95 *** empty log message ***
From-SVN: r1730
1992-07-31 08:11:54 -04:00
Richard Stallman
87b36970b7 (LIMITS_H): Deleted.
(install-limits-h): Use glimits.h, not limits.h.

From-SVN: r1729
1992-07-31 06:33:59 +00:00
Richard Stallman
0c7b7f30eb entered into RCS
From-SVN: r1728
1992-07-31 06:29:36 +00:00
Richard Stallman
4ee194ec2b (dbxout_parms): Do something for structures
passed by invisible reference, and living in memory.

From-SVN: r1727
1992-07-31 06:15:53 +00:00
Richard Stallman
27f427f888 (duplicate_decls): Handle warn_redundant_decls here.
But don't warn if function definition follows a declaration.
(pushdecl): Don't handle it here.
(grokparms): Don't warn about non-prototype decl in system header.

From-SVN: r1726
1992-07-31 06:14:04 +00:00
Richard Stallman
412a4297f6 (convert): If main variants match,
but the type is not identical, make a NOP_EXPR.

From-SVN: r1725
1992-07-31 06:13:07 +00:00
Tom Wood
30e328058a (cpu attribute): List m88100 first for more efficient code in insn-attrtab.c.
(cpu attribute): List m88100 first for more efficient
        code in insn-attrtab.c.
(rotate/and split pattern): Fix typo.

From-SVN: r1724
1992-07-30 13:55:22 +00:00
Tom Wood
7ddb68857a (FUNCTION_BOUNDARY, ASM_OUTPUT_ALIGN_CODE): Pack code
more tightly for the m88110.

From-SVN: r1723
1992-07-30 13:54:57 +00:00
Richard Stallman
d0466d82e1 (BSS_SECTION_FUNCTION): Deleted.
From-SVN: r1722
1992-07-30 04:55:56 +00:00
Richard Stallman
b5f3ee5d2d (EXTRA_SECTION_FUNCTIONS): Deleted.
From-SVN: r1721
1992-07-30 04:55:37 +00:00
Richard Stallman
511682b808 (BSS_SECTION_FUNCTION): #undef before defining.
From-SVN: r1720
1992-07-30 04:55:14 +00:00
Richard Stallman
ae545650e3 (USE_CONST_SECTION): #undef before defining.
From-SVN: r1719
1992-07-30 04:54:52 +00:00
Richard Stallman
66c377f0bc (BSS_SECTION_FUNCTION): New macro.
(CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Enable these.

From-SVN: r1718
1992-07-30 04:54:24 +00:00
Richard Stallman
5be232214d entered into RCS
From-SVN: r1717
1992-07-30 04:02:41 +00:00
Jim Wilson
a4a408bf08 (cmpsi): Delete 'J' constraint.
From-SVN: r1716
1992-07-29 17:03:54 -07:00
Richard Stallman
7ede72fcf2 (link_command_spec): Accept -static but do nothing with it.
From-SVN: r1715
1992-07-29 22:55:25 +00:00
Richard Stallman
d9f8a19965 entered into RCS
From-SVN: r1714
1992-07-29 21:24:29 +00:00
Richard Stallman
89ccb80fc9 Add $newdirs into $files.
From-SVN: r1713
1992-07-29 04:46:29 +00:00
Richard Stallman
fd297e33f5 Don't repeat the directory-link-chasing loop more than twice.
Combine $prevdirs with $dirs--they had same value.
Properly discard $d itself from the output of find.

From-SVN: r1712
1992-07-29 04:44:02 +00:00
Richard Stallman
ef57b1e9f0 (decl_attributes): Call layout_decl with two arguments.
From-SVN: r1711
1992-07-29 03:46:49 +00:00
Richard Stallman
4b1f5e8c50 (make_insn_raw): Eliminate unused argument pat_formals. All calls changed.
(make_jump_insn_raw): Ditto.

From-SVN: r1710
1992-07-29 03:44:08 +00:00