Commit Graph

27136 Commits

Author SHA1 Message Date
Michael Hayes 49d1b87128 c4x.c (c4x_function_arg): Check for void_type_node before checking MUST_PASS_IN_STACK.
* config/c4x/c4x.c (c4x_function_arg): Check for void_type_node
 	before checking MUST_PASS_IN_STACK.

From-SVN: r32865
2000-04-02 09:19:17 +00:00
Jeff Law 7a53764d8a Daily bump.
From-SVN: r32864
2000-04-02 01:45:07 -07:00
Neil Booth 4063b94333 cppexp.c: New FINISHED dummy token.
* cppexp.c:  New FINISHED dummy token.  Combine operator initial
	flags and initial priority into a single constant.  New
	EQUALITY macro.  New operator flag SHORT_CIRCUIT.
	(_parse_cpp_expr): Implement new constants.  Take left operand
	checks out of reduction loop.  Handle SHORT_CIRCUIT.  End of
	parse indicated by reducing FINISHED token.  Remove new lines
	from cpp_error messages.

From-SVN: r32863
2000-04-02 08:27:23 +00:00
Neil Booth 93fd8bf764 2000-04-02 Neil Booth <NeilB@earthling.net>
* gcc.dg/cpp-cond.c  New tests.
	* gcc.dg/cpp-ifparen.c New tests.  Amend existing tests to make
	accidental success less likely.
	* gcc.dg/cpp-missingop.c  New tests.
	* gcc.dg/cpp-missingparen.c  New tests.
	* gcc.dg/cpp-shift.c  New tests.
	* gcc.dg/cpp-shortcircuit.c  New tests.
	* gcc.dg/cpp-unary.c  New tests.

From-SVN: r32862
2000-04-02 07:20:26 +00:00
Mark Mitchell 8dd2076d8a emit-rtl.c (gen_rtx_CONST_INT): Create cached CONST_INTs on the permanent obstack.
* emit-rtl.c (gen_rtx_CONST_INT): Create cached CONST_INTs on the
	permanent obstack.

From-SVN: r32861
2000-04-02 02:48:24 +00:00
Zack Weinberg 07aa0b04f2 cpplib.c: Include symcat.h.
* cpplib.c: Include symcat.h.  Add 'origin' field to struct
	directive.  Add origin values to DIRECTIVE_TABLE.  Generate
	the strings and function names on the fly.  Take the #sccs
	entry out of the table if SCCS_DIRECTIVE is not defined.
	(_cpp_handle_directive): Decide if the # was at the beginning
	of the line here.  Issue -pedantic warnings for extended
	directives here.  Warn about K+R directives with the #
	indented, and C89/extended directives with the # not indented,
	here.
	(do_import, do_include_next, do_warning, do_ident, do_sccs,
	do_assert, do_unassert): Don't issue pedantic warning here.

	* cpphash.h: Add CPP_WTRADITIONAL macro.
	* cpplib.h (struct cpp_options): Rename warn_stringify to
	warn_traditional; update comments.
	* cppinit.c (handle_option): Set warn_traditional not
	warn_stringify.
	* cpphash.c: Replace CPP_OPTION (pfile, warn_stringify) with
	CPP_WTRADITIONAL (pfile).
	* cpplex.c (_cpp_lex_token): Don't decide if directives should
	be ignored in -traditional mode here.

	* cpplex.c: Copy ISTABLE macros from cppinit.c, and adapt them
	to initialize speccase[] and trigraph_map[].  Delete all
	references to pfile->input_speccase.  Always treat '?' as a
	special character.  Remove table-initialization code from
	_cpp_init_input_buffer.

	* cpplib.h (struct cpp_reader): Remove input_speccase field.
	* cppinit.c (cpp_cleanup): Don't free input_speccase.

From-SVN: r32860
2000-04-01 22:55:25 +00:00
Zack Weinberg 9f47f030f5 Add dg-do tag
From-SVN: r32859
2000-04-01 22:45:01 +00:00
Zack Weinberg 46d0749798 cpplex.c: Copy ISTABLE macros from cppinit.c...
* cpplex.c: Copy ISTABLE macros from cppinit.c, and adapt them
	to initialize speccase[] and trigraph_map[].  Delete all
	references to pfile->input_speccase.  Always treat '?' as a
	special character.  Remove table-initialization code from
	_cpp_init_input_buffer.

	* cpplib.h (struct cpp_reader): Remove input_speccase field.
	* cppinit.c (cpp_cleanup): Don't free input_speccase.

