Commit Graph

9074 Commits

Author SHA1 Message Date
Michael Meissner
bb68ff55b1 Silence warnings on uminsi3, umaxsi3.
From-SVN: r9100
1995-03-01 19:09:39 +00:00
Richard Kenner
021035770a (decode_field_reference): Don't check TREE_CODE of EXP; let get_inner_reference decide if have reference.
(decode_field_reference): Don't check TREE_CODE of EXP; let
get_inner_reference decide if have reference.
Allow no bit reference if have AND_MASK.
(all_ones_mask_p): Use tree_int_cst_equal, not operand_equal_p.
(unextend): New function.
(fold_truthop): For constant cases, use new function, rework
conversion, and warn if comparison can never be true.

From-SVN: r9099
1995-03-01 06:48:17 -05:00
Richard Kenner
f635a84d96 (store_expr): Do conversion in two steps for promoted lhs.
From-SVN: r9098
1995-03-01 06:39:01 -05:00
Per Bothner
d72471fd1a * tree.c (staticp): Use FUNCTION_NEEDS_STATIC_CHAIN.
From-SVN: r9097
1995-02-28 15:06:49 -08:00
Per Bothner
7ad8c4bf11 function.c (lookup_static_chain): Check for a static chain using FUNCTION_NEEDS_STATIC_CHAIN.
* function.c (lookup_static_chain):  Check for a static chain
using FUNCTION_NEEDS_STATIC_CHAIN.
(init_function_start):  Set current_function_needs_context depending
on FUNCTION_NEEDS_STATIC_CHAIN rather than decl_function_context.

From-SVN: r9096
1995-02-28 15:06:03 -08:00
Per Bothner
7c38c3ad5e expr.c (expand_expr): If non-local variable is expanded...
* expr.c (expand_expr):  If non-local variable is expanded,
set FUNCTION_NEEDS_STATIC_CHAIN (current_function_decl).
* expr.c (expand_expr case ADDR_EXPR):  Check for trampoline
using FUNCTION_NEEDS_STATIC_CHAIN, instead of decl_function_context.

From-SVN: r9095
1995-02-28 15:05:01 -08:00
Michael Meissner
dc4f83ca6a More soft-float/powerpc patches.
From-SVN: r9094
1995-02-28 22:16:31 +00:00
Michael Meissner
6e5ea9350f Correctly reload r30 if -mrelocatable
From-SVN: r9093
1995-02-28 21:39:57 +00:00
Doug Evans
2039696776 (rest_of_compilation): Defer output of static inlines
even if not optimizing, they may never be referenced.

From-SVN: r9092
1995-02-28 19:46:31 +00:00
Doug Evans
52cf95a7d4 (do_include): Check for redundant file before opening in relative path case.
(do_include): Check for redundant file before opening in
relative path case.  Don't call fstat unnecessarily.

From-SVN: r9091
1995-02-27 22:06:25 +00:00
Jim Wilson
e7faa2f6cb (muldi3_internal): Change dmul to dmult.
From-SVN: r9090
1995-02-27 11:33:18 -08:00
Jeff Law
9ccd072bd4 pa.c (hppa_expand_prologue): Don't save the PIC register into the stack for functions which have no stack of...
* pa.c (hppa_expand_prologue): Don't save the PIC register into
        the stack for functions which have no stack of their own.

From-SVN: r9089
1995-02-27 00:30:31 -07:00
Roland McGrath
6ddaea1c2f (ASM_SPEC): Macro removed.
From-SVN: r9088
1995-02-27 05:43:24 +00:00
Doug Evans
75301d683a (find_reloads_address): Fix typo in reg+const case.
From-SVN: r9087
1995-02-27 01:21:28 +00:00
Doug Evans
da0d7cb1ea (Makefile): Delete config.run afterwards.
(disclean): Delete config.run.

From-SVN: r9086
1995-02-25 15:18:34 +00:00
Doug Evans
2628b9d33d (print_search_dirs): New variable.
(build_search_list): New function.
(putenv_from_prefixes): Call it.
(option_map): New option --print-search-dirs.
(process_command): Handle it.
(main): Print installation directory and exec/startfile_prefixes if
--print-search-dirs given.

From-SVN: r9085
1995-02-25 15:16:38 +00:00
Richard Kenner
b2a68403f8 (mips_fill_delay_slot): Fix typo in call to FP_REG_P.
From-SVN: r9084
1995-02-25 08:42:37 -05:00
Richard Kenner
e0fb902946 (ASM_SPEC): Pass -pg to assembler.
(FUNCTION_PROFILER): Do nothing; the assembler does it for us.

From-SVN: r9083
1995-02-25 08:36:33 -05:00
Richard Kenner
3a942930d4 (RTX_COSTS): Add cost of FFS.
From-SVN: r9082
1995-02-25 08:07:46 -05:00
Richard Kenner
a9c6464d87 (simplify_unary_operation): If operand mode is VOIDmode for
UNSIGNED_FLOAT and operand looks negative, can't simplify.

