Commit Graph

49202 Commits

Author SHA1 Message Date
Olivier Hainque
41ee320444 explow.c (round_push): Use HOST_WIDE_INT instead of int for the temporary used to round CONST_INT sizes.
* explow.c (round_push): Use HOST_WIDE_INT instead of int for the
	temporary used to round CONST_INT sizes.

From-SVN: r65600
2003-04-14 18:08:51 -04:00
Joel Brobecker
39d658e395 dbxout.c (print_int_cst_bounds_in_octal_p): New function, extracted from dbxout_type.
* dbxout.c (print_int_cst_bounds_in_octal_p): New function,
	extracted from dbxout_type.
	(dbxout_range_type): print large bounds in octal format.
	(dbxout_type): Replace extracted code by call to
	print_int_cst_bounds_in_octal_p.

From-SVN: r65599
2003-04-14 18:06:07 -04:00
Olivier Hainque
4694840a01 tree.c (int_fits_type_p): Extract generic checks from the case of constant type bounds.
* tree.c (int_fits_type_p): Extract generic checks from the case
	of constant type bounds. Refine the checks against constant type
	bounds to allow for possible decisions against each of these bounds
	without requiring both bounds to be constant.
	(tree_int_cst_msb): Put back.
	* tree.h (tree_int_cst_msb): Likewise.

From-SVN: r65598
2003-04-14 17:59:54 -04:00
Olivier Hainque
4147232b5c global.c (global_conflicts): Prevent allocation of call clobbered hard regs to pseudos live across abnormal...
* global.c (global_conflicts): Prevent allocation of call clobbered
	hard regs to pseudos live across abnormal edges, as later passes are
	not ready to handle them.

From-SVN: r65597
2003-04-14 17:51:07 -04:00
Douglas B Rupp
798a393534 * ifcvt.c (noce_process_if_block): Fail on BLKmode move.
From-SVN: r65596
2003-04-14 17:44:36 -04:00
Richard Kenner
0d3c880062 stor-layout.c (layout_type, [...]): Add missing code to handle "superflat arrays" in Ada.
* stor-layout.c (layout_type, case ARRAY_TYPE): Add missing code to
	handle "superflat arrays" in Ada.

From-SVN: r65595
2003-04-14 17:36:35 -04:00
Richard Kenner
2443af3720 integrate.c (expand_inline_function): Don't inline if would lose /u on a BLKmode TARGET.
* integrate.c (expand_inline_function): Don't inline if would
	lose /u on a BLKmode TARGET.

From-SVN: r65594
2003-04-14 17:33:05 -04:00
Joel Brobecker
8cb5fbbf74 dwarf2out.c (gen_compile_unit_die): Emit DW_LANG_Ada95 instead of DW_LANG_Ada83 for Ada units.
* dwarf2out.c (gen_compile_unit_die): Emit DW_LANG_Ada95 instead
        of DW_LANG_Ada83 for Ada units.

From-SVN: r65591
2003-04-14 17:12:45 -04:00
Olivier Hainque
cbcafd35b7 * fold-const.c (fold): Reorder tests for conditional expressions.
From-SVN: r65590
2003-04-14 17:09:44 -04:00
Olivier Hainque
9ceca3020a expr.c (highest_pow2_factor): Return unsigned.
* expr.c (highest_pow2_factor): Return unsigned.
        * expr.h (offset_address): Likewise.
        * emit-rtl.c (offset_address): POW2 argument now unsigned.

From-SVN: r65589
2003-04-14 17:07:12 -04:00
Roger Sayle
712b7a052f builtins.c (expand_builtin_strlen): Evaluate the lengths of string literals at compile-time.
* builtins.c (expand_builtin_strlen):  Evaluate the lengths of
	string literals at compile-time.

From-SVN: r65585
2003-04-14 20:23:27 +00:00
Roger Sayle
15d4fd9863 fold-const.c (fold): Transform (c1 - x) cmp c2...
* fold-const.c (fold):  Transform (c1 - x) cmp c2, where cmp is a
	comparison operation and c1/c2 are floating point constants into
	x swap(cmp) (c1 - c2).

	* gcc.dg/20030414-2.c: New test case.