From-SVN: r32858
2000-04-01 22:02:31 +00:00
Richard Henderson 61098249b5 Makefile.in (STAGESTUFF): Wildcard all debugging dumps at once.
* Makefile.in (STAGESTUFF): Wildcard all debugging dumps at once.
	(mostlyclean): Likewise.

	* toplev.c (rtl_dump, jump_opt_dump, etc): Remove.
	(struct dump_file_info, enum dump_file_index, dump_file): New.
	(open_dump_file): Take a dump_file_index not a suffix, and a decl
	not a string.  Clean out file if we havn't yet done so.  Do nothing
	if the dump isn't enabled.
	(close_dump_file): Do nothing if the dump isn't open.  Dump
	graph data if requested.
	(dump_rtl, clean_dump_file): Remove.
	(compile_file): Don't clean the dump files.  Only finalize .bp dump
	if flag_test_coverage or flag_branch_probabilities.  Only finalize
	.combine dump if optimizing.  Iterate over dump_file to finalize the
	graph dumps.
	(rest_of_compilation): Update for open_dump_file/close_dump_file.
	Convert all uses of dump_rtl.
	(decode_d_option): Iterate over dump_file to implement 'a' and to
	locate pass-specific dumps.

From-SVN: r32857
2000-04-01 11:07:05 -08:00
Jeff Law 9d26ffb25c Daily bump.
From-SVN: r32856
2000-04-01 01:45:07 -07:00
Neil Booth dbac4affb5 cppexp.c: Redefine priority constants.
* cppexp.c: Redefine priority constants.
        (_cpp_parse_expr): Replace left and right priority scheme with
	single priority logic.  Move LOGICAL to same place as COMPARE.
	Remove bogus check for multiple unary +/- operators.

From-SVN: r32855
2000-04-01 07:48:59 +00:00
Neil Booth 9ee70313bc cppexp.c: (_cpp_parse_expr): Numerical constants are pushed within the switch statement.
* cppexp.c: (_cpp_parse_expr): Numerical constants are pushed
        within the switch statement.  Binary operations break out of
        the switch naturally.  '(' tokens handled by forcing
        immediate shift.  ')' handled by forcing immediate reduce to
        the previous '('.  New error messages.

From-SVN: r32854
2000-04-01 07:42:37 +00:00
Geoff Keating 81eace4269 rs6000.c (print_operand): Don't use %l for 'low part', it's already in use.
* config/rs6000/rs6000.c (print_operand): Don't use %l for 'low
part', it's already in use.  Use %K instead.  Add a return at the
end of what is now %K.
* config/rs6000/rs6000.md (elf_low): Use %K instead of %l.

From-SVN: r32853
2000-04-01 01:37:44 +00:00
Alexandre Petit-Bianco 7a678b64cd Fixed email address typo in Thu Mar 30, 2000 ChangeLog entry.
From-SVN: r32852
2000-03-31 16:19:13 -08:00
Jan Hubicka 1503a7ecd5 builtins.c (expand_builtin_apply): Pass proper parameters to allocate_dynamic_stack_space.
* builtins.c  (expand_builtin_apply):  Pass proper parameters to
	allocate_dynamic_stack_space.
	* calls.c (emit_call_1):  Do not adjust stack pointer for SIB,
	update stack_pointer_delta; do not update arg_size_so_far.
	(compute_argument_block_size): Use stack_delta instead of
	stack_pointer_pending and arg_size_so_far.
	(expand_call): Add sanity checking for stack_pointer_delta;
	save and restore stack_pointer_delta for SIB, use
	stack_pointer_delta for alignment; do not update arg_space_so_far.
	(emit_library_call_value): Use stack_pointer_delta for alignment.
	(store_one_arg): Do not update arg_space_so_far.
	* explow.c (adjust_stack, anti_adjust_stack): Update
	stack_pointer_delta.
	(allocate_dynamic_stack_space): Add sanity checking for
	stack_pointer_delta.
	* expr.c (init_expr, clear_pending_stack_adjust): Clear
	stack_pointer_delta.
	(emit_push_insn): Update stack_pointer_delta.
	* function.h (struct expr_status): Add x_stack_pointer_delta;
	remove x_arg_space_so_far.
	(arg_space_so_far): Remove.
	(stack_pointer_delta): New macro.

