Eric Botcazou [Fri, 14 Mar 2003 14:49:40 +0000 (15:49 +0100)]
re PR rtl-optimization/8396 ([sparc] optimizer ICE)
PR optimization/8396
* tree-inline.c (initialize_inlined_parameters): Make sure the value
of read-only constant arguments is passed with the right type.
Jeroen Frijters [Fri, 14 Mar 2003 11:54:38 +0000 (12:54 +0100)]
ObjectInputStream.java (readObject): Cleaned up the class hierarchy loop.
2003-02-14 Jeroen Frijters <jeroen@sumatra.nl>
* java/io/ObjectInputStream.java (readObject): Cleaned up the class
hierarchy loop.
(readFields(Object,ObjectStreamField[],boolean)): Changed argument
list to Object,ObjectStreamClass, moved callReadMethod code up into
readObject and added Class argument to all setXxxField calls.
(callReadMethod): Changed Class argument to ObjectStreamClass to be
consistent with ObjectOutputStream and to facilitate caching the
Method in the future.
(setBooleanField): Added Class argument.
(setByteField): Likewise.
(setCharField): Likewise.
(setDoubleField): Likewise.
(setFloatField): Likewise.
(setIntField): Likewise.
(setLongField): Likewise.
(setShortField): Likewise.
(setObjectField): Likewise.
* java/io/ObjectOutputStream.java (writeObject): Cleaned up the
class hierarchy loop.
(defaultWriteObject): Call writeFields with new argument list.
(writeFields(Object,ObjectStreamField[],boolean): Changed argument
list to Object,ObjectStreamClass, moved callWriteMethod up into
writeObject and added Class argument to all getXxxField calls.
(callWriteMethod): Added ObjectStreamClass argument to be able to
get the proper class to call getMethod on (each class can have (or
not have) its own writeObject method).
(getBooleanField): Added Class argument.
(getByteField): Likewise.
(getCharField): Likewise.
(getDoubleField): Likewise.
(getFloatField): Likewise.
(getIntField): Likewise.
(getLongField): Likewise.
(getShortField): Likewise.
(getObjectField): Likewise.
* java/io/ObjectStreamClass.java (hasReadMethod): Added method to
facilitate caching the Method object in the future.
Danny Smith [Thu, 13 Mar 2003 22:21:21 +0000 (22:21 +0000)]
dll-1.c: Remove thumb target.
* gcc.dg/dll-1.c: Remove thumb target. Change exp to _exp.
* gcc.dg/dll-2.c: Enable for cygwin and mingw. Remove
thumb target,
* gcc.dg/dll-3.c: Likewise. Adjust scan-assembler
to accept newer _imp__ prefix and additional
newline in .drectve section.
* gcc.dg/dll-4.c: Likewise.
* gcc.dg/dll-5.c: New file to test -mnop-fun-dllimport
switch.
Alan Modra [Thu, 13 Mar 2003 10:35:47 +0000 (10:35 +0000)]
rs6000.c (rs6000_flag_pic): Delete.
* config/rs6000/rs6000.c (rs6000_flag_pic): Delete.
(rs6000_xcoff_encode_section_info): #ifdef TARGET_XCOFF.
(rs6000_binds_local_p, TARGET_BINDS_LOCAL_P): #if TARGET_MACHO.
(rs6000_override_options): Don't clear flag_pic for ABI_AIX.
(rs6000_legitimize_address): Formatting.
(rs6000_emit_move): Likewise.
(rs6000_return_addr): Test ABI_AIX as well as flag_pic.
(rs6000_emit_prologue <save_LR_around_toc_setup>): Likewise.
(rs6000_elf_select_section): Comment reason for shlib being
set for ABI_AIX.
(rs6000_elf_unique_section): Likewise.
(rs6000_elf_encode_section_info): Test !TARGET_AIX as well as ABI_AIX.
* config/rs6000/rs6000.h (LEGITIMATE_LO_SUM_ADDRESS_P): Test ABI_AIX
as well as flag_pic.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Likewise.
(MINIMAL_TOC_SECTION_ASM_OP): Likewise.
* config/rs6000/linux64.h (TARGET_ENCODE_SECTION_INFO): Don't define.
Nathanael Nerode [Thu, 13 Mar 2003 04:06:51 +0000 (04:06 +0000)]
c4x-c.c, [...]: GCC, not GNU CC.
* config/c4x/c4x-c.c, config/c4x/c4x-modes.def,
config/c4x/c4x-protos.h, config/c4x/c4x.c, config/c4x/c4x.h,
config/c4x/c4x.md, config/c4x/libgcc.S, config/c4x/rtems.h:
GCC, not GNU CC.
* gcc.dg/special/ecos.exp (gcsec-1.c): Find linker used by gcc.
* gcc.dg/old-style-asm-1.c (dg-final): Add hpux label alternative to
regular expression.
* gcc.dg/funcorder.c (dg-final): Check for "link_error,%r" on hppa*-*-*.
* gcc.dg/inline-1.c (dg-final): Check for "xyzzy?,%r" on hppa*-*-*.
Nathanael Nerode [Thu, 13 Mar 2003 03:30:00 +0000 (03:30 +0000)]
lib1funcs.asm, [...]: GCC, not GNU CC.
* config/v850/lib1funcs.asm, config/v850/rtems.h,
config/v850/v850-c.c, config/v850/v850-protos.h,
config/v850/v850.c, config/v850/v850.h, config/v850/v850.md:
GCC, not GNU CC.
Jonathan Wakely [Thu, 13 Mar 2003 00:15:59 +0000 (00:15 +0000)]
index.html: Explain memory "leaks" due to allocators.
2003-03-12 Jonathan Wakely <redi@gcc.gnu.org>
* docs/html/faq/index.html: Explain memory "leaks" due to allocators.
* docs/html/faq/index.txt: Regenerate.
* docs/html/debug.html: Add a bit to allocator text and fix XHTML.
Andrew Lewycky [Wed, 12 Mar 2003 22:24:48 +0000 (17:24 -0500)]
re PR c++/7050 (g++ segfaults on: (i ? get_string() : throw))
PR c++/7050
* expr.c (store_expr): Don't attempt to store void-typed trees,
just evaluate them for side effects.
* cp/expr.c (cxx_expand_expr): Return const0_rtx for throw
expressions.
Andrew Haley [Wed, 12 Mar 2003 16:14:01 +0000 (16:14 +0000)]
gjavah.c (is_first_data_member): New global variable.
2003-03-04 Andrew Haley <aph@redhat.com>
* gjavah.c (is_first_data_member): New global variable.
(print_c_decl): If it's the first data member, align it as the
superclass.
(process_file): Set is_first_data_member.
Jan Hubicka [Wed, 12 Mar 2003 14:15:09 +0000 (15:15 +0100)]
hashtab.c (htab_expand): Compute the size of hashtable based on the number of elements actually used.
* hashtab.c (htab_expand): Compute the size of hashtable based
on the number of elements actually used.
(htab_traverse): Call htab_expand when table is too empty.
Danny Smith [Wed, 12 Mar 2003 08:59:29 +0000 (08:59 +0000)]
winnt.c (DLL_IMPORT_PREFIX): New define.
* config/i386/winnt.c (DLL_IMPORT_PREFIX): New define.
Use throughout instead of DLL_IMPORT_EXPORT_PREFIX and "e."
(DLL_EXPORT_PREFIX): New define. Use throughout instead of
DLL_IMPORT_EXPORT_PREFIX and "i."
(i386_pe_dllexport_name_p): Here.
(i386_pe_dllimport_name_p): Here.
(i386_pe_mark_dllexport): Here. Remove DLL_IMPORT_PREFIX,
not 9 chars when getting identifier name.
(i386_pe_mark_dllimport): Here.
(i386_pe_encode_section_info): Here. Remove DLL_IMPORT_PREFIX,
not 9 chars when getting identifier name. Correct comment.
(i386_pe_strip_name_encoding): Here. Add comments for different
cases.
(gen_fastcall_suffix): Break down xmalloc() argument to
components.
(gen_stdcall_suffix): Likewise.
Update copyright year.
Eric Botcazou [Wed, 12 Mar 2003 08:53:27 +0000 (09:53 +0100)]
re PR rtl-optimization/9888 (-mcpu=k6 -Os produces out of range loop instructions)
PR optimization/9888
* config/i386/i386.md (movsi_1): Remove special alternatives
for %eax register.
(movsi_1_nointernunit): Likewise.
(movhi_1): Likewise.
* config/i386/i386.c (memory_address_length): Do not use
short displacement when there is no base.
(ix86_attr_length_address_default): Handle LEA instructions.
Alexandre Oliva [Wed, 12 Mar 2003 04:18:34 +0000 (04:18 +0000)]
g++.1: Remove.
* g++.1: Remove.
* Make-lang.in (c++.generated-manpages): Build cp/g++.1.
(cp/g++.1): Build it from scratch in the build tree.
(c++.install-man): Depend on it. Install it from the build tree.
(c++.mostlyclean): Clean it.
Alexandre Oliva [Tue, 11 Mar 2003 23:31:01 +0000 (23:31 +0000)]
linux64.h (DRIVER_SELF_SPECS): Add endian_spec.
* config/mips/linux64.h (DRIVER_SELF_SPECS): Add endian_spec.
Default to -mips3 on -mabi=64. Don't add -mips* flag if -march is
specified.
(SUBTARGET_ASM_SPEC): Remove -mips*-adding code obviated by
DRIVER_SELF_SPECS.
(LINK_SPEC): Let endian options affect the linker emulation name.
Jan Hubicka [Tue, 11 Mar 2003 21:52:42 +0000 (22:52 +0100)]
cselib.c (cselib_invalidate_mem_1): Move too ...
* cselib.c (cselib_invalidate_mem_1): Move too ...
(cselib_invalidate_mem): ... here; use new list
(dummy_val, first_containing_mem): New static variables.
(clear_table): Initialize first_containing_mem.
(discard_useless_values): Compact the containing_mem list.
(add_mem_for_addr): Add to the list.
* cselib.h (cselib_val): Add next_containing_mem.
Tom Tromey [Tue, 11 Mar 2003 20:37:02 +0000 (20:37 +0000)]
parse.y (resolve_field_access): Initialize class if field is found in another static field.
* parse.y (resolve_field_access): Initialize class if field is
found in another static field.
* expr.c (build_class_init): Don't optimize out initialization of
implemented interface.
Carlo Wood [Tue, 11 Mar 2003 19:55:46 +0000 (19:55 +0000)]
cplus-dem.c (demangle_integral_value): Correction to reflect patch of 2002-01-10 in order to also make negative...
* cplus-dem.c (demangle_integral_value): Correction to reflect
patch of 2002-01-10 in order to also make negative multi-digits
without leading underscore work.
* config/cris/cris.md: Remove lingering EGCS reference.
("*extopqihi_side_biap"): For HI operation, match
cris_additive_operand_extend_operator, not
cris_operand_extend_operator. Adjust condition.
("*extopqihi_side", "*extopqihi"): Ditto.
("*extopqisi_side_biap"): Correct operand numbers in condition.
("*extophisi_side_biap", "*extopqisi_swap_side_biap"): Ditto.
("*extophisi_swap_side_biap", "*extopqisi_swap"): Ditto.
("*extophisi_swap"): Ditto.
("*extopqihi_swap_side_biap"): For HI operation, match a simple
PLUS, not cris_operand_extend_operator. Adjust condition and
output template.
("*extopqihi_swap_side", "*extopqihi_swap"): Ditto.
* config/cris/cris.h (PREDICATE_CODES): Add
cris_additive_operand_extend_operator.
* config/cris/cris.c (cris_additive_operand_extend_operator):
New predicate.