From-SVN: r65584
2003-04-14 20:16:58 +00:00
Paolo Carlini
22fc0e9ffe fstream.tcc (basic_filebuf::setbuf): Don't set _M_out_end, _M_set_indeterminate() does it.
2003-04-14  Paolo Carlini  <pcarlini@unitus.it>

	* include/bits/fstream.tcc (basic_filebuf::setbuf): Don't set
	_M_out_end, _M_set_indeterminate() does it.

From-SVN: r65582
2003-04-14 17:57:48 +00:00
Vladimir Makarov
2fcb395cd4 genautomata.c (output_translate_vect): Fix a typo in loop condition.
2003-04-14  Vladimir Makarov  <vmakarov@redhat.com>

	* genautomata.c (output_translate_vect): Fix a typo in loop
	condition.

From-SVN: r65580
2003-04-14 15:50:08 +00:00
Hans-Peter Nilsson
747a0d9d6a re PR target/10377 (gcc-3.2.2 creates bad assembler for cris)
PR target/10377
	* config/cris/cris.md ("*mov_sideqi", "*mov_sidehi")
	("*mov_sidesi", "*mov_sideqi_mem", "*mov_sidehi_mem")
	("*mov_sidesi_mem", "*clear_sidesi", "*clear_sidehi")
	("*clear_sideqi", "*ext_sideqihi", "*ext_sideqisi")
	("*ext_sidehisi", "*op_sideqi", "*op_sidehi", "*op_sidesi")
	("*op_swap_sideqi", "*op_swap_sidehi", "*op_swap_sidesi")
	("*extopqihi_side", "*extopqisi_side", "*extophisi_side")
	("*extopqihi_swap_side", "*extopqisi_swap_side")
	("*extophisi_swap_side", 8th, 9th, 10th, 11th, 14th peepholes):
	When next to constraint R, replace constraint i with n.

From-SVN: r65575
2003-04-14 14:32:44 +00:00
Kaveh R. Ghazi
39e8d04986 configure.in (HAVE_UINTPTR_T): Always define.
* configure.in (HAVE_UINTPTR_T): Always define.
	* configure: Regenerated.

From-SVN: r65574
2003-04-14 14:29:14 +00:00
Jan Hubicka
58e6ae30c7 re PR rtl-optimization/10024 ([HP-PA] inline optimization ICE)
PR opt/10024
	* cfgrtl.c (force_nonfallthru_and_redirect): Use unchecked_make_edge.

From-SVN: r65571
2003-04-14 14:19:12 +00:00
Hans-Peter Nilsson
26224a84b5 re PR target/10377 (gcc-3.2.2 creates bad assembler for cris)
PR target/10377
	* gcc.dg/20030414-1.c: New test.

From-SVN: r65565
2003-04-14 14:01:42 +00:00
Kriang Lerdsuwanakij
88657a26e6 * doc/contrib.texi (Contributors): Correct my entry.
From-SVN: r65563
2003-04-14 10:02:30 +00:00
Tom Tromey
e6311b9e25 * gjavah.c (print_c_decl): Indentation fix.
From-SVN: r65562
2003-04-14 04:42:21 +00:00
Roger Sayle
7f685e177e tree.h (DECL_BUILT_IN_NONANSI): Remove.
* tree.h (DECL_BUILT_IN_NONANSI): Remove.
	* c-common.c (builtin_function_2): Don't set DECL_BUILT_IN_NONANSI.
	* c-decl.c (duplicate_decls): Use invariant DECL_BUILT_IN_NONANSI
	implies DECL_BUILT_IN to simplify logic.
	* print-tree.c (print_node): Don't dump DECL_BUILT_IN_NONANSI.