From-SVN: r32851
2000-04-01 00:09:22 +00:00
Zack Weinberg ae79697b72 cpplib.h: Merge struct cpp_options into struct cpp_reader.
* cpplib.h: Merge struct cpp_options into struct cpp_reader.
	Reorder struct cpp_options and struct cpp_reader for better
	packing.  Replace CPP_OPTIONS macro with CPP_OPTION which
	takes two args.  Change all 'char' flags to 'unsigned char'.
	Move show_column flag into struct cpp_options.  Don't
	prototype cpp_options_init.
	* cpphash.h, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
	cppinit.c, cpplex.c, cpplib.c:
	Replace CPP_OPTIONS (pfile)->whatever with
	CPP_OPTION (pfile, whatever), and likewise for
	opts = CPP_OPTIONS (pfile); ... opts->whatever;

	* cppinit.c (merge_include_chains): Take a cpp_reader *.
	Extract CPP_OPTION (pfile, pending) and work with that
	directly.
	(cpp_options_init): Delete.
	(cpp_reader_init): Turn on on-by-default options here.
	Allocate the pending structure here.
	(cl_options, enum opt_code): Define these from the same table,
	kept in a large macro.  Add -fshow-column and -fno-show-column
	options.

	* cpperror.c (v_message): If show_column is off, don't print
	the column number.

	* cppmain.c: Update for new interface.
	* fix-header.c: Likewise.

From-SVN: r32850
2000-03-31 23:16:11 +00:00
Geoff Keating 7bde2862db t-aix43 (AR_FLAGS_FOR_TARGET): Adjust for new definition.
* config/rs6000/t-aix43 (AR_FLAGS_FOR_TARGET): Adjust for new
definition.
* Makefile.in (AR_FLAGS_FOR_TARGET): Is now the flags that
are passed to any invocation of AR_FOR_TARGET.
(AR_CREATE_FOR_TARGET): New macro.
(AR_EXTRACT_FOR_TARGET): New macro.
(ORDINARY_FLAGS_TO_PASS): Add AR_CREATE_FOR_TARGET,
AR_EXTRACT_FOR_TARGET.
(many places): Use AR_CREATE_FOR_TARGET, AR_EXTRACT_FOR_TARGET
in place of `$(AR_FOR_TARGET) $(AR_FLAGS_FOR_TARGET)' and
`$(AR_FOR_TARGET) x'.  Pass AR_CREATE_FOR_TARGET and
AR_EXTRACT_FOR_TARGET to sub-makes.

From-SVN: r32849
2000-03-31 22:28:33 +00:00
Neil Booth eba3052613 cppexp.c: Delete SKIP_OPERAND.
* cppexp.c: Delete SKIP_OPERAND.  Correct priority
	PAREN_INNER_PRIO.
	(_cpp_parse_expr): Check for multiple unary +/- operators.
	Correct priorities of ':' and '?'.  Treat ')' as having a
	value.	Ensure conditional expression is not void.

From-SVN: r32848
2000-03-31 22:23:59 +00:00
Mark Mitchell db048faf78 alias.c (canon_rtx): Make it global.
* alias.c (canon_rtx): Make it global.
	(rtx_equal_for_memref_p): CONST_INT equality is now pointer
	equality.
	* cse.c (struct table_elt): Add canon_exp.
	(insert): Clear it.
	(invalidate): Canonicalize expressions only once.
	* rtl.h (canon_rtx): Declare.

From-SVN: r32845
2000-03-31 16:24:30 +00:00
Mark Mitchell c13e821047 Makefile.in (emit-rtl.o): Depend on HASHTAB_H.
* Makefile.in (emit-rtl.o): Depend on HASHTAB_H.
	* alias.c (reg_known_value): Add comments.
	(init_alias_analysis): Likewise.
	* cse.c (exp_equiv_p): CONST_INTs are equal iff they have the same
	address.
	(cse_basic_block): Fix typo in comment.
	* emit-rtl.c: Include hashtab.h.
	(const_int_htab): New variable.
	(const_int_htab_hash): New function.
	(const_int_htab_eq): Likewise.
	(rtx_htab_mark_1): Likewise.
	(rtx_htab_mark): Likewise.
	(gen_rtx_CONST_INT): Cache all CONST_INTs.
	(unshare_all_rtx): Fix formatting.
	(init_emit_once): Initialize const_int_htab.
	* rtl.c (rtx_equal_p): CONST_INTs are equal iff they have the same
	address.
	* rtl.texi: Document the fact that all CONST_INTs with the same
	value are shared.

