Eric Botcazou [Sun, 25 Jan 2004 06:58:33 +0000 (07:58 +0100)]
ffi.c (ffi_prep_args_v9): Shift the parameter array when the structure return address is passed in %o0.
* src/sparc/ffi.c (ffi_prep_args_v9): Shift the parameter array
when the structure return address is passed in %o0.
(ffi_V9_return_struct): Rename into ffi_v9_layout_struct.
(ffi_v9_layout_struct): Align the field following a nested structure
on a word boundary. Use memmove instead of memcpy.
(ffi_call): Update call to ffi_V9_return_struct.
(ffi_prep_closure): Define 'ctx' only for V8.
(ffi_closure_sparc_inner): Clone into ffi_closure_sparc_inner_v8
and ffi_closure_sparc_inner_v9.
(ffi_closure_sparc_inner_v8): Return long doubles by reference.
Always skip the structure return address. For structures and long
doubles, copy the argument directly.
(ffi_closure_sparc_inner_v9): Skip the structure return address only
if required. Shift the maximum floating-point slot accordingly. For
big structures, copy the argument directly; otherwise, left-justify the
argument and call ffi_v9_layout_struct to lay out the structure on
the stack.
* src/sparc/v8.S: Undef STACKFRAME before defining it.
(ffi_closure_v8): Pass the structure return address. Update call to
ffi_closure_sparc_inner_v8. Short-circuit FFI_TYPE_INT handling.
Skip the 'unimp' insn when returning long doubles and structures.
* src/sparc/v9.S: Undef STACKFRAME before defining it.
(ffi_closure_v9): Increase the frame size by 2 words. Short-circuit
FFI_TYPE_INT handling. Load structures both in integers and
floating-point registers on return.
* README: Update status of the SPARC port.
Ian Lance Taylor [Sat, 24 Jan 2004 20:54:58 +0000 (20:54 +0000)]
re PR bootstrap/13848 (bootstrap failure - ICE in ada/utils.c)
PR bootstrap/13848
* cse.c (cse_cc_succs): Change the mode of the source expression
as soon as decide we need a new mode. Don't permit changing modes
if we found a match in a successor block.
(cse_condition_code_reg): Save original mode of source expression
so that we know whether we have to change the mode in other
insns.
combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
* combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
(simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
if SHIFT_COUNT_TRUNCATED is set.
Bob Wilson [Fri, 23 Jan 2004 22:12:34 +0000 (22:12 +0000)]
xtensa.c (xtensa_va_arg): Handle complex values as separate real and imaginary parts.
* config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as
separate real and imaginary parts.
* config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define.
Zack Weinberg [Fri, 23 Jan 2004 18:13:55 +0000 (18:13 +0000)]
re PR c/18314 (Abnormal behavior in optimization)
PR 18314
* c-decl.c (diagnose_mismatched_decls): Also discard a
built-in if we encounter an old-style definition with the
same name.
testsuite:
* gcc.dg/builtins-30.c: New testcase.
Jakub Jelinek [Fri, 23 Jan 2004 17:32:16 +0000 (18:32 +0100)]
linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Corrected to handle kernels with changed ucontext.
* config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR)
[!__powerpc64__]: Corrected to handle kernels with changed ucontext.
* include/powerpc-signal.h: Add #ifndef __powerpc64__ around the
header. For __powerpc64__ provide the default-signal.h definitions
for now.
* include/x86_64-signal.h [!__x86_64__]: Include java-signal-aux.h
instead of the dummy definitions.
* configure.host (x86_64-*): Remove CHECKREFSPEC, add DIVIDESPEC.
(powerpc64*-*): Remove with_libffi_default.
Only add -mminimal-toc for 64-bit compilations.
* configure.in: Use powerpc-signal.h on powerpc64 as well.
(x86_64-*-linux*): Set SIGNAL_HANDLER_AUX.
Link SIGNAL_HANDLER_AUX to include/java-signal-aux.h.
* configure: Rebuilt.
Roger Sayle [Fri, 23 Jan 2004 16:16:33 +0000 (16:16 +0000)]
real.c (real_floor, real_ceil): Tweak to allow input and output arguments to overlap.
* real.c (real_floor, real_ceil): Tweak to allow input and output
arguments to overlap.
(real_round): New function to implement round(3m) semantics.
* real.h (real_round): Prototype here.
* builtins.c (fold_builtin_round): New function to constant fold
round, roundf and roundl.
(fold_builtin): Call fold_builtin_round for BUILT_IN_ROUND{,F,L}.
Alexandre Oliva [Fri, 23 Jan 2004 15:29:09 +0000 (15:29 +0000)]
re PR target/13819 (sh-elf broken; abort in sh_reorg())
PR optimization/13819
* config/sh/sh.c (sh_reorg): Compensate for sharing of CLOBBERs
introduced by 2004-01-20's Jan Hubicka's copy_insn change.
(sh_handle_sp_switch_attribute): Remove warning.
Michael Koch [Fri, 23 Jan 2004 14:07:28 +0000 (14:07 +0000)]
2004-01-23 Michael Koch <konqueror@gmx.de>
* java/io/FileDescriptor.java
(lock): New method.
(tryLock): New method.
(unlock): New method.
* java/io/natFileDescriptorEcos.cc
(lock): New method.
(tryLock): New method.
(unlock): New method.
* java/io/natFileDescriptorPosix.cc
(lock): New method.
(tryLock): New method.
(unlock): New method.
* java/io/natFileDescriptorWin32.cc
(lock): New method.
(tryLock): New method.
(unlock): New method.
J"orn Rennecke [Fri, 23 Jan 2004 13:01:42 +0000 (13:01 +0000)]
tm.texi: Insert some weasel words when LOAD_EXTEND_OP may or may not return non-NIL.
* doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP
may or may not return non-NIL.
* postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code,
check CANNOT_CHANGE_MODE_CLASS
Michael Koch [Fri, 23 Jan 2004 12:32:23 +0000 (12:32 +0000)]
2004-01-23 Michael Koch <konqueror@gmx.de>
* gnu/java/net/protocol/http/Connection.java
(connect): Don't initialize bufferedOutputStream if not needed.
(sendRequest): Set property for content length if content is present.
Write content only if present.
(getOutputStream): Check if already connected, dont connect,
initalize bufferedOutputStream if needed.
Arnaud Charlet [Fri, 23 Jan 2004 10:30:04 +0000 (11:30 +0100)]
[multiple changes]
2004-01-23 Robert Dewar <dewar@gnat.com>
* exp_aggr.adb: Minor reformatting
* exp_ch9.adb: Minor code clean up
Minor reformatting
Fix bad character in comment
* targparm.adb (Get_Target_Parameters): Give clean abort error on
unexpected end of file, along with more detailed message.
2004-01-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
PAT.
* decl.c (copy_alias_set): New function.
(gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
2004-01-23 Doug Rupp <rupp@gnat.com>
* Makefile.in (install-gnatlib): Change occurrences of lib$$file to
lib$${file} in case subsequent character is not a separator.
2004-01-23 Vincent Celier <celier@gnat.com>
* 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
when the GCC version is at least 3.
* make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
Remove all "Opt.", to prepare for opt split
* prj-part.adb (Parse_Single_Project): New Boolean out parameter
Extends_All. Set to True when the project parsed is an extending all
project. Fails for importing an extending all project only when the
imported project is an extending all project.
(Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
depending on the value of Extends_All returned.
* prj-proc.adb (Process): Check that no project shares its object
directory with a project that extends it, directly or indirectly,
including a virtual project.
Check that no project extended by another project shares its object
directory with another also extended project.
* prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
Kind = N_With_Clause
* prj-tree.ads: Minor reformatting
Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
2004-01-23 Ed Schonberg <schonberg@gnat.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
applies to a type with an incomplete view, use full view in Name of
clause, for consistency with uses of Get_Attribute_Definition_Clause.
2004-01-23 Arnaud Charlet <charlet@act-europe.fr>
* 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
SCHED_RR, since other values are not supported by this policy.
(Initialize): Move initialization of mutex attribute to package
elaboration, to prevent early access to this variable.
* Makefile.in: Remove mention of Makefile.adalib, unused.
Eric Botcazou [Fri, 23 Jan 2004 09:16:56 +0000 (10:16 +0100)]
sparc.c (scan_record_type): New function.
* config/sparc/sparc.c (scan_record_type): New function.
(function_arg_slotno): Use it to determine which kinds of
registers the record can be passed in.
Roger Sayle [Fri, 23 Jan 2004 01:47:15 +0000 (01:47 +0000)]
re PR rtl-optimization/13821 (IRIX 6.5 bootstrap failure: ICE in simplify_gen_subreg)
PR optimization/13821
* simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset to
correctly calculate the lowpart offset of the contracted subreg.
Jan Hubicka [Thu, 22 Jan 2004 22:33:51 +0000 (23:33 +0100)]
cfgcleanup.c (first_pass): New static variable.
* cfgcleanup.c (first_pass): New static variable.
(try_forward_edges): Add work limiting check for threading.
(try_crossjump_bb): Add work limiting check for crossjumping.
(try_optimize_cfg): Maintain first pass variable.
Arnaud Vandyck [Thu, 22 Jan 2004 21:41:53 +0000 (22:41 +0100)]
2004-01-22 Arnaud Vandyck <arnaud.vandyck@ulg.ac.be>
Michael Koch <konqueror@gmx.de>
* javax/swing/table/DefaultTableCellRenderer.java
(DefaultTableCellRenderer): Added javadoc for the class and for
the constructor, Border instance, create an EmptyBorder.
(UIResource): Removed the comment at the end of the class
(setForeground): New method.
(setBackground): New method.
(updateUI): New method.
(getTableCellRendererComponent): Rewritten with the help of
dvholten and Stephane Meslin-Weber.
(validate): New method.
(repaint): New method.
(firePropertyChange): New method.
(setValue): New method.
Co-Authored-By: Michael Koch <konqueror@gmx.de>
From-SVN: r76372
2004-01-22 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
(connectJObject): Replace printf calls with g_assert statements.
Move property-notify-event signal connection to ...
(connectSignals): Connect property-notify-event signal. Iterate
through the vbox's children to find layout.
* config/arm/arm.c: Include "debug.h".
(thumb_pushpop): Take two new arguments. Add some commentary.
Output frame information when pushing.
(thumb_exit, thumb_unexpanded_epilogue): Update calls to
thumb_pushpop.
(thumb_output_function_prologue): Likewise. Accumulate a CFA
offset, and pass it to thumb_pushpop. Output CFI information.
(thumb_expand_prologue): Add some frame-related markers and notes.
Ulrich Weigand [Thu, 22 Jan 2004 16:38:14 +0000 (16:38 +0000)]
s390.c (s390_frame_info): Allow large frame sizes for TARGET_64BIT.
* config/s390/s390.c (s390_frame_info): Allow large frame sizes
for TARGET_64BIT.
(s390_arg_frame_offset): Change return type to HOST_WIDE_INT.
* config/s390/s390-protos.h (s390_arg_frame_offset): Likewise.
Paolo Carlini [Thu, 22 Jan 2004 14:25:37 +0000 (14:25 +0000)]
locale_facets.tcc (money_put::do_put(..., long double)): Use the basic_string constructor for char arrays...
2004-01-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc
(money_put::do_put(..., long double)): Use the basic_string
constructor for char arrays, not that for C-strings, to pass
__digits to do_put(..., const string_type&): __ws isn't
null-terminated.