From-SVN: r65561
2003-04-14 03:13:07 +00:00
Roger Sayle
1331d16fd4 builtin-types.def (BT_FN_STRING_CONST_STRING): New builtin type.
* builtin-types.def (BT_FN_STRING_CONST_STRING): New builtin type.
	(BT_FN_PTR_SIZE_SIZE): Likewise.
	* builtins.def (BUILT_IN_MALLOC, BUILT_IN_CALLOC, BUILT_IN_STRDUP):
	New built-in functions for malloc, calloc and strdup respectively.
	* calls.c (special_function_p): No need to handle malloc-like
	functions any longer.  ECF_MALLOC is set via built-in attributes.

	* c-decl.c (duplicate_decls): Preserve pure and malloc attributes.
	* cp/decl.c (duplicate_decls): Preserve pure and malloc attributes.
	* f/com.c (duplicate_decls): Preserve pure and malloc attributes.

	* doc/extend.texi: Document these new built-in functions.

	* gcc.dg/builtins-13.c: New test case.
	* gcc.dg/builtins-14.c: New test case.

From-SVN: r65560
2003-04-14 02:55:31 +00:00
Kaveh Ghazi
e235df1f71 Fix formatting in last commit.
From-SVN: r65559
2003-04-14 02:23:45 +00:00
GCC Administrator
fda8869be8 Daily bump.
From-SVN: r65558
2003-04-14 00:17:06 +00:00
Kaveh R. Ghazi
9cb65f923c builtins.c (expand_builtin_memcpy): Add `endp' argument, use it.
gcc:
	* builtins.c (expand_builtin_memcpy): Add `endp' argument, use it.
	(expand_builtin_stpcpy): New.
	(expand_builtin): Add BUILT_IN_MEMPCPY & BUILT_IN_STPCPY.
	* builtins.def: Add mempcpy & stpcpy support.
	* doc/extend.texi (mempcpy, stpcpy): Document new builtins.

testsuite:
	* gcc.c-torture/execute/string-opt-18.c: New test.

From-SVN: r65551
2003-04-13 23:46:11 +00:00
Mark Mitchell
f4f4610e03 re PR c++/10300 (use of array-new (nothrow) in segfaults on NULL return)
PR c++/10300
	* init.c (build_new_1): Reorganize.

	PR c++/10300
	* g++.dg/init/new5.C: New test.

From-SVN: r65550
2003-04-13 17:54:03 +00:00
Nick Clifton
5de601cf57 Replace "GNU CC" with "GCC"
From-SVN: r65549
2003-04-13 17:51:08 +00:00
Nick Clifton
c7992b22ff oops - forgot to delete file whne comitting previous delta
From-SVN: r65547
2003-04-13 17:19:44 +00:00
Nick Clifton
50d440bc05 config-ml.in: Remove support for --disable-aix removing call-aix multilibs.
config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Delete support for
 -mcall-aix switch.
config/rs6000/eabiaix.h: Delete.
config/rs6000/rs6000.h (rs6000_abi): Remove ABI_AIX_NODESC.
 (RS6000_REG_SAVE, RS6000_SAVE_AREA, FP_ARGS_MAX_REG, RETURN_ADDRESS_OFFSET):
 Remove use of ABI_AIX_NODESC.
config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Likewise.
config/rs6000/rs6000.c (print_operand, rs6000_stack_info, debug_stack_info,
 output_function_profiler, rs6000_trampoline_size,
 rs6000_initialise_trampoline): Likewise.
config/rs6000/rs6000.md (call, call_value, call_nonlocal_sysv,
 call_indirect_nonlocal_sysv, call_value_indirect_nonlocal_sysv,
 call_value_nonlocal_sysv, sibcall_value_nonlocal_sysv, sibcall_nonlocal_sysv,
 sibcall_value_local64): Likewise.
config/rs6000/t-ppcgas (MULTILIB_OPTIONS): Remove mcall-aix multilibs.
 (MULTILIB_DIRNAMES): Remove mcall-aix directories.
 (MULTILIB_EXCEPTIONS): Delete.
 (MULTILIB_MATCHES): Remove mcall-aix matches.
doc/fragments.texi: Replace -mcall-aix example with an ARM one.
doc/install.texi: Delete powerpc-*-eabiaix target.
doc/invoke.texi: Remove documentation of mcall-aix switch.
doc/tm.texi: Remove mcall-aix from example CPP_SPEC.
config.gcc: Delete powerpc-*-eabiaix target.