From-SVN: r9081
1995-02-25 06:55:11 -05:00
Richard Kenner
7a96832ab0 Remove unneeded tests on HOST_BITS_PER_INT from some extra conditions.
Use low_32_bit_operand for (plus:DI (zero_extend:DI ..) ..) cases.

From-SVN: r9080
1995-02-25 06:52:06 -05:00
Richard Kenner
1c71b69da6 (PREDICATE_CODES): Add low_32_bit_operand.
From-SVN: r9079
1995-02-25 06:51:41 -05:00
Richard Kenner
914c2e776d (low_32_bit_operand): New function.
From-SVN: r9078
1995-02-25 06:51:17 -05:00
Roland McGrath
c38e6998e0 (POSIX): Define this macro.
From-SVN: r9077
1995-02-25 06:41:27 +00:00
Roland McGrath
ae222957c6 (GNU_CPP_PREDEFINES): Add missing backslash.
From-SVN: r9076
1995-02-25 05:49:23 +00:00
Jim Wilson
9e94dc88d3 (relax_delay_slots): When searching for next CODE_LABEL,
use next_real_insn not next_active_insn.

From-SVN: r9075
1995-02-24 18:40:03 -08:00
Jim Wilson
ed73e9f119 (va_end): Expand to a void expression instead of nothing.
From-SVN: r9074
1995-02-24 18:35:35 -08:00
Jim Wilson
ce4b43f74b *** empty log message ***
From-SVN: r9073
1995-02-24 18:34:27 -08:00
Jim Wilson
4d53757da9 (pushdecl): When have a duplicate decl, and it is global,
delete lookup_name name in test for return.
(redeclaration_error_message): When newdecl is a block level
declaration, use lookup_name_current_level instead of DECL_CONTEXT.

From-SVN: r9072
1995-02-24 18:21:37 -08:00
Jim Wilson
9791111f79 (PACKSTRUCT_BIT, TARGET_PACKSTRUCT): Change to PADSTRUCT.
Add comment saying that the option is not useful.
(TARGET_SWITCHES): Change -mpackstruct option to -mpadstruct.
(STRUCTURE_SIZE_BOUNDARY): Change PACKSTRUCT to PADSTRUCT changing
default value from 32 to 8.

From-SVN: r9071
1995-02-24 18:16:06 -08:00
Jim Wilson
dfe8a5acb9 (PUSHSECTION_FORMAT): Add a leading tab.
From-SVN: r9070
1995-02-24 17:51:41 -08:00
Jim Wilson
f9409c3ac3 (expand_expr, case COMPONENT_REF): Don't fetch unaligned
field if we only want its address.

From-SVN: r9069
1995-02-24 17:45:43 -08:00
Jeff Law
2b10af4fab Initial revision
From-SVN: r9068
1995-02-24 17:15:36 -07:00
Jim Wilson
5cca7d1778 (fp_literal_one, fp_literal_zero): Don't accept VOIDmode.
(i960_output_ldconst): In DFmode code, delete code to handle FP_REG_P
target.  In DFmode and SFmode code, delete test for HOST_FLOAT_FORMAT
== TARGET_FLOAT_FORMAT.

From-SVN: r9067
1995-02-24 14:51:04 -08:00
Jim Wilson
819f6d5959 (REAL_ARITHMETIC): Define.
(LEGITIMATE_CONSTANT_P): Pass argument mode not VOIDmode to fp_literal.

From-SVN: r9066
1995-02-24 14:50:34 -08:00
Jim Wilson
0e089454b8 (CC1_SPEC): Don't output implicit -gstabs or -gcoff option
if user gave an explicit one.

From-SVN: r9065
1995-02-24 14:42:30 -08:00
Jim Wilson
b02e2417a2 (CC1_SPEC): Don't output implicit -gstabs or -gcoff option if user gave an explicit one.
(CC1_SPEC): Don't output implicit -gstabs or -gcoff option
if user gave an explicit one.
(CC1_SPEC): Likewise.

From-SVN: r9064
1995-02-24 14:41:49 -08:00
Jim Wilson
f31093e263 (GDB_INV_REF_REGPARM_STABS_LETTER): New macro.
(dbxout_parms): For gdb, output use GDB_INV_REF_REGPARM_STABS_LETTER
for parameters passed by invisible reference in registers.

