PR middle-end/15054
* expr.c (expand_expr_real): Do not call preserve_temp_slots
on a TARGET_EXPR temp.
* function.c (assign_stack_temp_for_type): Set 'keep' flag for
TARGET_EXPR temp slots.
PR middle-end/15054
* g++.dg/opt/pr15054.C: New test.
From-SVN: r81384
2004-05-01 Paolo Bonzini <bonzini@gnu.org>
* simplify-rtx.c (simplify_ternary_operation): When
converting an IF_THEN_ELSE to a relational op, return
correct mode.
From-SVN: r81383
2004-04-20 Andrew Pinski <pinskia@physics.uc.edu>
PR target/11608
* config/sh/elf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Update and make it
more like the one in config/dbxelf.h.
From-SVN: r81379
* tree.h (SET_ARRAY_OR_VECTOR_CHECK): Rename to SET_OR_ARRAY_CHECK
and adjust definition accordingly.
(TYPE_DOMAIN): Allow only SET_TYPE and ARRAY_TYPE.
(TYPE_DEBUG_REPRESENTATION_TYPE): Allow only VECTOR_TYPE.
* expr.c (store_constructor): Do not access TYPE_DOMAIN of a
VECTOR_TYPE.
From-SVN: r81373
PR c++/14587
* config/i386/winnt.c (associated_type): Look for attributes on
the TYPE_MAIN_VARIANT of *this.
* attribs.c (decl_attributes): If ATTR_FLAG_TYPE_IN_PLACE, also
apply the attributes to the variants.
From-SVN: r81369
(DWARF2_DEBUGGING_INFO): Define to enable.
(DBX_REGISTER_NUMBER): Define to use the svr4 register map for
DWARF2.
* configure.ac (Target-specific assembler checks)
<i[34567]86-*-[cygwin*|pe|mingw32*]>: New test for .secrel32
relocs.
* configure: Regenerate.
* config.in: Likewise.
* config/i386/cygming.h [HAVE_GAS_PE_SECREL32_RELOC]
(ASM_OUPUT_DWARF_OFFSET): Define.
From-SVN: r81359
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Use
additional option "-Wmissing-prototypes" for compiling C sources.
Print actual filename for pass/fail rather than $name.c.
* testsuite/libjava.jni/PR15133.java: New testcase file.
* testsuite/libjava.jni/PR15133.c: Likewise.
* testsuite/libjava.jni/PR15133.out: Likewise.
Co-Authored-By: Tom Tromey <tromey@redhat.com>
From-SVN: r81358
Fixes PR java/15133
* gjavah.c (struct method_name): Add member is_native.
(overloaded_jni_method_exists_p): Match candidate method only if
it is native.
(print_method_info): Initialise is_native flag from the method's
access flags.
From-SVN: r81357
* class.c (build_simple_base_path): New fn.
(build_base_path): Use it for non-virtual base references.
(layout_class_type): Change base fields to their real type
after layout is done.
* cp-tree.h (IS_FAKE_BASE_TYPE): New macro.
* cp-lang.c (cxx_get_alias_set): Use it.
From-SVN: r81349
2004-04-29 Andreas Krebbel <krebbel1@de.ibm.com>
ChangeLog:
* config/s390/s390-protos.h (s390_emit_epilogue): Parameter added.
(s390_emit_call): New function prototype added.
(s390_tls_get_offset): Function removed.
* config/s390/s390.c (s390_function_ok_for_sibcall,
s390_call_saved_register_used_p): New functions.
(TARGET_FUNCTION_OK_FOR_SIBCALL): Definition of target macro added.
(s390_tls_get_offset): Function merged into s390_emit_tls_call_insn.
(s390_emit_tls_call_insn): New function.
(legitimize_tls_address): Call s390_emit_tls_call_insn instead of
emit_call_insn.
(s390_emit_prologue): Use s390_emit_call instead of emit_call_insn.
(s390_emit_epilogue): Like s390_emit_prologue. Parameter for sibcalls
added.
* config/s390/s390.h (SIBCALL_REGNUM): New macro representing the
register number used to hold the target address for sibcalls.
* config/s390/s390.md ("sibcall", "sibcall_value", "sibcall_epilogue"):
New expanders.
("*sibcall_br", "*sibcall_brc", "*sibcall_brcl", "*sibcall_value_br",
"*sibcall_value_brc", "*sibcall_value_brcl"): New insns.
("call_exp", "call_value_exp", "call_value_tls", "call_value_tls_exp"):
Expanders removed.
("call", "call_value"): Call s390_emit_call to emit the call patterns.
("*bras", "*brasl", "*bras_r", "*brasl_r", "*bras_tls", "*brasl_tls",
"*basr", "*basr_r", "*basr_tls"): Added constraint: !SIBLING_CALL_P.
("epilogue"): Changed the call to s390_emit_epilogue to use the
new parameter.
testsuite/ChangeLog:
* gcc.dg/sibcall-3.c: Delete s390 from expected fail list.
* gcc.dg/sibcall-4.c: Likewise.
* gcc.dg/sibcall-6.c: Enable s390 as test platform.
From-SVN: r81347
* expr.c (store_constructor): SIZE operand is now in bits; CLEARED
less than zero now means emitted CLOBBER already.
(store_constructor_field, expand_expr_real): Reflect above changes.
From-SVN: r81335
2004-04-30 Paolo Bonzini <bonzini@gnu.org>
* config/altivec/altivec.h [__cplusplus] (vec_subsubs): Rename to
vec_sububs.
[__cplusplus] (vec_subsuhs): Rename to vec_subuhs, without
duplicates.
From-SVN: r81331
* configure.ac (--with-as): Abort if user-supplied assembler
cannot be executed.
(--with-ld): Likewise for the linker.
* configure: Regenerate.
From-SVN: r81316
2004-04-29 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.dg/rs6000-power2-1.c: Change the options to be more correct.
* gcc.dg/rs6000-power2-2.c: Change the options to be more correct.
Change the asm registers to be in form of frN instead of fN.
From-SVN: r81303
2004-04-29 Ed Schonberg <schonberg@gnat.com>
* checks.adb (Enable_Range_Check): If the prefix of an index component
is an access to an unconstrained array, perform check unconditionally.
2004-04-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* decl.c (gnat_to_gnu_field): Also call make_packable_type if
Component_Clause.
2004-04-29 Olivier Hainque <hainque@act-europe.fr>
* init.c (__gnat_install_handler, __gnat_error_handler): Remove
alternate stack setting. There was no support for the tasking cases
and the changes eventually caused a number of side-effect failures in
the non-tasking case too.
2004-04-29 Eric Botcazou <ebotcazou@act-europe.fr>
lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
-gnats is passed.
2004-04-29 Vincent Celier <celier@gnat.com>
* make.adb (Gnatmake): Increase max size of argument array for
gnatbind for the potential addition of -F.
If there are Stand-Alone Library projects, invoke gnatbind with -F to
be sure that elaboration flags will be checked.
* switch-c.adb: Correct call to Scan_Pos for -gnateI
2004-04-29 Thomas Quinot <quinot@act-europe.fr>
* sem_warn.adb (Check_References): Move '<access-variable> may be
null' warning out of under Warn_On_No_Value_Assigned.
2004-04-29 Ed Falis <falis@gnat.com>
* gnat_ugn.texi: Fixed texi error
2004-04-29 Robert Dewar <dewar@gnat.com>
* sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
abstract operations if they come from predefined files.
* gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
Dynamic, not RM).
* s-addope.adb: Correct obvious error in mod function
From-SVN: r81289
2004-04-29 Paolo Bonzini <bonzini@gnu.org>
Complete last checkin:
* combine.c (combine_simplify_rtx): Adjust call to use
simplify_relational_operation. Do not use SELECT_CC_MODE
when a comparison already has a MODE_CC mode.
From-SVN: r81283
2004-04-29 Paolo Bonzini <bonzini@gnu.org>
* combine.c (combine_simplify_rtx): Adjust call to use
simplify_relational_operation. Do not use SELECT_CC_MODE
when a comparison already has a MODE_CC mode.
(simplify_set): simplify_relational_operation may now
return another relational expression.
* cse.c (fold_rtx): simplify_relational_operation now
takes of computing the comparison mode.
* dojump.c (compare_from_rtx): Use simplify_relational_operation,
remove dead code.
(do_compare_rtx_and_jump): Likewise.
* integrate.c (subst_constants): simplify_relational_operation
may now return another relational expression.
* simplify-rtx.c (simplify_gen_relational): Move most code to
the new simplify_relational_operation and
simplify_relational_operation_1 functions.
(simplify_relational_operation): Rewritten.
(simplify_relational_operation_1): New function.
(simplify_ternary_operation): simplify_relational_operation
may now return another relational expression.
(simplify_rtx): Remove unnecessary temp variable.
From-SVN: r81282