From-SVN: r65546
2003-04-13 16:59:45 +00:00
Kazu Hirata
62b9c42c44 invoke.texi: Fix typos.
* doc/invoke.texi: Fix typos.
	* doc/tm.texi: Likewise.

From-SVN: r65544
2003-04-13 11:18:36 +00:00
John David Anglin
26af0e5d07 * os/hpux/ctype_inline.h: Replace with gnu-linux version.
From-SVN: r65542
2003-04-13 03:56:20 +00:00
Zack Weinberg
6d0c8bb1bc * c-typeck.c (digest_init, push_init_level): Use CONSTRUCTOR_ELTS.
From-SVN: r65540
2003-04-13 03:31:09 +00:00
Zack Weinberg
dcf92453c8 tree.c (build_constructor): New function.
* tree.c (build_constructor): New function.
	* tree.h: Prototype it.

	* c-typeck.c (build_c_cast, pop_init_level)
	* profile.c (build_function_info_value, build_gcov_info_value)
	(create_profiler):
	Use build_constructor.

	* builtins.c (expand_builtin_args_info): Remove #if 0 blocks.

	* objc/objc-act.c (build_constructor):
	Rename objc_build_constructor. Use build_constructor.
	(build_objc_string_object, objc_add_static_instance)
	(init_def_list, init_objc_symtab, init_module_descriptor)
	(generate_static_references, build_selector_translation_table)
	(build_descriptor_table_initializer, generate_descriptor_table)
	(build_protocol_initializer, build_ivar_list_initializer)
	(generate_ivars_list, build_dispatch_table_initializer)
	(generate_dispatch_table, generate_protocol_list)
	(build_category_initializer, build_shared_structure_initializer):
	Update to match.

ada:
	* gigi.h, utils2.c (build_constructor):
	Rename gnat_build_constructor. Use build_constructor.
	* decl.c (gnat_to_gnu_entity)
	* trans.c (tree_transform, pos_to_constructor, extract_values)
	* ada/utils.c (build_template, convert_to_fat_pointer, convert)
	(unchecked_convert)
	* ada/utils2.c (build_binary_op, build_call_raise, build_allocator)
	(fill_vms_descriptor):
	Update to match.

cp:
	* class.c (initialize_array)
	* decl.c (reshape_init)
	* decl2.c (build_expr_from_tree)
	* init.c (build_zero_init)
	* pt.c (tsubst_copy, tsubst_copy_and_build)
	* rtti.c (tinfo_base_init, generic_initializer, ptr_initializer)
	(ptm_initializer, class_initializer, get_pseudo_ti_init)
	* semantics.c (finish_compound_literal)
	* typeck.c (build_ptrmemfunc1)
	* typeck2.c (store_init_value, process_init_constructor)
	(build_functional_cast): Use build_constructor.

f:
	* com.c (ffecom_build_complex_constant_, ffecom_expr_)
	(ffecom_init_zero_, ffecom_transform_namelist_, ffecom_vardesc_)
	(ffecom_vardesc_array_, ffecom_vardesc_dims_, ffecom_2)
	* ste.c (ffeste_io_ialist_, ffeste_io_cilist_, ffeste_io_cllist_)
	(ffeste_io_icilist_, ffeste_io_inlist_, ffeste_io_olist_):
	Use build_constructor.

java:
	* class.c (make_field_value, make_method_value, get_dispatch_table)
	(make_class_data, emit_offset_symbol_table)
	* constants.c (build_constants_constructor)
	* java-tree.h (START_RECORD_CONSTRUCTOR)
	* parse.y (maybe_build_array_element_wfl):
	Use build_constructor.

From-SVN: r65539
2003-04-13 01:45:35 +00:00
GCC Administrator
71707889ed Daily bump.
From-SVN: r65538
2003-04-13 00:17:05 +00:00
Zack Weinberg
c85b28e8f3 * intl.h: #define gcc_gettext_width to strlen when !ENABLE_NLS.
From-SVN: r65531
2003-04-12 23:07:34 +00:00
Stephane Carrez
cebcfdc87f * config/m68hc11/m68hc11-protos.h
(m68hc11_eq_compare_operator): Declare
	* config/m68hc11/m68hc11.h (PREDICATE_CODES): Register new predicate.
	* config/m68hc11/m68hc11.c (m68hc11_eq_compare_operator): New predicate
	(d_register_operand): Check the operand mode.
	(hard_addr_reg_operand): Likewise.

