Commit Graph

27718 Commits

Author SHA1 Message Date
Jan Hubicka
0c4c16df3e calls.c (calls_function_1): Propertly handle TREE_LIST expressions; use special_function_p to detect alloca.
* calls.c (calls_function_1):  Propertly handle TREE_LIST expressions;
	use special_function_p to detect alloca.

From-SVN: r33528
2000-04-28 23:17:41 +00:00
Marc Espie
e67466053b * gcc.texi: Fixes for makeinfo 4.0 --html.
From-SVN: r33526
2000-04-28 16:31:40 -06:00
Kenneth Block
24eaa47a46 * libiberty/cplus-dem.c
(libiberty_demanglers): new table for demangle styles
        (cplus_demangle_set_style): New function for setting style
        (cplus_demangle_name_to_style): New function to translate name
        * include/demangle.h
        (libiberty_demanglers): new table for different styles
        (cplus_demangle_set_style): New function for setting style
        (cplus_demangle_name_to_style): New function to translate name

Co-Authored-By: Jason Merrill <jason@casey.cygnus.com>

From-SVN: r33525
2000-04-28 18:22:22 -04:00
Cosmin Truta
34332678da * decl.c (grok_op_properties): Add an extra check of argtypes.
From-SVN: r33524
2000-04-28 18:10:24 -04:00
Jason Merrill
62014cb327 index-prop: Use a single pattern.
* index-prop: Use a single pattern.  Also support *** cdiffs.

        * index-prop: Don't change /dev/null.

From-SVN: r33523
2000-04-28 18:06:30 -04:00
Zack Weinberg
2f7205ffb2 pcp.h: Delete file.
* pcp.h: Delete file.
	* po/POTFILES.in: Update.

From-SVN: r33522
2000-04-28 22:03:48 +00:00
Kazu Hirata
f40a8c0363 h8300.c (function_epilogue): Clean up flags when the last insn in a function is a barrier.
* h8300.c (function_epilogue): Clean up flags when the last insn
        in a function is a barrier.

From-SVN: r33521
2000-04-28 15:51:42 -06:00
Chris Demetriou
e7651ec5a5 configure.in (sparc-hal-solaris2*): protect [] glob from my expansion.
* configure.in (sparc-hal-solaris2*): protect [] glob from
        my expansion.
        (mips*-*-ecoff*, mips*-*-elf*, mips*-*-*): use MASK_ defines
        rather than hard-coded constants in target_cpu_default2.
        * configure: Regenerate.

From-SVN: r33520
2000-04-28 15:46:33 -06:00
Jason Merrill
c083cf9a09 tree.c (get_callee_fndecl): Extract the initial value from a readonly decl.
* tree.c (get_callee_fndecl): Extract the initial value from
        a readonly decl.

        * cp/optimize.c (initialize_inlined_parameters): Call
        c_apply_type_quals_to_decl.  Set DECL_INITIAL.

From-SVN: r33518
2000-04-28 16:52:31 -04:00
Richard Henderson
e67cd9f80d varasm.c (record_constant_1): Record the CODE_LABEL when taking the address of a LABEL_REF.
* varasm.c (record_constant_1): Record the CODE_LABEL when
        taking the address of a LABEL_REF.

