Commit Graph

7477 Commits

Author SHA1 Message Date
Mike Stump
a4443a0855 37th Cygnus<->FSF merge
From-SVN: r7290
1994-05-13 02:46:07 +00:00
Mike Stump
5dab5552a1 calls.c (expand_call): Only destroy temporaries at the end of function calls, if flag_short_temps is set.
* calls.c (expand_call): Only destroy temporaries at the end
        of function calls, if flag_short_temps is set.
        * expr.c (safe_from_p, expand_expr): Handle CLEANUP_POINT_EXPRs.
        * expr.c (expand_expr): Improve handling of temporaries inside
        COND_EXPRs, cures call to sorry.
        * expr.c (defer_cleanups_to): New routine to handle the deferral
        of cleanups.
        * flags.h (flag_short_temps): New flag, to allow better control
        over the lifetime of temporaries.
        * toplev.c (flag_short_temps, lang_options): Ditto.
        * tree.def (CLEANUP_POINT_EXPR): Add, to allow better control over
        the lifetime of temporaries.

From-SVN: r7289
1994-05-13 00:19:57 +00:00
Richard Kenner
51b8fc2c69 (function units): Numerous cycle count change.
(zero_extendqidi2, extendqidi2, zero_extendhidi2): New patterns.
(extendhidi2, zero_extendsidi2, extendsidi2): Likewise.
(zero_extendqisi2, zero_extendqihi2, zero_extendhisi2): Use
andil/andi instead of rlinm/rlwinm.
(zero_extendqihi2): Add condition register variants.
(extendqisi2, extendqihi2): Use extsb for PowerPC.
(adddi3, subdi3, negdi2, ashrdi3): Emulate only if !TARGET_POWERPC64.
(movdf, movdi, movti): New PowerPC64 versions.
(load/store with update): New PowerPC64 patterns.

From-SVN: r7288
1994-05-12 19:33:39 -04:00
Richard Earnshaw
8de7634efb Richard Earnshaw (rwe11@cl.cam.ac.uk)
From-SVN: r7287
1994-05-12 19:14:37 -04:00
Bill Cox
09130b7890 Various Lynx-related fixups. To math.h, string.h and curses.h.
From-SVN: r7286
1994-05-12 22:51:00 +00:00
Richard Kenner
c92d992a81 (m16m): Change first arg to int; all callers changed.
From-SVN: r7285
1994-05-12 18:50:45 -04:00
Richard Kenner
c831a92041 (find_reloads): Don't change a secondary reload to
RELOAD_FOR_OPERAND_ADDRESS.

From-SVN: r7284
1994-05-12 18:42:15 -04:00
Richard Kenner
6673dddf4b (assign_parms): Fix typo in previous change.
From-SVN: r7283
1994-05-12 18:11:20 -04:00
Richard Kenner
b2bf5aef7a Revert to identifiers for mode attributes.
From-SVN: r7282
1994-05-12 15:48:39 -04:00
Richard Kenner
389da36245 (decl_attributes): Revert to identifiers for mode attributes.
From-SVN: r7281
1994-05-12 15:48:11 -04:00
Richard Kenner
8749aa2f0e (lookup_name_current_level_global): New macro.
From-SVN: r7280
1994-05-12 15:41:32 -04:00
Jim Wilson
2305bcadd5 (store_fixed_bit_field): Delete code to handle MODE_FLOAT values here.
(store_fixed_bit_field): Delete code to handle
MODE_FLOAT values here.
(store_bit_field): Put it here instead.

From-SVN: r7279
1994-05-11 14:50:11 -07:00
Jim Wilson
7b3ab05e78 (cse_insn): Set src_eqv if the dest is a STRICT_LOW_PART.
From-SVN: r7278
1994-05-11 14:44:22 -07:00
Richard Kenner
c5bd3be879 (clobbers_to): Deleted.
(call_internal, call_value_internal): New patterns.
(call, call_value): Just call new patterns and a29k_clobbers_to.

From-SVN: r7277
1994-05-11 16:50:50 -04:00
Richard Kenner
f5fa450784 (a29k_clobbers_to): New function.
From-SVN: r7276
1994-05-11 16:50:16 -04:00
Richard Kenner
13275056a7 (layout_type): Use POINTER_SIZE, instead of width of Pmode, when
appropriate.