From-SVN: r65529
2003-04-12 23:52:33 +02:00
Stephane Carrez
0ae32ec0d7 m68hc11.md ("decrement_and_branch_until_zero"): New pattern for dbcc/ibcc generation for 68HC12.
* config/m68hc11/m68hc11.md ("decrement_and_branch_until_zero"): New
	pattern for dbcc/ibcc generation for 68HC12.
	("doloop_end"): New pattern.
	("m68hc12_dbcc_dec_hi"): New pattern for dbeq/dbne.
	("m68hc12_dbcc_inc_hi"): New pattern for ibeq/ibne.
	("m68hc12_dbcc_dec_qi"): New pattern.
	("m68hc12_dbcc_inc_qi"): New pattern.
	(split): Add split for the above when we can't use dbcc/ibcc due to
	reloading.
	(peephole2): Add peephole2 to generate the above when possible.

From-SVN: r65527
2003-04-12 23:22:49 +02:00
David Edelsohn
4440f5b597 3983-fstream.cc: Change basic_streambuf instantiation to "unsigned char".
* testsuite/27_io/basic_istream/sentry/char/3983-fstream.cc:
        Change basic_streambuf instantiation to "unsigned char".
        * testsuite/27_io/basic_ostream/sentry/char/3983-fstream.cc: Same.

From-SVN: r65526
2003-04-12 17:13:12 -04:00
Stephane Carrez
a67bac5fc4 m68hc11.md ("bitcmpqi" split): No need to test the mode of operand 0.
* config/m68hc11/m68hc11.md ("bitcmpqi" split): No need to test the
	mode of operand 0.
	(peephole2 optimize const load): Likewise for operand 2.
	("*rotlhi3_with_carry"): Change pattern to a const 1 rotate which
	clobbers CC_REGNUM.
	("*rotrhi3_with_carry"): Likewise.
	(ashift:DI 1 split): Update pattern to create the above rotate.
	(lshiftrt:DI 1 split): Likewise.

From-SVN: r65524
2003-04-12 22:35:28 +02:00
Stephane Carrez
0921442473 m68hc11.md (SOFT_Z_REGNUM): New constant.
* config/m68hc11/m68hc11.md (SOFT_Z_REGNUM): New constant.
	("tstqi_z_used" split): Use it.
	("cmphi_z_used"): Likewise.
	("bitcmpqi_z_used"): Likewise; also use SP_REGNUM constant.
	("cmpqi_z_used"): Likewise.

From-SVN: r65522
2003-04-12 22:05:55 +02:00
Mark Mitchell
355b81d5b3 re PR c++/7910 ([cygwin] Seg fault when compiling OpenSceneGraph 0.9.1)
PR c++/7910
	* config/i386/winnt.c (i386_pe_mark_dllimport): Fix thinko.

	PR c++/7910
	* g++.dg/ext/dllimport1.C: New test.

From-SVN: r65519
2003-04-12 20:01:29 +00:00
Paolo Carlini
7ef9fd85ef Remove _M_buf_size_opt, use directly _M_buf_size instead.
2003-04-12  Paolo Carlini  <pcarlini@unitus.it>

	Remove _M_buf_size_opt, use directly _M_buf_size instead.
	* include/bits/fstream.tcc
	(basic_filebuf::_M_allocate_internal_buffer, setbuf): Remove
	references to _M_buf_size_opt.
	* include/bits/sstream.tcc (basic_stringbuf::overflow): Likewise.
	* include/bits/streambuf.tcc (__copy_streambufs): Likewise, rename
	__bufsize to __in_avail and __size_opt to __buf_size.
	* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf): Likewise.
	* include/std/std_sstream.h (_M_stringbuf_init, setbuf): Likewise.
	* include/std/std_streambuf.h (~basic_streambuf(),
	basic_streambuf()): Likewise, remove _M_buf_size_opt member.
	* testsuite/27_io/basic_filebuf/close/char/3.cc: Set _M_buf_size.
	* testsuite/27_io/basic_filebuf/in_avail/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sbumpc/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekoff/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/seekpos/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sgetc/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sgetn/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/snextc/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sputbackc/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sputc/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sputn/char/1.cc: Likewise.
	* testsuite/27_io/basic_filebuf/sungetc/char/1.cc: Likewise.