From-SVN: r9063
1995-02-24 14:33:14 -08:00
Jim Wilson
16bea517d3 Correct typos and formatting problems.
(add_constant, current_function_pretend_args_size,
flag_traditional, table_lab): Delete unnecessary declarations.
(sh_cpu): Change type from attr_cpu to processor_type.
(need_slot, output_shift, lshiftrt_insns, howshift,
pop_operand): Delete.
(print_operand, output_branch): Delete calls to need_slot.
(synth_constant): Comment that it doesn't work.
(output_movedouble): Handle PRE_DEC dest not POST_INC dest.
(output_options): Don't use flag_traditional.
(shift_insns): Correct numbers to optimal sequences.
(shift_amounts): New table.
(shift_insns_rtx): New function.
(shiftinsns): Combine LSHIFTRT and ASHIFT cases.
(shiftcosts): Return true costs of shifts instead of estimate of 1.
(gen_ashift): Handle negative shift amounts.  Call gen_lshrsi3_m
for single bit LSHIFTRT, and gen_lshrisi3_k for multiple bit shifts.
(gen_shifty_op): Handle negative shift amounts at top.  Generate
optimal sequences for ASHIFT and LSHIFTRT.
(find_barrier): Correct pattern for matching mova instructions.
(general_movsrc_operand): Delete redundant test for (MEM LABEL_REF).
Don't reject POST_INC address for size > 4.
(general_movdst_operand): Don't reject PRE_DEC address for size > 4.

From-SVN: r9062
1995-02-24 14:19:23 -08:00
Jim Wilson
994295f28a Correct typos and formatting problems.
(MODE_DISP_OK_[12]): Delete.
(GO_IF_LEGITIMATE_INDEX): Delete uses of MODE_DISP_OK_[12].
(RTX_COSTS): Add LSHIFTRT.
(table_lab): Delete declaration.
(enum processor_type): New enum.
(sh_cpu_attr): New macro.
(sh_cpu): Change type to enum processor_type to avoid incomplete
enum type.

From-SVN: r9061
1995-02-24 14:18:29 -08:00
Jim Wilson
07a45e5ce1 Correct typos and formatting problems.
(cpu): Use sh_cpu_attr not sh_cpu.
(adddi3, subdi3, udivsi3-1, divsi3-1, mulsi3_call-1, ashrsi2_16,
ashrsi2_31, dect, casesi_worker): Use arith_reg_operand not
register_operand.
(ashlsi3_n, lshrsi3_n): Enable pattern.  Set length correctly.
Use '#' to output it.
(ashlsi3_n+1, lshrsi3_n+1): New patterns to split shifts.
(ashlsi3, lshrsi3): Use shiftby_operand instead of gen_shifty_op.
(lshlsi3_m): New pattern for single bit shifts.
(lshlsi3_k): Only handle multiple bit shifts.
(negc): Use IOR not PLUS to set carry bit.
(push+2, pop+2, movsi_pi, movdi-2, movdf_k-1, movsf_i-1): Delete.
(movsi_i, movqi_i, movhi_i): Delete redundant < and > constraints.
(movsf_i): Delete incorrect < and > constraints.

From-SVN: r9060
1995-02-24 14:17:21 -08:00
Jim Wilson
b1e9510ec9 (mips_secondary_reload_class): Also handle SUBREGs.
From-SVN: r9059
1995-02-24 13:17:51 -08:00
Jim Wilson
0e1cdc75b1 (madsi): Don't use '+' constraint in a clobber.
(madsi_highpart, umadsi_highpart): Delete.

From-SVN: r9058
1995-02-24 13:17:17 -08:00
Jim Wilson
dc2fba6003 (dbxout_parms): For parameters passed in memory...
(dbxout_parms): For parameters passed in memory, delete
obsolete code to handle parameters converted and stored back to
the stack slot where they were passed in.
(dbxout_reg_parms): Delete obsolete ifdefed out code.  Combine
redundant PARM_PASSED_IN_MEMORY tests.  For case where parameter
lives in memory, output stab if it doesn't live where it was passed.

From-SVN: r9057
1995-02-24 12:55:10 -08:00
Mike Stump
d0a71ec5ce undo dje's indaverent undo of my work. (remove -Wenum-clash)
From-SVN: r9056
1995-02-24 19:53:35 +00:00
Michael Meissner
58733f9609 Define long double versions of sin/cos
From-SVN: r9055
1995-02-24 18:07:00 +00:00
Mike Stump
f33985c6ed rs6000.h (RETURN_ADDR_RTX): Add definition to support __builtin_return_address and __builtin_frame_address...
* rs6000.h/rs6000.h (RETURN_ADDR_RTX): Add definition to support
        __builtin_return_address and __builtin_frame_address on the
        rs6000.  This is necessary to support exception handling in g++ on
        the rs6000.
Fixes eh6.C on rs6000.

From-SVN: r9054
1995-02-23 22:23:33 +00:00
Michael Meissner
d14a6d05b2 Support -msoft-float; support eabi -mrelocatable
From-SVN: r9053
1995-02-23 20:30:26 +00:00
Richard Kenner
919e340a21 (ld): Add missing backslash to make continuation line.
From-SVN: r9052
1995-02-23 08:49:06 -05:00
Richard Kenner
3578445a3a (gen_stdcall_suffix): Deleted.
From-SVN: r9051
1995-02-23 07:56:39 -05:00