From-SVN: r7275
1994-05-11 16:26:29 -04:00
Richard Kenner
6d100794d0 (expand_builtin_apply): Put new function usage data at end of any data
already there.

From-SVN: r7274
1994-05-11 16:23:11 -04:00
Richard Kenner
e59e60a78f (emit_call_1): Put new function usage data at end of any data already
there.

From-SVN: r7273
1994-05-11 16:22:02 -04:00
Richard Kenner
1af0b2da29 (sched_analyze_insn): Fix typo in last change.
From-SVN: r7272
1994-05-11 16:18:08 -04:00
Ian Lance Taylor
d62288093b Don't recursively search symlinks to `.'.
From-SVN: r7271
1994-05-11 16:12:15 +00:00
Doug Evans
d7715b7064 (process_command): Kludge in stageN/../include instead of include.
From-SVN: r7270
1994-05-10 21:49:41 +00:00
Jim Wilson
b3f741ed3a (*TF*_LIBCALL): Delete `*' from libcall name.
From-SVN: r7269
1994-05-09 18:05:41 -07:00
Richard Kenner
51a52b63e5 (output_move_dconst): For some integer constants, use movxwd/movd
instead of movxbd/movxwd.

From-SVN: r7268
1994-05-09 18:42:04 -04:00
Richard Kenner
d5ea2ac4c7 (delete_if_ordinary): New function.
(delete_temp_files, delete_failure_queue): Call it.

From-SVN: r7267
1994-05-09 18:32:57 -04:00
Richard Kenner
5a76b34913 (mark_{referenced,set}_resources): Fix typos in last change.
From-SVN: r7266
1994-05-07 17:52:53 -04:00
Richard Kenner
b87b7ecd73 (emit_reload_insns): Don't try to delete output reload if there isn't
one.

From-SVN: r7265
1994-05-07 17:48:59 -04:00
Richard Kenner
184ff798d9 (REG_ALLOC_ORDER): New macro.
From-SVN: r7264
1994-05-07 12:21:28 -04:00
Richard Kenner
b288f2b339 (sched_analyze_insn, attach_deaths_insn): Look at
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7263
1994-05-07 12:16:15 -04:00
Richard Kenner
ac8ec8c0c9 (LIB_SPEC): Support -fshared-data.
(CPP_SPEC): Set _SEQUENT_ to 1.
(SHARED_SECTION_ASM_OP, ASM_OUTPUT_SHARED_COMMON): Supply new macros.
(SHARED_BSS_SECTION_ASM_OP, BSS_SECTION_FUNCTION): Likewise.

From-SVN: r7262
1994-05-07 12:12:53 -04:00
Richard Kenner
19a9014fab (choose_reload_regs): Remove previous change.
From-SVN: r7261
1994-05-07 10:09:32 -04:00
Richard Kenner
5a783256bf Fix typo in comment.
From-SVN: r7260
1994-05-07 10:05:01 -04:00
Doug Evans
5c56efde0f (TARGET_FRW): Add note saying this option is deprecated.
(TARGET_FLAT): Renamed from TARGET_FRW_COMPAT.
(TARGET_SWITCHES): Delete references to -mfrw, -mfrw-compat.  Add -mflat.
(CONDITIONAL_REGISTER_USAGE): If -mflat, fix %i7, rename "%fp"
to "%i7", and make %g7 a global_reg.
(FRAME_POINTER_REQUIRED): Handle -mflat.
(INITIAL_FRAME_POINTER_OFFSET): Likewise.
(ARG_POINTER_REGNUM): Explicitly say it's the frame pointer.
(LEAF_REGISTERS): Make %g7 not a leaf register.
(leaf_reg_backmap): Delete.
(LEAF_REG_BACKMAP): Likewise.
(FUNCTION_PROLOGUE): Handle -mflat.
(FUNCTION_EPILOGUE): Likewise.
(DELAY_SLOTS_FOR_EPILOGUE): Likewise.
(ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.

From-SVN: r7259
1994-05-07 00:31:51 +00:00
Doug Evans
c6aa9ce122 (leaf_reg_backmap): Delete.
(sparc_flat_compute_frame_size): Renamed from
sparc_frw_compute_frame_size.  All callers changed.
(sparc_flat_save_restore): Likewise.
(sparc_flat_output_function_prologue): Likewise.
Delete decl of call_used_regs.
Delete reference to frame_base_name, use frame pointer explicitly.
Print prologue end marker.
(sparc_flat_output_function_epilogue): Likewise (renaming).
Delete decls of asm_out_data_file, asm_out_file, call_used_regs.
Print epilogue start marker.
(sparc_flat_epilogue_delay_slots): Likewise (renaming).
(sparc_flat_eligible_for_epilogue_delay): Likewise.

From-SVN: r7258
1994-05-07 00:30:10 +00:00
Richard Kenner
5e6aa5131b (find_reloads): Ignore alternatives that will not be reloadable due to
PREFERRED_RELOAD_CLASS.

From-SVN: r7257
1994-05-06 18:55:32 -04:00
Richard Kenner
a2cd7b4554 (decl_attributes): Move the attribute recognition and rejection here from c-parse.in.
(decl_attributes): Move the attribute recognition and rejection here from
c-parse.in.
(decl_attributes): Use VALID_MACHINE_ATTRIBUTE macro.

From-SVN: r7256
1994-05-06 18:32:17 -04:00
Richard Kenner
0c7f6f66c4 (print_node): Print attributes.
From-SVN: r7255
1994-05-06 18:31:50 -04:00
Richard Kenner
4b027d160e (common_type): Add attribute merging.
(comp_types): Use COMP_TYPE_ATTRIBUTES macro.

From-SVN: r7254
1994-05-06 18:29:58 -04:00
Richard Kenner
91e97eb8cb (TYPE_HASH): Move definition to top of file.
(make_node): Add support for SET_DEFAULT_TYPE_ATTRIBUTES.
(build_type_attribute_variant): New function.
(type_hash_lookup): Check if the attributes match.
(attribute_list_{equal,contained}): New functions.

From-SVN: r7253
1994-05-06 18:29:26 -04:00
Richard Kenner
660b43c865 Rewrite attribute parsing; update the expected conflicts and state
numbers.

From-SVN: r7252
1994-05-06 18:28:47 -04:00
Richard Kenner
bad1b4ba20 (TYPE_ATTRIBUTES): New macro.
(struct tree_type): attributes, new field.
(precision): Move this field up for better alignment.
(attribute_list_{equal,contained}): Prototype for new functions.
(build_type_attribute_variant): Prototype for new function.

From-SVN: r7251
1994-05-06 18:28:08 -04:00
Richard Kenner
447502c7b2 (init_reg_sets_1): Eliminate several permanent call_fixed_regs.
From-SVN: r7250
1994-05-06 18:02:55 -04:00
Richard Kenner
e21fa13af1 (stupid_life_analysis): Check the usage information on CALL_INSNs.
From-SVN: r7249
1994-05-06 17:54:08 -04:00
Richard Kenner
d7e09326f2 (save_for_inline_copying, expand_inline_function): Copy
CALL_INSN_FUNCTION_USAGE field.

From-SVN: r7248
1994-05-06 17:53:31 -04:00
Richard Kenner
f88b0a82c3 (mark_referenced_resources, mark_set_resources): Change from USE and
CLOBBER insns to using CALL_INSN_FUNCTION_USAGE.

From-SVN: r7247
1994-05-06 17:52:34 -04:00
Richard Kenner
e3c69b8a5d (emit_reload_insns): Change from USE and CLOBBER insns to using
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7246
1994-05-06 17:51:42 -04:00
Richard Kenner
47b0bb9450 (find_cross_jump, get_label_{before,after}): Change from USE and
CLOBBER insns to using CALL_INSN_FUNCTION_USAGE.

From-SVN: r7245
1994-05-06 17:50:55 -04:00
Richard Kenner
5fa7422be7 (fixup_var_refs_insns): Change from USE and CLOBBER insns to using
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7244
1994-05-06 17:50:04 -04:00
Richard Kenner
0e6362d984 (insert_save_restore): Change from USE and CLOBBER insns to using
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7243
1994-05-06 17:49:35 -04:00
Richard Kenner
6b67ec08ce (flow_analysis, find_basic_blocks): Change from USE and CLOBBER insns
to using CALL_INSN_FUNCTION_USAGE.

From-SVN: r7242
1994-05-06 17:48:55 -04:00
Richard Kenner
8c99eaf6eb (use_regs): Change from USE and CLOBBER insns to using
CALL_INSN_FUNCTION_USAGE.

From-SVN: r7241
1994-05-06 17:48:22 -04:00