Zack Weinberg [Fri, 11 Feb 2000 20:17:27 +0000 (20:17 +0000)]
cpphash.c: Fix formatting, update commentary.
* cpphash.c: Fix formatting, update commentary.
(dump_definition): Take three separate arguments instead of a
MACRODEF structure argument.
* cpphash.h: Update prototype of dump_definition.
* cppinit.c (cpp_finish): Update call of dump_definition.
* cpplib.c (do_define): Always create new hash entry with
T_MACRO type. Remove redundant check for redefinition of
poisoned identifier. Update call of dump_definition.
(do_undef): Don't call check_macro_name. Rename sym_length to
len.
(do_error, do_warning): Don't use copy_rest_of_line or
SKIP_WHITE_SPACE.
(do_warning): Don't use pedwarn for the actual warning,
only the notice about its not being in the standard. (Fixes
bug with #warning in system headers.)
(do_ident): Stricter argument checking - accept only a single
string after #ident. Also, macro-expand the line.
(do_xifdef): Use cpp_defined. De-obfuscate.
(do_pragma): Split out specific pragma handling to separate
functions. Use get_directive_token. Update commentary. Do
not pass on #pragma once or #pragma poison to the front end.
(do_pragma_once, do_pragma_implementation, do_pragma_poison,
do_pragma_default): New.
From-SVN: r31931
Jeffrey A Law [Fri, 11 Feb 2000 19:36:25 +0000 (19:36 +0000)]
* gcc.c-torture/compile/
20000211-1.c: New test.
From-SVN: r31930
Jeffrey A Law [Fri, 11 Feb 2000 19:35:57 +0000 (12:35 -0700)]
jump.c (jump_optimize_1): The first operand in a relational can be a CONST_INT.
* jump.c (jump_optimize_1): The first operand in a relational
can be a CONST_INT.
* optabs.c (emit_conditional_move): Handle relationals which
have a known true/false result.
From-SVN: r31929
Geoff Keating [Fri, 11 Feb 2000 19:31:55 +0000 (19:31 +0000)]
function.c (thread_prologue_and_epilogue_insns): Don't insert a RETURN insn into a block which already ends with a jump.
* function.c (thread_prologue_and_epilogue_insns): Don't insert
a RETURN insn into a block which already ends with a jump.
From-SVN: r31928
Geoffrey Keating [Fri, 11 Feb 2000 19:27:00 +0000 (19:27 +0000)]
* haifa-sched.c (BUF_LEN): Increase a lot.
From-SVN: r31927
Warren Levy [Fri, 11 Feb 2000 19:09:03 +0000 (19:09 +0000)]
BigInteger.java (BigInteger(String, int)): New constructor.
* java/math/BigInteger.java(BigInteger(String, int)): New constructor.
(BigInteger(String)): New constructor.
(not): Rewritten using version from Kawa's BitOps class.
(valueOf): New private methods from Kawa's BitOps class.
(swappedOp): ditto.
(bitOp): ditto.
(setBitOp): ditto.
(and): Implemented.
(or): Implemented.
(xor): Implemented.
(andNot): Implemented.
(clearBit): Implemented.
(setBit): Implemented.
(bitCount): Implemented.
(toByteArray): Implemented.
From-SVN: r31926
Tom Tromey [Fri, 11 Feb 2000 18:44:37 +0000 (18:44 +0000)]
* java/io/File.java (nextValue): Now synchronized.
From-SVN: r31925
Nick Clifton [Fri, 11 Feb 2000 18:16:23 +0000 (18:16 +0000)]
Add thumb prototypes file
From-SVN: r31924
Robert Lipe [Fri, 11 Feb 2000 17:50:31 +0000 (17:50 +0000)]
Makefile.in (bootstrap-lean): Remove additional files.
* Makefile.in (bootstrap-lean): Remove additional files.
(bootstrap2-lean): Likewise. (VOL_FILES): List of files for above.
From-SVN: r31923
Tom Tromey [Fri, 11 Feb 2000 17:32:52 +0000 (17:32 +0000)]
natFileDescriptorPosix.cc (open): Recognize EXCL flag.
* java/io/natFileDescriptorPosix.cc (open): Recognize EXCL flag.
* java/io/FileDescriptor.java (EXCL): New static field.
* java/io/File.java (tmpdir): New static field.
(createTempFile): New method.
(nextValue): New method.
* java/lang/natSystem.cc (init_properties): Set java.io.tmpdir
property.
From-SVN: r31922
Nathan Sidwell [Fri, 11 Feb 2000 15:49:56 +0000 (15:49 +0000)]
decl.c (init_decl_processing): Remove duplicate decl of set_alignment.
* decl.c (init_decl_processing): Remove duplicate decl of
set_alignment.
From-SVN: r31921
Franz Sirl [Fri, 11 Feb 2000 15:48:24 +0000 (15:48 +0000)]
expr.c (compare_records): Delete maximum_field_alignment declaration.
* expr.c (compare_records): Delete maximum_field_alignment declaration.
* inout.c (inout_init): Likewise.
(build_chill_gettextaccess): Likewise.
(build_enum_tables): Likewise.
* lang.c: Likewise.
* satisfy.c (satisfy): Likewise.
* tasking.c (build_tasking_struct): Likewise.
(build_tasking_message_type): Likewise.
* typeck.c (build_init_struct): Likewise.
* except.c (emit_setup_handler): Make save_maximum_field_alignment
unsigned int to match maximum_field_alignment.
* inout.c (inout_init): Likewise.
(build_chill_gettextaccess): Likewise.
(build_enum_tables): Likewise.
* tasking.c (build_tasking_struct): Likewise.
(build_tasking_message_type): Likewise.
* typeck.c (build_init_struct): Likewise.
From-SVN: r31920
Scott Bambrough [Fri, 11 Feb 2000 15:27:52 +0000 (15:27 +0000)]
Fix tabbing.
From-SVN: r31919
Scott Bambrough [Fri, 11 Feb 2000 15:25:31 +0000 (15:25 +0000)]
Add myself to MAINTAINERS file.
From-SVN: r31918
Nathan Sidwell [Fri, 11 Feb 2000 13:46:37 +0000 (13:46 +0000)]
cpphash.c (special_symbol): Remove spurious argument to cpp_lookup.
* cpphash.c (special_symbol): Remove spurious argument to
cpp_lookup.
From-SVN: r31917
Joel Sherrill [Fri, 11 Feb 2000 10:17:46 +0000 (10:17 +0000)]
configure.in: (i*86-*-rtems*): Swapped elf and coff stanzas.
* configure.in: (i*86-*-rtems*): Swapped elf and coff
stanzas.
* configure: Rebuilt.
From-SVN: r31916
Rodney Brown [Fri, 11 Feb 2000 10:05:42 +0000 (10:05 +0000)]
* pa-protos.h: Wrap function_arg_padding in TREE_CODE #ifdef.
From-SVN: r31915
Jeffrey A Law [Fri, 11 Feb 2000 10:01:03 +0000 (10:01 +0000)]
* pa.c, pa.h: Remove trigraph sequences within comments.
From-SVN: r31914
Pavel Roskin [Fri, 11 Feb 2000 09:53:36 +0000 (09:53 +0000)]
* invoke.texi (PPC Options): -mno-new-mnenomics -> -mold-mnemonics.
From-SVN: r31913
Brad Lucier [Fri, 11 Feb 2000 09:49:40 +0000 (09:49 +0000)]
* sbitmap.h: Make SBITMAP_ELT_BITS unsigned.
From-SVN: r31912
Jeff Law [Fri, 11 Feb 2000 08:45:38 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31911
Michael Hayes [Fri, 11 Feb 2000 04:59:58 +0000 (04:59 +0000)]
* config/c4x/c4x.c (fp_zero_operand): Check for CONST_DOUBLE.
From-SVN: r31910
Michael Hayes [Fri, 11 Feb 2000 04:55:07 +0000 (04:55 +0000)]
c4x.h (ASM_GLOBALIZE_LABEL): Use c4x_global_label.
* config/c4x/c4x.h (ASM_GLOBALIZE_LABEL): Use c4x_global_label.
(ASM_OUTPUT_EXTERNAL): Use c4x_external_ref.
(ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
(ASM_FILE_END): Use c4x_file_end.
* config/c4x/c4x.c (c4x_global_label): New function.
(c4x_external_ref, c4x_file_end): Likewise.
* config/c4x/c4x-protos.h (c4x_global_label): Add prototype.
(c4x_external_ref, c4x_end_file): Likewise.
From-SVN: r31909
Zack Weinberg [Thu, 10 Feb 2000 23:47:04 +0000 (23:47 +0000)]
cppexp.c: Don't include cpphash.h.
* cppexp.c: Don't include cpphash.h.
(parse_charconst, cpp_lex): Use cpp_defined.
(cpp_lex): Use get_directive_token throughout. Remove
unnecessary cases from switch. Move assertion-handling code
down to OTHER case.
(cpp_parse_expr): If we see '+' or '-', check the context to
determine if they are unary or binary operators. Streamline
the jumps a bit. Do not call skip_rest_of_line.
* cpplib.c: Make skip_rest_of_line and cpp_skip_hspace
static. Export get_directive_token. Update commentary.
(cpp_defined): New function.
(do_define): Remove reference to T_PCSTRING. Call
free_definition to release memory for old definition, when
redefining a macro.
(eval_if_expression): Set only_seen_white to 0 before calling
cpp_parse_expr. Call skip_rest_of_line after it returns.
(cpp_read_check_assertion): Don't preserve a pointer into the
token buffer across a call to cpp_get_token.
* Makefile.in (cppexp.o): Don't depend on cpphash.h.
* cppfiles.c (redundant_include_p): Use cpp_defined.
* cpphash.c (free_definition): New function.
(delete_macro): Use it. Update commentary.
* cpphash.h: Typedef HASHNODE here. Prototype cpp_lookup and
free_definition.
* cpplib.h: Don't typedef HASHNODE here. Delete T_PCSTRING
from enum node_type. Prototype cpp_defined and get_directive_token.
Don't prototype cpp_lookup, skip_rest_of_line, or cpp_skip_hspace.
* fix-header.c (check_macro_names): Use cpp_defined.
(read_scan_file): Set inhibit_warnings and inhibit_errors in
the options structure.
From-SVN: r31908
Tom Tromey [Thu, 10 Feb 2000 23:44:05 +0000 (23:44 +0000)]
jni.h (JNI_FALSE): Renamed from JNI_TRUE; oops.
* include/jni.h (JNI_FALSE): Renamed from JNI_TRUE; oops.
(jboolean): Declare as an attributed int, not a bool.
(_Jv_func): Declare differently for C.
From-SVN: r31907
Franz Sirl [Thu, 10 Feb 2000 23:13:17 +0000 (23:13 +0000)]
c-pragma.c (maximum_field_alignment): Remove duplicate declaration.
* c-pragma.c (maximum_field_alignment): Remove duplicate declaration.
* ch/except.c (maximum_field_alignment): Remove duplicate declaration.
From-SVN: r31906
Jason Merrill [Thu, 10 Feb 2000 22:10:36 +0000 (22:10 +0000)]
dwarf2out.c (add_abstract_origin_attribute): Check TREE_CODE (origin) rather than die->die_tag.
* dwarf2out.c (add_abstract_origin_attribute): Check TREE_CODE (origin)
rather than die->die_tag.
From-SVN: r31905
Richard Kenner [Thu, 10 Feb 2000 22:05:40 +0000 (22:05 +0000)]
combine.c (make_extraction, [...]): Avoid warning on mixed-signedness conditionals.
* combine.c (make_extraction, force_to_mode): Avoid warning on
mixed-signedness conditionals.
(make_field_assignment, nonzero_bits): Likewise.
* expmed.c (store_fixed_bit_field): ALIGN arg now unsigned.
(store_split_bit_field, extract_split_bit_field): Likewise.
(extract_fixed_bit_field, store_bit_field,
* expr.c: Change alignment to be unsigned everywhere.
(move_by_pieces, store_constructor_field, store_constructor):
Alignment parm is unsigned.
(emit_block_move, emit_group_load, emit_group_store): Likewise.
(clear_storage, emit_push_insn, compare_from_rtx): Likewise.
(do_compare_rtx_and_jump): Likewise.
(move_by_pieces_ninsns, clear_by_pieces): Likewise.
Compare align with GET_MODE_ALIGNMENT.
(expand_expr_unaligned): Pointer to alignment is pointer to unsigned.
(get_inner_reference): Likewise.
(copy_blkmode_from_reg, emit_push_insn): Remove unneeded casts.
(expand_assignment): Local vars for alignment now unsigned.
(store_constructor, store_field, expand_expr, do_jump): Likewise.
(do_compare_and_jump): Likewise.
(store_field): Call new function expr_align.
* expr.h (emit_block_move, emit_group_load, emit_group_store):
Alignment arg now unsigned.
(clear_storage, emit_push_insn, compare_from_rtx): Likewise.
(do_compare_rtx_and_jump, store_bit_field): Likewise.
(extract_bit_field): Likewise.
* fold-const.c (add_double): Add cast to eliminate signedness warning.
* machmode.h (GET_MODE_ALIGNMENT): Result is unsigned.
(get_best_mode): Alignment arg is unsigned.
* rtl.h (move_by_pieces): Likewise.
* store-layout.c (maximum_field_alignment, set_alignment):
Now unsigned.
(layout_decl): Alignment arg is now unsigned.
Remove unneeded casts.
(layout_record, layout_union, layout_type): Remove unneeded casts.
Local alignment variables now unsigned.
(get_best_mode): Alignment arg now unsigned.
* tree.c (expr_align): New function.
* tree.h (expr_align): Likewise.
(maximum_field_alignment, set_alignment): Now unsigned.
(get_inner_reference): Alignment argument is now pointer to unsigned.
* varasm.c (assemble_variable): Add cast to eliminate warning.
From-SVN: r31904
Jim Wilson [Thu, 10 Feb 2000 21:09:52 +0000 (21:09 +0000)]
Fix ia64 compiler problem with gcc.c-torture/compile/920410-1.c.
* expmed.c (store_bit_field): If op0 and fieldmode are the same size,
then store directly into op0.
From-SVN: r31903
Jim Wilson [Thu, 10 Feb 2000 21:00:09 +0000 (21:00 +0000)]
Fix for ia64 setjmp miscompilation problem.
* calls.c (expand_call): When emitting a NOTE_INSN_SETJMP, search for
the CALL_INSN, and emit the note immediately after it.
From-SVN: r31902
Tom Tromey [Thu, 10 Feb 2000 20:31:48 +0000 (20:31 +0000)]
natNativeThread.cc: New file.
* gnu/gcj/jni/natNativeThread.cc: New file.
* gnu/gcj/jni/NativeThread.java: New file.
* java/lang/Thread.java (data): Now a RawData.
* include/jvm.h (_Jv_GetCurrentJNIEnv, _Jv_SetCurrentJNIEnv):
Declare.
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/Thread.h): New target.
(ordinary_java_source_files): Added NativeThread.java.
(nat_source_files): Added natNativeThread.cc.
* java/lang/natThread.cc: Include <jni.h>
(struct natThread): Added `jni_env' field.
(_Jv_GetCurrentJNIEnv): New function.
(_Jv_SetCurrentJNIEnv): Likewise.
(initialize_native): Initialize jni_env.
Include RawData.h.
* jni.cc (ThreadGroupClass): New define.
(_Jv_JNI_InvokeFunctions): New structure.
(JNI_GetCreatedJavaVMs): New function.
(the_vm): New global.
(JNI_GetDefaultJavaVMInitArgs): New function.
Include NativeThread.h.
(NativeThreadClass): New define.
(_Jv_JNI_EnsureLocalCapacity): Return JNI_ERR, not -1.
(_Jv_JNI_DestroyJavaVM): New function.
(_Jv_JNI_AttachCurrentThread): New function.
(_Jv_JNI_DetachCurrentThread): New function.
(_Jv_JNI_GetEnv): New function.
(JNI_CreateJavaVM): New function.
(_Jv_JNI_GetJavaVM): New function.
(_Jv_JNIFunctions): Added entry for GetJavaVM.
* include/jni.h (JavaVMAttachArgs): New structure.
(JNI_EDETACHED): New define.
(JNI_EVERSION): Likewise.
(JavaVM): Define properly.
(struct JNIInvokeInterface): New structure.
(class _Jv_JavaVM): New class.
(JNI_OnLoad, JNI_OnUnload): Declare.
(JNI_GetDefaultJavaVMInitArgs, JNI_CreateJavaVM,
JNI_GetCreatedJavaVMs): Declare.
(JavaVMInitArgs): New typedef.
(JavaVMOption): Likewise.
(JNI_ERR): New define.
(JNI_OK): Likewise.
From-SVN: r31901
Kaveh R. Ghazi [Thu, 10 Feb 2000 19:10:07 +0000 (19:10 +0000)]
except.c (maybe_start_try): Remove excess argument to `check_start_handlers'.
* except.c (maybe_start_try): Remove excess argument to
`check_start_handlers'.
From-SVN: r31900
Nick Clifton [Thu, 10 Feb 2000 17:58:36 +0000 (17:58 +0000)]
Include a (return) in the epilogue, and emit it using emit_jump_insn not
emit_insn.
From-SVN: r31899
Jan Hubicka [Thu, 10 Feb 2000 17:43:55 +0000 (18:43 +0100)]
function.c (assign_temp): Change zero-sized arrays to size 1.
* function.c (assign_temp): Change zero-sized arrays to size 1.
* integrate.c (expand_inline_function): Do not update
stack_alignment_needed
* i386.c (compute_frame_size): Remove #ifdef PREFERRED_FRAME_BOUNDARY,
add some sanity checking, remove optimization for function with
zero frame size.
From-SVN: r31898
Andrew Haley [Thu, 10 Feb 2000 17:16:30 +0000 (17:16 +0000)]
interpret.cc: Don't include fdlibm.h.
2000-02-10 Andrew Haley <aph@cygnus.com>
* interpret.cc: Don't include fdlibm.h.
Replace #if with #ifdef throughout.
Declare extern __ieee754_fmod.
(continue1): Remove op_getfield, op_getstatic, op_putfield,
op_putstatic insns.
* resolve.cc (_Jv_PrepareClass): Use imeth as method pointer.
Search class hierarchy for superclass vtable.
* java/lang/natClassLoader.cc (_Jv_UnregisterClass): Don't fall
off the end of a pointer list.
* java/lang/natThread.cc (stop): Don't abort, throw an exception
instead.
(suspend): Ditto.
From-SVN: r31897
Kaveh R. Ghazi [Thu, 10 Feb 2000 16:48:43 +0000 (16:48 +0000)]
* except.c (check_start_handlers): Prototype.
From-SVN: r31896
Kaveh R. Ghazi [Thu, 10 Feb 2000 16:45:23 +0000 (16:45 +0000)]
flow.c (mark_regs_live_at_end): Delete unused variables.
* flow.c (mark_regs_live_at_end): Delete unused variables.
* ggc-page.c (ggc_page_print_statistics): bzero -> memset.
* integrate.c (copy_rtx_and_substitute): Wrap variable `alignment'
in macro FRAME_GROWS_DOWNWARD.
* stmt.c (expand_end_bindings): Delete unused variable.
* unroll.c (iteration_info): Mark parameter `loop' with
ATTRIBUTE_UNUSED.
From-SVN: r31895
Alexandre Oliva [Thu, 10 Feb 2000 16:29:21 +0000 (16:29 +0000)]
server.c (load_data): Return NULL if the marker line is not found.
* fixinc/server.c (load_data): Return NULL if the marker line is
not found.
(run_shell): If load_data returns NULL, retry the command once, in
a new shell.
From-SVN: r31894
Alexandre Oliva [Thu, 10 Feb 2000 16:16:55 +0000 (16:16 +0000)]
* configure: Rebuilt.
From-SVN: r31893
Bruce Korb [Thu, 10 Feb 2000 15:00:06 +0000 (15:00 +0000)]
old fixincludes coup des gras
From-SVN: r31892
Bruce Korb [Thu, 10 Feb 2000 14:54:27 +0000 (14:54 +0000)]
Ian Taylor's new address
From-SVN: r31891
Clinton Popetz [Thu, 10 Feb 2000 14:16:33 +0000 (14:16 +0000)]
function.c (thread_prologue_and_epilogue_insns): Uncomment last change.
* function.c (thread_prologue_and_epilogue_insns): Uncomment
last change.
From-SVN: r31890
Mark Mitchell [Thu, 10 Feb 2000 09:07:59 +0000 (09:07 +0000)]
ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be used to create an implicit temporary.
* ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be
used to create an implicit temporary.
From-SVN: r31888
Jeff Law [Thu, 10 Feb 2000 08:45:06 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31887
Mark Mitchell [Thu, 10 Feb 2000 08:24:15 +0000 (08:24 +0000)]
class.c (dfs_modify_vtables): Tweak calculation of functions to override.
* class.c (dfs_modify_vtables): Tweak calculation of functions to
override.
From-SVN: r31886
Richard Henderson [Thu, 10 Feb 2000 07:25:24 +0000 (23:25 -0800)]
* jump.c (delete_insn): Don't delete user labels at -O0.
From-SVN: r31885
Robert Lipe [Thu, 10 Feb 2000 06:28:38 +0000 (06:28 +0000)]
Makefile.in (gen-protos): Don't depend on HOST_LIBDEPS.
* Makefile.in (gen-protos): Don't depend on HOST_LIBDEPS.
Don't link with HOST_LIBS.
From-SVN: r31884
Zack Weinberg [Thu, 10 Feb 2000 05:32:04 +0000 (05:32 +0000)]
configure.in: Correct --help text for --with-dwarf2.
* configure.in: Correct --help text for --with-dwarf2.
Put tm-dwarf2.h after other tm files, if it's requested.
* configure: Regenerate.
* config/tm-dwarf2.h: #undef PREFERRED_DEBUGGING_TYPE before
defining it.
From-SVN: r31883
Zack Weinberg [Thu, 10 Feb 2000 02:23:08 +0000 (02:23 +0000)]
cpplib.h: Provide HASHNODE typedef and forward decl of struct hashnode only.
* cpplib.h: Provide HASHNODE typedef and forward decl of
struct hashnode only. Kill cpp_hashnode typedef. MACRODEF,
DEFINITION, struct hashnode, struct macrodef, struct
definition, scan_decls prototype, default defn of
INCLUDE_LEN_FUDGE moved elsewhere.
* cpphash.h: MACRODEF, DEFINITION, struct macrodef, struct
definition, and struct hashnode moved here. Remove the unused
'predefined' field from struct definition. Replace the 'args'
union with its sole member. All users updated (cpphash.c).
Delete HASHSTEP and MAKE_POS macros, and hashf prototype. Add
multiple include guard.
* cpphash.c (hashf): Make static; use better algorithm; drop
HASHSIZE parameter; return an unsigned int.
(cpp_lookup): Drop HASH parameter. PFILE parameter is
used. Calculate HASHSIZE modulus here.
(cpp_install): Drop HASH parameter. Calculate HASHSIZE modulus
here.
(create_definition): Drop PREDEFINITION parameter.
* cpplib.c (do_define): Don't calculate a hash value here.
Don't pass (keyword == NULL) to create_definition.
* scan.h: Prototype scan_decls here.
* cppfiles.c: Move INCLUDE_LEN_FUDGE default defn here.
* cppexp.c, cppfiles.c, cppinit.c, cpplib.c, fix-header.c: All
callers of cpp_lookup and cpp_install updated.
From-SVN: r31881
Jonathan Larmour [Thu, 10 Feb 2000 01:30:43 +0000 (01:30 +0000)]
Use -static when testing --gc-sections on native targets
From-SVN: r31880
Zack Weinberg [Thu, 10 Feb 2000 00:26:47 +0000 (00:26 +0000)]
cpphash.c (macarg): Hoist all the flag diddling out of the function...
* cpphash.c (macarg): Hoist all the flag diddling out of the
function...
(macroexpand): ... and out of the loop that calls macarg.
Skip over the initial paren before macro arguments with
cpp_get_non_space_token; point may be some distance before
that paren. Abort if it's not there.
* cpplib.c (parse_clear_mark): Delete function.
(parse_set_mark, parse_goto_mark): Make static.
(ACTIVE_MARK_P): New macro.
(skip_block_comment, skip_line_comment): Do not bump the line
if ACTIVE_MARK_P is true.
(cpp_pop_buffer): The buffer to be popped may not have an
active mark.
(cpp_get_token): When looking for the initial paren before
macro arguments, only set a mark in a file buffer, Always
return to that mark before proceeding to call macroexpand or
return a NAME token.
* cpplib.h: Remove prototypes of parse_set_mark,
parse_clear_mark, parse_goto_mark.
(struct cpp_options): Rename 'put_out_comments' to
'discard_comments' and invert its sense.
* cppinit.c, cpphash.c, cpplib.c: All users of
put_out_comments changed to use discard_comments, with
opposite sense.
From-SVN: r31879
Clinton Popetz [Thu, 10 Feb 2000 00:20:41 +0000 (00:20 +0000)]
function.c (thread_prologue_and_epilogue_insns): Don't delete the edge from a block that both jumps and falls through to the...
* function.c (thread_prologue_and_epilogue_insns): Don't delete
the edge from a block that both jumps and falls through to the
fallthru block.
From-SVN: r31878
Tom Tromey [Thu, 10 Feb 2000 00:17:10 +0000 (00:17 +0000)]
natRuntime.cc (_load): Call add_library.
* java/lang/natRuntime.cc (_load): Call add_library.
(loadLibraryInternal): Likewise.
From-SVN: r31877
Tom Tromey [Thu, 10 Feb 2000 00:14:54 +0000 (00:14 +0000)]
natIconv.cc (Input_iconv::finalize): Call iconv_close when handle is not NULL.
* gnu/gcj/convert/natIconv.cc (Input_iconv::finalize): Call
iconv_close when handle is not NULL. Thanks to Andrew Haley.
(Output_iconv::finalize): Likewise.
From-SVN: r31876
Scott Bambrough [Wed, 9 Feb 2000 20:53:35 +0000 (20:53 +0000)]
In PIC mode, make sure that a constant source address is legitimate.
From-SVN: r31873
Alexandre Petit-Bianco [Wed, 9 Feb 2000 20:49:34 +0000 (20:49 +0000)]
anonarray3.out: New file.
2000-02-07 Alexandre Petit-Bianco <apbianco@cygnus.com>
* libjava.lang/anonarray3.out: New file.
* libjava.lang/anonarray3.java: New file.
From-SVN: r31871
Andrew Haley [Wed, 9 Feb 2000 20:38:02 +0000 (20:38 +0000)]
decl.c (clear_binding_level): Remove excess initializer.
2000-02-09 Andrew Haley <aph@cygnus.com>
* decl.c (clear_binding_level): Remove excess initializer.
(maybe_poplevels): Remove unused variable.
(force_poplevels): Ditto.
(struct binding_level): Add comment.
From-SVN: r31870
Tom Tromey [Wed, 9 Feb 2000 20:33:33 +0000 (20:33 +0000)]
* libjava.compile/inner_priv.java: New file.
From-SVN: r31868
Philip Blundell [Wed, 9 Feb 2000 20:00:29 +0000 (20:00 +0000)]
Apply Philip Blundell's patch to fix PIC operands.
From-SVN: r31867
Zack Weinberg [Wed, 9 Feb 2000 18:35:41 +0000 (18:35 +0000)]
cpplib.c (cpp_define, cpp_undef): Make sure the stacked buffer ends with a newline and a NUL.
* cpplib.c (cpp_define, cpp_undef): Make sure the stacked buffer
ends with a newline and a NUL. Don't be so clever manipulating
strings.
From-SVN: r31864
Andrew Haley [Wed, 9 Feb 2000 14:08:44 +0000 (14:08 +0000)]
java-except.h (struct eh_range): Add `expanded' field.
2000-01-25 Andrew Haley <aph@cygnus.com>
* java-except.h (struct eh_range): Add `expanded' field.
(maybe_start_try): Add end_pc arg.
(maybe_end_try): Ditto.
* java-tree.h (force_poplevels): new function.
* expr.c (expand_byte_code): Don't call maybe_start_try or
maybe_end_try.
* except.c (add_handler): Reset expanded.
(expand_start_java_handler): Set expanded.
(check_start_handlers): Don't expand a start handler that's
already been expanded.
(maybe_start_try): Add end_pc arg. Only expand a handler which
ends after end_pc.
(expand_end_java_handler): call force_poplevels.
(force_poplevels): new function.
* decl.c (binding_level): Add start_pc of binding level.
(maybe_pushlevels): Call maybe_start_try when pushing binding
levels.
(maybe_poplevels): Call maybe_end_try when popping binding levels.
(LARGEST_PC): Define.
(clear_binding_level): Use LARGEST_PC.
* java-tree.h (DEBUG_JAVA_BINDING_LEVELS): new define.
* decl.c (DEBUG_JAVA_BINDING_LEVELS): new define.
(binding_depth, is_class_level, current_pc): new variables.
(struct binding_level): ditto.
(indent): new function.
(push_jvm_slot): add debugging info.
(maybe_pushlevels): ditto.
(maybe_poplevels): ditto.
(pushlevel): ditto.
(poplevel): ditto.
(start_java_method): ditto.
(give_name_to_locals): comment only.
* except.c (binding_depth, is_class_level, current_pc):
new variables.
(expand_start_java_handler): add debugging info.
(expand_end_java_handler): ditto.
From-SVN: r31861
Jan Hubicka [Wed, 9 Feb 2000 13:38:09 +0000 (14:38 +0100)]
* reload1.c (reload) Align stack frame to cfun->stack_alignment_needed,
not to BIGGEST_ALIGNMENT.
From-SVN: r31860
Jeff Law [Wed, 9 Feb 2000 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31859
Geoff Keating [Wed, 9 Feb 2000 01:57:21 +0000 (01:57 +0000)]
dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant.
* dwarf2.h (DW_CFA_GNU_negative_offset_extended): New constant.
* dwarf2out.c (dwarf_cfi_name): Print name of new constant.
(reg_save): Use DW_CFA_GNU_negative_offset_extended when needed.
(output_cfi): Handle output of DW_CFA_GNU_negative_offset_extended.
* frame.c (execute_cfa_insn): Handle
DW_CFA_GNU_negative_offset_extended.
From-SVN: r31858
Richard Henderson [Tue, 8 Feb 2000 23:48:32 +0000 (15:48 -0800)]
flow.c (tidy_fallthru_edges): Split out from ...
* flow.c (tidy_fallthru_edges): Split out from ...
(delete_unreachable_blocks): ... here.
(find_basic_blocks): Use it.
From-SVN: r31857
Richard Kenner [Tue, 8 Feb 2000 22:11:21 +0000 (22:11 +0000)]
* stmt.c (expand_decl): Do set RTX_UNCHANGING_P for TREE_READONLY.
From-SVN: r31856
Tom Tromey [Tue, 8 Feb 2000 21:30:45 +0000 (21:30 +0000)]
Properties.java (setProperty): New method.
* java/util/Properties.java (setProperty): New method.
(store): New method.
From-SVN: r31855
Zack Weinberg [Tue, 8 Feb 2000 21:27:02 +0000 (21:27 +0000)]
Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a.
* Makefile.in (GEN_PROTOS_OBJS): Remove libcpp.a.
(gen_protos.o): Don't depend on cpplib.h or cpphash.h.
(fix-header.o): Don't depend on cpphash.h.
* scan.c (hashstr): New function.
* scan.h: Prototype it.
* fix-header.c: Don't include cpphash.h. Use hashstr.
* gen-protos.c: Don't include cpphash.h or cpplib.h. Use
hashstr. Report hash table statistics. Add private
definition of xrealloc.
From-SVN: r31854
Kaveh R. Ghazi [Tue, 8 Feb 2000 17:15:00 +0000 (17:15 +0000)]
* i386.h (TARGET_SWITCHES): Fix typo in option name.
From-SVN: r31853
Clinton Popetz [Tue, 8 Feb 2000 16:32:20 +0000 (16:32 +0000)]
function.c (thread_prologue_and_epilogue_insns): Don't replace jumps with returns unless they are jumps to the fallthru block.
* function.c (thread_prologue_and_epilogue_insns): Don't replace
jumps with returns unless they are jumps to the fallthru block.
From-SVN: r31852
Jan Hubicka [Tue, 8 Feb 2000 14:59:15 +0000 (15:59 +0100)]
* i386.md (addqi3_cc): Fix contraints.
From-SVN: r31851
Nathan Sidwell [Tue, 8 Feb 2000 11:16:09 +0000 (11:16 +0000)]
* g++.old-deja/g++.other/cast5.C: New test.
From-SVN: r31850
Nathan Sidwell [Tue, 8 Feb 2000 11:15:24 +0000 (11:15 +0000)]
typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to strip array element qualifiers too.
* typeck.c (strip_all_pointer_quals): Use TYPE_MAIN_VARIANT, to
strip array element qualifiers too.
From-SVN: r31849
Jeff Law [Tue, 8 Feb 2000 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31848
Hans-Peter Nilsson [Tue, 8 Feb 2000 06:09:17 +0000 (06:09 +0000)]
* function.c (emit_return_into_block): Wrap in #ifdef HAVE_return.
From-SVN: r31847
Tom Tromey [Tue, 8 Feb 2000 00:26:58 +0000 (00:26 +0000)]
Runtime.java (_load): Declare.
* java/lang/Runtime.java (_load): Declare.
(load, loadLibrary): Wrote in terms of _load.
* java/lang/natRuntime.cc (load): Call JNI_OnLoad if it appears in
library.
(loadLibrary): Likewise.
Include <jni.h>.
(_load): New method.
(loadLibrary, load): Removed.
From-SVN: r31846
Tom Tromey [Tue, 8 Feb 2000 00:23:09 +0000 (00:23 +0000)]
jni.cc (ThrowableClass): New define.
* jni.cc (ThrowableClass): New define.
(_Jv_JNI_Throw): Check argument.
(_Jv_JNI_ThrowNew): Likewise.
(wrap_value): Don't wrap object if it is NULL.
(_Jv_JNI_DefineClass): Use wrap_value.
(_Jv_JNI_FindClass): Likewise.
(_Jv_JNI_GetSuperclass): Likewise.
(_Jv_JNI_ExceptionOccurred): Likewise.
(_Jv_JNI_AllocObject): Likewise.
(_Jv_JNI_GetObjectClass): Likewise.
(_Jv_JNI_NewString): Likewise.
(_Jv_JNI_NewStringUTF): Likewise.
(_Jv_JNI_NewObjectArray): Likewise.
(_Jv_JNI_GetObjectArrayElement): Likewise.
(_Jv_JNI_NewPrimitiveArray): Likewise.
(_Jv_JNI_ToReflectedField): Likewise.
(_Jv_JNI_ToReflectedMethod): Likewise.
(_Jv_JNI_AllocObject): Check argument.
(_Jv_JNI_NewObjectV): Likewise.
(_Jv_JNI_NewObject): Likewise.
(_Jv_JNI_NewObjectA): Likewise.
(_Jv_JNI_GetObjectClass): Likewise.
(_Jv_JNI_GetField): Likewise.
(_Jv_JNI_SetField): Likewise.
From-SVN: r31845
Tom Tromey [Tue, 8 Feb 2000 00:17:28 +0000 (00:17 +0000)]
interpret.cc (PUSHL): Don't use expression statement.
* interpret.cc (PUSHL): Don't use expression statement.
(PUSHD): Likewise.
(LOADL): Likewise.
(STOREL): Likewise.
From-SVN: r31844
Mark Mitchell [Mon, 7 Feb 2000 23:41:01 +0000 (23:41 +0000)]
decl.c (store_parm_decls): Don't build cleanups for parameters while processing_template_decl.
* decl.c (store_parm_decls): Don't build cleanups for parameters
while processing_template_decl.
From-SVN: r31842
Alexandre Petit-Bianco [Mon, 7 Feb 2000 21:40:18 +0000 (21:40 +0000)]
instinit2.out: New file.
* libjava.lang/instinit2.out: New file.
* libjava.lang/instinit2.java: New file.
* libjava.lang/instinit.out: New file.
* libjava.lang/instinit.java: New file.
* libjava.lang/anonarray2.out: New file.
* libjava.lang/anonarray2.java: New file.
* libjava.lang/anonarray.out: New file.
* libjava.lang/anonarray.java: New file.
* libjava.lang/nested_with_ctor.out: New file.
* libjava.lang/nested_with_ctor.java: New file.
* libjava.lang/anfi.out: New file.
* libjava.lang/anfi.java: New file.
* libjava.lang/stub.out: New file.
* libjava.lang/stub.java: New file.
From-SVN: r31841
Mark Mitchell [Mon, 7 Feb 2000 21:36:19 +0000 (21:36 +0000)]
cpplib.c (cpp_get_token): Call CPP_BUMP_LINE after reading a carriage return after a macro name.
* cpplib.c (cpp_get_token): Call CPP_BUMP_LINE after reading a
carriage return after a macro name.
From-SVN: r31840
Tom Tromey [Mon, 7 Feb 2000 21:17:30 +0000 (21:17 +0000)]
jni.cc (add_char): Conditional on INTERPRETER.
* jni.cc (add_char): Conditional on INTERPRETER.
(mangled_name): Likewise.
(call): Likewise.
* include/java-interp.h (class _Jv_MethodBase): Conditional on
INTERPRETER.
(class _Jv_JNIMethod): Likewise.
From-SVN: r31839
Fred Fish [Mon, 7 Feb 2000 20:59:19 +0000 (20:59 +0000)]
beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing so the gcc2_compiled symbol doesn't...
* i386/beos-elf.h: (ASM_IDENTIFY_GCC): Define to nothing
so the gcc2_compiled symbol doesn't confuse BeOS debuggers.
From-SVN: r31838
Jason Merrill [Mon, 7 Feb 2000 20:36:36 +0000 (15:36 -0500)]
cp-tree.h (struct saved_scope): Add incomplete field.
* cp-tree.h (struct saved_scope): Add incomplete field.
(namespace_scope_incomplete): New macro.
* decl.c (pushdecl): Use it.
(hack_incomplete_structures): Use it. See through artificial
binding levels.
(mark_saved_scope): Mark it.
Implement access control for nested types.
* search.c (type_access_control): New fn.
(accessible_p): Now we do perform access control for types.
* semantics.c (deferred_type_access_control): New fn.
(initial_deferred_type_access_control): New fn.
(begin_function_definition): Call it. Add lookups parm.
* decl.c (struct binding_level): Add this_class field.
(pushlevel_class): Set it.
(mark_binding_level): Mark it.
(lookup_name_real): Use it. Call type_access_control.
(mark_saved_scope): Mark lookups field.
* cp-tree.h (flagged_type_tree): Add lookups field.
(struct saved_scope): Add lookups field.
(type_lookups): New macro.
* parse.y (declmods): Now <ftype>.
(parse_decl): Add lookups parm. Call
initial_deferred_type_access_control.
(lang_extdef): Clear type_lookups.
(typed_declspecs, declmods, typespec): Set lookups field.
(initdcl): Call deferred_type_access_control.
(fn.def1, fn.def2, typed_declspecs1, initdcl0_innards, nomods_initdcl0,
component_decl_1, named_parm): Adjust.
* friend.c (is_friend): Nested classes are friends of their
enclosing classes.
* class.c (currently_open_derived_class): New fn.
* method.c (hack_identifier): Use it.
* lex.c (do_identifier): Remove obsolete code.
* parse.y (typed_typespecs): Propagate new_type_flag properly.
From-SVN: r31837
Jason Merrill [Mon, 7 Feb 2000 20:35:14 +0000 (15:35 -0500)]
update
From-SVN: r31836
Jason Merrill [Mon, 7 Feb 2000 20:34:20 +0000 (15:34 -0500)]
tweak wording
From-SVN: r31835
Zack Weinberg [Mon, 7 Feb 2000 18:34:05 +0000 (18:34 +0000)]
[multiple changes]
2000-02-07 Zack Weinberg <zack@wolery.cumb.org>
* cppfiles.c (deps_output): Count spacers in deps_column.
2000-02-07 Neil Booth <NeilB@earthling.net>
* cppinit.c (initialize_dependency_output): If there is no
suffix, don't try to look for known suffixes. Use strrchr.
(cpp_start_read): Remove duplicate initialization.
From-SVN: r31832
Jan Hubicka [Mon, 7 Feb 2000 17:39:40 +0000 (18:39 +0100)]
calls.c (compute_argument_block_size): New argument preferred_stack_boundary.
* calls.c (compute_argument_block_size): New argument
preferred_stack_boundary.
(expand_call): update cfun->preferred_stack_boundary, update call of
compute_argument_block_size
(emit_library_call): Increate cfun->preferred_stack_boundary
to PREFERRED_STACK_BOUNDARY
(emit_library_call_value): Likewise.
* explow.c (allocate_dynamic_stack_spave): Likewise.
* function.c (prepare_function_start): Set
cfun->preferred_stack_boundary
* function.h (struct function): Add preferred_stack_boundary field.
* integrate.c (expand_inline_function): Update
cfun->preferred_stack_boundary and cfun->stack_alignment_needed.
(copy_rtx_and_substitute): Align frame to stack_alignment_needed only.
* i386.c (compute_frame_size): Use cfun->preferred_stack_boundary.
From-SVN: r31831
Jeff Law [Mon, 7 Feb 2000 08:45:11 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31830
Zack Weinberg [Sun, 6 Feb 2000 23:46:18 +0000 (23:46 +0000)]
cpplib.c (my_strerror, [...]): Move to cpperror.c.
* cpplib.c (my_strerror, cpp_error, cpp_error_with_line,
cpp_error_from_errno, cpp_warning, cpp_warning_with_line,
cpp_pedwarn, cpp_pedwarn_with_line,
cpp_pedwarn_with_file_and_line): Move to cpperror.c.
(cpp_print_file_and_line, v_cpp_error, v_cpp_warning,
v_cpp_error_with_line, v_cpp_warning_with_line,
cpp_message_from_errno, cpp_perror_with_name): Delete.
* cpperror.c (cpp_print_containing_files): Take starting
buffer as argument.
(cpp_file_line_for_message): Rename to cpp_print_file_and_line.
(v_cpp_message): Now called directly by all entry points.
Remove -1 case.
(cpp_pfatal_with_name, cpp_message): Delete.
(cpp_notice_from_errno, cpp_ice): New functions.
(cpp_notice): Is now for reporting error conditions, just
without an associated file.
(cpp_error, cpp_error_with_line): Don't do anything if
opts->inhibit_errors is on.
(cpp_pedwarn_with_file_and_line): Take column argument also.
* cpplib.h: Update prototypes of exported functions.
(struct cpp_options): Add inhibit_errors.
* cppalloc.c, cppfiles.c: Use fprintf not cpp_notice for
non-error messages. Include intl.h.
* cppinit.c, cppmain.c: Likewise. Also, use
cpp_notice_from_errno instead of cpp_perror_with_name or
cpp_pfatal_with_name, and cpp_notice instead of cpp_message.
* cppexp.c, cpphash.c, cppinit.c, cpplib.c: Use cpp_ice to
report internal errors.
* cpplib.c (do_define): Switch bcopy to memcpy.
Give cpp_pedwarn_with_file_and_line a dummy column argument.
From-SVN: r31829
Zack Weinberg [Sun, 6 Feb 2000 20:08:22 +0000 (20:08 +0000)]
cpplib.c (copy_rest_of_line): Revert previous change: don't bail out early if we hit a line comment.
* cpplib.c (copy_rest_of_line): Revert previous change: don't
bail out early if we hit a line comment.
From-SVN: r31828
Richard Henderson [Sun, 6 Feb 2000 13:19:20 +0000 (05:19 -0800)]
i386.c (ix86_can_use_return_insn_p): Fail for large poped args and for non-empty stack frames.
* i386.c (ix86_can_use_return_insn_p): Fail for large poped args
and for non-empty stack frames.
* i386.md (return): Expand to return-pop as needed.
From-SVN: r31827
Richard Henderson [Sun, 6 Feb 2000 13:01:03 +0000 (05:01 -0800)]
flow.c (flow_delete_insn, [...]): Export.
* flow.c (flow_delete_insn, make_edge, remove_edge): Export.
* basic-block.h: Declare them.
* emit-rtl.h (active_insn_p): New.
(next_active_insn, prev_active_insn): Use it.
* rtl.h: Declare it.
* function.c (emit_return_into_block): New.
(thread_prologue_and_epilogue_insns): Insert return insns instead
of epilogues when possible.
* jump.c (jump_optimize_1): Remove code to insert a return insn
on the fallthru to the exit block.
From-SVN: r31826
Richard Henderson [Sun, 6 Feb 2000 10:56:56 +0000 (02:56 -0800)]
simplify-rtx.c (simplify_relational_operation): Canonicalize constant to op1 for testing.
* simplify-rtx.c (simplify_relational_operation): Canonicalize
constant to op1 for testing.
From-SVN: r31825
Michael Hayes [Sun, 6 Feb 2000 10:36:26 +0000 (10:36 +0000)]
c4x.md (*ldi_on_overflow): New pattern.
2000-02-06 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.md (*ldi_on_overflow): New pattern.
(fixuns_truncqfqi2): Use it.
From-SVN: r31823
Richard Henderson [Sun, 6 Feb 2000 09:47:49 +0000 (01:47 -0800)]
i386.md (widening and peepholes): Mask the constant instead of using gen_lowpart.
* i386.md (widening and peepholes): Mask the constant instead of
using gen_lowpart.
From-SVN: r31822
Richard Henderson [Sun, 6 Feb 2000 09:47:28 +0000 (01:47 -0800)]
i386.c (ix86_agi_dependant): Handle pro_epilogue_adjust_stack as a TYPE_LEA insn.
* i386.c (ix86_agi_dependant): Handle pro_epilogue_adjust_stack
as a TYPE_LEA insn.
From-SVN: r31821
Jeff Law [Sun, 6 Feb 2000 08:45:07 +0000 (01:45 -0700)]
Daily bump.
From-SVN: r31820
Zack Weinberg [Sun, 6 Feb 2000 08:24:22 +0000 (08:24 +0000)]
cppfiles.c (read_and_prescan): Bump input pointer before possibly branching off to the backslash code.
* cppfiles.c (read_and_prescan) [case SPECCASE_QUESTION]: Bump
input pointer before possibly branching off to the backslash
code.
* cpphash.c (macroexpand): Correctly delete \r escapes when
stringifying parameters.
* cpplib.c (copy_rest_of_line): Go directly to skip_block_comment
if we can; bail out early if we hit a line comment.
(handle_directive): Treat '# 123' in an .S file just like
'# <punctuation>'. Discard the shifted '#' if we hit '#\n'.
Return 1 for '# not_a_directive'.
(get_directive_token): Pop macro buffers here, so that
cpp_get_token can't sneakily move past a newline.
Add sanity checks.
(cpp_get_token): goto randomchar if handle_directive returns 0.
From-SVN: r31819
Zack Weinberg [Sun, 6 Feb 2000 07:53:50 +0000 (07:53 +0000)]
cppalloc.c: Update copyright.
* cppalloc.c: Update copyright.
* cpplib.c: Merge all the static function prototypes into one
block.
* cpplib.h: Remove #if 0 block.
From-SVN: r31818