fxcoudert [Sun, 12 Aug 2007 21:21:08 +0000 (21:21 +0000)]
PR fortran/29600
* intrinsic.c (add_functions): Add optional KIND argument to ACHAR.
* iresolve.c (gfc_resolve_achar): Handle the KIND argument.
* check.c (gfc_check_achar): Check for the optional KIND argument.
* simplify.c (gfc_simplify_achar): Use KIND argument.
* intrinsic.h (gfc_check_achar, gfc_simplify_achar,
gfc_resolve_achar): Adjust prototypes.
* gfortran.dg/intrinsics_kind_argument_1.f90: Add test for ACHAR
intrinsic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127385
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 12 Aug 2007 20:45:29 +0000 (20:45 +0000)]
PR fortran/30964
PR fortran/33054
* trans-expr.c (gfc_conv_function_call): When no formal argument
list is available, we still substitute missing optional arguments.
* check.c (gfc_check_random_seed): Correct the check on the
number of arguments to RANDOM_SEED.
* intrinsic.c (add_subroutines): Add a resolution function to
RANDOM_SEED.
* iresolve.c (gfc_resolve_random_seed): New function.
* intrinsic.h (gfc_resolve_random_seed): New prototype.
* intrinsics/random.c (random_seed): Rename into random_seed_i4.
(random_seed_i8): New function.
* gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
* libgfortran.h (iexport_proto): Replace random_seed by
random_seed_i4 and random_seed_i8.
* runtime/main.c (init): Call the new random_seed_i4.
* gfortran.dg/random_4.f90: New test.
* gfortran.dg/random_5.f90: New test.
* gfortran.dg/random_6.f90: New test.
* gfortran.dg/random_7.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127383
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 12 Aug 2007 20:39:18 +0000 (20:39 +0000)]
PR fortran/32860
* error.c (error_uinteger): New function.
(error_integer): Call error_uinteger.
(error_print): Handle %u, %lu, %li and %ld format specifiers.
* interface.c (compare_actual_formal): Use the new %lu specifier.
* c-format.c (gcc_gfc_length_specs): New array.
(gcc_gfc_char_table): Add unsigned specifier, and references to
the l length modifier.
(format_types_orig): Use the new gcc_gfc_length_specs.
* gcc.dg/format/gcc_gfc-1.c: Updated with new formats.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127382
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 12 Aug 2007 20:19:59 +0000 (20:19 +0000)]
PR fortran/31629
* lang.opt (-fmodule-private): New option.
* gfortran.h (gfc_option_t): Add flag_module_private member.
* invoke.texi (-fmodule-private): Document the new option.
* module.c (gfc_check_access): Allow the -fmodule-private option
to modify the default behaviour.
* options.c (gfc_init_options): Initialize flag_module_private.
(gfc_handle_option): Handle -fmodule-private.
* gfortran.dg/module_private_1.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127381
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 12 Aug 2007 19:57:01 +0000 (19:57 +0000)]
PR fortran/29600
* intrinsic.c (add_functions): Add KIND arguments to COUNT,
IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND
and VERIFY.
* iresolve.c (gfc_resolve_count): Add kind argument.
(gfc_resolve_iachar): New function.
(gfc_resolve_ichar): Add kind argument.
(gfc_resolve_index_func): Likewise.
(gfc_resolve_lbound): Likewise.
(gfc_resolve_len): Likewise.
(gfc_resolve_len_trim): Likewise.
(gfc_resolve_scan): Likewise.
(gfc_resolve_size): New function.
(gfc_resolve_ubound): Add kind argument.
(gfc_resolve_verify): Likewise.
* trans-decl.c (gfc_get_extern_function_decl): Allow specific
intrinsics to have 4 arguments.
* check.c (gfc_check_count): Add kind argument.
(gfc_check_ichar_iachar): Likewise.
(gfc_check_index): Likewise.
(gfc_check_lbound): Likewise.
(gfc_check_len_lentrim): New function.
(gfc_check_scan): Add kind argument.
(gfc_check_size): Likewise.
(gfc_check_ubound): Likewise.
(gfc_check_verify): Likewise.
* intrinsic.texi: Update documentation for COUNT, IACHAR, ICHAR,
INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND and VERIFY.
* simplify.c (get_kind): Whitespace fix.
(int_expr_with_kind): New function.
(gfc_simplify_iachar): Add kind argument.
(gfc_simplify_iachar): Likewise.
(gfc_simplify_ichar): Likewise.
(gfc_simplify_index): Likewise.
(simplify_bound_dim): Likewise.
(simplify_bound): Likewise.
(gfc_simplify_lbound): Likewise.
(gfc_simplify_len): Likewise.
(gfc_simplify_len_trim): Likewise.
(gfc_simplify_scan): Likewise.
(gfc_simplify_shape): Pass NULL as kind argument to gfc_simplify_size.
(gfc_simplify_size): Add kind argument.
(gfc_simplify_ubound): Likewise.
(gfc_simplify_verify): Likewise.
* intrinsic.h: Update prototypes and add new ones.
* trans-intrinsic.c (gfc_conv_intrinsic_index): Rename into
gfc_conv_intrinsic_index_scan_verify.
(gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove.
(gfc_conv_intrinsic_function): Call
gfc_conv_intrinsic_index_scan_verify to translate the INDEX,
SCAN and VERIFY intrinsics.
* gfortran.dg/intrinsics_kind_argument_1.f90: New test.
* gfortran.dg/pure_dummy_length_1.f90: Adapt to new error wording.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127380
138bc75d-0d04-0410-961f-
82ee72b054a4
rakdver [Sun, 12 Aug 2007 19:49:35 +0000 (19:49 +0000)]
* MAINTAINERS (Various Maintainers): Add myself as
loop infrastructure maintainer. Update my e-mail
address.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127379
138bc75d-0d04-0410-961f-
82ee72b054a4
uweigand [Sun, 12 Aug 2007 18:08:43 +0000 (18:08 +0000)]
2007-08-12 Sa Liu <saliu@de.ibm.com>
* emit-rtl.c (try_split): Relink the insns with REG_LIBCALL note
and with REG_RETVAL note after split.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127376
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Sun, 12 Aug 2007 05:43:05 +0000 (05:43 +0000)]
* config/mips/mips.c (mips_sched_reorder): Mark cycle parameter
as ATTRIBUTE_UNUSED.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127371
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sun, 12 Aug 2007 02:46:54 +0000 (02:46 +0000)]
2007-08-11 David Edelsohn <edelsohn@gnu.org>
Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000.h (CC1_CPU_SPEC): Define as empty string if
HAVE_LOCAL_CPU_DETECT not defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127370
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 12 Aug 2007 00:17:40 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127368
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 11 Aug 2007 23:14:24 +0000 (23:14 +0000)]
* cgraphunit.c (record_cdtor_fn): Declare all cdtors always inlined.
(cgraph_process_new_functions): Honor previous value of
disregard_inline_limits.
* ipa-inline.c (compute_inline_parameters): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127365
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 11 Aug 2007 21:52:22 +0000 (21:52 +0000)]
PR fortran/31189
* runtime/backtrace.c (show_backtrace): Skip _gfortrani_handler
when displaying backtrace.
* runtime/compile_options.c: Include <signal.h>.
(handler): New function.
(set_options): Set signal handlers for backtrace.
* libgfortran.h (handler): Add prototype.
* invoke.texi (-fbacktrace): Document the new behaviour.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127364
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sat, 11 Aug 2007 21:31:35 +0000 (21:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127363
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Sat, 11 Aug 2007 17:21:56 +0000 (17:21 +0000)]
./:
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127362
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sat, 11 Aug 2007 16:52:47 +0000 (16:52 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127361
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Sat, 11 Aug 2007 16:51:07 +0000 (16:51 +0000)]
gcc/
* calls.c (avoid_likely_spilled_reg): New function.
(expand_call): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127360
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sat, 11 Aug 2007 16:38:51 +0000 (16:38 +0000)]
* decl.c, utils2.c: Fix whitespace in last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127359
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sat, 11 Aug 2007 13:34:32 +0000 (13:34 +0000)]
* decl.c (compare_field_bitpos): Constify.
* utils2.c (compare_elmt_bitpos): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127358
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sat, 11 Aug 2007 13:32:52 +0000 (13:32 +0000)]
* c-typeck.c (build_c_cast): Add OPT_Wcast_qual to warnings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127357
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 11 Aug 2007 00:17:21 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127355
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 10 Aug 2007 22:12:04 +0000 (22:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127352
138bc75d-0d04-0410-961f-
82ee72b054a4
nemet [Fri, 10 Aug 2007 22:11:43 +0000 (22:11 +0000)]
* config/mips/predicates.md (const_call_insn_operand): Invoke
SYMBOL_REF_LONG_CALL_P only on SYMBOL_REFs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127351
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 10 Aug 2007 21:08:32 +0000 (21:08 +0000)]
* gcc.doxy: Rename from tree-ssa.doxy.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127350
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Fri, 10 Aug 2007 20:02:33 +0000 (20:02 +0000)]
* tree-ssa.doxy: Update for doxygen 1.5.
Include all the files in the middle and back ends.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127349
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 10 Aug 2007 18:48:33 +0000 (18:48 +0000)]
PR target/33042
* config/rs6000/driver-rs6000.c: Include link.h.
Use ElfW instead of wordsize-specif typedef.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127348
138bc75d-0d04-0410-961f-
82ee72b054a4
aaw [Fri, 10 Aug 2007 18:12:12 +0000 (18:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127347
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Fri, 10 Aug 2007 17:53:58 +0000 (17:53 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127344
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Fri, 10 Aug 2007 17:29:23 +0000 (17:29 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127343
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 10 Aug 2007 17:16:57 +0000 (17:16 +0000)]
2007-08-10 Andreas Krebbel <krebbel1@de.ibm.com>
* lower-subreg.c (resolve_shift_zext): Don't adjust
src_reg_num for wordmode operands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127342
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Fri, 10 Aug 2007 16:35:49 +0000 (16:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127341
138bc75d-0d04-0410-961f-
82ee72b054a4
aldyh [Fri, 10 Aug 2007 15:42:54 +0000 (15:42 +0000)]
* tree-flow-inline.h (get_filename): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127339
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 10 Aug 2007 15:40:26 +0000 (15:40 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127338
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Fri, 10 Aug 2007 15:38:23 +0000 (15:38 +0000)]
* 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*-*-*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127337
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Fri, 10 Aug 2007 15:35:55 +0000 (15:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127336
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 10 Aug 2007 14:57:52 +0000 (14:57 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127335
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 10 Aug 2007 13:20:46 +0000 (13:20 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127334
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Fri, 10 Aug 2007 12:39:46 +0000 (12:39 +0000)]
2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/33039
* gfortran.dg/namelist_37.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127333
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Fri, 10 Aug 2007 12:36:01 +0000 (12:36 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127332
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 10 Aug 2007 08:56:34 +0000 (08:56 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127331
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 10 Aug 2007 00:17:22 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127329
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Thu, 9 Aug 2007 22:42:11 +0000 (22:42 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127325
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 9 Aug 2007 22:02:32 +0000 (22:02 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127324
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Thu, 9 Aug 2007 21:39:08 +0000 (21:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127323
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Thu, 9 Aug 2007 21:36:27 +0000 (21:36 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127322
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 9 Aug 2007 21:27:52 +0000 (21:27 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127321
138bc75d-0d04-0410-961f-
82ee72b054a4
dberlin [Thu, 9 Aug 2007 21:13:30 +0000 (21:13 +0000)]
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
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127320
138bc75d-0d04-0410-961f-
82ee72b054a4
simonb [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() for xor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127319
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Thu, 9 Aug 2007 14:08:54 +0000 (14:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127318
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 9 Aug 2007 14:01:22 +0000 (14:01 +0000)]
* 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):
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127317
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Thu, 9 Aug 2007 13:56:45 +0000 (13:56 +0000)]
* tree.h (fixed_zerop): Declare as taking a const_tree.
* tree.c (fixed_zerop): Take a const_tree.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127316
138bc75d-0d04-0410-961f-
82ee72b054a4
irar [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
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127315
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Thu, 9 Aug 2007 09:42:57 +0000 (09:42 +0000)]
* testsuite/lib/libjava.exp (libjava_invoke): Log the invocation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127314
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Thu, 9 Aug 2007 02:02:37 +0000 (02:02 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127312
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 9 Aug 2007 00:17:46 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127310
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 8 Aug 2007 23:36:24 +0000 (23:36 +0000)]
PR fortran/32902
* intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127307
138bc75d-0d04-0410-961f-
82ee72b054a4
chaoyingfu [Wed, 8 Aug 2007 22:29:12 +0000 (22:29 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127306
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 8 Aug 2007 22:24:40 +0000 (22:24 +0000)]
2007-08-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
* java/net/natVMInetAddressPosix.cc
(java::net::VMInetAddress::getLocalHostname) [!MAXHOSTNAMELEN]:
Allocate buffer dynamically.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127305
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Wed, 8 Aug 2007 19:33:24 +0000 (19:33 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127304
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Wed, 8 Aug 2007 16:05:51 +0000 (16:05 +0000)]
2007-08-08 Paolo Bonzini <paolo.bonzini@lu.unisi.ch>
* config/i386/t-crtstuff (CRTSTUFF_T_CFLAGS): Use +=.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127301
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:57:48 +0000 (15:57 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127300
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:46:08 +0000 (15:46 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127299
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:40:27 +0000 (15:40 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127298
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:31:00 +0000 (15:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127297
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:26:03 +0000 (15:26 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127296
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:22:16 +0000 (15:22 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127295
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Wed, 8 Aug 2007 15:06:05 +0000 (15:06 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127294
138bc75d-0d04-0410-961f-
82ee72b054a4
revitale [Wed, 8 Aug 2007 12:21:37 +0000 (12:21 +0000)]
Remove profitability check
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127293
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 8 Aug 2007 08:00:32 +0000 (08:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127291
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 8 Aug 2007 06:35:17 +0000 (06:35 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127290
138bc75d-0d04-0410-961f-
82ee72b054a4
doko [Wed, 8 Aug 2007 06:34:06 +0000 (06:34 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127289
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 8 Aug 2007 00:17:13 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127287
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 7 Aug 2007 23:44:59 +0000 (23:44 +0000)]
./:
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127284
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 7 Aug 2007 22:43:55 +0000 (22:43 +0000)]
PR rtl-optimization/32776
* lower-subreg.c (resolve_clobber): Call resolve_reg_notes.
(resolve_use): Likewise.
(decompose_multiword_subregs): Remove "changed" local variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127282
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Tue, 7 Aug 2007 22:34:17 +0000 (22:34 +0000)]
* gfortran.dg/c_kind_params.f90: Check for stdint.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127281
138bc75d-0d04-0410-961f-
82ee72b054a4
jimb [Tue, 7 Aug 2007 21:05:16 +0000 (21:05 +0000)]
* src/Makefile.am (libstdc++-symbol.ver): Make
sure the build tree copy of libstdc++-symbol.ver is writeable.
* src/Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127279
138bc75d-0d04-0410-961f-
82ee72b054a4
dorit [Tue, 7 Aug 2007 19:13:27 +0000 (19:13 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127276
138bc75d-0d04-0410-961f-
82ee72b054a4
carlos [Tue, 7 Aug 2007 18:33:16 +0000 (18:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127275
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127273
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Tue, 7 Aug 2007 15:31:56 +0000 (15:31 +0000)]
PR bootstrap/32973
* gengtype-lex.l: Ignore backslash/newline pair while scanning a
struct definition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127272
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Tue, 7 Aug 2007 12:52:47 +0000 (12:52 +0000)]
* src/x86/sysv.S (ffi_closure_raw_SYSV): Fix typo in previous
checkin.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127271
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Tue, 7 Aug 2007 10:43:11 +0000 (10:43 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127270
138bc75d-0d04-0410-961f-
82ee72b054a4
rask [Tue, 7 Aug 2007 10:22:08 +0000 (10:22 +0000)]
* doc/sourcebuild.texi (Test Directives): Fix "compile" and
"assemble" descriptions which were swapped.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127269
138bc75d-0d04-0410-961f-
82ee72b054a4
dfranke [Tue, 7 Aug 2007 10:18:48 +0000 (10:18 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127268
138bc75d-0d04-0410-961f-
82ee72b054a4
rask [Tue, 7 Aug 2007 10:09:59 +0000 (10:09 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127267
138bc75d-0d04-0410-961f-
82ee72b054a4
kkojima [Tue, 7 Aug 2007 01:41:27 +0000 (01:41 +0000)]
* g++.dg/torture/type-generic-1.C: Add -mieee for sh.
* gcc.dg/torture/type-generic-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127266
138bc75d-0d04-0410-961f-
82ee72b054a4
kargl [Tue, 7 Aug 2007 00:27:25 +0000 (00:27 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127265
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 7 Aug 2007 00:17:33 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127263
138bc75d-0d04-0410-961f-
82ee72b054a4
chaoyingfu [Mon, 6 Aug 2007 23:18:57 +0000 (23:18 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127260
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 6 Aug 2007 23:02:38 +0000 (23:02 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127259
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 6 Aug 2007 22:45:35 +0000 (22:45 +0000)]
* ChangeLog: Correct PR number.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127258
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 6 Aug 2007 22:44:27 +0000 (22:44 +0000)]
PR fortran/30933
* intrinsic.c (add_functions): Fix name of argument to CHDIR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127257
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 6 Aug 2007 22:29:24 +0000 (22:29 +0000)]
PR fortran/30933
* iresolve.c (gfc_resolve_exit): Convert argument to default
integer kind.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127256
138bc75d-0d04-0410-961f-
82ee72b054a4
dsh [Mon, 6 Aug 2007 22:02:56 +0000 (22:02 +0000)]
2007-08-06 Dan Hipschman <dsh@google.com>
* method.c (use_thunk): Use DECL_NAME instead of DECL_RTL to
access function name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127255
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Mon, 6 Aug 2007 21:54:52 +0000 (21:54 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127254
138bc75d-0d04-0410-961f-
82ee72b054a4
dfranke [Mon, 6 Aug 2007 20:53:19 +0000 (20:53 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127253
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Mon, 6 Aug 2007 20:47:17 +0000 (20:47 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127252
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 6 Aug 2007 19:58:11 +0000 (19:58 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127248
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Mon, 6 Aug 2007 18:04:33 +0000 (18:04 +0000)]
* config/ia64/ia64.c (ia64_c_mode_for_suffix): New.
(TARGET_C_MODE_FOR_SUFFIX): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127247
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Mon, 6 Aug 2007 17:03:13 +0000 (17:03 +0000)]
* config/ia64/div.md (m2subrf4_cond): Change 'g' to 'G'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127246
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Mon, 6 Aug 2007 16:51:43 +0000 (16:51 +0000)]
* config/ia64/ia64.h (MODES_TIEABLE_P): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127245
138bc75d-0d04-0410-961f-
82ee72b054a4