Francois-Xavier Coudert [Sat, 11 Aug 2007 21:31:35 +0000 (21:31 +0000)]
re PR fortran/32937 (segfault with string and -fdefault-integer-8)
PR fortran/32937
* trans-array.c (gfc_conv_expr_descriptor): Use
gfc_conv_const_charlen to generate backend_decl of right type.
* trans-expr.c (gfc_conv_expr_op): Use correct return type.
(gfc_build_compare_string): Use int type instead of default
integer kind for single character comparison.
(gfc_conv_aliased_arg): Give backend_decl the right type.
* trans-decl.c (gfc_build_intrinsic_function_decls): Make
compare_string return an int.
* gfortran.dg/char_length_6.f90: New test.
* intrinsics/string_intrinsics.c (compare_string): Return an int.
* libgfortran.h (compare_string): Likewise.
From-SVN: r127363
Ian Lance Taylor [Sat, 11 Aug 2007 17:21:56 +0000 (17:21 +0000)]
alias.h (alias_set_type): Define new type.
./: * alias.h (alias_set_type): Define new type.
(ALIAS_SET_MEMORY_BARRIER): Use it.
* rtl.h: Include alias.h.
(struct mem_attrs): Use alias_set_type.
* tree.h: Include alias.h
(struct tree_type): Use alias_set_type.
(struct tree_struct_field_tag): Likewise.
(struct tree_decl_common): Likewise.
* alias.c (struct alias_set_entry): Use alias_set_type.
(get_alias_set_entry, alias_set_subset_of): Likewise.
(alias_sets_conflict_p): Likewise.
(alias_sets_must_conflict_p): Likewise.
(objects_must_conflict_p): Likewise.
(get_alias_set, new_alias_set): Likewise.
(record_alias_subset, record_component_aliases): Likewise.
(varargs_set, frame_set): Change to alias_set_type.
(get_varargs_alias_set): Use alias_set_type.
(get_frame_alias_set): Likewise.
* builtins.c (setjmp_alias_set): Change to alias_set_type.
* dse.c (struct store_info): Use alias_set_type.
(struct read_info, struct clear_alias_mode_holder): Likewise.
(clear_alias_set_lookup, canon_address): Likewise.
(record_store, check_mem_read_rtx): Likewise.
(dse_record_singleton_alias_set): Likewise.
(dse_invalidate_singleton_alias_set): Likewise.
* emit-rtl.c (get_mem_attrs): Likewise.
(set_mem_attributes_minus_bitpos): Likewise.
(set_mem_alias_set): Likewise.
* expr.c (store_constructor_field, store_field): Likewise.
* gimplify.c (struct gimplify_init_ctor_preeval_data): Likewise.
* langhooks.c (lhd_get_alias_set): Likewise.
* langhooks-def.h (lhd_get_alias_set): Likewise.
* reload1.c (alter_reg): Likewise.
* tree-flow.h (struct fieldoff): Likewise.
* tree-ssa-alias.c (struct alias_map_d): Likewise.
(may_alias_p, get_smt_for, create_sft): Likewise.
* tree-ssa-alias-warnings.c (nonstandard_alias_types_p): Likewise.
* tree-ssa-structalias.c (set_uids_in_ptset): Likewise.
(merge_smts_into): Likewise.
* varasm.c (const_alias_set): Likewise.
* c-common.c (strict_aliasing_warning): Likewise.
(c_common_get_alias_set): Likewise.
* dse.h (dse_record_singleton_alias_set): Update declaration.
(dse_invalidate_singleton_alias_set): Likewise.
* emit-rtl.h (set_mem_alias_set): Likewise.
* c-common.h (c_common_get_alias_set): Likewise.
* print-rtl.c (print_rtx): Cast MEM_ALIAS_SET when printing it.
* print-tree.c (print_node): Likewise.
* config/alpha/alpha.c (alpha_sr_alias_set): Change to
alias_set_type.
(alpha_setup_incoming_varargs): Use alias_set_type.
* config/i386/i386.c (setup_incoming_varargs_64): Use
alias_set_type.
(setup_incoming_varargs_ms_64): Likewise.
(ix86_GOT_alias_set): Likewise.
* config/mn10300/mn10300.c (mn10300_builtin_saveregs): Likewise.
* config/rs6000/rs6000.c (setup_incoming_varargs): Likewise.
(set): Change to alias_set_type.
(get_TOC_alias_set): Use alias_set_type.
* config/rs6000/rs6000-protos.h (get_TOC_alias_set): Update
declaration.
* config/sh/sh.c (sh_builtin_saveregs): Use alias_set_type.
* config/sparc/sparc.c (sparc_sr_alias_set): Change to
alias_set_type.
(struct_value_alias_set): Likewise.
* Makefile.in (GTFILES): Add $(srcdir)/alias.h.
ada/:
* misc.c (gnat_get_alias_set): Change return type to
alias_set_type.
cp/:
* cp-objcp-common.c (cxx_get_alias_set): Change return type to
alias_set_type.
* cp/cp-tree.h (cxx_get_alias_set): Update declaration.
fortran:/
* f95-lang.c (gfc_get_alias_set): Change return type to
alias_set_type.
From-SVN: r127362
Richard Sandiford [Sat, 11 Aug 2007 16:52:47 +0000 (16:52 +0000)]
vxworks-dummy.h (TARGET_VXWORKS): Define.
gcc/
* config/vxworks-dummy.h (TARGET_VXWORKS): Define.
* config/vxworks.h (TARGET_VXWORKS): Override.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Don't define
"mips" if TARGET_VXWORKS.
From-SVN: r127361
Richard Sandiford [Sat, 11 Aug 2007 16:51:07 +0000 (16:51 +0000)]
calls.c (avoid_likely_spilled_reg): New function.
gcc/
* calls.c (avoid_likely_spilled_reg): New function.
(expand_call): Use it.
From-SVN: r127360
Kaveh R. Ghazi [Sat, 11 Aug 2007 16:38:51 +0000 (16:38 +0000)]
decl.c, utils2.c: Fix whitespace in last change.
* decl.c, utils2.c: Fix whitespace in last change.
From-SVN: r127359
Kaveh R. Ghazi [Sat, 11 Aug 2007 13:34:32 +0000 (13:34 +0000)]
decl.c (compare_field_bitpos): Constify.
* decl.c (compare_field_bitpos): Constify.
* utils2.c (compare_elmt_bitpos): Likewise.
From-SVN: r127358
Kaveh R. Ghazi [Sat, 11 Aug 2007 13:32:52 +0000 (13:32 +0000)]
c-typeck.c (build_c_cast): Add OPT_Wcast_qual to warnings.
* c-typeck.c (build_c_cast): Add OPT_Wcast_qual to warnings.
From-SVN: r127357
GCC Administrator [Sat, 11 Aug 2007 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127355
Francois-Xavier Coudert [Fri, 10 Aug 2007 22:12:04 +0000 (22:12 +0000)]
re PR fortran/31270 (print subscript value and array bounds when out-of-bounds error occurs)
PR fortran/31270
* trans.c (gfc_trans_runtime_check): Reorder arguments and
add extra variable arguments. Hand them to the library function.
* trans.h (gfc_trans_runtime_check): Update prototype.
* trans-array.c (gfc_trans_array_bound_check): Issue more
detailled error messages.
(gfc_conv_array_ref): Likewise.
(gfc_conv_ss_startstride): Likewise.
(gfc_trans_dummy_array_bias): Reorder arguments to
gfc_trans_runtime_check.
* trans-expr.c (gfc_conv_substring): Issue more detailled
error messages.
(gfc_conv_function_call): Reorder arguments to gfc_trans_runtime_check.
* trans-stmt.c (gfc_trans_goto): Likewise.
* trans-io.c (set_string): Reorder arguments to
gfc_trans_runtime_check and issue a more detailled error message.
* trans-decl.c (gfc_build_builtin_function_decls): Make
runtime_error and runtime_error_at handle a variable number of
arguments.
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Reorder arguments
to gfc_trans_runtime_check.
(gfc_conv_intrinsic_minmax): Likewise.
(gfc_conv_intrinsic_repeat): Issue more detailled error messages.
* runtime/error.c (runtime_error_at): Add a variable number of
arguments.
* libgfortran.h (runtime_error_at): Update prototype.
From-SVN: r127352
Adam Nemet [Fri, 10 Aug 2007 22:11:43 +0000 (22:11 +0000)]
predicates.md (const_call_insn_operand): Invoke SYMBOL_REF_LONG_CALL_P only on SYMBOL_REFs.
* config/mips/predicates.md (const_call_insn_operand): Invoke
SYMBOL_REF_LONG_CALL_P only on SYMBOL_REFs.
From-SVN: r127351
Diego Novillo [Fri, 10 Aug 2007 21:08:32 +0000 (17:08 -0400)]
gcc.doxy: Rename from tree-ssa.doxy.
* gcc.doxy: Rename from tree-ssa.doxy.
From-SVN: r127350
Diego Novillo [Fri, 10 Aug 2007 20:02:33 +0000 (16:02 -0400)]
tree-ssa.doxy: Update for doxygen 1.5.
* tree-ssa.doxy: Update for doxygen 1.5.
Include all the files in the middle and back ends.
From-SVN: r127349
David Edelsohn [Fri, 10 Aug 2007 18:48:33 +0000 (18:48 +0000)]
re PR target/33042 (Bootstrap failure on ppc64)
PR target/33042
* config/rs6000/driver-rs6000.c: Include link.h.
Use ElfW instead of wordsize-specif typedef.
From-SVN: r127348
Ollie Wild [Fri, 10 Aug 2007 18:12:12 +0000 (18:12 +0000)]
name-lookup.c (do_nonmember_using_decl): Print an error for ambiguous type lookups.
gcc/cp/
* name-lookup.c (do_nonmember_using_decl): Print an error for ambiguous
type lookups.
(ambiguous_decl): Construct tree of ambiguous types. Remove extaneous
function parameter.
(unqualified_namespace_lookup): Fix ambiguous_decl call.
(lookup_using_namespace): Fix ambiguous_decl call.
(qualified_lookup_using_namespace): Fix ambiguous_decl call.
gcc/testsuite/
* g++.dg/lookup/using18.C: New test.
From-SVN: r127347
Kaveh R. Ghazi [Fri, 10 Aug 2007 17:53:58 +0000 (17:53 +0000)]
system.h (CONST_CAST): New.
* system.h (CONST_CAST): New.
* c-decl.c (c_make_fname_decl): Use it.
* c-lex.c (cb_ident, lex_string): Likewise.
* c-typeck.c (free_all_tagged_tu_seen_up_to): Likewise.
* gcc.c (set_spec, read_specs, for_each_path, execute, do_spec_1,
give_switch, set_multilib_dir): Likewise.
* gengtype-parse.c (string_seq, typedef_name): Likewise.
* passes.c (execute_one_pass): Likewise.
* prefix.c (update_path): Likewise.
* pretty-print.c (pp_base_destroy_prefix): Likewise.
* tree.c (build_string): Likewise.
cp:
* call.c (name_as_c_string): Use CONST_CAST.
* decl.c (build_decl): Likewise.
* parser.c (cp_parser_string_literal): Likewise.
fortran:
* gfortranspec.c (lang_specific_driver): Use CONST_CAST.
* options.c (gfc_post_options): Likewise.
* parse.c (parse_omp_structured_block): Likewise.
* st.c (gfc_free_statement): Likewise.
java:
* jcf-parse.c (read_class, java_parse_file): Use CONST_CAST.
* jcf.h (JCF_FINISH): Likewise.
From-SVN: r127344
Aldy Hernandez [Fri, 10 Aug 2007 17:29:23 +0000 (17:29 +0000)]
tree-flow-inline.h (is_exec_stmt): Remove.
* tree-flow-inline.h (is_exec_stmt): Remove.
(is_label_stmt): Remove.
* tree-flow.h: Remove prototypes for is_exec_stmt, get_filename, and
is_label_stmt.
From-SVN: r127343
Andreas Krebbel [Fri, 10 Aug 2007 17:16:57 +0000 (17:16 +0000)]
lower-subreg.c (resolve_shift_zext): Don't adjust src_reg_num for wordmode operands.
2007-08-10 Andreas Krebbel <krebbel1@de.ibm.com>
* lower-subreg.c (resolve_shift_zext): Don't adjust
src_reg_num for wordmode operands.
From-SVN: r127342
Sandra Loosemore [Fri, 10 Aug 2007 16:35:49 +0000 (12:35 -0400)]
mips.c (TARGET_SCHED_INIT): Define.
2007-08-10 Sandra Loosemore <sandra@codesourcery.com>
David Ung <davidu@mips.com>
gcc/
* config/mips/mips.c (TARGET_SCHED_INIT): Define.
(TARGET_SCHED_REORDER2): Define.
(mips_maybe_swap_ready): New.
(mips_last_74k_agen_insn): New.
(mips_74k_agen_init): New.
(mips_74k_agen_reorder): New function to group loads and stores
in the ready queue.
(mips_sched_init): New.
(mips_sched_reorder): Don't do initialization here. Call
mips_74k_agen_reorder.
(mips_variable_issue): Call mips_74k_agen_init.
Co-Authored-By: David Ung <davidu@mips.com>
From-SVN: r127341
Aldy Hernandez [Fri, 10 Aug 2007 15:42:54 +0000 (15:42 +0000)]
* tree-flow-inline.h (get_filename): Remove.
From-SVN: r127339
Richard Sandiford [Fri, 10 Aug 2007 15:40:26 +0000 (15:40 +0000)]
mips-protos.h (mips_address_insns): Add a boolean argument.
gcc/
* config/mips/mips-protos.h (mips_address_insns): Add a boolean
argument.
(mips_fetch_insns): Delete in favor of...
(mips_load_store_insns): ...this new function.
* config/mips/mips.c (mips_address_insns): Add a boolean argument
to say whether multiword moves _might_ be split.
(mips_fetch_insns): Delete in favor of...
(mips_load_store_insns): ...this new function.
(mips_rtx_costs): Update the call to mips_address_insns.
(mips_address_cost): Likewise.
* config/mips/mips.md (length): Use mips_load_store_insns instead
of mips_fetch_insns.
* config/mips/constraints.md (R): Use mips_address_insns rather
than mips_fetch_insns. Assume that the move never needs to be split.
From-SVN: r127338
David Daney [Fri, 10 Aug 2007 15:38:23 +0000 (15:38 +0000)]
cls_multi_ushort.c, [...]: Remove xfail for mips64*-*-*.
* testsuite/libffi.call/cls_multi_ushort.c,
testsuite/libffi.call/cls_align_uint16.c,
testsuite/libffi.call/nested_struct1.c,
testsuite/libffi.call/nested_struct3.c,
testsuite/libffi.call/cls_7_1_byte.c,
testsuite/libffi.call/nested_struct5.c,
testsuite/libffi.call/cls_double.c,
testsuite/libffi.call/nested_struct7.c,
testsuite/libffi.call/cls_sint.c,
testsuite/libffi.call/nested_struct9.c,
testsuite/libffi.call/cls_20byte1.c,
testsuite/libffi.call/cls_multi_sshortchar.c,
testsuite/libffi.call/cls_align_sint64.c,
testsuite/libffi.call/cls_3byte2.c,
testsuite/libffi.call/cls_multi_schar.c,
testsuite/libffi.call/cls_multi_uchar.c,
testsuite/libffi.call/cls_19byte.c,
testsuite/libffi.call/cls_9byte1.c,
testsuite/libffi.call/cls_align_float.c,
testsuite/libffi.call/closure_fn1.c,
testsuite/libffi.call/problem1.c,
testsuite/libffi.call/closure_fn3.c,
testsuite/libffi.call/cls_sshort.c,
testsuite/libffi.call/closure_fn5.c,
testsuite/libffi.call/cls_align_double.c,
testsuite/libffi.call/nested_struct.c,
testsuite/libffi.call/cls_2byte.c,
testsuite/libffi.call/nested_struct10.c,
testsuite/libffi.call/cls_4byte.c,
testsuite/libffi.call/cls_6byte.c,
testsuite/libffi.call/cls_8byte.c,
testsuite/libffi.call/cls_multi_sshort.c,
testsuite/libffi.call/cls_align_sint16.c,
testsuite/libffi.call/cls_align_uint32.c,
testsuite/libffi.call/cls_20byte.c,
testsuite/libffi.call/cls_float.c,
testsuite/libffi.call/nested_struct2.c,
testsuite/libffi.call/cls_5_1_byte.c,
testsuite/libffi.call/nested_struct4.c,
testsuite/libffi.call/cls_24byte.c,
testsuite/libffi.call/nested_struct6.c,
testsuite/libffi.call/cls_64byte.c,
testsuite/libffi.call/nested_struct8.c,
testsuite/libffi.call/cls_uint.c,
testsuite/libffi.call/cls_multi_ushortchar.c,
testsuite/libffi.call/cls_schar.c,
testsuite/libffi.call/cls_uchar.c,
testsuite/libffi.call/cls_align_uint64.c,
testsuite/libffi.call/cls_ulonglong.c,
testsuite/libffi.call/cls_align_longdouble.c,
testsuite/libffi.call/cls_1_1byte.c,
testsuite/libffi.call/cls_12byte.c,
testsuite/libffi.call/cls_3_1byte.c,
testsuite/libffi.call/cls_3byte1.c,
testsuite/libffi.call/cls_4_1byte.c,
testsuite/libffi.call/cls_6_1_byte.c,
testsuite/libffi.call/cls_16byte.c,
testsuite/libffi.call/cls_18byte.c,
testsuite/libffi.call/closure_fn0.c,
testsuite/libffi.call/cls_9byte2.c,
testsuite/libffi.call/closure_fn2.c,
testsuite/libffi.call/closure_fn4.c,
testsuite/libffi.call/cls_ushort.c,
testsuite/libffi.call/closure_fn6.c,
testsuite/libffi.call/cls_5byte.c,
testsuite/libffi.call/cls_align_pointer.c,
testsuite/libffi.call/cls_7byte.c,
testsuite/libffi.call/cls_align_sint32.c,
testsuite/libffi.special/unwindtest_ffi_call.cc,
testsuite/libffi.special/unwindtest.cc: Remove xfail for mips64*-*-*.
From-SVN: r127337
David Daney [Fri, 10 Aug 2007 15:35:55 +0000 (15:35 +0000)]
re PR libffi/28313 (libffi has not been ported to mips64-linux-gnu)
PR libffi/28313
* configure.ac: Don't treat mips64 as a special case.
* Makefile.am (nodist_libffi_la_SOURCES): Add n32.S.
* configure: Regenerate
* Makefile.in: Ditto.
* fficonfig.h.in: Ditto.
* src/mips/ffitarget.h (REG_L, REG_S, SUBU, ADDU, SRL, LI): Indent.
(LA, EH_FRAME_ALIGN, FDE_ADDR_BYTES): New preprocessor macros.
(FFI_DEFAULT_ABI): Set for n64 case.
(FFI_CLOSURES, FFI_TRAMPOLINE_SIZE): Define for n32 and n64 cases.
* src/mips/n32.S (ffi_call_N32): Add debug macros and labels for FDE.
(ffi_closure_N32): New function.
(.eh_frame): New section
* src/mips/o32.S: Clean up comments.
(ffi_closure_O32): Pass ffi_closure parameter in $12.
* src/mips/ffi.c: Use FFI_MIPS_N32 instead of
_MIPS_SIM == _ABIN32 throughout.
(FFI_MIPS_STOP_HERE): New, use in place of
ffi_stop_here.
(ffi_prep_args): Use unsigned long to hold pointer values. Rewrite
to support n32/n64 ABIs.
(calc_n32_struct_flags): Rewrite.
(calc_n32_return_struct_flags): Remove unused variable. Reverse
position of flag bits.
(ffi_prep_cif_machdep): Rewrite n32 portion.
(ffi_call): Enable for n64. Add special handling for small structure
return values.
(ffi_prep_closure_loc): Add n32 and n64 support.
(ffi_closure_mips_inner_O32): Add cast to silence warning.
(copy_struct_N32, ffi_closure_mips_inner_N32): New functions.
From-SVN: r127336
Paolo Carlini [Fri, 10 Aug 2007 14:57:52 +0000 (14:57 +0000)]
re PR c++/17763 (Wrong context in error message for template parameter)
/cp
2007-08-10 Paolo Carlini <pcarlini@suse.de>
PR c++/17763
* error.c (dump_expr): Consistently use the *_cxx_*
variants of the pretty-print functions.
/testsuite
2007-08-10 Paolo Carlini <pcarlini@suse.de>
PR c++/17763
* g++.dg/other/error16.C: New.
From-SVN: r127335
Francois-Xavier Coudert [Fri, 10 Aug 2007 13:20:46 +0000 (13:20 +0000)]
re PR fortran/32933 (ICE in simplify_subreg with -fdefault-integer-8)
PR fortran/32933
* trans-decl.c (gfc_build_builtin_function_decls): Change
prototype for associated.
* trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert the
result of __builtin_isnan into a boolean.
(gfc_conv_intrinsic_strcmp): Cleanup.
(gfc_conv_associated): Convert the result of the associated
function into a boolean.
* intrinsics/associated.c: Change return type of associated into
a C int.
From-SVN: r127334
Jerry DeLisle [Fri, 10 Aug 2007 12:39:46 +0000 (12:39 +0000)]
re PR fortran/33039 (Read NAMELIST: reads wrong namelist name)
2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33039
* gfortran.dg/namelist_37.f90: New test.
From-SVN: r127333
Jerry DeLisle [Fri, 10 Aug 2007 12:36:01 +0000 (12:36 +0000)]
re PR fortran/33039 (Read NAMELIST: reads wrong namelist name)
2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33039
* io/list_read.c (find_nml_name): Check for a space after a namelist
name match.
From-SVN: r127332
Paolo Carlini [Fri, 10 Aug 2007 08:56:34 +0000 (08:56 +0000)]
re PR c++/22256 (diagnostic shows wrong type for conversion operator)
/cp
2007-08-10 Paolo Carlini <pcarlini@suse.de>
PR c++/22256
* decl.c (check_special_function_return_type): Just error
on return type specified for conversion operator.
/testsuite
2007-08-10 Paolo Carlini <pcarlini@suse.de>
PR c++/22256
* g++.dg/conversion/op3.C: New.
From-SVN: r127331
GCC Administrator [Fri, 10 Aug 2007 00:17:22 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127329
Sandra Loosemore [Thu, 9 Aug 2007 22:42:11 +0000 (18:42 -0400)]
mips.opt (mhard-float, [...]): Make these control TARGET_HARD_FLOAT_ABI and TARGET_SOFT_FLOAT_ABI...
2007-08-09 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/mips/mips.opt (mhard-float, msoft-float): Make these
control TARGET_HARD_FLOAT_ABI and TARGET_SOFT_FLOAT_ABI, rather
than TARGET_HARD_FLOAT and TARGET_SOFT_FLOAT.
* config/mips/mips.h (mips16_hard_float): Delete.
(TARGET_HARD_FLOAT_ABI, TARGET_SOFT_FLOAT_ABI): Delete these
definitions, and replace with....
(TARGET_HARD_FLOAT, TARGET_SOFT_FLOAT): Define.
* config/mips/mips.c (mips16_hard_float): Delete. Replace
all references with (TARGET_MIPS16 && TARGET_HARD_FLOAT_ABI).
(MIPS_MARCH_CONTROLS_SOFT_FLOAT): Update comments.
(override_options): Replace MASK_SOFT_FLOAT references with
MASK_SOFT_FLOAT_ABI. Delete twiddling with MASK_SOFT_FLOAT
and mips16_hard_float when TARGET_MIPS16.
From-SVN: r127325
Tobias Burnus [Thu, 9 Aug 2007 22:02:32 +0000 (00:02 +0200)]
re PR fortran/32987 (TAB in FORMAT: accept extension, warn with -std=f*)
2007-08-09 Tobias Burnus <burnus@net-b.de>
PR fortran/32987
* io.c (format_token): Add FMT_ERROR.
(next_char_not_space): Print error/warning when
'\t' are used in format specifications.
(format_lex): Propagate error.
(check_format): Ditto.
2007-08-09 Tobias Burnus <burnus@net-b.de>
PR fortran/32987
* io/format.c (next_char): Treat '\t' as ' ' in format specification.
2007-08-09 Tobias Burnus <burnus@net-b.de>
PR fortran/32987
* gfortran.dg/fmt_tab_1.f90: New.
* gfortran.dg/fmt_tab_2.f90: New.
From-SVN: r127324
Andrew Pinski [Thu, 9 Aug 2007 21:39:08 +0000 (21:39 +0000)]
re PR c/32796 (internal compiler error: tree check: expected integer_type or enumeral_type or boolean_type or real_type, have pointer_type in int_fits_type_p)
2007-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c/32796
* c-typeck.c (build_binary_op): Check for non pointer types before
calling int_fits_type_p.
2007-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c/32796
* gcc.c-torture/compile/pr32796.c: New test.
From-SVN: r127323
Andrew Pinski [Thu, 9 Aug 2007 21:36:27 +0000 (21:36 +0000)]
re PR middle-end/32813 (ICE for array expression in empty if statement, compiled with -fbounds-check)
2007-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32813
* fold-const.c (omit_one_operand): Return only the ommitted expression
if the result is an empty statement.
(pedantic_omit_one_operand): Likewise.
2007-08-09 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32813
* gfortran.fortran-torture/compile/emptyif-1.f90: New test.
* lib/fortran-torture.exp (fortran-torture): Use TORTURE_OPTIONS instead
of just -O.
From-SVN: r127322
Tobias Burnus [Thu, 9 Aug 2007 21:27:52 +0000 (23:27 +0200)]
re PR fortran/33001 (error with hexadecimal DATA)
2007-08-09 Tobias Burnus <burnus@net-b.de>
PR fortran/33001
* arith.c (arith_error): Point in the error message
to -fno-range-check.
From-SVN: r127321
Daniel Berlin [Thu, 9 Aug 2007 21:13:30 +0000 (21:13 +0000)]
c-typeck.c (readonly_error): Improve error for assignment.
2007-08-09 Daniel Berlin <dberlin@dberlin.org>
* c-typeck.c (readonly_error): Improve error for assignment.
* c-pretty-print.c (pp_c_additive_expression): Handle pointer-plus
expression.
(pp_c_expression): Ditto.
2007-08-09 Daniel Berlin <dberlin@dberlin.org>
* typeck2.c (readonly_error): Handle general expressions.
* error.c (dump_expr): Handle POINTER_PLUS_EXPR
From-SVN: r127320
Simon Baldwin [Thu, 9 Aug 2007 18:30:49 +0000 (18:30 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Removed erroneous break that was preventing simplify_associative_operation()...
* simplify-rtx.c (simplify_binary_operation_1): Removed erroneous
break that was preventing simplify_associative_operation() for xor.
From-SVN: r127319
Sandra Loosemore [Thu, 9 Aug 2007 14:08:54 +0000 (10:08 -0400)]
tm.texi (CLZ_DEFINED_VALUE_AT_ZERO, [...]): Document change in interpretation of value from boolean to tri-state integer.
2007-08-09 Sandra Loosemore <sandra@codesourcery.com>
Nigel Stephens <nigel@mips.com>
gcc/
* doc/tm.texi (CLZ_DEFINED_VALUE_AT_ZERO, CTZ_DEFINED_VALUE_AT_ZERO):
Document change in interpretation of value from boolean to
tri-state integer.
* optabs.c (expand_ffs, expand_ctz): New functions to compute
ffs and ctz using clz.
(expand_unop): Call them.
* config/rs6000/rs6000.h (CLZ_DEFINED_VALUE_AT_ZERO): Fix its
result value.
(CTZ_DEFINED_VALUE_AT_ZERO): Likewise.
* config/mips/mips.h (CLZ_DEFINED_VALUE_AT_ZERO): Likewise, to
enable the new ffs expansion on this target.
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r127318
Jan Hubicka [Thu, 9 Aug 2007 14:01:22 +0000 (16:01 +0200)]
optabs.c (expand_widen_pattern_expr): Use optabs accestors.
* optabs.c (expand_widen_pattern_expr): Use optabs accestors.
(expand_ternary_op): Likewise.
(expand_vec_shift_expr): Likewise.
(expand_binop_directly): Likewise.
(expand_binop): Likewise.
(sign_expand_binop): Likewise.
(expand_twoval_unop): Likewise.
(expand_twoval_binop): Likewise.
(expand_twoval_binop_libfunc): Likewise.
(widen_clz): Likewise.
(widen_bswap): Likewise.
(expand_parity): Likewise.
(expand_unop): Likewise.
(expand_abs_nojump): Likewise.
(expand_copysign): Likewise.
(emit_no_conflict_block): Likewise.
(emit_libcall_block): Likewise.
(can_compare_p): Likewise.
(prepare_cmp_insn): Likewise.
(emit_cmp_and_jump_insn_1): Likewise.
(prepare_float_lib_cmp): Likewise.
(emit_conditional_add): Likewise.
(gen_add2_insn): Likewise.
(have_add2_insn): Likewise.
(gen_sub2_insn): Likewise.
(have_sub2_insn): Likewise.
(can_extend_p): Likewise.
(can_fix_p): Likewise.
(can_float_p): Likewise.
(expand_float): Likewise.
(expand_fix): Likewise.
(expand_sfix_optab): Likewise.
(new_optab): Likewise.
(new_convert_optab): Likewise.
(init_libfuncs): Likewise.
(init_interclass_conv_libfuncs): Likewise.
(init_intraclass_conv_libfuncs): Likewise.
(set_conv_libfunc): Likewise.
(init_optabs): Likewise.
(debug_optab_libfuncs): Likewise.
(gen_cond_trap): Likewise.
* optabs.h (optab_handler, convert_optab_hanlder): New.
* genopinit.c: Update optabs generation table.
* reload.c (find_reloads_address_1): Use optabs accestors.
* builtins.c (expand_builtin_mathfn): Likewise.
(expand_builtin_mathfn_2): Likewise.
(expand_builtin_mathfn_3): Likewise.
(expand_builtin_interclass_mathfn): Likewise.
(expand_builtin_sincos): Likewise.
(expand_builtin_cexpi): Likewise.
(expand_builtin_powi): Likewise.
(expand_builtin_strlen): Likewise.
* dojump.c (do_jump): Likewise.
* expr.c (convert_move): Likewise.
(move_by_pieces): Likewise.
(move_by_pieces_ninsns): Likewise.
(can_store_by_pieces): Likewise.
(store_by_pieces_1): Likewise.
(emit_move_via_integer): Likewise.
(emit_move_complex): Likewise.
(emit_move_ccmode): Likewise.
(emit_move_insn_1): Likewise.
(emit_single_push_insn): Likewise.
(store_constructor): Likewise.
(expand_expr_real_1): Likewise.
(do_store_flag): Likewise.
* ada/misc.c (gnat_compute_largest_alignment): Likewise.
(enumerate_modes): Likewise.
* tree-vectorizer.c (vect_supportable_dr_alignment): Likewise.
(supportable_widening_operation): Likewise.
(supportable_narrowing_operation): Likewise.
* expmed.c (store_bit_field_1): Likewise.
(extract_bit_field_1): Likewise.
(expand_mult_highpart_optab): Likewise.
(expand_smod_pow2): Likewise.
(expand_divmod): Likewise.
(emit_store_flag): Likewise.
* tree-vect-patterns.c
(vect_pattern_recog_1): Likewise.
* tree-ssa-loop-prefetch.c
(nontemporal_store_p): Likewise.
* tree-vect-transform.c (vect_model_reduction_cost): Likewise.
(vect_create_epilog_for_reduction): Likewise.
(vectorizable_reduction): Likewise.
(vectorizable_operation): Likewise.
(vect_strided_store_supported): Likewise.
(vectorizable_store): Likewise.
(vect_strided_load_supported): Likewise.
(vectorizable_load): Likewise.
* combine.c (simplify_comparison): Likewise.
* tree-vect-generic.c
(type_for_widest_vector_mode): Likewise.
(expand_vector_operations_1): Likewise.
* config/spu/spu.c (spu_expand_mov): Likewise.
(spu_emit_vector_compare): Likewise.
* config/rs6000/rs6000.c
(rs6000_emit_vector_compare): Likewise.
* stmt.c (add_case_node): Likewise.
* reload1.c (gen_reload):
From-SVN: r127317
Michael Matz [Thu, 9 Aug 2007 13:56:45 +0000 (13:56 +0000)]
tree.h (fixed_zerop): Declare as taking a const_tree.
* tree.h (fixed_zerop): Declare as taking a const_tree.
* tree.c (fixed_zerop): Take a const_tree.
From-SVN: r127316
Ira Rosen [Thu, 9 Aug 2007 10:56:11 +0000 (10:56 +0000)]
tree-vect-transform.c (vectorizable_store): Remove call to copy_virtual_operands() and call mark_symbols_for_renaming() for...
* tree-vect-transform.c (vectorizable_store): Remove call to
copy_virtual_operands() and call mark_symbols_for_renaming() for
the created vector store.
(vect_setup_realignment): Don't call copy_virtual_operands() and
update_vuses_to_preheader().
(vectorizable_load): Don't call copy_virtual_operands().
(update_vuses_to_preheader): Remove.
From-SVN: r127315
Andrew Haley [Thu, 9 Aug 2007 09:42:57 +0000 (09:42 +0000)]
libjava.exp (libjava_invoke): Log the invocation.
* testsuite/lib/libjava.exp (libjava_invoke): Log the invocation.
From-SVN: r127314
David Daney [Thu, 9 Aug 2007 02:02:37 +0000 (02:02 +0000)]
ffitest.h (ffi_type_mylong): Remove definition.
* testsuite/libffi.call/ffitest.h (ffi_type_mylong): Remove definition.
* testsuite/libffi.call/cls_align_uint16.c (main): Use correct type
specifiers.
* testsuite/libffi.call/nested_struct1.c (main): Ditto.
* testsuite/libffi.call/cls_sint.c (main): Ditto.
* testsuite/libffi.call/nested_struct9.c (main): Ditto.
* testsuite/libffi.call/cls_20byte1.c (main): Ditto.
* testsuite/libffi.call/cls_9byte1.c (main): Ditto.
* testsuite/libffi.call/closure_fn1.c (main): Ditto.
* testsuite/libffi.call/closure_fn3.c (main): Ditto.
* testsuite/libffi.call/return_dbl2.c (main): Ditto.
* testsuite/libffi.call/cls_sshort.c (main): Ditto.
* testsuite/libffi.call/return_fl3.c (main): Ditto.
* testsuite/libffi.call/closure_fn5.c (main): Ditto.
* testsuite/libffi.call/nested_struct.c (main): Ditto.
* testsuite/libffi.call/nested_struct10.c (main): Ditto.
* testsuite/libffi.call/return_ll1.c (main): Ditto.
* testsuite/libffi.call/cls_8byte.c (main): Ditto.
* testsuite/libffi.call/cls_align_uint32.c (main): Ditto.
* testsuite/libffi.call/cls_align_sint16.c (main): Ditto.
* testsuite/libffi.call/cls_20byte.c (main): Ditto.
* testsuite/libffi.call/nested_struct2.c (main): Ditto.
* testsuite/libffi.call/cls_24byte.c (main): Ditto.
* testsuite/libffi.call/nested_struct6.c (main): Ditto.
* testsuite/libffi.call/cls_uint.c (main): Ditto.
* testsuite/libffi.call/cls_12byte.c (main): Ditto.
* testsuite/libffi.call/cls_16byte.c (main): Ditto.
* testsuite/libffi.call/closure_fn0.c (main): Ditto.
* testsuite/libffi.call/cls_9byte2.c (main): Ditto.
* testsuite/libffi.call/closure_fn2.c (main): Ditto.
* testsuite/libffi.call/return_dbl1.c (main): Ditto.
* testsuite/libffi.call/closure_fn4.c (main): Ditto.
* testsuite/libffi.call/closure_fn6.c (main): Ditto.
* testsuite/libffi.call/cls_align_sint32.c (main): Ditto.
From-SVN: r127312
GCC Administrator [Thu, 9 Aug 2007 00:17:46 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127310
Francois-Xavier Coudert [Wed, 8 Aug 2007 23:36:24 +0000 (23:36 +0000)]
re PR fortran/32902 (Document integer KIND of SIZEOF())
PR fortran/32902
* intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
From-SVN: r127307
Chao-ying Fu [Wed, 8 Aug 2007 22:29:12 +0000 (22:29 +0000)]
tree.def (FIXED_POINT_TYPE): New type.
* tree.def (FIXED_POINT_TYPE): New type.
(FIXED_CST): New constant.
(FIXED_CONVERT_EXPR): New expr.
* doc/c-tree.texi (Types): Document FIXED_POINT_TYPE.
(Expressions): Document FIXED_CST and FIXED_CONVERT_EXPR.
* tree.h (struct tree_base): Add saturating_flag.
Remove one bit of spare for saturating_flag.
(NUMERICAL_TYPE_CHECK): Support FIXED_POINT_TYPE.
(NON_SAT_FIXED_POINT_TYPE_P, SAT_FIXED_POINT_TYPE_P,
FIXED_POINT_TYPE_P): Define.
(TYPE_SATURATING): Define.
(TREE_FIXED_CST_PTR, TREE_FIXED_CST): Define.
(struct tree_fixed_cst): New.
(TYPE_IBIT, TYPE_FBIT): Define.
(tree_node): Add fixed_cst.
(enum tree_index): Add new enumeration values of
TI_SAT_SFRACT_TYPE, TI_SAT_FRACT_TYPE, TI_SAT_LFRACT_TYPE,
TI_SAT_LLFRACT_TYPE, TI_SAT_USFRACT_TYPE, TI_SAT_UFRACT_TYPE,
TI_SAT_ULFRACT_TYPE, TI_SAT_ULLFRACT_TYPE, TI_SFRACT_TYPE,
TI_FRACT_TYPE, TI_LFRACT_TYPE, TI_LLFRACT_TYPE, TI_USFRACT_TYPE,
TI_UFRACT_TYPE, TI_ULFRACT_TYPE, TI_ULLFRACT_TYPE,
TI_SAT_SACCUM_TYPE, TI_SAT_ACCUM_TYPE, TI_SAT_LACCUM_TYPE,
TI_SAT_LLACCUM_TYPE, TI_SAT_USACCUM_TYPE, TI_SAT_UACCUM_TYPE,
TI_SAT_ULACCUM_TYPE, TI_SAT_ULLACCUM_TYPE, TI_SACCUM_TYPE,
TI_ACCUM_TYPE, TI_LACCUM_TYPE, TI_LLACCUM_TYPE, TI_USACCUM_TYPE,
TI_UACCUM_TYPE, TI_ULACCUM_TYPE, TI_ULLACCUM_TYPE,
TI_QQ_TYPE, TI_HQ_TYPE,_TYPE, TI_SQ_TYPE, TI_DQ_TYPE, TI_TQ_TYPE,
TI_UQQ_TYPE, TI_UHQ_TYPE, TI_USQ_TYPE, TI_UDQ_TYPE, TI_UTQ_TYPE,
TI_SAT_QQ_TYPE, TI_SAT_HQ_TYPE, TI_SAT_SQ_TYPE, TI_SAT_DQ_TYPE,
TI_SAT_TQ_TYPE, TI_SAT_UQQ_TYPE, TI_SAT_UHQ_TYPE, TI_SAT_USQ_TYPE,
TI_SAT_UDQ_TYPE, TI_SAT_UTQ_TYPE, TI_HA_TYPE, TI_SA_TYPE, TI_DA_TYPE,
TI_TA_TYPE, TI_UHA_TYPE, TI_USA_TYPE, TI_UDA_TYPE, TI_UTA_TYPE,
TI_SAT_HA_TYPE, TI_SAT_SA_TYPE, TI_SAT_DA_TYPE, TI_SAT_TA_TYPE,
TI_SAT_UHA_TYPE, TI_SAT_USA_TYPE, TI_SAT_UDA_TYPE, TI_SAT_UTA_TYPE.
(sat_short_fract_type_node, sat_fract_type_node,
sat_long_fract_type_node, sat_long_long_fract_type_node,
sat_unsigned_short_fract_type_node, sat_unsigned_fract_type_node,
sat_unsigned_long_fract_type_node,
sat_unsigned_long_long_fract_type_node, short_fract_type_node,
fract_type_node, long_fract_type_node, long_long_fract_type_node,
unsigned_short_fract_type_node, unsigned_fract_type_node,
unsigned_long_fract_type_node, unsigned_long_long_fract_type_node,
sat_short_accum_type_node, sat_accum_type_node,
sat_long_accum_type_node, sat_long_long_accum_type_node,
sat_unsigned_short_accum_type_node, sat_unsigned_accum_type_node,
sat_unsigned_long_accum_type_node,
sat_unsigned_long_long_accum_type_node, short_accum_type_node,
accum_type_node, long_accum_type_node, long_long_accum_type_node,
unsigned_short_accum_type_node, unsigned_accum_type_node,
unsigned_long_accum_type_node, unsigned_long_long_accum_type_node,
qq_type_node, hq_type_node, sq_type_node, dq_type_node, tq_type_node,
uqq_type_node, uhq_type_node, usq_type_node, udq_type_node,
utq_type_node, sat_qq_type_node, sat_hq_type_node, sat_sq_type_node,
sat_dq_type_node, sat_tq_type_node, sat_uqq_type_node,
sat_uhq_type_node, sat_usq_type_node, sat_udq_type_node,
sat_utq_type_node, ha_type_node, sa_type_node, da_type_node,
ta_type_node, uha_type_node, usa_type_node, uda_type_node,
uta_type_node, sat_ha_type_node, sat_sa_type_node, sat_da_type_node,
sat_ta_type_node, sat_uha_type_node, sat_usa_type_node,
sat_uda_type_node, sat_uta_type_node): New macro.
(make_fract_type, make_accum_type): Declare.
(make_signed_fract_type, make_unsigned_fract_type,
make_sat_signed_fract_type, make_sat_unsigned_fract_type,
make_signed_accum_type, make_unsigned_accum_type,
make_sat_signed_accum_type, make_sat_unsigned_accum_type,
make_or_reuse_signed_fract_type, make_or_reuse_unsigned_fract_type,
make_or_reuse_sat_signed_fract_type,
make_or_reuse_sat_unsigned_fract_type, make_or_reuse_signed_accum_type,
make_or_reuse_unsigned_accum_type, make_or_reuse_sat_signed_accum_type,
make_or_reuse_sat_unsigned_accum_type): New macro.
(fixed_zerop): Declare.
* defaults.h (SHORT_FRACT_TYPE_SIZE, FRACT_TYPE_SIZE,
LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE,
SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE,
LONG_LONG_ACCUM_TYPE_SIZE): Define.
* treestruct.def: Add TS_FIXED_CST.
* Makefile.in (c-pretty-print.o): Add dependence on fixed-value.h.
(tree.o): Likewise.
(tree-dump.o): Likewise.
(print-tree.o): Likewise.
(tree-pretty-print.o): Likewise.
(fold-const.o): Likewise.
* tree-complex.c (some_nonzerop): Handle FIXED_CST.
* tree-gimple.c (is_gimple_formal_tmp_rhs): Handle FIXED_CST.
(is_gimple_min_invariant): Handle FIXED_CST.
* stor-layout.c (int_mode_for_mode): Handle MODE_FRACT, MODE_UFRACT,
MODE_ACCUM, MODE_UACCUM, MODE_VECTOR_FRACT, MODE_VECTOR_UFRACT,
MODE_VECTOR_ACCUM, MODE_VECTOR_UACCUM.
(layout_type): Handle FIXED_POINT_TYPE.
(make_fract_type, make_accum_type): New functions.
* tree-browser.c (browse_tree): Handle FIXED_POINT_TYPE.
* tree-dump.c (fixed-value.h): New include.
(dump_fixed): New function.
(dequeue_and_dump): Handle FIXED_POINT_TYPE and FIXED_CST.
* tree-inline.c (remap_type_1): Handle FIXED_POINT_TYPE.
(estimate_num_insns_1): Handle FIXED_CST and FIXED_CONVERT_EXPR.
* tree-pretty-print.c (fixed-value.h): New include.
(dump_generic_node): Handle FIXED_POINT_TYPE, FIXED_CST, and
FIXED_CONVERT_EXPR.
* tree-scalar-evolution.c (get_scalar_evolution): Handle FIXED_CST.
* tree-ssa-loop-im.c (for_each_index): Handle FIXED_CST.
* tree-ssa-pre.c (poolify_tree): Handle FIXED_CST.
* tree-ssa-reassoc.c (break_up_subtract_bb): We can do reassociation
for non-saturating fixed-point types.
(reassociate_bb): Likewise.
* emit-rtl.c (fixed-value.h): New include.
(fconst0, fconst1): New array.
(init_emit_once): Initialize fconst0 and fconst1 for fixed-point modes.
* tree-vect-generic.c expand_vector_operation): Support
MODE_VECTOR_FRACT, MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM, and
MODE_VECTOR_UACCUM.
(type_for_widest_vector_mode): Add one parameter for the
saturating flag.
Check scalar FRACT, UFRACT, ACCUM, and UACCUM mode to select their
vector mode.
Pass the satp parameter to type_for_mode for fixed-point types.
(expand_vector_operations_1): Pass the saturating flag to
type_for_widest_vector_mode.
Support MODE_VECTOR_FRACT, MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM,
and MODE_VECTOR_UACCUM.
* tree-vect-transform.c (vect_is_simple_cond): Support FIXED_CST.
(vectorizable_condition): Likewise.
* tree.c (fixed-value.h): New include.
(tree_code_size): Support FIXED_CST.
(build_fixed): New function.
(build_one_cst): Support FIXED_POINT_TYPE for accum types.
(fixed_zerop): New function.
(tree_node_structure): Support FIXED_CST.
(type_contains_placeholder_1): Support FIXED_POINT_TYPE.
(build_type_attribute_qual_variant): Handle FIXED_POINT_TYPE.
(type_hash_eq): Handle FIXED_POINT_TYPE.
(simple_cst_equal): Support FIXED_CST.
(iterative_hash_expr): Handle FIXED_CST.
(get_unwidened): Make sure type is not FIXED_POINT_TYPE.
(get_narrower): Likewise.
(variably_modified_type_p): Handle FIXED_POINT_TYPE.
(make_or_reuse_fract_type, make_or_reuse_accum_type): New functions.
(build_common_tree_nodes_2): Use MAKE_FIXED_TYPE_NODE_FAMILY and
MAKE_FIXED_MODE_NODE macros to initialize fixed-point type
nodes.
(build_vector_type_for_mode): Handle MODE_VECTOR_FRACT,
MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM, MODE_VECTOR_UACCUM.
(initializer_zerop): Support FIXED_CST.
(walk_tree): Handle FIXED_CST and FIXED_POINT_TYPE.
* dwarf2out.c (base_type_die): Use DW_ATE_signed_fixed or
DW_ATE_unsigned_fixed to describe FIXED_POINT_TYPE.
(is_base_type): Handle FIXED_POINT_TYPE.
(add_type_attribute): Handle FIXED_POINT_TYPE.
(gen_type_die_with_usage): Handle FIXED_POINT_TYPE.
* print-tree.c (fixed-value.h): New include.
(print_node_brief): Support FIXED_CST.
(print_node): Support FIXED_POINT_TYPE and FIXED_CST.
* c-pretty-print.c (fixed-value.h): New include.
(pp_c_type_specifier): Handle FIXED_POINT_TYPE. Need to pass
TYPE_SATURATING to c_common_type_for_mode for fixed-point modes.
(pp_c_direct_abstract_declarator): Handle FIXED_POINT_TYPE.
Support fixed-point types for inner items in VECTOR_TYPE.
(pp_c_direct_declarator): Likewise.
(pp_c_declarator): Likewise.
(pp_c_fixed_constant): New function.
(pp_c_constant): Handle FIXED_CST.
(pp_c_primary_expression): Likewise.
(pp_c_expression): Likewise.
* fold-const.c (fixed-value.h): New include.
(negate_expr_p): Return true for FIXED_CST.
(fold_negate_expr): Support FIXED_CST.
(split_tree): Support FIXED_CST.
(const_binop): Support FIXED_CST.
(fold_convert_const_int_from_fixed): New function to convert from
fixed to int.
(fold_convert_const_real_from_fixed): New function to convert from
fixed to real.
(fold_convert_const_fixed_from_fixed): New function to convert from
fixed to another fixed.
(fold_convert_const_fixed_from_int): New function to convert from
int to fixed.
(fold_convert_const_fixed_from_real): New function to convert from
real to fixed.
(fold_convert_const): Support conversions from fixed to int, from
fixed to real, from fixed to fixed, from int to fixed, and from real
to fixed.
(fold_convert): Support FIXED_CST and FIXED_POINT_TYPE.
(operand_equal_p): Support FIXED_CST.
(make_range): For fixed-point modes, we need to pass the
saturating flag as the 2nd parameter.
(tree_swap_operands_p): Handle FIXED_CST.
(fold_plusminus_mult_expr): For fract modes, we cannot generate
constant 1.
(fold_unary): Support FIXED_CONVERT_EXPR.
(fold_binary): Handle FIXED_CST.
Make sure the type is not saturating, before associating operations.
Ex: A + B + C, A * B * C, (A1 * C1) +/- (A2 * C2).
(tree_expr_nonnegative_warnv_p): Handle FIXED_CST.
(fold_negate_const): Support FIXED_CST.
(fold_relational_const): Support FIXED_CST.
* gimplify.c (omp_firstprivatize_type_sizes): Handle FIXED_POINT_TYPE.
(gimplify_expr): Handle FIXED_CST.
(gimplify_type_sizes): Handle FIXED_POINT_TYPE.
* ipa-prop.c (ipa_callsite_compute_param): Support FIXED_CST.
* ipa-type-escape.c (type_to_consider): Handle FIXED_POINT_TYPE.
* doc/tm.texi (Type Layout): Document SHORT_FRACT_TYPE_SIZE,
FRACT_TYPE_SIZE, LONG_FRACT_TYPE_SIZE, LONG_LONG_FRACT_TYPE_SIZE,
SHORT_ACCUM_TYPE_SIZE, ACCUM_TYPE_SIZE, LONG_ACCUM_TYPE_SIZE,
LONG_LONG_ACCUM_TYPE_SIZE.
* dbxout.c (dbxout_type): Handle FIXED_POINT_TYPE.
* c-aux-info.c (gen_type): Handle FIXED_POINT_TYPE.
* tree-sra.c (is_sra_scalar_type): Support FIXED_POINT_TYPE.
* expmed.c (extract_bit_field): Support MODE_FRACT, MODE_UFRACT,
MODE_ACCUM, and MODE_UACCUM.
* tree-vectorizer.c (vect_is_simple_reduction): Check for saturating
fixed-point types to disable reduction.
* explow.c (promote_mode): Support FIXED_POINT_TYPE.
From-SVN: r127306
Samuel Thibault [Wed, 8 Aug 2007 22:24:40 +0000 (22:24 +0000)]
natVMInetAddressPosix.cc (java::net::VMInetAddress::getLocalHostname): Allocate buffer dynamically.
2007-08-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
* java/net/natVMInetAddressPosix.cc
(java::net::VMInetAddress::getLocalHostname) [!MAXHOSTNAMELEN]:
Allocate buffer dynamically.
From-SVN: r127305
David Edelsohn [Wed, 8 Aug 2007 19:33:24 +0000 (19:33 +0000)]
x-rs6000: New file.
* config/rs6000/x-rs6000: New file.
* config/rs6000/darwin.h (CC1_SPEC): Add cc1_cpu.
* config/rs6000/rs6000.h (EXTRA_SPECS): Add cc1_cpu.
(EXTRA_SPEC_FUNCTIONS): Define.
(HAVE_LOCAL_CPU_DETECT): Define.
(CC1_CPU_SPEC): Define.
* config/rs6000/driver-rs6000.c: New file.
* config/rs6000/aix.h (CC1_SPEC): Define.
* config/rs6000/sysv4.h (CC1_SPEC): Add cc1_cpu.
* config.host: Add x-rs6000 to host_xmake_file if host and target
are rs6000 or powerpc.
From-SVN: r127304
Paolo Bonzini [Wed, 8 Aug 2007 16:05:51 +0000 (18:05 +0200)]
t-crtstuff (CRTSTUFF_T_CFLAGS): Use +=.
2007-08-08 Paolo Bonzini <paolo.bonzini@lu.unisi.ch>
* config/i386/t-crtstuff (CRTSTUFF_T_CFLAGS): Use +=.
From-SVN: r127301
Richard Sandiford [Wed, 8 Aug 2007 15:57:48 +0000 (15:57 +0000)]
invoke.texi (-mcode-readable): Document.
gcc/
2007-08-08 Richard Sandiford <richard@codesourcery.com>
Sandra Loosemore <sandra@codesourcery.com>
Chao-ying Fu <fu@mips.com>
Nigel Stephens <nigel@mips.com>
David Ung <davidu@mips.com>
* doc/invoke.texi (-mcode-readable): Document.
* config/mips/mips.opt (mcode-readable): New option.
* config/mips/mips-protos.h (SYMBOL_32_HIGH): New symbol type.
* config/mips/mips.h (mips_code_readable_setting): New enum.
(mips_code_readable): Declare.
(TARGET_MIPS16_TEXT_LOADS, TARGET_MIPS16_PCREL_LOADS): New macros.
(TARGET_MIPS16_SHORT_JUMP_TABLES): New macro.
(JUMP_TABLES_IN_TEXT_SECTION): Use it.
(CASE_VECTOR_MODE, CASE_VECTOR_PC_RELATIVE): Likewise. Remove
boiler-plate comments.
(ASM_OUTPUT_ADDR_DIFF_ELT): Use TARGET_MIPS16_SHORT_JUMP_TABLES.
* config/mips/mips.c (mips_code_readable): New variable.
(mips_classify_symbol): Only return SYMBOL_PC_RELATIVE for
MIPS16 labels if TARGET_MIPS16_SHORT_JUMP_TABLES. Use both the
context and -mcode-readable setting to restrict the use of
SYMBOL_PC_RELATIVE for MIPS16 constant pool references.
Only return TARGET_FORCE_TO_MEM if PC-relative loads are allowed.
(mips_symbolic_constant_p): Handle SYMBOL_32_HIGH.
(mips_blocks_for_constant_p): Only return false for
TARGET_MIPS16_PCREL_LOADS.
(mips_symbol_insns_1): Treat HIGHs as 2 extended instructions
for MIPS16. Handle SYMBOL_32_HIGH.
(mips_const_insns): Allow HIGHs for MIPS16 too.
(mips_unspec_address_offset): New function, split out from...
(mips_unspec_address): ...here.
(mips_output_move): Handle MIPS16 HIGH moves. Use "li" to load
16-bit symbolic constants. Assert approropiate conditions for
using the "la" and "dla" macros.
(mips_handle_option): Handle -mcode-readable=.
(override_options): Use %hi/%lo relocations for TARGET_MIPS16 too.
Set up mips_lo_relocs[SYMBOL_32_HIGH].
(mips_strip_unspec_address): New function, split out from...
(print_operand_reloc): ...here.
(print_operand): Pass constants through mips_strip_unspec_address.
(print_operand_address): Likewise.
(mips_output_mi_thunk): Remove guard of mips16_lay_out_constants.
(mips_select_rtx_section): Remove MIPS16 handling.
(mips16_gp_pseudo_reg): Check currently_expanding_to_rtl.
(mips16_rewrite_pool_refs): Wrap the labels in an address UNSPEC.
(mips16_lay_out_constants): Do nothing unless
TARGET_MIPS16_PCREL_LOADS.
(mips_avoid_hazards): Remove guard of mips16_lay_out_constants.
* config/mips/mips.md: Split HIGHs for MIPS16.
(tablejump): Use TARGET_MIPS16_SHORT_JUMP_TABLES.
gcc/testsuite/
* gcc.target/mips/code-readable-1.c: New test.
* gcc.target/mips/code-readable-2.c: Likewise.
* gcc.target/mips/code-readable-3.c: Likewise.
Co-Authored-By: Chao-ying Fu <fu@mips.com>
Co-Authored-By: David Ung <davidu@mips.com>
Co-Authored-By: Nigel Stephens <nigel@mips.com>
Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r127300
Richard Sandiford [Wed, 8 Aug 2007 15:46:08 +0000 (15:46 +0000)]
mips-protos.h (mips_emit_move): Declare.
gcc/
* config/mips/mips-protos.h (mips_emit_move): Declare.
* config/mips/mips.c (mips_emit_move): New function.
(mips_force_temporary): Use mips_emit_move instead of emit_move_insn.
(mips_legitimize_const_move): Likewise.
(mips_legitimize_move): Likewise.
(mips_split_64bit_move): Likewise.
(mips_restore_gp): Likewise.
(mips_load_call_address): Likewise.
(mips_emit_fcc_reload): Likewise.
(mips_set_return_address): Likewise.
(mips_block_move_straight): Likewise.
(mips_block_move_loop): Likewise.
(mips_setup_incoming_varargs): Likewise.
(mips_save_reg): Likewise.
(mips_expand_prologue): Likewise.
(mips_restore_reg): Likewise.
(mips_expand_epilogue): Likewise.
(mips_output_mi_thunk): Likewise.
(build_mips16_call_stub): Likewise.
(mips_builtin_branch_and_move): Likewise.
* config/mips/mips.h (INITIALIZE_TRAMPOLINE): Likewise.
* config/mips/mips.md (fixuns_truncdfsi2): Likewise.
(fixuns_truncdfdi2): Likewise.
(fixuns_truncsfsi2): Likewise.
(fixuns_truncsfdi2): Likewise.
(loadgp_absolute): Likewise.
(builtin_setjmp_setup): Likewise.
(builtin_longjmp): Likewise.
(untyped_call): Likewise.
From-SVN: r127299
Richard Sandiford [Wed, 8 Aug 2007 15:40:27 +0000 (15:40 +0000)]
mips-protos.h (mips_split_symbol): Add a mode and an "rtx *" argument.
gcc/
* config/mips/mips-protos.h (mips_split_symbol): Add a mode and
an "rtx *" argument. Return a bool.
* config/mips/mips.c (mips_split_symbol): Accept arbitrary source
values and return true if they can be split. Take the same kind of
mode argument as mips_symbol_insns. Add a "lo_sum_out" parameter
and store the lo_sum there if nonnull. Use the symbol type to
determine whether a $gp or HIGH is needed.
(mips_legitimize_address): Update call to mips_split_symbol and
simplify accordingly.
(mips_legitimize_const_move): Likewise.
* config/mips/mips.md: In the combine define_split,
check mips_split_symbol instead of splittable_symbolic_operand.
Update use of mips_split_symbol in the generator code.
* config/mips/predicates.md (splittable_symbolic_operand): Delete.
From-SVN: r127298
Richard Sandiford [Wed, 8 Aug 2007 15:31:00 +0000 (15:31 +0000)]
mips.c (mips_symbolic_address_p): Delete.
gcc/
* config/mips/mips.c (mips_symbolic_address_p): Delete.
(mips_symbol_insns_1): New function, split out from...
(mips_symbol_insns): ...here. Take a mode argument. Treat loads
and stores separately from load addresses.
(mips_classify_address): Replace uses of mips_symbolic_address_p
with uses of mips_symbol_insns.
(mips_address_insns): Update calls to mips_symbol_insns.
(mips_const_insns): Likewise.
(mips_legitimize_address): Likewise.
From-SVN: r127297
Richard Sandiford [Wed, 8 Aug 2007 15:26:03 +0000 (15:26 +0000)]
mips-protos.h (SYMBOL_FORCE_TO_MEM): New symbol type.
gcc/
* config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): New symbol type.
* config/mips/mips.c (mips_classify_symbol): Skip TARGET_ABICALLS
block for locally-binding symbols if TARGET_ABSOLUTE_ABICALLS.
Return SYMBOL_FORCE_TO_MEM instead of SYMBOL_ABSOLUTE for
non-call contexts if TARGET_MIPS16.
(mips_symbolic_constant_p): Handle SYMBOL_FORCE_TO_MEM.
(mips_symbolic_address_p): Likewise. Remove special TARGET_MIPS16
code for SYMBOL_ABSOLUTE.
(mips_symbol_insns): Likewise.
From-SVN: r127296
Richard Sandiford [Wed, 8 Aug 2007 15:22:16 +0000 (15:22 +0000)]
mips-protos.h (mips_symbol_context): New enumeration.
gcc/
* config/mips/mips-protos.h (mips_symbol_context): New enumeration.
* config/mips/mips.c (mips_classify_symbol): Take a context argument.
(mips_symbolic_constant_p): Likewise. Update the call to
mips_classify_symbol.
(mips_classify_address): Update the calls to mips_symbolic_constant_p.
(mips_const_insns): Likewise. Update the call to mips_classify_symbol.
(mips_legitimize_address): Update the call to mips_symbolic_constant_p.
(print_operand_reloc): Add a context argument. Update the call to
mips_symbolic_constant_p.
(print_operand): Update the calls to print_operand_reloc.
(print_operand_address): Use print_operand_reloc rather than
print_operand.
(mips_rewrite_small_data_p): Add a context argument. Update the call
to mips_symbolic_constant_p.
(mips_small_data_pattern_1): Make DATA the containing mem.
Update the call to mips_rewrite_small_data_p.
(mips_rewrite_small_data_1): Likewise.
(mips_use_anchors_for_symbol_p): Update the call to
mips_symbolic_constant_p.
* config/mips/predicates.md (const_call_insn_operand): Likewise.
(splittable_symbolic_operand): Likewise.
(move_operand): Likewise.
(absolute_symbolic_operand): Likewise.
(got_disp_operand): Likewise.
(got_page_ofst_operand): Likewise.
From-SVN: r127295
Richard Sandiford [Wed, 8 Aug 2007 15:06:05 +0000 (15:06 +0000)]
mips-protos.h (SYMBOL_GENERAL): Rename to...
gcc/
* config/mips/mips-protos.h (SYMBOL_GENERAL): Rename to...
(SYMBOL_ABSOLUTE): ...this.
(SYMBOL_SMALL_DATA): Rename to...
(SYMBOL_GP_RELATIVE): ...this.
(SYMBOL_CONSTANT_POOL): Rename to...
(SYMBOL_PC_RELATIVE): ...this.
* config/mips/mips.c (mips_classify_symbol, mips_symbolic_constant_p)
(mips_symbolic_address_p, mips_symbol_insns, override_options)
(mips_rewrite_small_data_p, mips_use_anchors_for_symbol_p): Update
after above changes.
* config/mips/predicates.md (const_call_insn_operand): Likewise.
(general_symbolic_operand): Rename to...
(absolute_symbolic_operand): ...this.
* config/mips/mips.md: Update after above changes.
From-SVN: r127294
Vladimir Yanovsky [Wed, 8 Aug 2007 12:21:37 +0000 (12:21 +0000)]
Remove profitability check
Co-Authored-By: Revital Eres <eres@il.ibm.com>
From-SVN: r127293
Dalibor Topic [Wed, 8 Aug 2007 08:00:32 +0000 (08:00 +0000)]
re PR classpath/32844 (EnumSet causes code to be miscompiled)
2007-07-31 Dalibor Topic <robilad@kaffe.org>
PR 32844
* java/util/EnumSet.java:
Made class abstract per API spec.
(size, iterator, add, addAll, clear, contains,
containsAll, remove, removeAll, retainAll) Moved
into an anonymous inner class in of(T).
(allOf, noneOf, copyOf, of, range) Made more
implementation independent.
(of(T)) return an instance of an anonymous class
implementing EmptySet.
From-SVN: r127291
Samuel Thibault [Wed, 8 Aug 2007 06:35:17 +0000 (06:35 +0000)]
gnu.h (STARTFILE_SPEC): Use gcrt0.o in profile mode, add -profile option, add pie support.
2007-08-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
* gcc/config/i386/gnu.h (STARTFILE_SPEC): Use gcrt0.o in profile mode, add
-profile option, add pie support.
(ENDFILE_SPEC): New spec.
* gcc/config/gnu.h (LIB_SPEC): Add -profile option.
From-SVN: r127290
Samuel Thibault [Wed, 8 Aug 2007 06:34:06 +0000 (06:34 +0000)]
gnu.h (CPP_SPEC): Add -pthread option.
2007-08-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
* gcc/config/i386/gnu.h (CPP_SPEC): Add -pthread option.
* gcc/config/gnu.h (LIB_SPEC): Likewise.
From-SVN: r127289
GCC Administrator [Wed, 8 Aug 2007 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127287
Ian Lance Taylor [Tue, 7 Aug 2007 23:44:59 +0000 (23:44 +0000)]
common.opt (finstrument-functions-exclude-function-list): New option.
./: * common.opt (finstrument-functions-exclude-function-list): New
option.
(finstrument-functions-exclude-file-list): New option.
* opts.c (char_p): Define and DEF_VEC.
(flag_instrument_functions_exclude_functions): New static
variable.
(flag_instrument_functions_exclude_files): New static variable.
(add_instrument_functions_exclude_list): New static function.
(flag_instrument_functions_exclude_p): New function.
(common_handle_option): Handle new options.
* flags.h (flag_instrument_functions_exclude_p): Declare.
* gimplify.c (gimplify_function_tree): Call
flag_instrument_functions_exclude_p.
* doc/invoke.texi (Option Summary): Mention new options.
(Code Gen Options): Document new options.
testsuite/:
* gcc.dg/instrument-1.c: New test.
* gcc.dg/instrument-2.c: New test.
* gcc.dg/instrument-3.c: New test.
From-SVN: r127284
Ian Lance Taylor [Tue, 7 Aug 2007 22:43:55 +0000 (22:43 +0000)]
re PR rtl-optimization/32776 (ICE RTL check: expected code 'reg', have 'concatn' in rhs_regno, at rtl.h:972)
PR rtl-optimization/32776
* lower-subreg.c (resolve_clobber): Call resolve_reg_notes.
(resolve_use): Likewise.
(decompose_multiword_subregs): Remove "changed" local variable.
From-SVN: r127282
Steve Ellcey [Tue, 7 Aug 2007 22:34:17 +0000 (22:34 +0000)]
* gfortran.dg/c_kind_params.f90: Check for stdint.h.
From-SVN: r127281
Jim Blandy [Tue, 7 Aug 2007 21:05:16 +0000 (21:05 +0000)]
Makefile.am (libstdc++-symbol.ver): Make sure the build tree copy of libstdc++-symbol.ver is writeable.
* src/Makefile.am (libstdc++-symbol.ver): Make
sure the build tree copy of libstdc++-symbol.ver is writeable.
* src/Makefile.in: Regenerated.
From-SVN: r127279
Dorit Nuzman [Tue, 7 Aug 2007 19:13:27 +0000 (19:13 +0000)]
vect-28.c: Fix test to not expect peeling on !vector_alignment_reachable targets.
* gcc.dg/vect/vect-28.c: Fix test to not expect peeling on
!vector_alignment_reachable targets.
* gcc.dg/vect/vect-33.c: Likewise.
* gcc.dg/vect/vect-42.c: Likewise.
* gcc.dg/vect/vect-44.c: Likewise.
* gcc.dg/vect/vect-50.c: Likewise.
* gcc.dg/vect/vect-70.c: Likewise.
* gcc.dg/vect/vect-71.c: Likewise.
* gcc.dg/vect/vect-87.c: Likewise.
* gcc.dg/vect/vect-88.c: Likewise.
* gcc.dg/vect/vect-91.c: Likewise.
* gcc.dg/vect/vect-93.c: Likewise.
* gcc.dg/vect/vect-96.c: Likewise.
* gcc.dg/vect/no-section-anchors-69.c: Likewise.
* gcc.dg/vect/section-anchors-69.c: Likewise.
* gcc.dg/vect/pr25413.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-33.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-76b.c: Likewise.
* gfortran.dg/vect-2.f90: Likewise.
* gfortran.dg/vect-3.f90: Likewise.
* gfortran.dg/vect-4.f90: Likewise.
* gfortran.dg/vect-5.f90: Likewise.
* lib/target-supports.exp (check_effective_target_natural_alignment):
Return false for darwin.
(check_effective_target_vector_alignment_reachable_for_double): New.
From-SVN: r127276
Carlos O'Donell [Tue, 7 Aug 2007 18:33:16 +0000 (18:33 +0000)]
configure.ac: Define HAVE_GNU_AS if $gas_flag is yes.
2007-08-07 Carlos O'Donell <carlos@codesourcery.com>
* configure.ac: Define HAVE_GNU_AS if $gas_flag is yes.
* configure: Regenerate.
* config.in: Regenerate.
* gcc.c [HAVE_GNU_AS]: Add "%{v} %{w:-W} %{I*} " to asm_options
spec string.
From-SVN: r127275
Ian Lance Taylor [Tue, 7 Aug 2007 16:48:00 +0000 (16:48 +0000)]
lower-subreg.c (resolve_clobber): If the clobber has a LIBCALL note, just delete the insn.
* lower-subreg.c (resolve_clobber): If the clobber has a LIBCALL
note, just delete the insn.
From-SVN: r127273
Andreas Schwab [Tue, 7 Aug 2007 15:31:56 +0000 (15:31 +0000)]
re PR bootstrap/32973 (bootstrap failure with indented structure declaration in macro)
PR bootstrap/32973
* gengtype-lex.l: Ignore backslash/newline pair while scanning a
struct definition.
From-SVN: r127272
Andrew Haley [Tue, 7 Aug 2007 12:52:47 +0000 (12:52 +0000)]
sysv.S (ffi_closure_raw_SYSV): Fix typo in previous checkin.
* src/x86/sysv.S (ffi_closure_raw_SYSV): Fix typo in previous
checkin.
From-SVN: r127271
Andreas Krebbel [Tue, 7 Aug 2007 10:43:11 +0000 (10:43 +0000)]
lower-subreg.c (resolve_subreg_use): Remove assertion.
2007-08-07 Andreas Krebbel <krebbel1@de.ibm.com>
* lower-subreg.c (resolve_subreg_use): Remove assertion.
(find_decomposable_shift_zext, resolve_shift_zext): New functions.
(decompose_multiword_subregs): Use the functions above to decompose
multiword shifts and zero-extends.
2007-08-07 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/multiword-1.c: New testcase.
From-SVN: r127270
Rask Ingemann Lambertsen [Tue, 7 Aug 2007 10:22:08 +0000 (12:22 +0200)]
sourcebuild.texi (Test Directives): Fix "compile" and "assemble" descriptions which were swapped.
* doc/sourcebuild.texi (Test Directives): Fix "compile" and
"assemble" descriptions which were swapped.
From-SVN: r127269
Daniel Franke [Tue, 7 Aug 2007 10:18:48 +0000 (06:18 -0400)]
namelist_33.f90: Improved tests, adjusted error messages.
2007-08-07 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/namelist_33.f90: Improved tests, adjusted error
messages.
* gfortran.dg/namelist_36.f90: New test.
From-SVN: r127268
Rask Ingemann Lambertsen [Tue, 7 Aug 2007 10:09:59 +0000 (12:09 +0200)]
simd-4.c (__ev_convert_s64)(main): Use int32_t for 32-bit integer.
* gcc.c-torture/execute/simd-4.c (__ev_convert_s64)(main): Use
int32_t for 32-bit integer. Use int64_t for 64-bit integer.
From-SVN: r127267
Kaz Kojima [Tue, 7 Aug 2007 01:41:27 +0000 (01:41 +0000)]
type-generic-1.C: Add -mieee for sh.
* g++.dg/torture/type-generic-1.C: Add -mieee for sh.
* gcc.dg/torture/type-generic-1.c: Likewise.
From-SVN: r127266
Christopher D. Rickett [Tue, 7 Aug 2007 00:27:25 +0000 (00:27 +0000)]
re PR fortran/32732 ([Bind C] Character scalars are passed as arrays)
2007-08-06 Christopher D. Rickett <crickett@lanl.gov>
PR fortran/32732
* trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
actual arg expressions for scalar characters passed by-value to
bind(c) routines.
(gfc_conv_function_call): Call gfc_conv_scalar_char_value.
* trans.h: Add prototype for gfc_conv_scalar_char_value.
* trans-decl.c (generate_local_decl): Convert by-value character
dummy args of bind(c) procedures using
gfc_conv_scalar_char_value.
From-SVN: r127265
GCC Administrator [Tue, 7 Aug 2007 00:17:33 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127263
Chao-ying Fu [Mon, 6 Aug 2007 23:18:57 +0000 (23:18 +0000)]
fixed-value.h: New file.
* fixed-value.h: New file.
* fixed-value.c: New file.
* Makefile.in (OBJS-common): Add fixed-value.o.
(fixed-value.o): New rule.
(GTFILES): Add fixed-value.h.
* double-int.c (double_int_scmp): We should use unsigned HOST_WIDE_INT
to compare a.low and b.low.
* gengtype.c (main): Handle FIXED_VALUE_TYPE type as scalar typedef.
From-SVN: r127260
Francois-Xavier Coudert [Mon, 6 Aug 2007 23:02:38 +0000 (23:02 +0000)]
re PR fortran/30947 (intrinsic: ALARM)
PR fortran/30947
* iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
with the kind of the STATUS argument.
* intrinsics/signal.c: Create specific versions of alarm_sub and
alarm_sub_int according to the integer kind of the last argument.
* gfortran.map (GFORTRAN_1.0): Remove _gfortran_alarm_sub and
_gfortran_alarm_sub_int, add _gfortran_alarm_sub_i4,
_gfortran_alarm_sub_i8, _gfortran_alarm_sub_int_i4 and
_gfortran_alarm_sub_int_i8.
From-SVN: r127259
François-Xavier Coudert [Mon, 6 Aug 2007 22:45:35 +0000 (22:45 +0000)]
* ChangeLog: Correct PR number.
From-SVN: r127258
Francois-Xavier Coudert [Mon, 6 Aug 2007 22:44:27 +0000 (22:44 +0000)]
re PR fortran/30933 (intrinsic: EXIT)
PR fortran/30933
* intrinsic.c (add_functions): Fix name of argument to CHDIR.
From-SVN: r127257
Francois-Xavier Coudert [Mon, 6 Aug 2007 22:29:24 +0000 (22:29 +0000)]
re PR fortran/30933 (intrinsic: EXIT)
PR fortran/30933
* iresolve.c (gfc_resolve_exit): Convert argument to default
integer kind.
From-SVN: r127256
Dan Hipschman [Mon, 6 Aug 2007 22:02:56 +0000 (15:02 -0700)]
method.c (use_thunk): Use DECL_NAME instead of DECL_RTL to access function name.
2007-08-06 Dan Hipschman <dsh@google.com>
* method.c (use_thunk): Use DECL_NAME instead of DECL_RTL to
access function name.
From-SVN: r127255
Andrew Pinski [Mon, 6 Aug 2007 21:54:52 +0000 (21:54 +0000)]
20070522-1.c: Move to ...
2007-08-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
* gcc.c-torture/
20070522-1.c: Move to ...
* gcc.c-torture/compile/
20070522-1.c: Here.
From-SVN: r127254
Daniel Franke [Mon, 6 Aug 2007 20:53:19 +0000 (16:53 -0400)]
resolve.c (derived_pointer): Removed, replaced callers by access to appropiate attribute bit.
2007-08-06 Daniel Franke <franke.daniel@gmail.com>
* resolve.c (derived_pointer): Removed, replaced callers by access
to appropiate attribute bit.
(derived_inaccessable): Shortcut recursion depth.
(resolve_fl_namelist): Fixed checks for private components in namelists.
From-SVN: r127253
Francois-Xavier Coudert [Mon, 6 Aug 2007 20:47:17 +0000 (20:47 +0000)]
re PR fortran/29828 ([F2003] MIN and MAX with character variables)
PR fortran/29828
* trans.h (gfor_fndecl_string_minmax): New prototype.
* trans-decl.c (gfor_fndecl_string_minmax): New variable.
(gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
* check.c (gfc_check_min_max): Allow for character arguments.
* trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
(gfc_conv_intrinsic_function): Add special case for MIN and MAX
intrinsics with character arguments.
* simplify.c (simplify_min_max): Add simplification for character
arguments.
* intrinsics/string_intrinsics.c (string_minmax): New function
and prototype.
* gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
* gfortran.dg/minmax_char_1.f90: New test.
* gfortran.dg/minmax_char_2.f90: New test.
* gfortran.dg/min_max_optional_4.f90: New test.
From-SVN: r127252
H.J. Lu [Mon, 6 Aug 2007 19:58:11 +0000 (19:58 +0000)]
re PR target/31868 (Non-Linux DWARF EH x86-64 targets have broken crtend.o)
2007-08-06 H.J. Lu <hongjiu.lu@intel.com>
Daniel Jacobowitz <dan@codesourcery.com>
PR target/31868
* config.gcc (x86_64-*-freebsd*): Add i386/t-crtstuff to
tmake_file.
(x86_64-*-netbsd*): Likewise.
(x86_64-*-linux*): Likewise.
(x86_64-*-kfreebsd*-gnu): Likewise.
(x86_64-*-knetbsd*-gnu): Likewise.
(i[34567]86-*-solaris2.1[0-9]*): Likewise.
* config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Removed.
* config/i386/t-crtstuff (CRTSTUFF_T_CFLAGS): Update comments.
Add -fno-asynchronous-unwind-tables.
* config/t-freebsd (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
* config/t-libc-ok (CRTSTUFF_T_CFLAGS_S): Likewise.
* config/t-lynx (CRTSTUFF_T_CFLAGS_S): Likewise.
* config/t-netbsd (CRTSTUFF_T_CFLAGS_S): Likewise.
* config/t-svr4 (CRTSTUFF_T_CFLAGS_S): Likewise.
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r127248
Steve Ellcey [Mon, 6 Aug 2007 18:04:33 +0000 (18:04 +0000)]
ia64.c (ia64_c_mode_for_suffix): New.
* config/ia64/ia64.c (ia64_c_mode_for_suffix): New.
(TARGET_C_MODE_FOR_SUFFIX): New.
From-SVN: r127247
Steve Ellcey [Mon, 6 Aug 2007 17:03:13 +0000 (17:03 +0000)]
* config/ia64/div.md (m2subrf4_cond): Change 'g' to 'G'.
From-SVN: r127246
Steve Ellcey [Mon, 6 Aug 2007 16:51:43 +0000 (16:51 +0000)]
* config/ia64/ia64.h (MODES_TIEABLE_P): Fix typo.
From-SVN: r127245
H.J. Lu [Mon, 6 Aug 2007 14:44:02 +0000 (07:44 -0700)]
i386.md: Check TARGET_ macros and optimize_size before checking function returns in...
2007-08-06 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.md: Check TARGET_ macros and optimize_size
before checking function returns in conditional expressions.
From-SVN: r127243
Andrew Pinski [Mon, 6 Aug 2007 14:17:59 +0000 (07:17 -0700)]
re PR libobjc/30731 (Warnings while compiling libobjc with the uleb128 changes)
2007-08-06 Andrew Pinski <pinskia@gmail.com>
PR libobjc/30731
* exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
of _Unwind_Word for variables which are used in
read_uleb128/read_sleb128.
(PERSONALITY_FUNCTION): Likewise.
From-SVN: r127242
Andrew Haley [Mon, 6 Aug 2007 12:48:07 +0000 (12:48 +0000)]
re PR testsuite/32843 (libffi.call/return_sc.c)
PR testsuite/32843
* src/x86/sysv.S (ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8,
FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32,
FFI_TYPE_SINT32.
From-SVN: r127241
Francois-Xavier Coudert [Mon, 6 Aug 2007 12:17:56 +0000 (12:17 +0000)]
nan_1.f90: Rename module into aux2 to avoid cygwin hanging on the testcase.
* gfortran.dg/nan_1.f90: Rename module into aux2 to avoid cygwin
hanging on the testcase.
From-SVN: r127240
Alfred Minarik [Mon, 6 Aug 2007 11:10:19 +0000 (13:10 +0200)]
re PR pch/13676 (GCC failes to recognize files ending in .hpp as headers to be precompiled)
PR pch/13676
* doc/invoke.texi: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header.
cp:
* lang-specs.h: Add .hp, .hxx, .hpp, .h, .HPP, .tcc as c++ header.
* g++spec.c (lang_specific_driver): Check them.
From-SVN: r127239
Paolo Carlini [Mon, 6 Aug 2007 09:18:39 +0000 (09:18 +0000)]
re PR c++/19532 (cp/pt.c mentions a function that has been removed.)
2007-08-06 Paolo Carlini <pcarlini@suse.de>
PR c++/19532
* pt.c (template_class_depth): Fix comment; change return type
to bool.
From-SVN: r127238
Andrew Pinski [Mon, 6 Aug 2007 03:24:19 +0000 (03:24 +0000)]
[multiple changes]
2008-08-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32988
* tree.c (build2_stat): Instead of checking for INTEGER_TYPE, check
for INTEGRAL_TYPE_P.
2007-08-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32988
* gcc.c-torture/compile/pr32988.c: New test.
From-SVN: r127237
Andrew Pinski [Mon, 6 Aug 2007 02:33:44 +0000 (02:33 +0000)]
sms-antideps.c: Add a "return 0" to the end of main.
2007-08-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
* gcc.dg/sms-antideps.c: Add a "return 0" to the end of main.
From-SVN: r127235
GCC Administrator [Mon, 6 Aug 2007 00:17:29 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127232
Francois-Xavier Coudert [Sun, 5 Aug 2007 23:39:05 +0000 (23:39 +0000)]
re PR fortran/31612 (-fsyntax-only documentation is not accurate)
PR fortran/31612
* invoke.texi: Adjust documentation for option -fsyntax-only.
From-SVN: r127228
Francois-Xavier Coudert [Sun, 5 Aug 2007 22:14:34 +0000 (22:14 +0000)]
re PR fortran/31202 (Incorrect rounding generated for NINT)
2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR fortran/31202
* intrinsics/c99_functions.c (roundl): Provide fallback
implementation for systems without ceill.
* c99_protos.h (roundl): Define prototype in all cases.
From-SVN: r127227
Volker Reichelt [Sun, 5 Aug 2007 20:09:32 +0000 (20:09 +0000)]
revert: parser.c (cp_parser_member_declaration): Pedwarn about stray semicolons after member declarations.
cp:
Revert:
2007-03-26 Dirk Mueller <dmueller@suse.de>
* parser.c (cp_parser_member_declaration): Pedwarn
about stray semicolons after member declarations.
testsuite:
* g++.dg/warn/pedantic2.C: Fix error marker. Add more tests.
Revert:
2007-03-22 Dirk Mueller <dmueller@suse.de>
* g++.old-deja/g++.brendan/warnings2.C: Don't use -pedantic.
From-SVN: r127226