From-SVN: r32844
2000-03-31 08:57:54 +00:00
Jeff Law cca8e0ff22 Daily bump.
From-SVN: r32843
2000-03-31 01:45:07 -07:00
Mark Mitchell b13eb66b7d hashtab.h (hashval_t): New type.
* hashtab.h (hashval_t): New type.
	(htab_find_with_hash): Use it as an argument.
	(htab_find_slot_with_hash): Likewise.

	* hashtab.c (find_empty_slot_for_expand): Use hashval_t for hash
	codes.
	(htab_find_with_hash): Likewise.
	(htab_find_slot_with_hash): Likewise.

From-SVN: r32842
2000-03-31 07:04:37 +00:00
Richard Henderson d68894a1c8 * alpha.h (FUNCTION_BOUNDARY): Reduce to 128 bits.
From-SVN: r32841
2000-03-30 20:48:39 -08:00
Jeffrey A Law 64463c2a7b c-parse.in (cast_expr): Move change from March 21 into c-parse.in since it is used to generate c-parse.y.
* c-parse.in (cast_expr): Move change from March 21 into c-parse.in
        since it is used to generate c-parse.y.
        * objc-parse.c, objc-parse.y: Regenerated.

From-SVN: r32840
2000-03-30 18:05:27 -07:00
Alexandre Petit-Bianco 64ea4a5e27 expr.c (java_lang_expand_expr): Added Anthony's Thu Jan 6 2000 patch missing hunk.
Thu Mar 30 15:26:56 2000  Alexandre Petit-Bianco  <apbianco@dcygnus.com>

	* expr.c (java_lang_expand_expr): Added Anthony's Thu Jan 6 2000
	patch missing hunk. Fixed indentation.

From-SVN: r32839
2000-03-30 15:41:57 -08:00
Zack Weinberg 694f020b13 configure.in: Comment out --enable-c-cpplib stanza.
* configure.in: Comment out --enable-c-cpplib stanza.
	* configure: Regenerate.

From-SVN: r32838
2000-03-30 22:31:37 +00:00
Richard Kenner 7fa9670848 expr.c (store_constructor): Properly compute displacement and alignment when offset is variable.
* expr.c (store_constructor): Properly compute displacement and
	alignment when offset is variable.

From-SVN: r32837
2000-03-30 17:17:51 -05:00
Richard Kenner 0e805f815e expmed.c (store_bit_field, [...]): Fix more cases of alignment in bytes.
* expmed.c (store_bit_field, store_fixed_bit_field): Fix more
	cases of alignment in bytes.

From-SVN: r32836
2000-03-30 16:46:37 -05:00
Jeffrey A Law 744bfbfa78 function.c (expand_function_end): Pass alignment argument to emit_block_move in bits, not bytes.
* function.c (expand_function_end): Pass alignment argument to
        emit_block_move in bits, not bytes.

From-SVN: r32835
2000-03-30 13:32:31 -07:00
Nick Clifton 6e898acd02 added entry for patch that removed ASM_SPEC from config/arm/arm.h.
From-SVN: r32833
2000-03-30 19:49:14 +00:00
Tom Tromey 05411ecfe5 gjavah.c (D_NAN_MASK): Only define as word-reversed when HOST_FLOAT_WORDS_BIG_ENDIAN and...
* gjavah.c (D_NAN_MASK): Only define as word-reversed when
	HOST_FLOAT_WORDS_BIG_ENDIAN and HOST_WORDS_BIG_ENDIAN disagree.

From-SVN: r32832
2000-03-30 19:10:17 +00:00
Richard Kenner 14c78e9b16 expr.c (move_by_pieces_ninsns): Fix one more missing align correction.
* expr.c (move_by_pieces_ninsns): Fix one more missing align
	correction.

