Paolo Bonzini [Fri, 12 Aug 2005 14:18:46 +0000 (14:18 +0000)]
configure.in: Replace NCN_STRICT_CHECK_TOOL with NCN_STRICT_CHECK_TOOLS...
toplevel:
2005-08-12 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Replace NCN_STRICT_CHECK_TOOL with
NCN_STRICT_CHECK_TOOLS, and likewise for NCN_STRICT_CHECK_TARGET_TOOLS.
Look for alternate names of the target cc and c++
* configure: Regenerate.
config:
2005-08-12 Paolo Bonzini <bonzini@gnu.org>
* config/acx.m4 (NCN_CHECK_TARGET_TOOL, NCN_STRICT_CHECK_TOOL,
NCN_STRICT_CHECK_TARGET_TOOL): Remove.
(NCN_STRICT_CHECK_TOOLS, NCN_STRICT_CHECK_TARGET_TOOLS): New,
based on the deleted macros.
Andreas Krebbel [Fri, 12 Aug 2005 12:24:05 +0000 (12:24 +0000)]
predicates.md (setmem_operand): New predicate.
2005-08-12 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/predicates.md (setmem_operand): New predicate.
(shift_count_operand): Accept ANDs with special constants as
operand.
* config/s390/s390.c (print_shift_count_operand): Skip ANDs
with special constants.
* config/s390/s390.md ("setmem_long", "*setmem_long"): Replaced
shift_count_operand with setmem_operand.
Andreas Krebbel [Fri, 12 Aug 2005 12:10:30 +0000 (12:10 +0000)]
s390.c (s390_extract_part, [...]): Type cast added.
2005-08-12 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_extract_part, s390_single_part):
Type cast added.
(s390_const_ok_for_constraint_p): Added SImode to the N constraint.
(s390_output_mi_thunk): Don't use lg on 31 bit.
* config/s390/s390.md ("*movdi_31", "*movdf_31"): Added lmy and stmy.
("*llgt_sisi" and splitter): Replaced TARGET_64BIT with TARGET_ZARCH.
Andreas Krebbel [Fri, 12 Aug 2005 12:02:21 +0000 (12:02 +0000)]
s390.c (CONST_OK_FOR_J, [...]): New macros.
2005-08-12 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (CONST_OK_FOR_J, CONST_OK_FOR_K): New macros.
(s390_select_ccmode, s390_rtx_costs, legitimate_reload_constant_p,
s390_init_frame_layout, s390_emit_prologue, s390_emit_epilogue,
s390_output_mi_thunk): Replaced uses of CONST_OK_FOR_CONSTRAINT_P
with one of the new macros.
Andreas Krebbel [Fri, 12 Aug 2005 11:58:05 +0000 (11:58 +0000)]
s390.c (s390_split_branches, [...]): Don't set save_return_addr_p.
2005-08-12 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_split_branches, s390_init_frame_layout):
Don't set save_return_addr_p.
(s390_register_info): Make clobbered_regs not depending on
save_return_addr_p.
Jakub Jelinek [Thu, 11 Aug 2005 21:22:43 +0000 (23:22 +0200)]
dwarf2out.c (add_location_or_const_value_attribute): Prefer locations gathered by var-tracking in single entry loc_list over...
* dwarf2out.c (add_location_or_const_value_attribute): Prefer
locations gathered by var-tracking in single entry loc_list
over loc_descriptor_from_tree.
Jakub Jelinek [Thu, 11 Aug 2005 21:21:07 +0000 (23:21 +0200)]
dwarf2out.c (concat_loc_descriptor): Add can_use_fbreg argument, pass it down to loc_descriptor.
* dwarf2out.c (concat_loc_descriptor): Add can_use_fbreg argument,
pass it down to loc_descriptor.
(loc_descriptor): Pass can_use_fbreg to concat_loc_descriptor.
(containing_function_has_frame_base): Move earlier in the file.
(loc_descriptor_from_tree_1): Use containing_function_has_frame_base
instead of always assuming fbreg can't be used.
David Edelsohn [Thu, 11 Aug 2005 21:18:11 +0000 (21:18 +0000)]
altivec.md: Change constraint "m" to "Z".
* config/rs6000/altivec.md: Change constraint "m" to "Z".
* config/rs6000/predicates.md (indexed_or_indirect_operand):
Accept address wrapped in AND for Altivec.
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address):
Strip AND wrapping offset address for Altivec.
re PR libfortran/20006 ($ format extension doesn't work)
PR libfortran/20006
* gfortran.h: Add is_main_program member to symbol_attribute.
* trans-decl: Add a gfor_fndecl_set_std tree.
(gfc_build_builtin_function_decls): Create it.
(gfc_generate_function_code): Add this call at the beginning of
the main program.
* trans.c (gfc_generate_code): Move main_program and attr.
* trans.h: Add declaration for gfor_fndecl_set_std.
* Makefile.am: Add file runtime/compile_options.c.
* Makefile.in: Regenerate.
* libgfortran.h: Create structure compile_options_t. Define the
compile_options variable and GFC_STD_ macros.
* runtime/compile_options.c: New file.
* runtime/error.c (notify_std): New function.
* runtime/main.c (init): Call init_compile_options during
initialization.
* io/format.c: Use the new notify_std function for the $
descriptor extension.
* gfortran.dg/runtime_warning_1.f90: New test.
Co-Authored-By: Steven Bosscher <stevenb@suse.de>
From-SVN: r102990
Nathan Sidwell [Thu, 11 Aug 2005 09:23:57 +0000 (09:23 +0000)]
re PR c++/23219 (ICE: Segmentation fault in decl_namespace_context)
cp:
PR c++/23219
* name-lookup.c (pushtag): Process the template type before
altering the identifier lookup fields. Remove unreachable code
creating an empty stub decl.
testsuite:
PR c++/23219
* g++.dg/parse/crash28.C: New.
Thomas Koenig [Wed, 10 Aug 2005 20:16:29 +0000 (20:16 +0000)]
re PR libfortran/22143 (missing kinds 1 and 2 for eoshift and cshift)
2005-08-10 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/22143
gfortran.h: Declare new function gfc_resolve_dim_arg.
resolve.c: New function gfc_resolve_dim_arg.
iresolve.c (gfc_resolve_all): Use gfc_resolve_dim_arg.
(gfc_resolve_any): Likewise.
(gfc_resolve_count): Likewise.
(gfc_resolve_cshift): Likewise. If the kind of shift is less
gfc_default_integer_kind, convert it to default integer type.
(gfc_resolve_eoshift): Likewise.
(gfc_resolve_maxloc): Use gfc_resolve_dim_arg.
(gfc_resolve_maxval): Likewise.
(gfc_resolve_minloc): Likewise.
(gfc_resolve_minval): Likewise.
(gfc_resolve_product): Likewise.
(gfc_resolve_spread): Likewise.
(gfc_resolve_sum): Likewise.
2005-08-10 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/22143
gfortran.dg/shift-kind.f90: New testcase.
check.c (gfc_check_ttynam_sub, [...]): Add check functions for new intrinsics TTYNAM and ISATTY.
* check.c (gfc_check_ttynam_sub, gfc_check_isatty): Add check
functions for new intrinsics TTYNAM and ISATTY.
* intrinsic.c (add_functions, add_subroutines): Add new
intrinsics.
* intrinsic.h: Add prototypes for new check and resolve
functions.
* iresolve.c (gfc_resolve_isatty, gfc_resolve_ttynam_sub): New
resolve functions for intrinsics TTYNAM and ISATTY.
* gfortran.h (gfc_generic_isym_id): Add symbol for ISATTY.
* trans-intrinsic.c: Add case for GFC_ISYM_ISATTY.
* Makefile.am: Add file intrinsics/tty.c to Makefile process.
* Makefile.in: Regenerate.
* io/io.h: Prototypes for new functions stream_isatty and
stream_ttyname.
* io/unix (stream_isatty, stream_ttyname): New functions to call
isatty() and ttyname() on a given unit.
* intrinsics/tty.c: New file to implement g77 intrinsics TTYNAM
and ISATTY.
Jakub Jelinek [Tue, 9 Aug 2005 08:06:16 +0000 (10:06 +0200)]
ppc_closure.S (ffi_closure_SYSV): Use DW_CFA_offset_extended_sf rather than DW_CFA_GNU_negative_offset_extended.
* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Use
DW_CFA_offset_extended_sf rather than
DW_CFA_GNU_negative_offset_extended.
* src/powerpc/sysv.S (ffi_call_SYSV): Likewise.
tree-ssa-loop-niter.c (tree_simplify_using_condition_1): Use fold_binary instead of fold_build2 since we don't care about the resulting tree.
2005-08-09 James A. Morrison <phython@gcc.gnu.org>
* tree-ssa-loop-niter.c (tree_simplify_using_condition_1): Use
fold_binary instead of fold_build2 since we don't care about the
resulting tree.
(loop_niter_by_eval): Likewise.
(compare_trees): Likewise.
(proved_non_wrapping_p): Likewise.
Steven Bosscher [Tue, 9 Aug 2005 03:28:38 +0000 (03:28 +0000)]
re PR tree-optimization/23234 (ICE in verify_flow_info())
gcc/
PR tree-optimization/23234
* tree-ssa-math-opts.c (place_reciprocal): New enum.
(execute_cse_reciprocals_1): Replace the 'phi' argument with an
argument of the new enum.
(execute_cse_reciprocals): Add reciprocals for function arguments
on the unique successor edge of the entry block. Update other calls
to execute_cse_reciprocals_1.
testsuite/
PR tree-optimization/23234
* gcc.dg/tree-ssa/pr23234.c: New test.
Nathan Sidwell [Mon, 8 Aug 2005 14:56:18 +0000 (14:56 +0000)]
class.c (build_class_ref): Wrap the primary class type in a NOP_EXPR.
* class.c (build_class_ref): Wrap the primary class type in a
NOP_EXPR.
* parse.y (java_complete_lhs) <COMPONENT_REF case>: Extract the
primary class type from the NOP_EXPR in which it was placed.
io.h: Change DEFAULT_TEMPDIR to /tmp instead of /var/tmp.
* io/io.h: Change DEFAULT_TEMPDIR to /tmp instead of /var/tmp.
* io/unix.c (tempfile): Look at the TEMP environment variable
to find the temporary files directory. Whitespace correction.
Nick Clifton [Sat, 6 Aug 2005 13:50:42 +0000 (13:50 +0000)]
config/stormy16/stormy16.h (SYMBOL_FLAG_XSTORMY16_BELOW100): New define.
(ASM_OUTPUT_LABELREF): Delete - it is no longer needed.
config/stormy16/stormy16.c (xstormy16_below100_symbol): Check symbol flags
instead of symbol name mangling.
(xstormy16_asm_output_aligned_common): Likewise. Also simplify code since
the bss100_section cass is the only case where the below100 code will be
triggered.
(xstormy16_encode_section_info): Encode below100 attribute using the
SYMBOL_FLAG_XSTORMY16_BELOW100 instead of mangling the name.
(xstormy16_strip_name_encoding): Delete - this function is no longer needed.
(TARGET_STRIP_NAME_ENCODING): Undefine.
config/stormy16/stormy16-protos.h: Delete prototype for
xstormy16_strip_name_encoding.
Joseph Myers [Sat, 6 Aug 2005 11:31:49 +0000 (12:31 +0100)]
re PR c/23113 (The -Wunused (value computed is not used) option missed an important case)
PR c/23113
* stmt.c (warn_if_unused_value): Check TREE_NO_WARNING at start.
Don't handle NOP_EXPR, CONVERT_EXPR and NON_LVALUE_EXPR
specially. Check for side effects only for COND_EXPR.
* c-typeck.c (c_finish_stmt_expr): Mark statement expression
return with TREE_NO_WARNING.