Phil Edwards [Sat, 29 Jun 2002 00:20:11 +0000 (00:20 +0000)]
configure.in (gcc_gxx_include_dir): Change to match versioned C++ headers if --enable-version-specific-runtime-libs...
2002-06-28 Phil Edwards <pme@gcc.gnu.org>
* configure.in (gcc_gxx_include_dir): Change to match versioned
C++ headers if --enable-version-specific-runtime-libs is used.
* configure: Regenerate.
Stephane Carrez [Fri, 28 Jun 2002 21:20:44 +0000 (23:20 +0200)]
m68hc11.md ("*addsi3"): Use 'o' constraint to avoid the auto increment addressing modes.
* config/m68hc11/m68hc11.md ("*addsi3"): Use 'o' constraint to
avoid the auto increment addressing modes.
("*subsi3"): Likewise.
(split for add/sub on address): For 68HC12 push the value on
the stack and do the operation with a pop.
Stephane Carrez [Fri, 28 Jun 2002 20:55:10 +0000 (22:55 +0200)]
m68hc11.h (OPTIMIZATION_OPTIONS): Define.
* config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Define.
* config/m68hc11/m68hc11-protos.h (m68hc11_optimization_options):
Declare.
* config/m68hc11/m68hc11.c (m68hc11_optimization_options): New,
do not reorder basic blocks at the end when optimizing for size.
Stephane Carrez [Fri, 28 Jun 2002 20:31:45 +0000 (22:31 +0200)]
m68hc11.c (autoinc_mode): New function.
* config/m68hc11/m68hc11.c (autoinc_mode): New function.
(m68hc11_make_autoinc_notes): New function.
(m68hc11_split_move): Be very cautious when spliting a move with
auto increment/decrement modes because this may result in incompatible
directions; add REG_INC notes to the resulting insn for CSE reg.
* include/c/std_cerrno.h: Get out of the way... define errno.
* include/c/std_cmath.h: Add abs, modf overloads.
Undefine C99 isms. Still not sure how to deal with this sanely.
* include/c/std_csetjmp.h: Tweak.
* include/c/std_cwchar.h: Include cstddef for size_t.
* include/c_std/std_cmath.h: Remove extra function.
* libsupc++/Makefile.am (c_sources): New.
(libsupc___la_SOURCES): Add c_sources.
(LTCOMPILE): Remove INCLUDES.
(GCC_INCLUDES): New.
(C_COMPILE): New, like COMPILE but without INCLUDES.
(cxa_demangle.o): Use C_COMPILE.
(dyn-string.o): Use C_COMPILE.
* libsupc++/eh_alloc.cc: Tweak include order.
* libsupc++/pure.cc: Use cstdio.
* libsupc++/new_op.cc: Remove malloc forward declaration, as
cstdlib brings it in. Use std::malloc.
David S. Miller [Sat, 22 Jun 2002 12:02:57 +0000 (05:02 -0700)]
PR target/6841 target/6770 target/6719
2002-06-22 David S. Miller <davem@redhat.com>
PR target/6841 target/6770 target/6719
* config/sparc/sparc.h (PREFERRED_RELOAD_CLASS): Return
NO_REGS for constant X when CLASS is GENERAL_OR_FP_REGS or
GENERAL_OR_EXTRA_FP_REGS.
Bo Thorsen [Fri, 21 Jun 2002 07:04:46 +0000 (07:04 +0000)]
linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Add i386 support so multilib works again.
2002-06-21 Bo Thorsen <bo@suse.de>
* config/i386/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Add i386
support so multilib works again. And don't define this at all
when -Dinhibit_libc is used.
* c-common.c (c_common_get_alias_set): Correctly handle characters.
Rearrange order of expressions; don't handle vectors here.
* alias.c (get_alias_set): Let vectors match their components.
Phil Edwards [Tue, 18 Jun 2002 20:02:49 +0000 (20:02 +0000)]
configure: For in-source builds, make a subdir and re-exec there.
2002-06-18 Phil Edwards <pme@gcc.gnu.org>
* configure: For in-source builds, make a subdir and re-exec there.
* Makefile: New file. Pass targets through to build directory.
* .cvsignore: No longer ignore "Makefile".
re PR target/7042 (cris-elf miscompiles line_hints in ghostscript - "return" delay slot bug)
PR target/7042
* config/cris/cris.c (cris_simple_epilogue): Kludge around reorg.c
bug by saing that the epilogue isn't simple if there's a
non-empty current_function_epilogue_delay_list.
* config/cris/cris.md ("return"): Add sanity check asserting that
current_function_epilogue_delay_list is empty.
Eric Botcazou [Sat, 15 Jun 2002 01:12:06 +0000 (01:12 +0000)]
loop.c (check_final_value): Use v->always_executed instead of v->always_computable.
* loop.c (check_final_value): Use v->always_executed
instead of v->always_computable.
* unroll.c (final_giv_value): Don't calculate the final
value as a function of the biv if the giv is not computed
for every loop iteration.
Eric Botcazou [Sat, 15 Jun 2002 00:42:25 +0000 (00:42 +0000)]
convert.c (convert_to_integer): Don't pass the truncation down when the target type is signed.
* convert.c (convert_to_integer) [LSHIFT_EXPR]: Don't pass
the truncation down when the target type is signed.
[trunc1]: Use unsigned arithmetic for LSHIFT_EXPR.
* fold-const.c (extract_muldiv) [NOP_EXPR]: Don't pass through
the conversion if the target type is a smaller type.
* config/mips/elf.h (DWARF2_DEBUG_INFO): Define.
* config/mips/mips.c (mips_output_filename): Don't print a
".file" directive if we are using DWARF-2.
(mips_output_function_prologue): Do not emit source file
name for TARGET_GAS.
J.T. Conklin [Tue, 11 Jun 2002 18:11:06 +0000 (18:11 +0000)]
configure.target: Set os_include_dir to config/os/qnx/qnx6.1 under *-qnx6.[12]*.
2002-06-11 J.T. Conklin <jtc@acorntoolworks.com>
Benjamin Kosnik <bkoz@redhat.com>
* configure.target: Set os_include_dir to config/os/qnx/qnx6.1
under *-qnx6.[12]*.
* configure.in: Add support for *-qnx6.[12]*.
* configure: Regenerate.
* config/os/qnx, config/os/qnx/qnx6.1, config/os/qnx/qnx6.1/bits:
New directories.
* config/os/qnx/qnx6.1/bits/ctype_base.h, ctype_inline.h,
ctype_noninline.h, os_defines.h: New files.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r54520
* s390.c (s390_output_symbolic_const): Remove support for
old-style pool chunks.
(s390_function_epilogue): Likewise.
(s390_output_constant_pool): Likewise. Also, fix incorrect
alignment for 64-bit literal pools.
(print_operand_address): Remove 'y' and 'Y' format flags.
* s390.h (ASM_OUTPUT_POOL_PROLOGUE): Remove support for
old-style pool chunks.
(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
(ASM_OUTPUT_POOL_EPILOGUE): Remove.
(S390_CHUNK_MAX, S390_CHUNK_OV, S390_POOL_MAX): Remove.
* s390.c (consttable_operand): New function.
* s390-protos.h (consttable_operand): Declare it.
* s390.h (PREDICATE_CODES): Add consttable_operand.
* s390.md (consttable_qi, consttable_hi, consttable_si, consttable_di,
consttable_sf, consttable_df, pool_start_31, pool_end_31,
pool_start_64, pool_end_64, reload_base, reload_base2): New insns.
* s390.c (struct constant, struct constant_pool): New data types.
(constant_modes, gen_consttable): New variables.
(s390_start_pool, s390_end_pool, s390_add_pool,
s390_dump_pool, s390_free_pool): New functions.
(s390_chunkify_pool): Completely reimplement literal pool
overflow handling.
* s390.c (s390_pool_overflow): New variable.
* s390.h (s390_pool_overflow): Declare it.
* s390.md (cjump, icjump): Use it to adapt length for out-of-range
jumps in literal pool overflow situations.
* s390.c (s390_decompose_address): Accept new-style pool chunk offsets.
(s390_frame_info): Account for possible use of RETURN_REGNUM
by new literal pool overflow code.
(s390_emit_prologue): Likewise.
Bryce McKinlay [Tue, 11 Jun 2002 06:20:12 +0000 (06:20 +0000)]
Don't use RTL inlining. Fix for PR java/6820.
* lang.c (LANG_HOOKS_POST_OPTIONS): Define.
(flag_really_inline): New.
(java_decode_option): Set flag_really_inline if -finline-functions
is seen.
(java_post_options): New function. Turn off inlining unless
flag_really_inline is set.