From-SVN: r32831
2000-03-30 13:17:19 -05:00
Richard Kenner 2b968770d7 * expmed.c (store_fixed_bit_field): STRUCT_ALIGN is in bits.
From-SVN: r32830
2000-03-30 09:12:28 -05:00
Richard Kenner bdb429a5a1 calls.c (expand_call): Pass bit alignment to mark_reg_pointer.
* calls.c (expand_call): Pass bit alignment to mark_reg_pointer.
	* explow.c (memory_address, allocate_dynamic_stack_space): Likewise.
	* function.c (assign_parms): Likewise.
	* integrate.c (expand_inline_function): Likewise.
	* stmt.c (expand_decl): Likewise.
	(copy_rtx_and_substitute): Likewise.
	* expr.c (expand_expr, expand_expr_unaligned): Likewise.
 	(clear_by_pieces): Fix error in last change.
	* emit-rtl.c (init_emit): Set known registers alignment in bits.
	* function.h (regno_pointer_align): Now unsigned.
	* config/arm/arm.c (alignable_memory_operand): REGNO_POINTER_ALIGN
	is in bits.
	* config/i386/i386.c (aligned_operand): Likewise.
	* config/sparc/sparc.c (mem_min_alignment): Likewise.
	* config/alpha/alpha.c (aligned_memory_operand): Likewise.
	(unaligned_memory_operand): Likewise.
	(alpha_expand_block_move, alpha_expand_block_clear): Likewise.
	Also make alignments and sizes unsigned and some whitespace cleanup.
	(alpha_va_start): Do nothing if VALIST's type is error_mark_node.

From-SVN: r32829
2000-03-30 08:46:05 -05:00
Nathan Sidwell 068feaa955 rtti.c (class_hint_flags): Rename flags.
* rtti.c (class_hint_flags): Rename flags.
	(class_initializer): Remove flags.
	(synthesize_tinfo_var): Combine offset and flags. Add flags
	for __vmi_class_type_info.
	(create_tinfo_types): Remove flags from __class_type_info and
	__si_class_type_info. Merge flags and offset from
	base_class_type_info.
	* inc/cxxabi.h (__base_class_info): Merge offset and vmi_flags.
	(__base_class_info::is_virtual_p): Adjust.
	(__base_class_info::is_public_p): Adjust.
	(__base_class_info::offset): New accessor.
	(__class_type_info::details): Remove member.
	(__class_type_info::__class_type_info): Lose details.
	(__class_type_info::detail_masks): Remove.
	(__si_class_type_info::__si_class_type_info): Lose details.
	(__vmi_class_type_info::details): New member.
	(__vmi_class_type_info::__vmi_class_type_info): Adjust.
	(__vmi_class_type_info::detail_masks): New member.
	* tinfo.cc (__class_type_info::do_upcast): Initialize result
	with unknown_details_mask.
	(__vmi_class_type_info::do_find_public_src): Adjust
	(__vmi_class_type_info::do_dyncast): Adjust.
	(__vmi_class_type_info::do_upcast): Set result details, if
	needed. Adjust.
	(__dynamic_cast): Temporarily #if out optimization.