From-SVN: r65518
2003-04-12 19:21:35 +00:00
Zack Weinberg
2bd020439a configure.in: Check for wchar.h, mbstowcs, and wcswidth.
* configure.in: Check for wchar.h, mbstowcs, and wcswidth.
        * configure, config.in: Regenerate.
        * intl.c (gcc_gettext_width): New function.
        * intl.h: Prototype it.
cp:
        * call.c (print_z_candidates): Use gcc_gettext_width, not
        strlen, to determine how much padding to use.

From-SVN: r65517
2003-04-12 18:07:06 +00:00
Eric Botcazou
48ed72a399 * gcc.dg/ultrasp8.c: Fix for 32-bit Sparc.
From-SVN: r65514
2003-04-12 17:45:01 +00:00
Paolo Carlini
2ad0022889 stdio_filebuf.h (stdio_filebuf::stdio_filebuf(...), ...): _M_buf_size_opt == 0 means only...
2003-04-12  Paolo Carlini  <pcarlini at unitus dot it>

	* include/ext/stdio_filebuf.h
	(stdio_filebuf::stdio_filebuf(int, openmode, bool, size_t),
	stdio_filebuf::stdio_filebuf(__c_file*, openmode, size_t):
	_M_buf_size_opt == 0 means only "not to use an allocated buffer"
	since a stack-based buffer is used for small values of the size_t
	parameter.
	* include/bits/fstream.tcc (basic_filebuf::_M_really_overflow).
	If _M_buf_size != 0 flush out the buffer (any kind, stack-based too).
	* testsuite/ext/stdio_filebuf_2.cc: New testfile.

From-SVN: r65513
2003-04-12 16:07:51 +00:00
Stephane Carrez
96cd90694f m68hc11.h (TARGET_SWITCHES): Fix -mnominmax option; recognize -mnorelax.
* config/m68hc11/m68hc11.h (TARGET_SWITCHES): Fix -mnominmax option;
	recognize -mnorelax.
	(reg_class): Add Z_OR_S_REGS to represent soft registers with Z
	(REG_CLASS_NAMES): Add its name.
	(REG_CLASS_CONTENTS): Define its content.

From-SVN: r65511
2003-04-12 17:14:26 +02:00
Stephane Carrez
c364c3a60d larith.asm (memcpy): Use ARG macro to access stack parameters so that offsets are valid for far...
* config/m68hc11/larith.asm (memcpy): Use ARG macro to access stack
	parameters so that offsets are valid for far definition.
	(__mulsi3): Likewise and use ret to return.
	(___adddi3, ___subdi3, ___notdi2, ): Don't use it to save the result.

From-SVN: r65509
2003-04-12 16:52:17 +02:00
David Edelsohn
09501938ed * config/rs6000/rs6000.c (rs6000_hash_constant): Skip '0' fields.
From-SVN: r65508
2003-04-12 10:50:21 -04:00
Paolo Carlini
2bc67e0663 re PR libstdc++/9533 (Can't read from tty with ifstream)
2003-04-12  Paolo Carlini  <pcarlini@unitus.it>

	PR libstdc++/9533
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-1.cc: New.
	* testsuite/27_io/basic_filebuf/showmanyc/char/9533-2.cc: Ditto.

From-SVN: r65507
2003-04-12 13:56:37 +00:00
Alexandre Oliva
17a15c67ee mklibgcc.in (libgcc-stage-start): For every multilib directory containing a libgcc.a...
* mklibgcc.in (libgcc-stage-start): For every multilib  directory
containing a libgcc.a, move lib* to the corresponding stage dir.

From-SVN: r65505
2003-04-12 09:06:46 +00:00