From-SVN: r33517
2000-04-28 13:25:38 -07:00
Richard Henderson
ce48579b9a calls.c (combine_pending_stack_adjustment_and_call): Return the adjustment; don't do the stack adjust.
* calls.c (combine_pending_stack_adjustment_and_call): Return the
        adjustment; don't do the stack adjust.
        (expand_call): Call compute_argument_block_size right before
        allocating the block; update comment; don't do alignment sanity
        checking for sibling call; use args_size instead of
        unadjusted_args_size before args_size is adjusted.  Use
        combine_pending_stack_adjustment_and_call to compute stack adjust
        for must_preallocate case.

        * expr.c (push_block): Remove shadow `temp' in inner scope.

Co-Authored-By: Jan Hubicka <jh@suse.cz>

From-SVN: r33516
2000-04-28 11:25:23 -07:00
Jason Merrill
f1f39752d6 toplev.c (rest_of_compilation): Call note_deferral_of_defined_inline_function even if the function can't be inlined.
* toplev.c (rest_of_compilation): Call
        note_deferral_of_defined_inline_function even if the function
        can't be inlined.

From-SVN: r33515
2000-04-28 14:22:33 -04:00
Scott Bambrough
bb1ec1d79f cpplex.c (_cpp_scan_line): Fix buffer overwrite.
2000-04-28  Scott Bambrough  <scottb@netwinder.org>

	* cpplex.c (_cpp_scan_line): Fix buffer overwrite.

From-SVN: r33514
2000-04-28 18:17:54 +00:00
Richard Henderson
d8d1d62b90 * toplev.c (rest_of_type_compilation): Fix sdb TIMEVAR typo.
From-SVN: r33513
2000-04-28 11:05:39 -07:00
Tom Tromey
72ddef6d32 Removed mistakenly-committed ChangeLog entry
From-SVN: r33512
2000-04-28 16:29:30 +00:00
Tom Tromey
f9f70f2dda re GNATS gcj/218 (Java executables can abort trying to access a null pointer in a leaf function)
* libgcj.spec.in (*jc1): Added -fasynchronous-exceptions.
	Fix for PR gcj/218.

From-SVN: r33511
2000-04-28 16:11:56 +00:00
Kaveh R. Ghazi
4fbe8d0735 * timevar.c (init_timevar): DeANSIfy function definition.
From-SVN: r33509
2000-04-28 13:51:55 +00:00
Bryce McKinlay
065ccab369 String.java (toString): Remove `final' hack.
2000-04-28  Bryce McKinlay  <bryce@albatross.co.nz>

	* libjava/java/lang/String.java (toString): Remove `final' hack.

From-SVN: r33508
2000-04-28 08:56:34 +01:00
Jeff Law
2a96658aa6 Daily bump.
From-SVN: r33507
2000-04-28 01:45:07 -06:00
Bryce McKinlay
ceed610d1d Test for PR gcj/218:
2000-04-28  Bryce McKinlay  <bryce@albatross.co.nz>

	Test for PR gcj/218:
	* libjava.lang/PR218.java: New file.
	* libjava.lang/PR218.out: New file.

From-SVN: r33506
2000-04-28 08:42:27 +01:00
Mark Mitchell
27c58e25f7 optimize.c (copy_body_r): Use STRIP_TYPE_NOPS when copying variables.
* optimize.c (copy_body_r): Use STRIP_TYPE_NOPS when copying
	variables.
	(initialize_inlined_parameters): Try to avoid creating new
	VAR_DECLs.

From-SVN: r33505
2000-04-28 06:40:28 +00:00
Alex Samuel
26026d3803 Makefile.in (timevar.o): Depend on flags.h.
* Makefile.in (timevar.o): Depend on flags.h.
	* timevar.c (unused_stack_instances): New variable.
	(timevar_push): Take a timevar_stack_def from
	unused_stack_instances if available.
	(timevar_pop): Push the popped timevar_stack_def onto
	unused_stack_instances.
	(TIMEVAR_ENABLE): New macro.
	(timevar_def): Make standalone a 1-bit field.  Add field used.
	(get_time): Rename parameter to now.  Return after clearing it if
	not TIMEVAR_ENABLE.
	(init_timevar): Do nothing if not TIMEVAR_ENABLE.
	(timevar_pop): Likewise.
	(timevar_stop): Likewise.
	(timevar_push): Likewise.  Mark the timing variable as used.
	(timevar_start): Likewise.
	(timevar_print): Do nothing if not TIMEVAR_ENABLE.  Don't print
	timevars that were never used.

From-SVN: r33504
2000-04-28 06:18:14 +00:00
Nathan C. Myers
5db2c9b839 basic_string.h: include <bits/atomicity.h> instead of <atomicity.h>, and use the uglified names.
2000-04-26  Nathan C. Myers  <ncm@cantrip.org>

	* bits/basic_string.h: include <bits/atomicity.h> instead
        of <atomicity.h>, and use the uglified names.
        * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
        uglify names, eliminate dependence on <inttypes.h>.
        * src/Makefile.in, src/Makefile.am: refer to correct place
        for atomicity.h header.

From-SVN: r33503
2000-04-28 03:00:58 +00:00
Scott Snyder
0ccf103184 misc-inst.cc: Explicitly instantiate ifstream and ofstream classes.
2000-04-27  scott snyder  <snyder@fnal.gov>

        * src/misc-inst.cc: Explicitly instantiate ifstream and ofstream
        classes.

From-SVN: r33502
2000-04-28 02:53:12 +00:00
Benjamin Kosnik
f3b004d8d7 [multiple changes]
2000-04-26  Nathan C. Myers  <ncm@cantrip.org>

	* bits/basic_string.h: include <bits/atomicity.h> instead
        of <atomicity.h>, and use the uglified names.
        * config/cpu/*/atomicity.h: replace with bits/atomicity.h;
        uglify names, eliminate dependence on <inttypes.h>.
        * src/Makefile.in, src/Makefile.am: refer to correct place
        for atomicity.h header.

2000-04-25 Steven King <sxking@uswest.net>

        * bits/basic_string.h: Fix syntax error.

2000-04-25  Benjamin Kosnik  <bkoz@redhat.com>

	* acinclude.m4 (GLIBCPP_CHECK_MATH_SUPPORT): Improve checks for
	USE_LONG_DOUBLE.
	(GLIBCPP_ENABLE_DEBUG): If alpha, use -gdwarf-2.
	* math/Makefile.am (EXTRA_LONG_DOUBLE_yes): Add all the long
	versions to this as copysignl is needed anyway for these targets.
	* math/Makefile.in: Regenerate.

	* bits/streambuf.tcc (streambuf::xsgetn): Tweak.
	* bits/fstream.tcc (underflow): Cast to libio types.
	* bits/basic_file.h (seekoff): Fixes for alpha: use __c_streamoff.
	* config/c_io_libio.cc (seekoff): And here.

From-SVN: r33501
2000-04-28 02:50:55 +00:00
Mark Mitchell
a649660541 c-commom.c (c_apply_type_quals_to_decl): REFERENCE_TYPES are always TREE_READONLY.
* c-commom.c (c_apply_type_quals_to_decl): REFERENCE_TYPES are
	always TREE_READONLY.

From-SVN: r33500
2000-04-28 02:04:00 +00:00
Ulrich Drepper
d8b2fb5235 i386.h (FUNCTION_BLOCK_PROFILER_EXIT): Generate mem reference for call instruction with mode QImode.
* i386.h (FUNCTION_BLOCK_PROFILER_EXIT): Generate mem reference
        for call instruction with mode QImode.

From-SVN: r33499
2000-04-28 01:54:53 +00:00
Kaveh R. Ghazi
a9266bfa4a aclocal.m4: New file with new test libiberty_AC_FUNC_STRNCMP.
* aclocal.m4: New file with new test libiberty_AC_FUNC_STRNCMP.

	* configure.in (AC_CHECK_HEADERS): Add sys/mman.h fcntl.h.
	(libiberty_AC_FUNC_STRNCMP): Invoke.

	* strncmp.c: New file.

From-SVN: r33498
2000-04-28 01:42:43 +00:00
Gerald Pfeifer
b9550bfbc6 gcc_update: Refer to GCC and gcc_update instead of egcs and egcs_update.
* gcc_update: Refer to GCC and gcc_update instead of egcs and
        egcs_update.

From-SVN: r33497
2000-04-28 01:23:47 +00:00
Alex Samuel
2a9a326b17 Makefile.in (OBJS): Add timevar.o.
hangeLog:

	* Makefile.in (OBJS): Add timevar.o.
	(toplev.o): Depend on timevar.h.
	(ggc-simple.o): Likewise.
	(ggc-page.o): Likewise.
	(timevar.o): New rule.
	(timevar.h): New rule.

	* timevar.h: New file.
	* timevar.c: Likewise.
	* timevar.def: Likewise.

	* toplev.h (gc_time, parse_time, varconst_time): Remove.
	* toplev.c: Use timevar_push and timevar_pop instead of TIMEVAR
	throughout.
	(TIMEVAR): Remove macro.
	(gc_time, parse_time, varconst_time, integration_time, jump_time,
	cse_time, gcse_time, loop_time, cse2_time, branch_prob_time,
	flow_time, combine_time, regmove_time, sched_time,
	local_alloc_time, global_alloc_time, flow2_time, peephole2_time,
	sched2_time, dbr_sched_time, reorder_blocks_time,
	rename_registers_time, shorten_branch_time, stack_reg_time,
	to_ssa_time, from_ssa_time, final_time, symout_time, dump_time,
	all_time): Remove.
	(compile_file): Don't initialize time variables.  Call
	init_timevar and start TV_TOTAL timer.  Call timevar_print instead
	of many calls to print_time.
	(rest_of_compilation): Add timing for reload_cse_regs.
	(get_run_time): Removed to timevar.c.
	(print_time): Likewise.
	(get_run_time): Implement using TV_TOTAL time variable.
	(print_time): Get total run time from get_run_time.
	* ggc-page.c (ggc_collect): Push and pop TV_GC instead of
	computing elapsed time explicitly.
	* ggc-simple.c (ggc_collect): Likewise.
	(gc_time): Remove declaration.


cp/ChangeLog:

	* lex.c (my_get_run_time): Remove.
	(init_filename_times): Use get_run_time instead of my_get_run_time.
	(check_newline): Likewise.
	(dump_time_statistics): Likewise.
	* decl2.c (finish_file): Push and pop timevar TV_VARCONST instead
	of computing elapsed time explicitly.

From-SVN: r33496
2000-04-28 00:59:40 +00:00
Tom Tromey
e815887f4d re GNATS gcj/2 (Method call on null instance should throw NullPointerException)
Fix for PR gcj/2:
	* expr.c (expand_invoke): Generate check to see if object pointer
	is null in nonvirtual invocation case.
	* java-tree.h (soft_nullpointer_node): Declare.
	* decl.c (soft_nullpointer_node): New global.
	(init_decl_processing): Initialize soft_nullpointer_node.
	* parse.y (invocation_mode): Return INVOKE_NONVIRTUAL for `final'
	or `private' methods.
	(patch_invoke): Handle INVOKE_NONVIRTUAL case.

From-SVN: r33495
2000-04-28 00:21:06 +00:00
Jonathan Larmour
db6a1df0e0 * index-prop: Fix occasional problem when using cvs diff -p
From-SVN: r33494
2000-04-27 18:15:34 -06:00
Alexandre Petit-Bianco
ad81223cbf decl.c (complete_start_java_method): Don't call _Jv_InitClass from <clinit>
Wed Apr 26 14:29:33 2000  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* decl.c (complete_start_java_method): Don't call _Jv_InitClass
 	from <clinit>

From-SVN: r33493
2000-04-27 16:25:18 -07:00
Tom Tromey
40f4ae3280 Runtime support for PR gcj/2:
* prims.cc (_Jv_ThrowNullPointerException): New function.
	* include/jvm.h (_Jv_ThrowNullPointerException): Declare.

From-SVN: r33492
2000-04-27 23:13:31 +00:00
Mark Mitchell
739fb04929 calls.c (combine_pending_stack_adjustment_and_call): New function.
* calls.c (combine_pending_stack_adjustment_and_call): New function.
	(expand_call): Use it.

From-SVN: r33491
2000-04-27 16:44:23 +00:00
Jan Hubicka
d582732678 Jan Hubicka <jh@suse.cz>
* flow.c (mark_set_1):  Handle MEMs in ZERO_EXTRACT/SIGN_EXTRACT
        fields.

From-SVN: r33490
2000-04-27 09:28:56 -07:00
Alexandre Oliva
b340d2b8de mn10300.md (movhi): Simplify.
* config/mn10300/mn10300.md (movhi): Simplify.  Prefer data
registers.

From-SVN: r33489
2000-04-27 15:49:20 +00:00
Jan Hubicka
1b513b7711 * function.c (epilogue_done): Pass whole insn to record_insns.
From-SVN: r33488
2000-04-27 15:34:16 +00:00
Jan Hubicka
8e02c4d08d hashtab.c (htab_expand): Add prototype.
* hashtab.c (htab_expand): Add prototype.
	(find_empty_slot_for_expand): Likewise.

From-SVN: r33487
2000-04-27 14:59:55 +00:00
Jan Hubicka
01329426bf cse.c (CSE_ADDRESS_COST): Remove.
* cse.c (CSE_ADDRESS_COST): Remove.
	(find_best_addr): Add new parameter "MODE", use address_cost instead
	of CSE_ADDRESS_COST
	(address_cost): New.
	(fold_rtx): Update call of find_best_addr.
	* rtl.h (address_cost): Declare.
	* loop.c (general_induction_var): Add new parameter "MODE", use
	address_cost instead of ADDRESS_COST
	(init_loop): Use address_cost instead of ADDRESS_COST.
	(check_insn_for_givs): Update call of general_induction_var.
	(find_mem_givs): Likewise.
	(consec_sets_giv): Likewise.
	* config/i386/i386.h (ADDRESS_COST): Call ix86_address_cost.
	* i386.c (ix86_address_cost): New.
	* i386-protos.h (ix86_address_cost): Declare.

From-SVN: r33486
2000-04-27 14:56:47 +00:00
Alexandre Oliva
5e849f6e86 mn10300.md (movqi): Simplify.
* config/mn10300/mn10300.md (movqi): Simplify.  Prefer data
registers.

From-SVN: r33485
2000-04-27 14:46:55 +00:00
Jan Hubicka
2a5b96fdb1 expr.c (store_expr): Use clear_storage instead of direct memset libcall.
* expr.c (store_expr): Use clear_storage instead of direct memset
	libcall.

From-SVN: r33484
2000-04-27 14:13:48 +00:00
Jan Hubicka
6d84422547 20000427-1.c: New test for loop hoisting code and hard registers.
* compile/20000427-1.c: New test for loop hoisting code
	and hard registers.

From-SVN: r33483
2000-04-27 14:05:09 +00:00
Alexandre Oliva
d82704fbb1 mn10300.c (mn10300_address_cost): Test ASHIFT, AND and LABEL_REF.
* config/mn10300/mn10300.c (mn10300_address_cost): Test
ASHIFT, AND and LABEL_REF.

From-SVN: r33482
2000-04-27 13:39:09 +00:00
Jan Hubicka
1aaef9c19a * invoke.texi (-foptimize-sibling-calls): Fix.
From-SVN: r33481
2000-04-27 13:14:10 +00:00
Jan Hubicka
28b6b9b2d3 * loop.c (load_mems) Don't use hard registers for the hoisting.
* unroll.c (unroll_loop): Avoid overflow in the n_iterations
	calculation; rename const_equiv array in the preconditioning code
	from loop_unroll to loop_unroll_precondition

From-SVN: r33480
2000-04-27 12:57:35 +00:00
Bryce McKinlay
af4464eb46 prims.cc (_Jv_NewObjectArray): Fix typo.
2000-04-27  Bryce McKinlay  <bryce@albatross.co.nz>

        * prims.cc (_Jv_NewObjectArray): Fix typo.

From-SVN: r33479
2000-04-27 12:47:13 +01:00
Richard Henderson
9785c68dd5 flow.c (struct propagate_block_info): Remove new_dead, new_live; add new_set.
* flow.c (struct propagate_block_info): Remove new_dead, new_live;
        add new_set.
        (propagate_one_insn): Clear it.  Don't update reg_live here.
        (init_propagate_block_info): Update for pbi member changes.
        (free_propagate_block_info): Likewise.
        (mark_set_1): Know that zero_extract, sign_extract, and
        strict_low_part don't kill their argument.  Alter hard subregs.
        Update new_set for non-CLOBBER sets.  Update reg_live.
        (find_auto_inc): Update reg_live, not new_dead.
        (mark_used_reg): Update reg_live, not new_live.  Examine new_set
        to determine if the reg in question was set this insn.  Only update
        reg info with PROP_REG_INFO.

From-SVN: r33478
2000-04-27 04:17:04 -07:00
Jeff Law
077f1f8e14 Daily bump.
From-SVN: r33477
2000-04-27 01:45:07 -06:00
Richard Henderson
83a67d12b2 flow.c (calculate_global_regs_live): Force stack pointer live at end.
* flow.c (calculate_global_regs_live): Force stack pointer
        live at end.

From-SVN: r33476
2000-04-27 00:39:51 -07:00