From-SVN: r32828
2000-03-30 12:08:26 +00:00
Richard Kenner 19caa751a8 builtins.c (get_pointer_alignment): Use host_integerp & tree_low_cst.
* builtins.c (get_pointer_alignment): Use host_integerp & tree_low_cst.
	(expand_builtin_apply): Pass alignment to emit_block_move in bits.
	(expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
	(expand_builtin_memset): Likewise, but to clear_storage.
	* calls.c (save_fixed_argument_area): Likewise, to move_by_pieces.
	(restore_fixed_argument_area): Likewise.
	(store_unaligned_arguments_into_pseudos): Likewise, to store_bit_field.
	(load_register_parameters): Likewise, to emit_group_load.
	(expand_call): Likewise, to emit_group_store and emit_block_move.
	(emit_library_call_value_1): Likewise, to emit_block_move.
	(store_one_arg): Likewise, and to emit_push_insn.
	* expmed.c (extract_bit_field): Alignment is in bits, not bytes.
	(extract_fixed_bit_field, extract_split_bit_field): Likewise.
	* expr.c (move_by_pieces, move_by_pieces_ninsns): Likewise.
	(emit_block_move, emit_group_load, emit_group_store): Likewise.
	(clear_by_pieces, clear_storage, emit_push_insn): Likewise.
	(expand_assigment, store_expr, store_constructor_field): Likewise.
	(expand_expr_unaligned, do_jump, do_compare_and_jump): Likewise.
	(store_constructor, store_field, get_inner_reference): Likewise.
	Use host_integerp and tree_low_cst; sizes and positions HOST_WIDE_INT.
	(expand_expr, case COMPONENT_REF): Likewise.
	(copy_blkmode_from_regs): Use UNSIGNED_HOST_WIDE_INT for sizes
	and positions; reindent code.
	* expr.h (emit_cmp_insn, emit_cmp_and_jump_insns): Alignment unsigned.
	* function.c (purge_addressof_1): Pass bit align to store_bit_field.
	(assign_parms): Likewise to emit_group_store.
	* optbas.c (prepare_cmp_insn): Alignment is in bits.
	(emit_cmp_and_jump_insns, emit_cmp_insn): Likewise, and also unsigned.
	* stmt.c (expand_value_return): Pass align in bits to emit_group_load.
	(expand_return): Likewise to {extract,store}_bit_field.
	* stor-layout.c (get_mode_alignment): Minor cleanup.
	* config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Align is in bits.
	* config/sh/sh.h (MOVE_BY_PIECES_P): Likewise.
	* ch/expr.c (chill_expand_expr): Pass bit alignment to emit_block_move.

From-SVN: r32827
2000-03-30 06:47:08 -05:00
Jeff Law 2dc4d9f050 Daily bump.
From-SVN: r32826
2000-03-30 01:45:09 -07:00
Zack Weinberg 4b3fe5b65e cppinit.c (cpp_start_read): Call initialize_dependency_output only after reading in the primary source file.
* cppinit.c (cpp_start_read): Call initialize_dependency_output
	only after reading in the primary source file.

From-SVN: r32825
2000-03-30 07:42:55 +00:00
Jeffrey A Law 1f73a8c953 * i386/djgpp.h: Remove extraneous "+".
From-SVN: r32824
2000-03-29 19:19:19 -07:00
Jason Merrill ad242caf80 * configure.in: -linux-gnu*, not -linux-gnu.
From-SVN: r32823
2000-03-29 21:11:39 -05:00
Philipp Thomas 776e256dd3 * POTFILES.in: Remove config/rs6000/cygwin.h
From-SVN: r32822
2000-03-29 17:33:45 -07:00
Geoff Keating 9f720c3eba c-common.c (c_common_nodes_and_builtins): The first parameter to __builtin_va_start and __builtin_va_copy is now either a...
* c-common.c (c_common_nodes_and_builtins): The first parameter to
__builtin_va_start and __builtin_va_copy is now either a 'va_list'
or a reference to a va_list.
* builtins.c (stabilize_va_list): Simplify now we don't have to
work around C array address decay.
* c-typeck.c (convert_for_assignment): Handle assignment to
a reference parameter by taking the address of the RHS.
* ginclude/stdarg.h (va_start): Don't take address of first parameter.
(va_copy): Likewise.
(__va_copy): Likewise.
* ginclude/varargs.h (va_start): Likewise.
(__va_copy): Likewise.

From-SVN: r32821
2000-03-30 00:03:14 +00:00
Jeffrey A Law abe79fd4da * stmt.c (stmt_loop_nest_empty): Fix thinko in last change.
From-SVN: r32820
2000-03-29 15:48:25 -07:00
Jeffrey A Law 1dfb49b94a * calls.c (expand_call): Fix typo.
From-SVN: r32819
2000-03-29 15:46:03 -07:00
Jason Merrill 8cb5e385d6 up
From-SVN: r32818
2000-03-29 15:56:57 -05:00
Jason Merrill 6ab1432e57 add ATTRIBUTE_UNUSED
From-SVN: r32817
2000-03-29 15:56:14 -05:00
Nick Clifton f78288e695 Undo effects of previous delta.
Undo effects of previous delta.  Do not define ASM_SPEC and SUBTARGET_EXTRA_ASM_SPEC
oin arm.h as it conflicts with builds for non GAS using targets

From-SVN: r32816
2000-03-29 20:49:42 +00:00
Jeffrey A Law 843cae51d5 * gcc.c-torture/compile/20000329-1.c: New test.
From-SVN: r32815
2000-03-29 13:48:06 -07:00
Jason Merrill 700473ab02 tree.c (unsave_expr_1): Don't mess with a TARGET_EXPR that hasn't been expanded.
* tree.c (unsave_expr_1): Don't mess with a TARGET_EXPR that hasn't
        been expanded.

From-SVN: r32814
2000-03-29 15:40:37 -05:00
Richard Kenner f2704b9f2a stor-layout.c (bit_from_pos, [...]): New functions.
* stor-layout.c (bit_from_pos, byte_from_pos): New functions.
	(pos_from_byte, pos_from_bit, normalize_offset): Likewise.
	(normalize_rli, rli_size_so_far, rli_size_unit_so_far): Use them.
	* tree.c (bit_position, byte_position): Likewise.
	* tree.h: Declare new functions.

From-SVN: r32813
2000-03-29 15:34:34 -05:00