Commit Graph

23201 Commits

Author SHA1 Message Date
Geoff Keating
906fb125a1 rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic...
* rs6000.c (rs6000_stack_info): For ABI_V4/ABI_SOLARIS -fpic, always
        allocate space in the stack frame for the PIC register.

From-SVN: r28525
1999-08-05 00:59:54 -06:00
Jeffrey A Law
14fe6c707f m68k.md (xordi3, anddi3): These patterns are not available on the coldfire.
* m68k.md (xordi3, anddi3): These patterns are not available on
        the coldfire.

From-SVN: r28524
1999-08-05 00:22:16 -06:00
Mark Mitchell
d7afe8ec44 real.c (GET_REAL): Don't violate ANSI/ISO aliasing rules.
* real.c (GET_REAL): Don't violate ANSI/ISO aliasing rules.
        (PUT_REAL): Likewise.

From-SVN: r28521
1999-08-04 23:41:34 -06:00
Per Bothner
67a6001825 configure.in: Also do AC_SUBST for DIVIDESPEC.
1999-08-04  Per Bothner <per@bothner.com>

	* configure.in:  Also do AC_SUBST for DIVIDESPEC.

From-SVN: r28520
1999-08-05 05:21:44 +00:00
Jeffrey A Law
7ea3788d06 * gcc.c-torture/execute/970312-1.c: Delete duplicate test.
From-SVN: r28519
1999-08-04 21:34:54 -06:00
Jeffrey A Law
c91fba509b t-a29kbare: Fix some comments.
* a29k/t-a29kbare: Fix some comments.
	(LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c
	(FPBIT, DPBIT): Define.
	* a29k/t-vx29k: Likewise.
	* arc/t-arc: Likewise.
	* arm/t-arm-elf: Likewise.
	* arm/t-bare: Likewise.
	* arm/t-pe: Likewise.
	* arm/t-pe-thumb: Likewise.
	* arm/t-semi: Likewise.
	* arm/t-thumb: Likewise.
	* arm/t-thumb-elf: Likewise.
	* arm/t-thumb-linux: Likewise.
	* h8300/t-h8300: Likewise.
	* i960/t-i960: Likewise.
	* i960/t-vxworks960: Likewise.
	* m32r/t-m32r: Likewise.
	* mips/t-ecoff: Likewise.
	* mips/t-elf: Likewise.
	* mips/t-r3900: Likewise.
	* pa/t-pro: Likewise.
	* rs6000/t-aix43: Likewise.
	* rs6000/t-beos: Likewise.
	* rs6000/t-newas: Likewise.
	* rs6000/t-ppccomm: Likewise.
	* rs6000/t-rs6000: Likewise.
	* rs6000/t-winnt: Likewise.
	* rs6000/t-xnewas: Likewise.
	* rs6000/t-xrs6000: Likewise.
	* sh/t-sh: Likewise.
	* sparc/t-elf: Likewise.
	* sparc/t-sparcbare: Likewise.
	* sparc/t-sparclite: Likewise.
	* sparc/t-splet: Likewise.
	* v850/t-v850: Likewise.
	* mn10200/t-mn10200: Fix comments.
	* mn10300/t-mn10300: Likewise.

From-SVN: r28518
1999-08-04 21:27:49 -06:00
J"orn Rennecke
edd6ede777 final.c (shorten_branches): Don't add an alignment for loops that have no label inside.
* final.c (shorten_branches): Don't add an alignment for loops
	that have no label inside.

From-SVN: r28517
1999-08-04 23:13:14 +01:00
Tom Tromey
45fa5f9f14 Removed extra ';;'
From-SVN: r28516
1999-08-04 20:57:53 +00:00
Kaveh R. Ghazi
cbbfcb3b23 Warning fixes:
* builtins.c (expand_builtin_memcmp, expand_builtin_strcmp): Wrap
	prototypes in macro HAVE_cmpstrsi.

	* cpplib.c (cpp_get_token): Remove unused label `op3'.

	* emit-rtl.c (operand_subword): Remove unused variable
	`bits_per_word'.

	* rtl.c (shallow_copy_rtx): Remove unused variable `format_ptr'.

	* tree.c (chainon): Wrap variable `t2' in macro ENABLE_CHECKING.

From-SVN: r28514
1999-08-04 20:47:45 +00:00
Jason Merrill
e88e3c0bf6 regen
From-SVN: r28513
1999-08-04 16:43:02 -04:00
Zack Weinberg
5d83f44baa cpphash.c (macroexpand): Delete leading whitespace when arg is concatenated before.
Wed Aug  4 13:29:23 1999  Zack Weinberg  <zack@bitmover.com>

	* cpphash.c (macroexpand): Delete leading whitespace when arg
	is concatenated before.
	(unsafe_chars): Correct test for whether + and - can extend a
	token.

	* cppinit.c (cpp_start_read): Do dependencies for
	-include/-imacros files also.

	* cpplib.c (cpp_scan_buffer): In no-output mode, don't bother
	tokenizing non-directive lines.
	(cpp_expand_to_buffer): Temporarily disable no-output mode.
	* cppmain.c: In no-output mode, just call cpp_scan_buffer for
	the input file.

From-SVN: r28512
1999-08-04 20:39:33 +00:00
Jason Merrill
2a94e396c6 * expr.c (expand_expr, case PLUS_EXPR): Fix parallel case, too.
From-SVN: r28511
1999-08-04 16:32:26 -04:00
Tom Tromey
d42058b1a7 * configure.in: Added missing `;;'. From Anthony Green.
From-SVN: r28510
1999-08-04 20:25:54 +00:00
Jason Merrill
03c4e79139 regen
From-SVN: r28509
1999-08-04 15:57:59 -04:00
Jason Merrill
1d80422324 * c-parse.in: Add END_OF_LINE token.
From-SVN: r28508
1999-08-04 15:57:26 -04:00
Jason Merrill
fbb186135d c-lex.c: Sync with C++ frontend.
* c-lex.c: Sync with C++ frontend.
	(linemode): New variable.
	(parse_float): imag, conversion_errno, and type are output only.
	(yylex): Adjust.  Move initial '.' case into main switch.
	Use linemode.
	(handle_generic_pragma): Just deal with tokens.
	(readescape): Use ISXDIGIT and ISGRAPH.
	* c-parse.in: Add END_OF_LINE token.

	* c-lex.c (lang_init): Generalize.
	(nextchar): Remove.  Replace uses with UNGETC.
	(skip_white_space): Handle linemode here.  Optimize for cpplib.
	(skip_white_space_on_line): Remove.
	(extend_token_buffer_to): New fn.
	(extend_token_buffer): Use it.
	(read_line_number, check_newline): Just deal with tokens.
	(token_getch, token_put_back): New fns.
	(yylex): Use them.  More cpplib optimizations.  Simplify.

	* c-lex.c (init_parse): Set cpp_token to CPP_DIRECTIVE.
	(consume_string): Make this smart about USE_CPPLIB.
	(check_newline): Rewrite to be intelligent about USE_CPPLIB.
	(yylex): Rewrite to be intelligent about USE_CPPLIB.
	Also, clean up cases where we redundantly set token_buffer[0].
	(read_line_number): New fn.
	(ignore_escape_flag): New variable.

From-SVN: r28507
1999-08-04 15:55:31 -04:00
Tom Tromey
825b4dde6b Updated THANKS
From-SVN: r28506
1999-08-04 19:55:25 +00:00
Rainer Orth
276836f0fd configure.in (machdep): Use mips_ultrix_mach_dep.s on Ultrix V4.
Mon Aug  2 23:09:41 1999  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.in (machdep): Use mips_ultrix_mach_dep.s on Ultrix V4.

From-SVN: r28503
1999-08-04 19:51:34 +00:00
Jeffrey A Law
6c0c402240 pa.md (divsi3, [...]): Clobber a new dummy operand.
* pa.md (divsi3, udivsi3, modsi3, umodsi3 expanders): Clobber a new
        dummy operand.  Allocate a new pseudo for the dummy operand.
        (divsi3, udivsi3, modis3, umodsi3 patterns): Corresponding changes.

From-SVN: r28502
1999-08-04 13:27:02 -06:00
Jeffrey A Law
0aefc57b5d * pa.md (movqi, movhi patterns): Do not expose FP regs to regclass.
From-SVN: r28501
1999-08-04 13:13:09 -06:00
Tom Tromey
430e7edf8f configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Removed --enable-java-gc option and JAVAGC subst.

From-SVN: r28500
1999-08-04 18:28:22 +00:00
Richard Earnshaw
949d79eb1d arm.c (typedef minipool_node): Renamed from pool_node.
* arm.c (typedef minipool_node): Renamed from pool_node.
(minipool_vector, minipool_size, minipool_vector_label): Similarly.
(add_minipool_constant): New function.
(dump_minipool): New function.
(find_barrier): Remove special case for getting the insn size of
an insn that references the constant pool.
(minipool_fixup): New structure.
(push_minipool_barrier): New function.
(push_minipool_fix): New function.
(note_invalid_constants): New function.
(add_pool_constant, dump_table, fixit, broken_move): Delete.
(arm_reorg): Rewrite code to fix up the constant pool into a
series of mini-pools embedded in the insn stream.
(arm_output_epilogue): New function, made mainly from the body
of output_func_epilogue.
(output_func_epilogue): Move insn generation part of epilogue code
to arm_output_epilogue.
* arm.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Delete.
* arm.md (pool_range): New attribute.
(zero_extendqidi2): Add attribute pool_range.
(zero_extend_hisi_insn, load_extendqisi, extendhisi_insn,
extendqihi_insn, extendqisi_insn, movdi, movsi_insn, pic_load_addr,
pic_load_addr_based_insn, movhi_insn_arch4, movhi_insn_littleend,
movhi_insn_bigend, loadhi_si_bigend, movsf_hard_insn, movsf_soft_insn,
movdf_hard_insn, movdf_soft_insn, movxf_hard_insn): Likewise.
(epilogue): New expand.
(epilogue_insn): New insn.  Call arm_output_epilogue.

* arm.c (arm_poke_function_name): Undo change of July 17.  Tidy up.
* arm.h (TARGET_SWITCHES): Add missing doc string for TARGET_DEFAULT.

From-SVN: r28499
1999-08-04 13:40:10 +00:00
Kaveh R. Ghazi
49f48c719e Warning fixes:
* Makefile.in (lang.o): Depend on $(RTL_H) $(EXPR_H).

        * expr.c (java_stack_pop, java_array_data_offset,
        build_java_throw_out_of_bounds_exception, case_identity,
        build_java_check_indexed_type): Add static prototypes.
        (linenumber_table, expand_invoke, expand_java_field_op,
        build_primtype_type_ref, expand_byte_code): Constify a char*.

        * java-tree.h (build_primtype_type_ref, linenumber_table):
        Constify a char*.
        (java_lang_expand_expr): Add prototype.

        * lang.c: Include rtl.h and expr.h.  Remove extern prototype for
        `java_lang_expand_expr'.

        * lex.c (java_lex_error): Constify a char*.
        (java_get_unicode, java_read_char, java_allocate_new_line,
        java_unget_unicode, java_sneak_unicode): Prototype.

        * parse-scan.y (current_class, package_name, method_declarator,
        report_class_declaration, yyerror): Constify a char*.

        * parse.h (java_report_errors): Prototype.
        (yyerror): Constify a char*.

        * parse.y (classitf_redefinition_error, check_modifiers,
        parse_jdk1_1_error, lookup_package_type,
        lookup_package_type_and_set_next, get_printable_method_name,
        purify_type_name): Constify a char*.
        (build_super_invocation, maybe_generate_finit,
        verify_constructor_super, parser_add_interface,
        add_superinterfaces, jdep_resolve_class, note_possible_classname,
        java_complete_expand_methods, java_expand_finals,
        cut_identifier_in_qualified, java_stabilize_reference,
        do_unary_numeric_promotion, operator_string, do_merge_string_cste,
        merge_string_cste): Prototype.
        (single_type_import_declaration, yyerror,
        variable_redefinition_error, build_array_from_name,
        build_unresolved_array_type, check_class_interface_creation,
        resolve_class, complete_class_report_errors,
        note_possible_classname, read_import_dir,
        find_in_imports_on_demand, resolve_package, fix_constructors,
        check_deprecation, lookup_method_invoke,
        maybe_build_primttype_type_ref, array_constructor_check_entry):
        Constify a char*.
        (java_complete_expand_methods, java_expand_finals): Make static.
        (convert_narrow): Remove static prototype.

From-SVN: r28498
1999-08-04 13:30:51 +00:00
Richard Earnshaw
cc3dea85a8 recog.c (preproces_constraints): Zero recog_op_alt before processing the constraints.
* recog.c (preproces_constraints): Zero recog_op_alt before
processing the constraints.

From-SVN: r28497
1999-08-04 13:11:20 +00:00
Jason Merrill
f0ce07b87a * linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
From-SVN: r28496
1999-08-04 07:27:20 -04:00
Nathan Sidwell
fb2000b293 * g++.old-deja/g++.eh/spec6.C: Add more tests. Remove XFAILS.
From-SVN: r28495
1999-08-04 09:09:21 +00:00
Nathan Sidwell
4cc1d46201 cp-tree.h (empty_except_spec): New global var.
* cp-tree.h (empty_except_spec): New global var.
	(compexcepttypes): Remove prototype.
	(comp_except_specs): Prototype new global function.
	(add_exception_specifier): Prototype new global function.
	* decl.c (empty_except_spec): Define new global var.
	(duplicate_decls): Use comp_except_specs, reword error message.
	(init_decl_processing): Initialize empty_except_spec.
	Adjust build_exception_variant calls.
	* parse.y (exception_specification_opt): Use empty_except_spec.
	(ansi_raise_identifier): Call check_for_new_type.
	(ansi_raise_identifiers): Use add_exception_specifier.
	* pt.c (tsubst): Use add_exception_specifier to build exception
	specifier.
	* search.c (check_final_overrider): New static function, broken
	out of get_matching_virtual. Check throw specifiers, reword
	diagnostics.
	(get_matching_virtual): Use check_final_overrider.
	* tree.c (build_exception_variant): Use comp_except_specs.
	* typeck.c (compexcepttypes): Remove.
	(comp_except_types): New static function, helper for
	comp_except_specs. Compare two types as exception specifiers.
	(comp_except_specs): New global function, compare two exception
	specifiers.
	(comptypes): Adjust for comp_except_specs.
	* typeck2.c (add_exception_specifier): New global function.

	* class.c (check_for_override): Reword error message.

From-SVN: r28494
1999-08-04 09:07:51 +00:00
Mark Elbrecht
bc3c01c507 * gcc/config/i386/djgpp.h (BSS_SECTION_ASM_OP): Define.
From-SVN: r28493
1999-08-04 02:58:39 -06:00
Richard Henderson
1fe659304f * jump.c (delete_insn): Delete the addr_vec when deleting a tablejump.
From-SVN: r28492
1999-08-04 02:19:36 -06:00
Jeffrey A Law
dbd83e1178 * config.sub (vxworks case): Use os=-vxworks, not os=vxworks.
From-SVN: r28489
1999-08-04 02:07:57 -06:00
Jim Kingdon
318e4b5687 * global.c: Fix comment.
From-SVN: r28488
1999-08-04 01:50:08 -06:00
Jeff Law
d2dace5771 Daily bump.
From-SVN: r28487
1999-08-04 01:46:10 -06:00
Ian Lance Taylor
ca6062011d gcc.c (access_check): New static function.
* gcc.c (access_check): New static function.
        (find_a_file): Use it when searching a directory list.
        * collect2.c (find_a_file): Don't accept directories found when
        searching a directory list.

From-SVN: r28486
1999-08-04 01:45:10 -06:00
Philippe De Muyter
0c26b18a0d tlink.c (symbol_hash_lookup): Do not prefix functions used as function parameters with `&'.
* tlink.c (symbol_hash_lookup): Do not prefix functions used as
        function parameters with `&'.
        (file_hash_lookup, demangled_hash_lookup, tlink_init): Ditto.

From-SVN: r28485
1999-08-04 01:41:48 -06:00
Jeffrey A Law
6d368e86d0 * gcc.c-torture/execute/990804-1.c: New test.
From-SVN: r28484
1999-08-04 01:18:41 -06:00
Jeffrey A Law
e8fe3cc34e flow.c (delete_unreachable_blocks): Do not call merge_blocks or tidy_fallthru_edge if...
* flow.c (delete_unreachable_blocks): Do not call merge_blocks
        or tidy_fallthru_edge if the last insn in the block is not
        an unconditional jump or a simple conditional jump.

From-SVN: r28483
1999-08-04 01:11:26 -06:00
Richard Henderson
31534a2cba Forgot to check this in yesterday.
From-SVN: r28481
1999-08-03 22:46:42 -07:00
Tom Tromey
fa94e3a95d gc_priv.h (GC_test_and_set): Implementation for Linux PPC from Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
* gc_priv.h (GC_test_and_set): Implementation for Linux PPC from
	Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.

From-SVN: r28480
1999-08-04 03:26:15 +00:00
J"orn Rennecke
02edc62b77 Makefile.in (c-decl.o): Depends on defaults.h.
* Makefile.in (c-decl.o): Depends on defaults.h.
	* java/Makefile.in (decl.o): Depends on $(srcdir)/../defaults.h.

From-SVN: r28479
1999-08-03 23:01:21 +01:00
Jeffrey A Law
156e68b756 pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for PA1.1 and above.
* pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for
        PA1.1 and above.
        (CLASS_MAX_NREGS): Likewise.

From-SVN: r28478
1999-08-03 14:17:38 -06:00
Nathan Sidwell
351b736c54 crash63.C: Expect a POD warning
* g++.old-deja/g++.brendan/crash63.C: Expect a POD warning
        * g++.old-deja/g++.brendan/crash64.C: Likewise
        * g++.old-deja/g++.brendan/overload8.C: Likewise

From-SVN: r28476
1999-08-03 15:05:25 +00:00
Nathan Sidwell
52fb276947 call.c (convert_arg_to_ellipsis): Use pod_type_p.
* call.c (convert_arg_to_ellipsis): Use pod_type_p.
        * cp-tree.h (struct lang_type): Added non_pod_class flag.
        (CLASSTYPE_NON_POD_P): New macro to access it.
        * class.c (finish_struct_1): Determine non-PODness.
        Check for arrays of pointers (-Weffc++).
        Remove array inspection duplicated code.
        * tree.c (pod_type_p): Detect non-pod non-aggregate types.
        Use CLASSTYPE_NON_POD_P.

From-SVN: r28475
1999-08-03 15:04:49 +00:00
Nathan Sidwell
4a30151d10 * g++.old-deja/g++.other/struct1.C: New test.
From-SVN: r28474
1999-08-03 14:46:14 +00:00
Nathan Sidwell
13bd123dfb * class.c (duplicate_tag_error): Preserve template information.
From-SVN: r28473
1999-08-03 14:45:20 +00:00
Nathan Sidwell
8e64077dd3 * g++.old-deja/g++.other/enum2.C: New test.
From-SVN: r28472
1999-08-03 14:25:10 +00:00
Nathan Sidwell
30ff82528b decl.c (start_enum): Show location of previous definition.
* decl.c (start_enum): Show location of previous definition.
        * parse.y (enumlist_opt): New reduction.
        (structsp): Simplify enum rules to use enumlist_opt.

From-SVN: r28471
1999-08-03 14:24:07 +00:00
Alexandre Oliva
f124f84ab0 * ext1.C: New test.
From-SVN: r28470
1999-08-03 13:51:50 +00:00
Alexandre Oliva
5b8fa33160 * dwarf1.C, dwarf2.C, dwarf3.C: New tests.
From-SVN: r28469
1999-08-03 12:51:02 +00:00
Jason Merrill
a22b75d3f2 new
From-SVN: r28468
1999-08-03 07:35:17 -04:00
Jason Merrill
074917ba5c lex.c (yyprint): Handle PFUNCNAME.
* lex.c (yyprint): Handle PFUNCNAME.

	* decl2.c (build_expr_from_tree, case METHOD_CALL_EXPR): Only
	build_expr_from_tree on the args of a TEMPLATE_ID_EXPR.

From-SVN: r28467
1999-08-03 06:18:13 -04:00