Commit Graph

15043 Commits

Author SHA1 Message Date
Jeffrey A Law
aa2ae67960 emit-rtl.c (operand_subword): Correctly handle extracting a word from a CONST_DOUBLE for 16bit targets with...
* emit-rtl.c (operand_subword): Correctly handle extracting a word
	from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.

From-SVN: r17276
1998-01-01 05:55:19 -07:00
Jeff Law
9f1ff8e8ea Tweak from Kaveh.
From-SVN: r17275
1998-01-01 03:06:56 -07:00
Jeffrey A Law
2d490e3e4e mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate for first argument.
* mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
        for first argument.

From-SVN: r17274
1998-01-01 02:51:30 -07:00
Ian Lance Taylor
6e26218fc9 configure.in: Set and subsitute host_exeext.
* configure.in: Set and subsitute host_exeext.  Use it when creating
	the assembler and linker symlinks.
	* configure: Rebuild.
	* Makefile.in (exeext): Set to @host_exeext@.
	(build_exeext): New variable, set to @build_exeext@.
	(FLAGS_TO_PASS): Pass down build_exeext.
	(STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
 	programs.

From-SVN: r17267
1997-12-31 11:48:25 +00:00
Jeffrey A Law
1b31097e5d * mn10200.md (addsi3, subsi3): Fix thinkos.
From-SVN: r17266
1997-12-31 02:05:15 -07:00
Richard Henderson
194faace59 sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of save+restore.
* sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
save+restore.  Fix pic+big_offset delay slot.  Use "pic" case for
unix always, since we want to be able to thunk to functions in a
shared library from an application.

From-SVN: r17262
1997-12-29 16:02:54 -08:00
Ian Lance Taylor
975602f82c t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
* mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
        (LIB1ASMSRC, LIB1ASMFUNCS): Define.
More mips16 merge stuff.

From-SVN: r17261
1997-12-29 06:40:28 -07:00
Jeff Law
2d48c13dc2 expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF...
d
        * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
        offset's mode is not ptr_mode, convert it.

From-SVN: r17260
1997-12-29 06:15:21 -07:00
Jeff Law
0eb1ad44b6 expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF...
a
        * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
        offset's mode is not ptr_mode, convert it.

From-SVN: r17259
1997-12-29 06:15:11 -07:00
Michael Meissner
eff0f7ace5 Do not define inhibit_libc if it was already defined
From-SVN: r17258
1997-12-29 12:59:45 +00:00
Brendan Kehoe
6a4b833147 Don't make gperf depend upon libg++.
* config.shared (TOLIBGCXX) [DOING_GPERF]: Delete.
        (LIBS) [DOING_GPERF]: Make it just `-L../libstdc++ -lstdc++'.
Bring over from devo.

From-SVN: r17249
1997-12-28 03:24:10 -07:00
Jeffrey A Law
2c3a56ad15 flow.c (find_basic_blocks): Don't create a new basic block for calls in a LIBCALL block.
* flow.c (find_basic_blocks): Don't create a new basic block
        for calls in a LIBCALL block.

From-SVN: r17247
1997-12-27 16:34:14 -07:00
David Edelsohn
fc97718fe2 * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
From-SVN: r17246
1997-12-27 14:47:12 -07:00
Jeffrey A Law
5b5a2a1ecc * cse.c (rtx_cost): Remove conflicting default case.
From-SVN: r17245
1997-12-27 14:44:26 -07:00
Richard Henderson
128f7968b1 configure.in: Move default enabling of Haifa out of for loop.
* configure.in: Move default enabling of Haifa out of for loop.
        * configure: Rebuild.

From-SVN: r17244
1997-12-27 13:20:07 -08:00
Jeff Law
ab30fd533b Remove reference to CYGNUS LOCAL patch.
From-SVN: r17237
1997-12-24 17:01:34 -07:00
Jeffrey A Law
e81b4fbe92 * version.c: Bump for snapshot.
From-SVN: r17236
1997-12-24 17:00:58 -07:00
Teemu Torma
f24af81bca Makefile.in (GTHREAD_FLAGS): New var.
* Makefile.in (GTHREAD_FLAGS): New var.
	(LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
	(distclean): Remove gthr-default.h.
	* configure.in: Accept dce as a thread package.
	Check for thread.h and pthread.h.
	Link gthr-default.h to appropriate thread file and set
	gthread_flags.
	(hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
	include multilib definitions from pa/t-dce-thr.
	(sparc-*-solaris2*): Enable threads by default, if thread.h or
	pthread.h is found, preferring posix threads over solaris ones.
	* config/pa/t-dce-thr: New file.
	* config/pa/t-pa: Removed multilibs.
	* config/sparc/t-sol2: Ditto.
	* gthr.h: New file.
	* gthr-single.h: New file.
	* gthr-posix.h: New file.
	* gthr-solaris.h: New file.
	* gthr-dce.h: New file.
	* libgcc-thr.h: Removed.
	* objc/thr-dce.c: New file copied from thr-decosf1.c.
	* frame.c: Include gthr.h instead of libgcc-thr.h.
	* libgcc2.c: Include gthr.h instead of libgcc-thr.h.
	(eh_context_initialize): If __gthread_once fails, use static eh
	context.
	(eh_context_free): Call __gthread_key_dtor.

From-SVN: r17235
1997-12-24 16:56:08 -07:00
Jeffrey A Law
df3b6ab30e libstdc++.exp (test_libstdc++): Set LD_LIBRARY_PATH and SHLIB_PATH appropriately.
* lib/libstdc++.exp (test_libstdc++): Set LD_LIBRARY_PATH
        and SHLIB_PATH appropriately.

From-SVN: r17234
1997-12-24 16:29:39 -07:00
Jim Wilson
556c714b3d cse.c (max_insn_uid): New variable.
* cse.c (max_insn_uid): New variable.
        (invalidate): Remove CYGNUS LOCAL patch.
        (cse_around_loop): Use max_insn_uid.
        (cse_main): Set max_insn_uid.

From-SVN: r17231
1997-12-24 15:54:37 -07:00
Jeffrey A Law
d9a4ee007b * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
From-SVN: r17230
1997-12-24 15:31:54 -07:00
Jim Wilson
04bd620d20 abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT, and define __LONG_MAX__ appropriately.
* abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
        and define __LONG_MAX__ appropriately.  Add support for -mabi=X,
        -mlong64, and -mgp{32,64} options.
        * mips.c (mips_abi): Change type to int.
        * mips.h (enum mips_abi_type): Delete.
        (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
        (mips_abi): Change type to int.

From-SVN: r17229
1997-12-24 15:10:46 -07:00
John Carr
439d5a35d8 flags.h, [...]: Remove flag_alias_check; optimization is now always enabled.
* flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
        optimization is now always enabled.
        * calls.c (expand_call): Recognize C++ operator new as malloc-like
        function.
        * alias.c (memrefs_conflict_p): Eliminate tests now done by
        base_alias_check.
        (*_dependence): Call canon_rtx before base_alias_check.
        (init_alias_once): New function to precompute set of registers which
        can hold Pmode function arguments.
        * rtl.h: Declare init_alias_once.
        * toplev.c (compile_file): Call init_alias_once.

From-SVN: r17227
1997-12-24 14:44:46 -07:00
John Carr
6e73e66606 flags.h, [...]: Remove flag_alias_check; optimization is now always enabled.
* flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
        optimization is now always enabled.
        * calls.c (expand_call): Recognize C++ operator new as malloc-like
        function.
        * alias.c (memrefs_conflict_p): Eliminate tests now done by
        base_alias_check.
        (*_dependence): Call canon_rtx before base_alias_check.
        (init_alias_once): New function to precompute set of registers which
        can hold Pmode function arguments.
        * rtl.h: Declare init_alias_once.
        * toplev.c (compile_file): Call init_alias_once.

From-SVN: r17226
1997-12-24 14:39:44 -07:00
Jeffrey A Law
280e521f02 tree.c (restore_tree_status): Do not dereference a null pointer.
* tree.c (restore_tree_status): Do not dereference a null pointer.
Brought over from devo.  SHould fix 921215-1.c compilation failures.

From-SVN: r17225
1997-12-24 14:33:48 -07:00
Paul Eggert
95b8c0c8cb genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to RLIMIT_STACK.
* genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
        RLIMIT_STACK.  This maintains consistency with the recent, similar
        patch to cccp.c and toplev.c.

From-SVN: r17218
1997-12-23 04:55:03 -07:00
Jeffrey A Law
d3d1907aac * config.guess: HP 9000/803 is a PA1.1 machine.
From-SVN: r17217
1997-12-23 04:40:37 -07:00
Richard Henderson
71d9b4930e genattrtab.c (expand_units): For large nr opclasses, expand function_units_used with ORX to prevent blowups.
* genattrtab.c (expand_units): For large nr opclasses, expand
function_units_used with ORX to prevent blowups.  Tag with FFS.
(num_unit_opclasses): New variable.
(gen_unit): Update it.
(enum operator): Add ORX_OP.
(operate_exp): Treat ORX as or, except don't expand across an if.
Reuse number rtx's after operating on them.
(check_attr_value): Accept IOR, AND, & FFS.
(write_test_expr): Transmute `in_comparison' to `flags'.  Allow
for attribute value caching.  Handle CONST_STRING, IF_THEN_ELSE.
(write_expr_attr_cache, write_toplevel_expr): New functions.
(write_attr_get): Handle FFS-tagged expressions.
(make_canonical): Don't expand const attributes.
(convert_const_symbol_ref): Dike out.
(evaluate_eq_attr): Handle SYMBOL_REF.
(main): Don't emit get_attr_foo for const attributes.
* alpha.c (override_options): Reinstate PROCESSOR_EV6.
(alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
* alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
* alpha.md: Redo all of the scheduling, adding EV6 support, and
combining function units where possible.
(attr "type"): Split loads, stores, cmov into int/fp.  Combine
multiplies and divides.  Add EV6 sqrt, ftoi, itof.
(attr "opsize"): New attribute.
(sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
(movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
to control register allocation.
(movsi2-1, movdi2-1): Likewise.

From-SVN: r17212
1997-12-22 21:34:27 -08:00
Richard Henderson
b0435cf4cf alpha.h (CPP_PREDEFINES, [...]): Move OSF/1 specific defines out.
* alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
Move OSF/1 specific defines out.
* alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
Move Linux specific defines out.
(LINK_SPEC): Genericize.
(ASM_FILE_START): Emit .arch if using more than the base insn set.
(ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
(SDB_DEBUGGING_INFO): Remove; gas can't handle it.
(HANDLE_SYSV_PRAGMA): Define.
* alpha/osf.h: New file.
* alpha/linux.h: Split.  Retain file-format independant defines.
Import Linux bits from elf.h.
(CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES
(FUNCTION_PROFILER): _mcount takes its address in $28.
(MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
* alpha/linux-ecoff.h: New file.
* alpha/linux-elf.h: New file.
* alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
* alpha/win-nt.h (TARGET_DEFAULT): Define.
* configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
Add new headers as appropriate.
* configure.in (alpha*): Enable Haifa by default.
(*-*-winnt3*): Change to winnt*, since we're not v3 specific.
* configure: Rebuild.

From-SVN: r17211
1997-12-22 20:42:30 -08:00
Richard Henderson
5768f2112c Makefile.in (clean): Remove the stages with their objects here ...
* Makefile.in (clean): Remove the stages with their objects here ...
(distclean): ... instead of here.

From-SVN: r17210
1997-12-22 19:16:26 -08:00
Benjamin Kosnik
eeaf420b47 *** empty log message ***
From-SVN: r17202
1997-12-23 00:04:13 +00:00
Jeff Law
750caf0dea Opps. Forgot to check it in.
From-SVN: r17188
1997-12-22 03:05:04 -07:00
Kaveh R. Ghazi
7f85441b70 call.c (add_builtin_candidate): Add default case in enumeration switch.
* call.c (add_builtin_candidate): Add default case in enumeration
        switch.
        (build_new_op): Likewise.
        (convert_like): Likewise.
        * cvt.c (build_expr_type_conversion): Likewise.
        * tree.c (real_lvalue_p): Likewise.
        (lvalue_p): Likewise.
        (cp_tree_equal): Likewise.
        * typeck.c (comptypes): Likewise.
        (build_component_ref): Likewise.
        (build_function_call_real): Likewise.
        (build_binary_op_nodefault): Likewise.
        (build_unary_op): Likewise.
        (build_modify_expr): Likewise.
        * typeck2.c (initializer_constant_valid_p): Likewise.

From-SVN: r17187
1997-12-22 02:35:49 -07:00
Kaveh R. Ghazi
9e04c65a52 cse.c (rtx_cost): Add default case in enumeration switch.
* cse.c (rtx_cost): Add default case in enumeration switch.
        * fix-header.c (recognized_macro): Likewise.
        (recognized_extern): Likewise.
        (write_rbrac): Likewise.
        * objc/objc-act.c (encode_aggregate): Likewise.
        (gen_declarator): Likewise.
        (gen_declspecs): Likewise.

From-SVN: r17186
1997-12-22 02:31:41 -07:00
Jeff Law
04029ca245 haifa-sched.c (create_reg_dead_note): Detect and handle another case where we kill more regs after sched than were...
* haifa-sched.c (create_reg_dead_note): Detect and handle another
        case where we kill more regs after sched than were killed before
        sched.
        * sched.c (create_reg_dead_note): Similarly.

From-SVN: r17183
1997-12-22 01:55:49 -07:00
Jeff Law
1d88b804fb haifa-sched.c (create_reg_dead_note): Detect and handle another case where we kill more regs after sched than were...
* haifa-sched.c (create_reg_dead_note): Detect and handle another
        case where we kill more regs after sched than were killed before
        sched.
        * sched.c (create_reg_dead_note): Similarly.

[[Split portion of a mixed commit.]]

From-SVN: r17182.2
1997-12-22 01:55:43 -07:00
Jeff Law
bbeba0ba83 * c-pragma.c: Include flags.h.
From-SVN: r17180
1997-12-22 01:16:44 -07:00
Richard Henderson
b104e095c1 It's alpha*-...
From-SVN: r17179
1997-12-21 18:40:10 -08:00
Jeff Law
3fe49f2249 Add pointer to motorola 68k info.
From-SVN: r17178
1997-12-21 14:43:08 -07:00
Mumit Khan
058536407a cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything about system headers.
* i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
        about system headers.
        (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
        and also to resolve symbols in prefix.c.
        * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
        between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
        when the definitions in auto-config.h is not visible.
        (HAVE_BZERO): Likewise.
        (HAVE_BCMP): Likewise.
        (HAVE_RINDEX): Likewise.
        (HAVE_INDEX): Likewise.

From-SVN: r17177
1997-12-21 14:07:08 -07:00
Jeff Law
06387d7cd8 Clarify comment.
From-SVN: r17176
1997-12-21 13:55:52 -07:00
Jeffrey A Law
44201dba49 pa.c (emit_move_sequence): Handle a function label source operand.
* pa.c (emit_move_sequence): Handle a function label source
        operand.

From-SVN: r17174
1997-12-21 13:50:37 -07:00
H.J. Lu
e2de3a4600 configure.in (host_makefile_frag, [...]): Handle multiple config files.
d
        * configure.in (host_makefile_frag, target_makefile_frag):
        Handle multiple config files.
        (alpha-*-linux*): Treat alpha-*-linux* as alpha-*-linux* and
        alpha-*-*.

From-SVN: r17170
1997-12-21 08:50:35 -07:00
H.J. Lu
aca823c140 configure.in (host_makefile_frag, [...]): Handle multiple config files.
F
        * configure.in (host_makefile_frag, target_makefile_frag):
        Handle multiple config files.
        (alpha-*-linux*): Treat alpha-*-linux* as alpha-*-linux* and
        alpha-*-*.

From-SVN: r17169
1997-12-21 08:50:33 -07:00
Nick Clifton
d300e55140 c-pragma.c (handle_pragma_token): Generate warning messages about unknown pragmas if warn_unknown_pragmas is set.
* c-pragma.c (handle_pragma_token): Generate warning messages
        about unknown pragmas if warn_unknown_pragmas is set.
        * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
        line option to set variable: warn_unknown_pragmas.

From-SVN: r17168
1997-12-21 08:24:48 -07:00
Nick Clifton
f9fc59e8c7 * decl2.c (lang_decode_option): Add support for -Wunknown-pragmas.
From-SVN: r17167
1997-12-21 08:22:02 -07:00
Manfred Hollstein
d3245704af mot3300.h (ASM_BYTE_OP): Don't include '\t' in the definition.
* m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
        definition.
        (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.

From-SVN: r17166
1997-12-21 07:48:50 -07:00
Jeff Law
168968da67 Makefile.in (FPBIT_FUNCS, [...]): Define.
L
        * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
        (libgcc2.a): Depend on $(DPBIT) and $(FPBIT).  Add rules to
        generate more fine grained floating point emulation libraries.
        * config/fp-bit.c: Add protecting #ifdef to all functions so
        that they can be compiled separately.  If !FINE_GRAINED_LIBRARIES,
        then compile all suitable functions.
        (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
        underscores to avoid namespace pollution.
        * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
        (FPBIT): Define.
        * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
        (FPBIT): Define.
        (DPBIT): Define.

From-SVN: r17165
1997-12-21 06:45:26 -07:00
Jeff Law
a018144099 Makefile.in (FPBIT_FUNCS, [...]): Define.
e
        * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
        (libgcc2.a): Depend on $(DPBIT) and $(FPBIT).  Add rules to
        generate more fine grained floating point emulation libraries.
        * config/fp-bit.c: Add protecting #ifdef to all functions so
        that they can be compiled separately.  If !FINE_GRAINED_LIBRARIES,
        then compile all suitable functions.
        (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
        underscores to avoid namespace pollution.
        * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
        (FPBIT): Define.
        * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
        (FPBIT): Define.
        (DPBIT): Define.

From-SVN: r17164
1997-12-21 06:45:24 -07:00
Jeffrey A Law
5198352eea Makefile.in (FPBIT_FUNCS, [...]): Define.
* Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
        (libgcc2.a): Depend on $(DPBIT) and $(FPBIT).  Add rules to
        generate more fine grained floating point emulation libraries.
        * config/fp-bit.c: Add protecting #ifdef to all functions so
        that they can be compiled separately.  If !FINE_GRAINED_LIBRARIES,
        then compile all suitable functions.
        (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
        underscores to avoid namespace pollution.
        * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c
        (FPBIT): Define.
        * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
        (FPBIT): Define.
        (DPBIT): Define.

From-SVN: r17163
1997-12-21 06:45:20 -07:00