Arnaud Charlet [Mon, 14 Jun 2010 09:08:47 +0000 (11:08 +0200)]
[multiple changes]
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* gnat_ugn.texi: Minor typo fixes and wording changes
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_One_Call): If the call has been rewritten from a
prefixed form, do not re-analyze first actual, which may need an
implicit dereference.
* sem_ch6.adb (Analyze_Procedure_Call): If the call is given in
prefixed notation, the analysis will rewrite the node, and possible
errors appear in the rewritten name of the node.
* sem_res.adb: If a call is ambiguous because its first parameter is
an overloaded call, report list of candidates, to clarify ambiguity of
enclosing call.
2010-06-14 Doug Rupp <rupp@adacore.com>
* s-auxdec-vms-alpha.adb: New package body implementing legacy
VAX instructions with Asm insertions.
* s-auxdec-vms_64.ads: Inline VAX queue functions
* s-stoele.adb: Resolve some ambiguities in To_Addresss with s-suxdec
that show up only on VMS.
* gcc-interface/Makefile.in: Provide translation for
s-auxdec-vms-alpha.adb.
From-SVN: r160713
Olivier Hainque [Mon, 14 Jun 2010 08:31:33 +0000 (08:31 +0000)]
initialize.c (VxWorks section): Update comments.
2010-06-14 Olivier Hainque <hainque@adacore.com>
* initialize.c (VxWorks section): Update comments.
From-SVN: r160712
Arnaud Charlet [Mon, 14 Jun 2010 08:27:05 +0000 (10:27 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* a-convec.adb, sem_prag.adb, checks.adb: Minor reformatting
2010-06-14 Eric Botcazou <ebotcazou@adacore.com>
* init.c: Code clean up.
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address): Do
not insert address clause in table for later validation if type of
entity is generic, to prevent possible spurious errors.
* sem_ch8.adb: Code clean up.
2010-06-14 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Expanded @ovar macro inline to solve problem with
texi2pdf and texi2html.
Document how to change scheduling properties on HP-UX.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* g-socket.ads: Remove misleading comments.
From-SVN: r160711
Arnaud Charlet [Mon, 14 Jun 2010 08:20:41 +0000 (10:20 +0200)]
[multiple changes]
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* sem_prag.adb (Check_Duplicated_Export_Name): Remove check for
CLI_Target as this prevents proper detection of exported names
duplicates when the exported language is different to CIL.
(Process_Interface_Name): Add check for CIL convention exports,
replacing the old one from Check_Duplicated_Export_Name.
2010-06-14 Matthew Heaney <heaney@adacore.com>
* a-coinve.adb, a-convec.adb (operator "&"): Check both that new length
and new last satisfy constraints.
(Delete_Last): prevent overflow for subtraction of index values
(To_Vector): prevent overflow for addition of index values
From-SVN: r160710
Ed Schonberg [Mon, 14 Jun 2010 08:14:10 +0000 (08:14 +0000)]
sem_ch4.adb (Complete_Object_Operation): After analyzing the rewritten call...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Complete_Object_Operation): After analyzing the
rewritten call, preserve the resulting type to prevent spurious errors,
when the call is implicitly dereferenced in the context of an in-out
actual.
* checks.adb (Apply_Discriminant_Check): If the target of the
assignment is a renaming of a heap object, create constrained type for
it to apply check.
From-SVN: r160709
Arnaud Charlet [Mon, 14 Jun 2010 08:06:34 +0000 (10:06 +0200)]
[multiple changes]
2010-06-14 Pascal Obry <obry@adacore.com>
* prj-proc.adb: Fix copy of object directory for extending projects.
2010-06-14 Jose Ruiz <ruiz@adacore.com>
* init.c (__gnat_alternate_stack): Define this space for PowerPC linux
(__gnat_install_handler, PowerPC linux): Activate the alternative
signal stack.
From-SVN: r160708
Jakub Jelinek [Mon, 14 Jun 2010 07:25:44 +0000 (09:25 +0200)]
s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly adjust z10prop set_attr.
* config/s390/s390.md (*mov<mode>_64 DD_DF, mov<mode>): Properly
adjust z10prop set_attr.
From-SVN: r160707
Eric Botcazou [Mon, 14 Jun 2010 05:43:56 +0000 (05:43 +0000)]
Fix long lines
From-SVN: r160699
GCC Administrator [Mon, 14 Jun 2010 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r160694
Gerald Pfeifer [Sun, 13 Jun 2010 23:14:45 +0000 (23:14 +0000)]
libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
* libiberty.texi: Remove reference to GCC 3 and 2001 (thrice).
Update copyright years.
Move to GFDL 1.3.
From-SVN: r160690
H.J. Lu [Sun, 13 Jun 2010 19:55:43 +0000 (19:55 +0000)]
Add "c-family/" to c-common.h, c-pretty-print.h and c-pragma.h.
2010-06-13 H.J. Lu <hongjiu.lu@intel.com>
* g++.dg/plugin/header_plugin.c: Add "c-family/" to c-common.h
and c-pretty-print.h.
* g++.dg/plugin/pragma_plugin.c: Add "c-family/" to c-pragma.h.
From-SVN: r160687
Daniel Franke [Sun, 13 Jun 2010 16:05:01 +0000 (12:05 -0400)]
re PR fortran/31588 (gfortran should be able to output Makefile dependencies with -M* options)
2010-06-13 Daniel Franke <franke.daniel@gmail.com>
PR fortran/31588
PR fortran/43954
* gfortranspec.c (lang_specific_driver): Removed deprecation
warning for -M.
* lang.opt: Add options -M, -MM, -MD, -MMD, -MF, -MG, -MP, -MT, -MQ.
* lang-specs.h (CPP_FORWARD_OPTIONS): Add -M* options.
* cpp.h (gfc_cpp_makedep): New.
(gfc_cpp_add_dep): New.
(gfc_cpp_add_target): New.
* cpp.c (gfc_cpp_option): Add deps* members.
(gfc_cpp_makedep): New.
(gfc_cpp_add_dep): New.
(gfc_cpp_add_target): New.
(gfc_cpp_init_options): Initialize new options.
(gfc_cpp_handle_option): Handle new options.
(gfc_cpp_post_options): Map new options to libcpp-options.
(gfc_cpp_init): Handle deferred -MQ and -MT options.
(gfc_cpp_done): If requested, write dependencies to file.
* module.c (gfc_dump_module): Add a module filename as target.
* scanner.c (open_included_file): New parameter system; add the
included file as dependency.
(gfc_open_included_file): Add the included file as dependency.
(gfc_open_intrinsic_module): Likewise.
* invoke.texi: Removed deprecation warning for -M.
* gfortran.texi: Removed Makefile-dependencies project.
From-SVN: r160684
Paolo Carlini [Sun, 13 Jun 2010 15:44:51 +0000 (15:44 +0000)]
base.h (min, max): Mark inline.
2010-06-13 Paolo Carlini <paolo.carlini@oracle.com>
* include/parallel/base.h (min, max): Mark inline.
* include/parallel/set_operations.h (__parallel_set_operation):
Uglify the Operation template parameter.
From-SVN: r160683
Jan Hubicka [Sun, 13 Jun 2010 14:50:26 +0000 (16:50 +0200)]
bitmap.c (bitmap_and, [...]): Turn internal datastructure checks into checking asserts.
* bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
bitmap_and_compl_into, bitmap_compl_and_into, bitmap_ior,
bitmap_ior_into, bitmap_xor, bitmap_xor_into,
bitmap_ior_and_compl, bitmap_ior_and_compl): Turn internal datastructure
checks into checking asserts.
* rtlanal.c (find_reg_note): Use gcc_checking_assert.
* tree-ssa-sccvn.c (VN_INFO): Likewise.
* df-scan.c (df_reorganize_refs_by_reg_by_reg, df_install_ref,
df_ref_create_structure): Likewise.
* alloc-pool.c (create_alloc_pool, empty_alloc_pool, pool_alloc,
pool_free): Use gcc_checking_assert.
* alias.c (get_alias_set): Likewise.
* var-tracking.c (variable_htab_free, shared_hash_copy,
canonicalize_values_mark, variable_merge_over_cur): Likewise.
* lto-streamer.c (bp_unpack_value): Likewise.
From-SVN: r160681
Gerald Pfeifer [Sun, 13 Jun 2010 14:36:24 +0000 (14:36 +0000)]
gnat_rm.texi: Move to GFDL version 1.3.
* gnat_rm.texi: Move to GFDL version 1.3.
* gnat-style.texi: Ditto.
* gnat_ugn.texi: Ditto.
From-SVN: r160680
Richard Guenther [Sun, 13 Jun 2010 14:14:17 +0000 (14:14 +0000)]
lto-streamer-in.c (lto_input_ts_type_tree_pointers): Do not stream but initialize TYPE_CANONICAL to NULL.
2010-06-13 Richard Guenther <rguenther@suse.de>
* lto-streamer-in.c (lto_input_ts_type_tree_pointers):
Do not stream but initialize TYPE_CANONICAL to NULL.
(lto_output_ts_type_tree_pointers): Do not stream TYPE_CANONICAL.
* gimple.c (gimple_types_compatible_p): Disregard
TYPE_STRUCTURAL_EQUALITY_P.
(gimple_register_type): Use TYPE_CANONICAL as cache.
* lto-streamer.c (lto_record_common_node): Zero TYPE_CANONICAL
before registering common types.
* config/i386/i386.c (ix86_function_arg_boundary): Do not
use TYPE_CANONICAL, instead use TYPE_MAIN_VARIANT.
* tree.h (TYPE_CANONICAL): Clarify documentation.
lto/
* lto.c (lto_fixup_type): Do not register or fixup TYPE_CANONICAL.
From-SVN: r160679
Anatoly Sokolov [Sun, 13 Jun 2010 11:04:19 +0000 (15:04 +0400)]
ia64.h (FUNCTION_VALUE_REGNO_P, [...]): Remove macros.
* config/ia64/ia64.h (FUNCTION_VALUE_REGNO_P, FUNCTION_VALUE,
LIBCALL_VALUE): Remove macros.
* config/ia64/ia64-protos.h (ia64_function_value): Remove.
* config/ia64/ia64.c (TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
TARGET_FUNCTION_VALUE_REGNO_P): Define.
(ia64_libcall_value, ia64_function_value_regno_p): New functions.
(ia64_function_value): Make static. Handle receiving the function
type in 'fn_decl_or_type' argunent. Add 'outgoing' argument.
From-SVN: r160678
Daniel Franke [Sun, 13 Jun 2010 10:04:27 +0000 (06:04 -0400)]
whole_file_18.f90: Updated error message.
2010-06-13 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/whole_file_18.f90: Updated error message.
From-SVN: r160676
Shujing Zhao [Sun, 13 Jun 2010 03:06:39 +0000 (03:06 +0000)]
typeck.c (convert_for_assignment): Fix comment.
2010-06-13 Shujing Zhao <pearly.zhao@oracle.com>
* typeck.c (convert_for_assignment): Fix comment. Change message
format from %d to %qP.
(convert_for_initialization): Fix comment.
From-SVN: r160671
Jan Hubicka [Sun, 13 Jun 2010 01:08:01 +0000 (03:08 +0200)]
cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p at correct place.
* cse.c (cse_extended_basic_block): Move optimize_bb_for_speed_p
at correct place.
From-SVN: r160669
GCC Administrator [Sun, 13 Jun 2010 00:17:13 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160668
Bernd Schmidt [Sat, 12 Jun 2010 23:25:37 +0000 (23:25 +0000)]
arm.c (thumb2_reorg): Fix errors in previous change.
* config/arm/arm.c (thumb2_reorg): Fix errors in previous change.
From-SVN: r160664
Daniel Franke [Sat, 12 Jun 2010 13:43:48 +0000 (09:43 -0400)]
resolve.c (resolve_global_procedure): Improved checking if an explicit interface is required.
gcc/fortran/:
2010-06-12 Daniel Franke <franke.daniel@gmail.com>
* resolve.c (resolve_global_procedure): Improved checking if an
explicit interface is required.
gcc/testsuite/:
2010-06-12 Daniel Franke <franke.daniel@gmail.com>
* gfortran.dg/whole_file_20.f03: New.
From-SVN: r160663
Kai Tietz [Sat, 12 Jun 2010 13:19:17 +0000 (15:19 +0200)]
2010-06-12 Kai Tietz
PR ada/43731
* gcc-interface/Makefile.in: Add rules for multilib x86/x64
mingw targets.
From-SVN: r160662
Jan Hubicka [Sat, 12 Jun 2010 12:46:46 +0000 (12:46 +0000)]
Fix typo.
From-SVN: r160661
Jan Hubicka [Sat, 12 Jun 2010 12:45:26 +0000 (14:45 +0200)]
df-core.c (df_clear_bb_info): New function.
* df-core.c (df_clear_bb_info): New function.
(df_set_blocks): bb_info is always allocated.
(df_get_bb_info): Use block_info_elt_size.
(df_set_bb_info): Likewise.
(df_compact_blocks): Update for new block_info.
(grow_bb_info): New function.
* df-problems.c (df_grow_bb_info): Move to df-core.c
(df_rd_set_bb_info): Remove.
(df_rd_free_bb_info): Do not free block pool.
(df_rd_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_rd_free): DO not free alloc pool; clear block_info.
(problem_RD): Add size of block info structure.
(df_lr_set_bb_info): Remove.
(df_lr_free_bb_info): Do not free block pool.
(df_lr_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_lr_free): DO not free alloc pool; clear block_info.
(problem_LR): Add size of block info structure.
(df_live_set_bb_info): Remove.
(df_live_free_bb_info): Do not free block pool.
(df_live_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_live_free): DO not free alloc pool; clear block_info.
(problem_LIVE): Add size of block info structure.
(problem_CHAIN): Add size of block info structure.
(df_byte_lr_set_bb_info): Remove.
(df_byte_lr_free_bb_info): Do not free block pool.
(df_byte_lr_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_byte_lr_free): DO not free alloc pool; clear block_info.
(problem_BYTE_LR): Add size of block info structure.
(problem_NOTE): Add size of block info structure.
(df_byte_MD_set_bb_info): Remove.
(df_byte_MD_free_bb_info): Do not free block pool.
(df_byte_MD_alloc): Do not create pool, use check for
obstack presence instead of NULL pointer for new blocks.
(df_byte_MD_free): DO not free alloc pool; clear block_info.
(problem_BD): Add size of block info structure.
* df-scan.c (df_scan_free_internal): Free block pool.
(df_scan_set_bb_info): Remove.
(df_scan_free_bb_info): Check for artificial_defs instead
of bb_info being non-NULL.
(df_scan_alloc): DO not create df_scan_block pool.
(problem_SCAN): Set size of block info.
(df_bb_refs_record): Do not allocate bb_info.
* df.h (df_problem): Add block_info_elt_size.
(struct dataflow): Change block_info to void *.
(df_scan_get_bb_info, df_rd_get_bb_info, df_lr_get_bb_info,
df_md_get_bb_info, df_live_get_bb_info, df_byte_lr_get_bb_info): Return
in-line structures.
From-SVN: r160660
Jan Hubicka [Sat, 12 Jun 2010 12:43:02 +0000 (14:43 +0200)]
re PR tree-optimization/44485 (ICE in get_expr_operands, at tree-ssa-operands.c:1020)
PR tree-optimize/44485
* tree-cfgcleanup.c (fixup_noreturn_call): Remove basic blocks containing
use of return value of noreturn function.
* gcc.c-torture/compile/pc44485.c: New testcase.
From-SVN: r160659
Anatoly Sokolov [Sat, 12 Jun 2010 08:17:18 +0000 (12:17 +0400)]
targhooks.c (default_function_value): Don't use FUNCTION_OUTGOING_VALUE.
* targhooks.c (default_function_value): Don't use
FUNCTION_OUTGOING_VALUE.
* system.h (FUNCTION_OUTGOING_VALUE): Poison.
* doc/tm.texi (FUNCTION_OUTGOING_VALUE): Removed.
From-SVN: r160656
Kazu Hirata [Sat, 12 Jun 2010 07:44:51 +0000 (07:44 +0000)]
config.gcc (mips64*-*-linux*, [...]): Add crtfastmath.o to extra_parts.
gcc/
* config.gcc (mips64*-*-linux*, mipsisa64*-*-linux*,
mips*-*-linux*): Add crtfastmath.o to extra_parts.
* config/mips/crtfastmath.c: New.
* config/mips/linux.h (ENDFILE_SPEC): New.
libgcc/
* config.host (mips64*-*-linux*, mips*-*-linux*): Add mips/t-crtfm
to tmake_file. Add crtfastmath.o to extra_parts.
* config/mips/t-crtfm: New.
From-SVN: r160655
Sebastian Pop [Sat, 12 Jun 2010 07:39:25 +0000 (07:39 +0000)]
Don't call pbb_to_depth_to_oldiv from compute_type_for_level.
2010-06-12 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gcc_type_for_interval): Do not pass
old_type in parameter.
(gcc_type_for_value): Update call to gcc_type_for_interval.
(compute_type_for_level_1): Renamed compute_type_for_level.
Update call to gcc_type_for_interval.
From-SVN: r160649
Francois-Xavier Coudert [Sat, 12 Jun 2010 06:57:22 +0000 (06:57 +0000)]
trans-decl.c (gfc_build_intrinsic_function_decls): Fix return type.
* trans-decl.c (gfc_build_intrinsic_function_decls): Fix
return type.
* trans-intrinsic.c (gfc_conv_intrinsic_fdate): Fix argument type.
(gfc_conv_intrinsic_ttynam): Likewise.
(gfc_conv_intrinsic_trim): Likewise.
From-SVN: r160648
Janus Weil [Sat, 12 Jun 2010 04:10:25 +0000 (06:10 +0200)]
re PR fortran/40117 ([OOP][F2008] Type-bound procedure: allow list after PROCEDURE)
2010-06-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/40117
* decl.c (match_procedure_in_type): Allow procedure lists (F08).
2010-06-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/40117
* gfortran.dg/typebound_proc_4.f03: Modified error message.
* gfortran.dg/typebound_proc_14.f03: New.
* gfortran.dg/typebound_proc_15.f03: New.
From-SVN: r160646
GCC Administrator [Sat, 12 Jun 2010 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r160644
Joseph Myers [Sat, 12 Jun 2010 00:13:23 +0000 (01:13 +0100)]
common.opt (Wstrict-aliasing=, [...]): Add RejectNegative.
* common.opt (Wstrict-aliasing=, Wstrict-overflow=, fabi-version=,
flto-compression-level=, ftree-parallelize-loops=): Add
RejectNegative.
testsuite:
* gcc.dg/opts-1.c: New test.
From-SVN: r160640
Joseph Myers [Sat, 12 Jun 2010 00:12:12 +0000 (01:12 +0100)]
opts-common.c: Include options.h.
* opts-common.c: Include options.h.
(integral_argument): Move from opts.c.
(decode_cmdline_option): New. Based on read_cmdline_option.
* opts.c (integral_argument): Move to opts-common.c.
(read_cmdline_option): Move most contents to
decode_cmdline_option. Use %qs in diagnostics.
* opts.h (CL_ERR_DISABLED, CL_ERR_MISSING_ARG, CL_ERR_WRONG_LANG,
CL_ERR_UINT_ARG, struct cl_decoded_option, integral_argument,
decode_cmdline_option): New.
testsuite:
* gcc.dg/funroll-loops-all.c: Update expected error.
From-SVN: r160639
Uros Bizjak [Fri, 11 Jun 2010 21:58:31 +0000 (23:58 +0200)]
re PR target/44481 (__builtin_parity() causes ICE in trunc_int_for_mode())
PR target/44481
* config/i386/i386.md (UNSPEC_PARITY): New unspec.
(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
(partiysi2_cmp): Ditto.
(*partiyhi2_cmp): Ditto.
(*parityqi2_cmp): Remove.
testsuite/ChangeLog:
PR target/44481
* gcc.target/i386/pr44481.c: New test.
From-SVN: r160638
Jan Hubicka [Fri, 11 Jun 2010 21:56:08 +0000 (23:56 +0200)]
bitmap.h (+bmp_iter_next_bit): New.
* bitmap.h (+bmp_iter_next_bit): New.
(bmp_iter_set, bmp_iter_and, bmp_iter_and_compl):
Use it.
From-SVN: r160637
Sandra Loosemore [Fri, 11 Jun 2010 21:53:59 +0000 (17:53 -0400)]
tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the computed cost.
* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
computed cost.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r160636
Eric Botcazou [Fri, 11 Jun 2010 20:52:49 +0000 (20:52 +0000)]
Fix date
From-SVN: r160633
Eric Botcazou [Fri, 11 Jun 2010 20:50:46 +0000 (20:50 +0000)]
re PR rtl-optimization/42461 (missed optimization for pure functions)
PR rtl-optimization/42461
* gcc.dg/pr42461.c: Compile at -O2 instead of -O.
From-SVN: r160632
Manuel López-Ibáñez [Fri, 11 Jun 2010 19:56:18 +0000 (19:56 +0000)]
c-common.c (conversion_warning): Warn at expression location.
2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
c-family/
* c-common.c (conversion_warning): Warn at expression
location.
From-SVN: r160631
Alexandre Oliva [Fri, 11 Jun 2010 19:41:28 +0000 (19:41 +0000)]
* gcc-interface/utils.c (update_pointer_to): Initialize last.
From-SVN: r160630
Francois-Xavier Coudert [Fri, 11 Jun 2010 19:36:40 +0000 (19:36 +0000)]
* trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Fix comment.
From-SVN: r160629
Francois-Xavier Coudert [Fri, 11 Jun 2010 19:35:19 +0000 (19:35 +0000)]
mathbuiltins.def: Add builtins that do not directly correspond to a Fortran intrinsic...
* mathbuiltins.def: Add builtins that do not directly correspond
to a Fortran intrinsic, with new macro OTHER_BUILTIN.
* f95-lang.c (gfc_init_builtin_functions): Define OTHER_BUILTIN.
* trans-intrinsic.c (gfc_intrinsic_map_t): Remove
code_{r,c}{4,8,10,16} fields. Add
{,complex}{float,double,long_double}_built_in fields.
(gfc_intrinsic_map): Adjust definitions of DEFINE_MATH_BUILTIN,
DEFINE_MATH_BUILTIN_C and LIB_FUNCTION accordingly. Add
definition of OTHER_BUILTIN.
(real_compnt_info): Remove unused struct.
(builtin_decl_for_precision, builtin_decl_for_float_kind): New
functions.
(build_round_expr): Call builtin_decl_for_precision instead of
series of if-else.
(gfc_conv_intrinsic_aint): Call builtin_decl_for_float_kind
instead of a switch.
(gfc_build_intrinsic_lib_fndecls): Match
{real,complex}{4,8,10,16}decl into the C-style built_in_decls.
(gfc_get_intrinsic_lib_fndecl): Do not hardcode floating-point
kinds.
(gfc_conv_intrinsic_lib_function): Go through all the extended
gfc_intrinsic_map.
(gfc_trans_same_strlen_check): Call builtin_decl_for_float_kind
instead of a switch.
(gfc_conv_intrinsic_abs): Likewise.
(gfc_conv_intrinsic_mod): Likewise.
(gfc_conv_intrinsic_sign): Likewise.
(gfc_conv_intrinsic_fraction): Likewise.
(gfc_conv_intrinsic_nearest): Likewise.
(gfc_conv_intrinsic_spacing): Likewise.
(gfc_conv_intrinsic_rrspacing): Likewise.
(gfc_conv_intrinsic_scale): Likewise.
(gfc_conv_intrinsic_set_exponent): Likewise.
From-SVN: r160628
Uros Bizjak [Fri, 11 Jun 2010 19:01:47 +0000 (21:01 +0200)]
i386.md (unspec): New define_c_enum.
* config/i386/i386.md (unspec): New define_c_enum.
(unspecv): Ditto.
From-SVN: r160627
Jakub Jelinek [Fri, 11 Jun 2010 18:37:34 +0000 (20:37 +0200)]
cpplib.h (struct cpp_callbacks): Add user_builtin_macro callback.
* include/cpplib.h (struct cpp_callbacks): Add user_builtin_macro
callback.
(enum cpp_builtin_type): Add BT_FIRST_USER and BT_LAST_USER.
(cpp_macro_definition): Remove const qual from second argument.
* macro.c (enter_macro_context): Call user_builtin_macro callback for
NODE_BUILTIN !NODE_USED macros.
(warn_of_redefinition): Likewise. Remove const qual from second
argument.
(cpp_macro_definition): Likewise.
* pch.c (write_macdef, save_macros): Call user_builtin_macro callback
for NODE_BUILTIN !NODE_USED macros.
* c-family/c-cppbuiltin.c: Include cpp-id-data.h.
(lazy_hex_fp_values, lazy_hex_fp_value_count): New variables.
(lazy_hex_fp_value): New function.
(builtin_define_with_hex_fp_value): Provide definitions lazily.
* Makefile.in (c-family/c-cppbuiltin.o): Depend on $(CPP_ID_DATA_H).
From-SVN: r160626
Sebastian Pop [Fri, 11 Jun 2010 18:28:17 +0000 (18:28 +0000)]
Fix PR44483: incrementally gimplify BB predicates to avoid redundant computations.
2010-06-11 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44483
* tree-if-conv.c (bb_predicate_s): New struct.
(bb_predicate_p): New.
(bb_has_predicate): New.
(bb_predicate): New.
(set_bb_predicate): New.
(bb_predicate_gimplified_stmts): New.
(set_bb_predicate_gimplified_stmts): New.
(add_bb_predicate_gimplified_stmts): New.
(init_bb_predicate): New.
(free_bb_predicate): New.
(is_predicated): Use bb_predicate.
(add_to_predicate_list): Use bb_predicate and set_bb_predicate.
(predicate_bbs): Same. Gimplify the condition of the basic blocks
before processing their successors.
(clean_predicate_lists): Removed.
(find_phi_replacement_condition): Use bb_predicate.
(process_phi_nodes): Renamed ifconvert_phi_nodes. Avoid useless
computations.
(insert_gimplified_predicates): New.
(combine_blocks): Call insert_gimplified_predicates.
(tree_if_conversion): Call free_bb_predicate instead of
clean_predicate_lists.
* gcc.dg/tree-ssa/pr44483.c: New.
From-SVN: r160625
Paul Brook [Fri, 11 Jun 2010 16:55:42 +0000 (16:55 +0000)]
arm-neon-1.C: New test.
2010-06-11 Paul Brook <paul@codesourcery.com>
gcc/testsuite/
* g++.dg/other/arm-neon-1.C: New test.
From-SVN: r160623
Paul Thomas [Fri, 11 Jun 2010 16:45:48 +0000 (16:45 +0000)]
re PR fortran/42051 ([OOP] ICE on array-valued function with CLASS formal argument)
2010-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42051
PR fortran/43896
* trans-expr.c (gfc_conv_derived_to_class): Handle array-valued
functions with CLASS formal arguments.
2010-06-11 Paul Thomas <pault@gcc.gnu.org>
PR fortran/42051
PR fortran/43896
* gfortran.dg/class_23.f03: New test.
From-SVN: r160622
Paolo Carlini [Fri, 11 Jun 2010 16:20:24 +0000 (16:20 +0000)]
shared_ptr.h (hash<shared_ptr>): Add.
2010-06-11 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/shared_ptr.h (hash<shared_ptr>): Add.
* include/bits/shared_ptr_base.h (hash<__shared_ptr>): Likewise.
* include/bits/unique_ptr.h (hash<unique_ptr>): Likewise.
* testsuite/20_util/shared_ptr/hash/1.cc: New.
* testsuite/20_util/unique_ptr/hash/1.cc: Likewise.
From-SVN: r160621
Jonathan Wakely [Fri, 11 Jun 2010 16:04:52 +0000 (16:04 +0000)]
appendix_contributing.xml: Indent code examples to match original C++STYLE document.
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/xml/manual/appendix_contributing.xml: Indent code examples
to match original C++STYLE document. Fix typos and syntax errors.
Add some basic docbook markup.
* doc/html/*: Regenerate.
From-SVN: r160620
Paul Brook [Fri, 11 Jun 2010 15:45:39 +0000 (15:45 +0000)]
invoke.texi: Document ARM -mcpu=cortex-m4.
2010-10-11 Paul Brook <paul@codesourcery.com>
* doc/invoke.texi: Document ARM -mcpu=cortex-m4.
* config/arm/arm.c (all_architectures): Change v7e-m default to
cortexm4.
* config/arm/arm-cores.def: Add cortex-m4.
* config/arm/arm-tune.md: Regenerate.
From-SVN: r160618
Jonathan Wakely [Fri, 11 Jun 2010 15:31:53 +0000 (15:31 +0000)]
re PR libstdc++/44268 (abi docs say that hppa-linux defaults to libgcc_s.so.2)
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/44268
* doc/xml/manual/abi.xml: Fix libgcc version for hppa-linux.
From-SVN: r160617
Jan Hubicka [Fri, 11 Jun 2010 15:12:48 +0000 (17:12 +0200)]
ipa-pure-const.c (special_builtlin_state): New function.
* ipa-pure-const.c (special_builtlin_state): New function.
(check_call): Use it instead of special casign BUILT_IN_RETURN.
(propagate_pure_const): Use it.
* gcc.dg/ipa/pure-const-2.c: New testcase.
From-SVN: r160615
Jan Hubicka [Fri, 11 Jun 2010 15:10:27 +0000 (15:10 +0000)]
Revert accidental commit.
From-SVN: r160614
Jonathan Wakely [Fri, 11 Jun 2010 15:02:33 +0000 (15:02 +0000)]
tuple (_Swallow_assign::operator=): Add const.
2010-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/tuple (_Swallow_assign::operator=): Add const.
(ignore): Replace anonymous namespace member with const instance.
From-SVN: r160613
Jan Hubicka [Fri, 11 Jun 2010 14:33:28 +0000 (16:33 +0200)]
df-problems.c (df_live_scratch): Convert to bitmap_head.
* df-problems.c (df_live_scratch): Convert to bitmap_head.
(df_live_alloc): Initialize df_live_scratch when initializing
problem_data.
(df_live_transfer_function): Update uses of df_live_scratch.
(df_live_free): Free problem_data; clear df_live_scratch before
releasing the obstack.
(df_md_free): Free problem data.
From-SVN: r160612
Jan Hubicka [Fri, 11 Jun 2010 12:29:53 +0000 (14:29 +0200)]
invoke.texi (Wsuggest-attribute): Document.
* doc/invoke.texi (Wsuggest-attribute): Document.
(Wmissing-noreturn): Remove.
* ipa-pure-const.c (warn_function_noreturn): New function.
* opts.c (decode_options): Set warn_suggest_attribute_noreturn on
warn_missing_noreturn.
* common.opt (Wsuggest-attribute=noreturn): New.
* tree-flow.h (warn_function_noreturn): Declare.
* tree-cfg.c (execute_warn_function_noreturn): Use
warn_function_noreturn.
(gate_warn_function_noreturn): New.
(pass_warn_function_noreturn): Update.
From-SVN: r160606
Manuel López-Ibáñez [Fri, 11 Jun 2010 09:43:53 +0000 (09:43 +0000)]
c-typeck.c (handle_warn_cast_qual): Add loc parameter.
2010-06-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
* c-typeck.c (handle_warn_cast_qual): Add loc
parameter. Improve warning message.
(build_c_cast): Pass location to handle_warn_cast_qual.
From-SVN: r160601
Uros Bizjak [Fri, 11 Jun 2010 09:38:59 +0000 (11:38 +0200)]
i386.md (pro_epilogue_adjust_stack_1): Assert that operand 0 == operand 1.
* config/i386/i386.md (pro_epilogue_adjust_stack_1) <TYPE_ALU>: Assert
that operand 0 == operand 1. Use x86_maybe_negate_const_int to output
insn mnemonic.
(pro_epilogue_adjust_stack_rex64) <TYPE_ALU>: Ditto.
From-SVN: r160600
Dodji Seketeli [Fri, 11 Jun 2010 08:19:21 +0000 (08:19 +0000)]
Fix MIPS bootstrap
gcc/ChangeLog:
Fix bootstap on mips
* dwarf2out.c (is_naming_typedef_dec): Built-in TYPE_DECLs cannot
be naming typedefs.
gcc/testsuite/ChangeLog:
Fix MIPS bootstrap
* g++.dg/other/typedef4.C: New test.
From-SVN: r160599
Kai Tietz [Fri, 11 Jun 2010 08:14:33 +0000 (08:14 +0000)]
system.h (helper_const_non_const_cast): New inline for gcc version <= 4.0.
2010-06-11 Kai Tietz <kai.tietz@onevision.com>
* system.h (helper_const_non_const_cast): New inline for
gcc version <= 4.0.
(CONST_CAST2): For gcc version <= 4.0 use
new helper to do const/non-const casting.
From-SVN: r160598
Jan Beulich [Fri, 11 Jun 2010 07:02:39 +0000 (07:02 +0000)]
Add PR reference to 2010-06-10 change to configure.ac.
From-SVN: r160595
Shujing Zhao [Fri, 11 Jun 2010 03:54:28 +0000 (03:54 +0000)]
cp-tree.h (expr_list_kind): New type.
2010-06-11 Shujing Zhao <pearly.zhao@oracle.com>
* cp-tree.h (expr_list_kind): New type.
(impl_conv_rhs): New type.
(build_x_compound_expr_from_list, convert_for_initialization): Adjust
prototype.
(typeck.c (convert_arguments): Use impl_conv_rhs and emit the
diagnostics for easy translation. Change caller.
(convert_for_initialization): Use impl_conv_rhs and change caller.
(build_x_compound_expr_from_list): Use expr_list_kind and emit the
diagnostics for easy translation. Change caller.
* decl.c (bad_spec_place): New enum.
(bad_specifiers): Use it and emit the diagnostics for easy
translation. Change caller.
* pt.c (coerce_template_parms): Put the diagnostics in full sentence.
From-SVN: r160591
Janus Weil [Fri, 11 Jun 2010 01:42:38 +0000 (03:42 +0200)]
re PR fortran/44207 (ICE with ALLOCATABLE components and SOURCE)
2010-06-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/44207
* resolve.c (conformable_arrays): Handle allocatable components.
2010-06-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/44207
* gfortran.dg/allocate_alloc_opt_7.f90: New test.
From-SVN: r160589
GCC Administrator [Fri, 11 Jun 2010 00:17:56 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160588
Steven G. Kargl [Fri, 11 Jun 2010 00:06:30 +0000 (00:06 +0000)]
resolve.c (resolve_operator): Fix whitespace.
2010-06-10 Steven G. Kargl <kargl@gcc.gnu.org>
* resolve.c (resolve_operator): Fix whitespace.
From-SVN: r160584
Peter O'Gorman [Thu, 10 Jun 2010 23:35:31 +0000 (23:35 +0000)]
configure.ac: Set SYSTEMSPEC so that -allow_stack_execute is not passed to the linker for...
* configure.ac: Set SYSTEMSPEC so that -allow_stack_execute is not
passed to the linker for -dynamiclib or -bundle on darwin.
* configure: Regenerate.
From-SVN: r160583
Richard Sandiford [Thu, 10 Jun 2010 20:24:45 +0000 (20:24 +0000)]
md.texi: Document the "unspec" and "unspecv" enum names.
gcc/
* doc/md.texi: Document the "unspec" and "unspecv" enum names.
* Makefile.in (OBJS-common): Include insn-enums.o.
(insn-enums.o): New rule.
(simple_generated_c): Add insn-enums.c.
(build/genenums.o): New rule.
(genprogmd): Add "enums".
* genconstants.c (print_enum_type): Declare a C string array
for each enum.
* genenums.c: New file.
* print-rtl.c (print_rtx): If defined, use the "unspecv" enum
for UNSPEC_VOLATILE. If defined, use the "unspec" enum for both
UNSPEC and (as a fallback) for UNSPEC_VOLATILE.
From-SVN: r160582
Richard Sandiford [Thu, 10 Jun 2010 20:24:17 +0000 (20:24 +0000)]
md.texi (define_enum_attr): Document.
gcc/
* doc/md.texi (define_enum_attr): Document.
* rtl.def (DEFINE_ENUM_ATTR): New rtx.
* read-md.h (lookup_enum_type): Declare.
* read-md.c (lookup_enum_type): New function.
* genattr.c (gen_attr, main): Handle DEFINE_ENUM_ATTR.
* genattrtab.c (attr_desc): Add an enum_name field.
(evaluate_eq_attr): Take the associated attribute as argument.
Get the enum prefix from the enum_name field, if defined.
Use ACONCAT rather than a fixed-length buffer. Update recursive calls.
(simplify_test_exp): Pass attr to evaluate_eq_attr.
(add_attr_value): New function, split out from...
(gen_attr): ...here. Handle DEFINE_ENUM_ATTR.
(write_test_expr): Pass attr to evaluate_eq_attr.
(write_attr_get): Use the enum_name as the enum tag, if defined.
(write_attr_valueq): Use the enum_name as a prefix, if defined.
(find_attr): Initialize enum_name.
(main): Handle DEFINE_ENUM_ATTR.
* gensupport.c (process_rtx): Likewise.
* config/mips/mips.h (mips_tune_attr): Delete.
* config/mips/mips.md (cpu): Use define_attr_enum.
From-SVN: r160581
Richard Sandiford [Thu, 10 Jun 2010 20:24:01 +0000 (20:24 +0000)]
md.texi (define_c_enum, [...]): Document.
gcc/
* doc/md.texi (define_c_enum, define_enum): Document.
* read-md.h (md_constant): Add a parent_enum field.
(enum_value, enum_type): New structures.
(upcase_string, traverse_enum_types): Declare.
* read-md.c (enum_types): New variable.
(upcase_string, add_constant): New functions.
(handle_constants): Don't create the hash table here.
Use add_constant.
(traverse_md_constants): Don't check for a null md_constants.
(decimal_string, handle_enum, traverse_enum_types): New functions.
(read_md_files): Initialize md_constants and md_enums.
* genconstants.c (print_md_constant): Ignore info argument.
Only print constants that belong to no enum.
(print_enum_type): New function.
(main): Don't pass stdout to print_md_constant. Call print_enum_type
for each defined enum type.
* config/mips/mips.md (processor): New define_enum.
(unspec): New define_c_enum.
(UNSPEC_COMPARE_AND_SWAP, UNSPEC_COMPARE_AND_SWAP_12)
(UNSPEC_SYNC_OLD_OP, UNSPEC_SYNC_NEW_OP, UNSPEC_SYNC_NEW_OP_12)
(UNSPEC_SYNC_OLD_OP_12, UNSPEC_SYNC_EXCHANGE, UNSPEC_SYNC_EXCHANGE_12)
(UNSPEC_MEMORY_BARRIER): Moved to sync.md.
(UNSPEC_ADDQ, UNSPEC_ADDQ_S, UNSPEC_SUBQ, UNSPEC_SUBQ_S, UNSPEC_ADDSC)
(UNSPEC_ADDWC, UNSPEC_MODSUB, UNSPEC_RADDU_W_QB, UNSPEC_ABSQ_S)
(UNSPEC_PRECRQ_QB_PH, UNSPEC_PRECRQ_PH_W, UNSPEC_PRECRQ_RS_PH_W)
(UNSPEC_PRECRQU_S_QB_PH, UNSPEC_PRECEQ_W_PHL, UNSPEC_PRECEQ_W_PHR)
(UNSPEC_PRECEQU_PH_QBL, UNSPEC_PRECEQU_PH_QBR, UNSPEC_PRECEQU_PH_QBLA)
(UNSPEC_PRECEQU_PH_QBRA, UNSPEC_PRECEU_PH_QBL, UNSPEC_PRECEU_PH_QBR)
(UNSPEC_PRECEU_PH_QBLA, UNSPEC_PRECEU_PH_QBRA, UNSPEC_SHLL)
(UNSPEC_SHLL_S, UNSPEC_SHRL_QB, UNSPEC_SHRA_PH, UNSPEC_SHRA_R)
(UNSPEC_MULEU_S_PH_QBL, UNSPEC_MULEU_S_PH_QBR, UNSPEC_MULQ_RS_PH)
(UNSPEC_MULEQ_S_W_PHL, UNSPEC_MULEQ_S_W_PHR, UNSPEC_DPAU_H_QBL)
(UNSPEC_DPAU_H_QBR, UNSPEC_DPSU_H_QBL, UNSPEC_DPSU_H_QBR)
(UNSPEC_DPAQ_S_W_PH, UNSPEC_DPSQ_S_W_PH, UNSPEC_MULSAQ_S_W_PH)
(UNSPEC_DPAQ_SA_L_W, UNSPEC_DPSQ_SA_L_W, UNSPEC_MAQ_S_W_PHL)
(UNSPEC_MAQ_S_W_PHR, UNSPEC_MAQ_SA_W_PHL, UNSPEC_MAQ_SA_W_PHR)
(UNSPEC_BITREV, UNSPEC_INSV, UNSPEC_REPL_QB, UNSPEC_REPL_PH)
(UNSPEC_CMP_EQ, UNSPEC_CMP_LT, UNSPEC_CMP_LE, UNSPEC_CMPGU_EQ_QB)
(UNSPEC_CMPGU_LT_QB, UNSPEC_CMPGU_LE_QB, UNSPEC_PICK, UNSPEC_PACKRL_PH)
(UNSPEC_EXTR_W, UNSPEC_EXTR_R_W, UNSPEC_EXTR_RS_W, UNSPEC_EXTR_S_H)
(UNSPEC_EXTP, UNSPEC_EXTPDP, UNSPEC_SHILO, UNSPEC_MTHLIP, UNSPEC_WRDSP)
(UNSPEC_RDDSP): Move to mips-dsp.md.
(UNSPEC_ABSQ_S_QB, UNSPEC_ADDU_PH, UNSPEC_ADDU_S_PH, UNSPEC_ADDUH_QB)
(UNSPEC_ADDUH_R_QB, UNSPEC_APPEND, UNSPEC_BALIGN, UNSPEC_CMPGDU_EQ_QB)
(UNSPEC_CMPGDU_LT_QB, UNSPEC_CMPGDU_LE_QB, UNSPEC_DPA_W_PH)
(UNSPEC_DPS_W_PH, UNSPEC_MADD, UNSPEC_MADDU, UNSPEC_MSUB, UNSPEC_MSUBU)
(UNSPEC_MUL_PH, UNSPEC_MUL_S_PH, UNSPEC_MULQ_RS_W, UNSPEC_MULQ_S_PH)
(UNSPEC_MULQ_S_W, UNSPEC_MULSA_W_PH, UNSPEC_MULT, UNSPEC_MULTU)
(UNSPEC_PRECR_QB_PH, UNSPEC_PRECR_SRA_PH_W, UNSPEC_PRECR_SRA_R_PH_W)
(UNSPEC_PREPEND, UNSPEC_SHRA_QB, UNSPEC_SHRA_R_QB, UNSPEC_SHRL_PH)
(UNSPEC_SUBU_PH, UNSPEC_SUBU_S_PH, UNSPEC_SUBUH_QB, UNSPEC_SUBUH_R_QB)
(UNSPEC_ADDQH_PH, UNSPEC_ADDQH_R_PH, UNSPEC_ADDQH_W, UNSPEC_ADDQH_R_W)
(UNSPEC_SUBQH_PH, UNSPEC_SUBQH_R_PH, UNSPEC_SUBQH_W, UNSPEC_SUBQH_R_W)
(UNSPEC_DPAX_W_PH, UNSPEC_DPSX_W_PH, UNSPEC_DPAQX_S_W_PH)
(UNSPEC_DPAQX_SA_W_PH, UNSPEC_DPSQX_S_W_PH, UNSPEC_DPSQX_SA_W_PH):
Moved to mips-dspr2.md.
(UNSPEC_MOVE_TF_PS, UNSPEC_C, UNSPEC_ALNV_PS, UNSPEC_CABS)
(UNSPEC_ADDR_PS, UNSPEC_CVT_PW_PS, UNSPEC_CVT_PS_PW, UNSPEC_MULR_PS)
(UNSPEC_ABS_PS, UNSPEC_RSQRT1, UNSPEC_RSQRT2, UNSPEC_RECIP1)
(UNSPEC_RECIP2, UNSPEC_SINGLE_CC, UNSPEC_SCC): Moved from mips-ps-3d.md.
(UNSPEC_LOONGSON_PAVG, UNSPEC_LOONGSON_PCMPEQ, UNSPEC_LOONGSON_PCMPGT)
(UNSPEC_LOONGSON_PEXTR, UNSPEC_LOONGSON_PINSR_0)
(UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2)
(UNSPEC_LOONGSON_PINSR_3, UNSPEC_LOONGSON_PMADD)
(UNSPEC_LOONGSON_PMOVMSK, UNSPEC_LOONGSON_PMULHU)
(UNSPEC_LOONGSON_PMULH, UNSPEC_LOONGSON_PMULL, UNSPEC_LOONGSON_PMULU)
(UNSPEC_LOONGSON_PASUBUB, UNSPEC_LOONGSON_BIADD, UNSPEC_LOONGSON_PSADBH)
(UNSPEC_LOONGSON_PSHUFH, UNSPEC_LOONGSON_PUNPCKH)
(UNSPEC_LOONGSON_PUNPCKL, UNSPEC_LOONGSON_PADDD)
(UNSPEC_LOONGSON_PSUBD): Move to mips-loongson.md.
(UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_ALU2_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_FALU1_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_FALU2_TURN_ENABLED_INSN): Moved to mips-loongson2ef.md.
(cpu): Update comment.
* config/mips/sync.md (UNSPEC_COMPARE_AND_SWAP)
(UNSPEC_COMPARE_AND_SWAP_12, UNSPEC_SYNC_OLD_OP, UNSPEC_SYNC_NEW_OP)
(UNSPEC_SYNC_NEW_OP_12, UNSPEC_SYNC_OLD_OP_12, UNSPEC_SYNC_EXCHANGE)
(UNSPEC_SYNC_EXCHANGE_12, UNSPEC_MEMORY_BARRIER): Moved from mips.md.
* config/mips/loongson.md (UNSPEC_LOONGSON_PAVG, UNSPEC_LOONGSON_PCMPEQ)
(UNSPEC_LOONGSON_PCMPGT, UNSPEC_LOONGSON_PEXTR, UNSPEC_LOONGSON_PINSR_0)
(UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2)
(UNSPEC_LOONGSON_PINSR_3, UNSPEC_LOONGSON_PMADD)
(UNSPEC_LOONGSON_PMOVMSK, UNSPEC_LOONGSON_PMULHU)
(UNSPEC_LOONGSON_PMULH, UNSPEC_LOONGSON_PMULL, UNSPEC_LOONGSON_PMULU)
(UNSPEC_LOONGSON_PASUBUB, UNSPEC_LOONGSON_BIADD, UNSPEC_LOONGSON_PSADBH)
(UNSPEC_LOONGSON_PSHUFH, UNSPEC_LOONGSON_PUNPCKH)
(UNSPEC_LOONGSON_PUNPCKL, UNSPEC_LOONGSON_PADDD)
(UNSPEC_LOONGSON_PSUBD): Moved from mips.md
* config/mips/loongson2ef.md (UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_ALU2_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_FALU1_TURN_ENABLED_INSN)
(UNSPEC_LOONGSON_FALU2_TURN_ENABLED_INSN): Moved from mips.md
* config/mips/mips-dsp.md (UNSPEC_ADDQ, UNSPEC_ADDQ_S, UNSPEC_SUBQ)
(UNSPEC_SUBQ_S, UNSPEC_ADDSC, UNSPEC_ADDWC, UNSPEC_MODSUB)
(UNSPEC_RADDU_W_QB, UNSPEC_ABSQ_S, UNSPEC_PRECRQ_QB_PH)
(UNSPEC_PRECRQ_PH_W, UNSPEC_PRECRQ_RS_PH_W, UNSPEC_PRECRQU_S_QB_PH)
(UNSPEC_PRECEQ_W_PHL, UNSPEC_PRECEQ_W_PHR, UNSPEC_PRECEQU_PH_QBL)
(UNSPEC_PRECEQU_PH_QBR, UNSPEC_PRECEQU_PH_QBLA, UNSPEC_PRECEQU_PH_QBRA)
(UNSPEC_PRECEU_PH_QBL, UNSPEC_PRECEU_PH_QBR, UNSPEC_PRECEU_PH_QBLA)
(UNSPEC_PRECEU_PH_QBRA, UNSPEC_SHLL, UNSPEC_SHLL_S, UNSPEC_SHRL_QB)
(UNSPEC_SHRA_PH, UNSPEC_SHRA_R, UNSPEC_MULEU_S_PH_QBL)
(UNSPEC_MULEU_S_PH_QBR, UNSPEC_MULQ_RS_PH, UNSPEC_MULEQ_S_W_PHL)
(UNSPEC_MULEQ_S_W_PHR, UNSPEC_DPAU_H_QBL, UNSPEC_DPAU_H_QBR)
(UNSPEC_DPSU_H_QBL, UNSPEC_DPSU_H_QBR, UNSPEC_DPAQ_S_W_PH)
(UNSPEC_DPSQ_S_W_PH, UNSPEC_MULSAQ_S_W_PH, UNSPEC_DPAQ_SA_L_W)
(UNSPEC_DPSQ_SA_L_W, UNSPEC_MAQ_S_W_PHL, UNSPEC_MAQ_S_W_PHR)
(UNSPEC_MAQ_SA_W_PHL, UNSPEC_MAQ_SA_W_PHR, UNSPEC_BITREV, UNSPEC_INSV)
(UNSPEC_REPL_QB, UNSPEC_REPL_PH, UNSPEC_CMP_EQ, UNSPEC_CMP_LT)
(UNSPEC_CMP_LE, UNSPEC_CMPGU_EQ_QB, UNSPEC_CMPGU_LT_QB)
(UNSPEC_CMPGU_LE_QB, UNSPEC_PICK, UNSPEC_PACKRL_PH, UNSPEC_EXTR_W)
(UNSPEC_EXTR_R_W, UNSPEC_EXTR_RS_W, UNSPEC_EXTR_S_H, UNSPEC_EXTP)
(UNSPEC_EXTPDP, UNSPEC_SHILO, UNSPEC_MTHLIP, UNSPEC_WRDSP)
(UNSPEC_RDDSP): Moved from mips.md.
* config/mips/mips-dspr2.md (UNSPEC_ABSQ_S_QB, UNSPEC_ADDU_PH)
(UNSPEC_ADDU_S_PH, UNSPEC_ADDUH_QB, UNSPEC_ADDUH_R_QB, UNSPEC_APPEND)
(UNSPEC_BALIGN, UNSPEC_CMPGDU_EQ_QB, UNSPEC_CMPGDU_LT_QB)
(UNSPEC_CMPGDU_LE_QB, UNSPEC_DPA_W_PH, UNSPEC_DPS_W_PH, UNSPEC_MADD)
(UNSPEC_MADDU, UNSPEC_MSUB, UNSPEC_MSUBU, UNSPEC_MUL_PH)
(UNSPEC_MUL_S_PH, UNSPEC_MULQ_RS_W, UNSPEC_MULQ_S_PH, UNSPEC_MULQ_S_W)
(UNSPEC_MULSA_W_PH, UNSPEC_MULT, UNSPEC_MULTU, UNSPEC_PRECR_QB_PH)
(UNSPEC_PRECR_SRA_PH_W, UNSPEC_PRECR_SRA_R_PH_W, UNSPEC_PREPEND)
(UNSPEC_SHRA_QB, UNSPEC_SHRA_R_QB, UNSPEC_SHRL_PH, UNSPEC_SUBU_PH)
(UNSPEC_SUBU_S_PH, UNSPEC_SUBUH_QB, UNSPEC_SUBUH_R_QB, UNSPEC_ADDQH_PH)
(UNSPEC_ADDQH_R_PH, UNSPEC_ADDQH_W, UNSPEC_ADDQH_R_W, UNSPEC_SUBQH_PH)
(UNSPEC_SUBQH_R_PH, UNSPEC_SUBQH_W, UNSPEC_SUBQH_R_W, UNSPEC_DPAX_W_PH)
(UNSPEC_DPSX_W_PH, UNSPEC_DPAQX_S_W_PH, UNSPEC_DPAQX_SA_W_PH)
(UNSPEC_DPSQX_S_W_PH, UNSPEC_DPSQX_SA_W_PH): Moved from mips.md.
* config/mips/mips-ps-3d.md (UNSPEC_MOVE_TF_PS, UNSPEC_C)
(UNSPEC_ALNV_PS, UNSPEC_CABS, UNSPEC_ADDR_PS, UNSPEC_CVT_PW_PS)
(UNSPEC_CVT_PS_PW, UNSPEC_MULR_PS, UNSPEC_ABS_PS, UNSPEC_RSQRT1)
(UNSPEC_RSQRT2, UNSPEC_RECIP1, UNSPEC_RECIP2, UNSPEC_SINGLE_CC)
(UNSPEC_SCC): Moved from mips.md.
* config/mips/mips.c (mips_arch, mips_tune): Change enum from
"processor_type" to "processor".
(mips_rtx_cost_data): Replace PROCESSOR_MAX with NUM_PROCESSOR_VALUES.
* config/mips/mips.h (processor_type): Delete.
(mips_cpu_info.cpu, mips_arch, mips_tune): Change enum from
"processor_type" to "processor".
From-SVN: r160580
Richard Sandiford [Thu, 10 Jun 2010 20:23:43 +0000 (20:23 +0000)]
configure.ac (tm_include_list): Add insn-constants.h.
gcc/
* configure.ac (tm_include_list): Add insn-constants.h.
* configure: Regenerate.
* Makefile.in (GTM_H): Move insn-constants.h here from...
(TM_H): ...here.
* mkconfig.sh: Remove special handling for insn-constants.h.
From-SVN: r160579
Richard Sandiford [Thu, 10 Jun 2010 20:23:23 +0000 (20:23 +0000)]
Makefile.in (BUILD_RTL): Move build/read-md.o to...
gcc/
* Makefile.in (BUILD_RTL): Move build/read-md.o to...
(BUILD_MD): ...this new variable.
(simple_generated_rtl_h, simple_generated_rtl_c): New variables
that include the old contents of simple_generated_h and
simple_generated_c.
(simple_generated_h, simple_generated_c): Include them. Add
insn-constants.h.
(s-%): Make simple_generated_{h,c} stamps depend on $(MD_DEPS)
and simple_generated_rtl_{h,c} stamps depend on insn-conditions.md.
Remove these dependencies from the main rule and include
insn-conditions.md in the command line only if it appears
in the dependency list.
(insn-constants.h, s-constants): Delete.
(build/genconstants.o): Don't depend on $(RTL_BASE_H), $(GTM_H)
or gensupport.h.
(build/genmddeps.o): Likewise.
(genprogrtl): New variable that contains everything from genprogmd
except mddeps and constants.
(genprogmd): Redefine in terms of genprogrtl. Make these programs
depend on $(BUILD_MD)
(genprog): New variable. Make these programs depend on
$(BUILD_ERRORS).
* genmddeps.c: Don't include tm.h, rtl.h or gensupport.h.
(main): Use read_md_files instead of init_rtx_reader_args.
* genconstants.c: As for genmddeps.c.
* read-md.h (read_skip_construct): Declare.
* read-md.c (read_skip_construct): New function.
(handle_file): Allow a null handle_directive, skipping the
construct if so.
(parse_include): Update the comment accordingly.
From-SVN: r160578
Richard Sandiford [Thu, 10 Jun 2010 20:23:13 +0000 (20:23 +0000)]
Makefile.in (build/genmddeps.o): Depend on $(READ_MD_H).
gcc/
* Makefile.in (build/genmddeps.o): Depend on $(READ_MD_H).
* genmddeps.c: Include read-md.h.
(main): Call init_rtx_reader_args instead of init_md_reader_args.
* genattr.c (main): Likewise.
* genattrtab.c (main): Likewise.
* genautomata.c (main): Likewise.
* gencodes.c (main): Likewise.
* genconditions.c (main): Likewise.
* genconfig.c (main): Likewise.
* genconstants.c (main): Likewise.
* genemit.c (main): Likewise.
* genextract.c (main): Likewise.
* genflags.c (main): Likewise.
* genopinit.c (main): Likewise.
* genoutput.c (main): Likewise.
* genpeep.c (main): Likewise.
* genrecog.c (main): Likewise.
* genpreds.c (main): Likewise.
* gensupport.h (in_fname): Move to read-md.h.
(init_md_reader_args_cb): Rename to...
(init_rtx_reader_args_cb): ...this and return a bool.
(init_md_reader_args): Rename to...
(init_rtx_reader_args): ...this and return a bool.
(include_callback): Move to read-md.h.
* gensupport.c (in_fname, include_callback, base_dir, max_include_len)
(file_name_list, first_dir_md_include): Move to read-md.c
(first_bracket_include): Delete unused variable.
(last_dir_md_include): Move to read-md.c.
(process_include): Delete, moving code to read-md.c:handle_include.
(process_rtx): Don't handle INCLUDE.
(save_string): Delete.
(rtx_handle_directive): New function.
(init_md_reader_args_cb): Rename to...
(init_rtx_reader_args_cb): ...this and return a boolean success value.
Use read_md_args.
(init_md_reader_args): Rename to...
(init_rtx_reader_args): ...this and return a boolean success value.
* rtl.def (INCLUDE): Delete.
* rtl.h (read_rtx): Remove "int *" argument. Add "const char *"
argument.
* read-rtl.c (read_conditions): Don't gobble ')' here.
(read_mapping): Likewise.
(read_rtx): Remove LINENO argument. Add RTX_NAME argument.
Handle top-level non-rtx constructs here rather than in read_rtx_1.
Store the whole queue in *X. Remove call to init_md_reader.
(read_rtx_1): Rename to...
(read_rtx_code): ...this. Call read_nested_rtx to read subrtxes.
Don't handle top-level non-rtx constructs here. Don't handle (nil)
here.
(read_nested_rtx): New function. Handle (nil) here rather than
in read_rtx_code.
(read_rtx_variadic): Call read_nested_rtx to read subrtxes. Don't
gobble ')' here.
* read-md.h (directive_handler_t): New type.
(in_fname, include_callback): Moved from read-md.h.
(read_constants, init_md_reader): Delete.
(read_md_files): Declare.
* read-md.c (file_name_list, in_fname, base_dir, first_dir_md_include)
(last_dir_md_include_ptr, include_callback, max_include_len): Moved
from gensupport.c.
(read_constants): Rename to...
(handle_constants): ...this. Don't gobble ')' here.
(handle_include, handle_file, handle_toplevel_file)
(parse_include): New functions, mostly taken from gensupport.c.
(init_md_reader): Subsume into...
(read_md_files): ...this new function.
From-SVN: r160577
Richard Sandiford [Thu, 10 Jun 2010 20:23:00 +0000 (20:23 +0000)]
read-md.h (read_char): Increment read_md_lineno after reading '\n'.
gcc/
* read-md.h (read_char): Increment read_md_lineno after reading '\n'.
(unread_char): Decrement read_md_lineno after putting back '\n'.
* read-md.c (fatal_with_file_and_line): Push back any characters
that we decide not to add to the context.
(read_skip_spaces): Don't increment read_md_lineno here. Avoid using
fatal_expected_char in cases where '/' ends a line (for example).
(read_name): Don't increment read_md_lineno here.
(read_escape): Likewise.
(read_quoted_string): Likewise.
(read_braced_string): Likewise.
From-SVN: r160576
Richard Sandiford [Thu, 10 Jun 2010 20:22:49 +0000 (20:22 +0000)]
Makefile.in (READ_MD_H): Add $(HASHTAB_H).
gcc/
* Makefile.in (READ_MD_H): Add $(HASHTAB_H).
(build/genconstants.o): Depend on $(READ_MD_H) gensupport.h.
* genconstants.c: Include read-md.h.
* read-rtl.c (md_constants): Move to read-md.c.
(md_name): Move to read-md.h.
(initialize_iterators): Use leading_string_hash instead of def_hash
and leading_string_eq_p instead of def_name_eq_p.
(read_name): Move to read-md.c.
(def_hash, def_name_eq_p): Delete.
(read_constants, traverse_md_constants): Move to read-md.c.
* rtl.h (md_constant, traverse_md_constants): Move to read-md.h.
* read-md.h: Include hashtab.h.
(md_name): Moved from read-rtl.c.
(md_constant): Moved from read-md.h.
(leading_string_hash, leading_string_eq_p, read_name)
(read_constants, traverse_md_constants): Declare.
* read-md.c (md_constants): Moved from read-rtl.c.
(leading_string_hash, leading_string_eq_p): New functions.
(read_name, read_constants, traverse_md_constants): Moved from
read-rtl.c.
From-SVN: r160575
Richard Sandiford [Thu, 10 Jun 2010 20:22:21 +0000 (20:22 +0000)]
read-rtl.c (md_name): New structure.
gcc/
* read-rtl.c (md_name): New structure.
(read_name): Take an md_name instead of a buffer pointer.
Use the "string" field instead of strcpy when expanding constants.
(read_constants): Remove the tmp_char argument. Update the calls
to read_name, using two local name buffers instead of the tmp_char
argument. Merge the constant-creation code.
(read_conditions): Remove the tmp_char argument. Update the calls
to read_name, using a local name buffer instead of the tmp_char
argument.
(read_mapping): Replace tmp_char variable with a local name buffer.
Update the calls to read_name.
(read_rtx_1): Likewise. Update the calls to read_constants and
read_conditions.
From-SVN: r160574
Richard Sandiford [Thu, 10 Jun 2010 20:21:59 +0000 (20:21 +0000)]
Makefile.in (build/read-md.o): Depend on errors.h.
gcc/
* Makefile.in (build/read-md.o): Depend on errors.h.
* read-md.h (error_with_line): Declare.
* read-md.c: Include errors.h.
(message_with_line_1): New function, extracted from...
(message_with_line): ...here.
(error_with_line): New function.
* genattrtab.c: If a call to message_with_line is followed by
"have_error = 1;", replace both statements with a call to
error_with_line.
* genoutput.c: Likewise.
* genpreds.c: Likewise.
* genrecog.c: If a call to message_with_line is followed by
"error_count++;", replace both statements with a call to
error_with_line.
(errorcount): Delete.
(main): Don't check it.
* gensupport.c: If a call to message_with_line is followed by
"errors = 1;", replace both statements with a call to error_with_line.
(errors): Delete.
(process_define_cond_exec): Check have_error instead of errors.
(init_md_reader_args_cb): Likewise. Don't set errors.
From-SVN: r160573
Richard Sandiford [Thu, 10 Jun 2010 20:21:44 +0000 (20:21 +0000)]
read-md.h (read_md_file): Declare.
gcc/
* read-md.h (read_md_file): Declare.
(read_char, unread_char): New functions.
(fatal_with_file_and_line, fatal_expected_char, read_skip_spaces)
(read_quoted_string, read_string): Remove FILE * argument.
* read-md.c (read_md_file): New variable.
(read_md_filename, read_md_lineno): Update comments and remove
unnecessary initialization.
(fatal_with_file_and_line, fatal_expected_char, read_skip_spaces)
(read_escape, read_quoted_string, read_braced_string, read_string):
Remove FILE * argument. Update calls accordingly, using read_char
and unread_char instead of getc and ungetc.
* rtl.h (read_rtx): Remove FILE * argument.
* read-rtl.c (iterator_group): Remove FILE * argument from
"find_builtin".
(iterator_traverse_data): Remove "infile" field.
(find_mode, find_code, apply_mode_maps, apply_iterator_to_rtx)
(add_mapping, read_name, read_constants, read_conditions)
(validate_const_int, find_iterator, read_mapping, check_code_iterator)
(read_rtx, read_rtx_1, read_rtx_variadic): Remove FILE * argument.
Remove file arguments from all calls, using read_char and unread_char
instead of getc and ungetc.
* gensupport.c (process_include): Preserve read_md_file around
the include. Set read_md_file to the handle of the included file.
Update call to read_rtx.
(init_md_reader_args_cb): Set read_md_file to the handle of the file
and remove local FILE *. Update calls to read_rtx.
From-SVN: r160572
Richard Sandiford [Thu, 10 Jun 2010 20:21:35 +0000 (20:21 +0000)]
read-md.h (read_rtx_lineno): Rename to...
gcc/
* read-md.h (read_rtx_lineno): Rename to...
(read_md_lineno): ...this.
(read_rtx_filename): Rename to...
(read_md_filename): ...this.
(copy_rtx_ptr_loc): Rename to...
(copy_md_ptr_loc): ...this.
(print_rtx_ptr_loc): Rename to...
(print_md_ptr_loc): ...this.
* read-md.c: Likewise. Update references after renaming.
(string_obstack): Replace RTL with MD in comment.
(set_rtx_ptr_loc): Rename to...
(set_md_ptr_loc): ...this.
(get_rtx_ptr_loc): Rename to...
(get_md_ptr_loc): ...this.
* genconditions.c: Update references after renaming.
* genemit.c: Likewise.
* genoutput.c: Likewise.
* genpreds.c: Likewise.
* gensupport.c: Likewise.
* read-rtl.c: Likewise.
From-SVN: r160571
Richard Sandiford [Thu, 10 Jun 2010 20:21:23 +0000 (20:21 +0000)]
Makefile.in (READ_MD_H): New variable.
gcc/
* Makefile.in (READ_MD_H): New variable.
(BUILD_RTL): Add build/read-md.o.
(lto-wrapper.o): Depend on coretypes.h instead of defaults.h.
(build/gensupport.o, build/read-rtl.o, build/genattr.o)
(build/genattrtab.o, build/genconditions.o build/genemit.o)
(build/genextract.o, build/genflags.o, build/genoutput.o)
(build/genpreds.o, build/genrecog.o): Depend on $(READ_MD_H).
(build/read-md.o): New rule.
* defaults.h (obstack_chunk_alloc, obstack_chunk_free)
(OBSTACK_CHUNK_SIZE, gcc_obstack_init): Move to...
* coretypes.h: ...here.
* lto-wrapper.c: Include coretypes.h instead of defaults.h.
* pretty-print.c (obstack_chunk_alloc, obstack_chunk_free): Delete.
* genattr.c: Include read-md.h.
* genattrtab.c: Likewise.
* genconditions.c: Likewise.
* genemit.c: Likewise.
* genextract.c: Likewise.
* genflags.c: Likewise.
* genoutput.c: Likewise.
* genpreds.c: Likewise.
* genrecog.c: Likewise.
* rtl.h (read_skip_spaces, copy_rtx_ptr_loc, print_rtx_ptr_loc)
(join_c_conditions, print_c_condition, read_rtx_filename)
(read_rtx_lineno): Move to read-md.h.
* read-rtl.c: Include read-md.h.
(ptr_loc, string_obstack, ptr_locs, ptr_loc_obstack)
(joined_conditions, joined_conditions_obstack, read_rtx_lineno)
(read_rtx_filename, fatal_with_file_and_line, fatal_expected_char)
(leading_ptr_hash, leading_ptr_eq_p, set_rtx_ptr_loc, get_rtx_ptr_loc)
(copy_rtx_ptr_loc, print_rtx_ptr_loc, join_c_conditions)
(print_c_condition, read_skip_spaces, read_escape, read_quoted_string)
(read_braced_string, read_string): Move to read-md.c.
(read_rtx): Move some initialization to init_md_reader and call
init_md_reader here.
* gensupport.h (message_with_line, n_comma_elts, scan_comma_elt):
Move to read-md.h.
* gensupport.c: Include read-md.h.
(message_with_line, n_comma_elts, scan_comma_elt): Move to
read-md.c.
* read-md.h, read-md.c: New files.
From-SVN: r160570
Francois-Xavier Coudert [Thu, 10 Jun 2010 20:02:39 +0000 (20:02 +0000)]
re PR fortran/38273 (Cray pointers: Document that pointers cannot be function return values)
PR fortran/38273
* gfortran.texi: Document that Cray pointers cannot be function
results.
PR fortran/36234
* gfortran.texi: Document lack of support for syntax
"complex FUNCTION name*16()", and existence of alternative
legacy syntax "complex*16 FUNCTION name()".
From-SVN: r160569
Francois-Xavier Coudert [Thu, 10 Jun 2010 19:14:12 +0000 (19:14 +0000)]
re PR fortran/43032 (FLUSH: Document that it does not call fsync() but fflush())
PR fortran/43032
* intrinsic.texi (FLUSH): Note the difference between FLUSH and
POSIX's fsync(), and how to call the latter from Fortran code.
From-SVN: r160568
Daniel Franke [Thu, 10 Jun 2010 18:25:56 +0000 (14:25 -0400)]
re PR fortran/44457 (Missing ASYNCHRONOUS constraint check)
gcc/fortran/:
2010-06-10 Daniel Franke <franke.daniel@gmail.com>
PR fortran/44457
* interface.c (compare_actual_formal): Reject actual arguments with
array subscript passed to ASYNCHRONOUS dummys.
gcc/testsuite/:
2010-06-10 Daniel Franke <franke.daniel@gmail.com>
PR fortran/44457
* gfortran.dg/asynchronous_3.f03
From-SVN: r160567
Changpeng Fang [Thu, 10 Jun 2010 17:54:39 +0000 (17:54 +0000)]
Fix PR44185: prefetch test failures.
2010-06-10 Changpeng Fang <changpeng.fang@amd.com>
PR middle-end/44185
* gcc.dg/tree-ssa/prefetch-7.c: take the loops that will generate
non-temporal stores out of the tests to form new test cases. As a
result, no non-temporal store should be generated in this case.
* gcc.dg/tree-ssa/prefetch-8.c: New. Test from original
prefetch-7.c that generate one non-temporal store.
* gcc.dg/tree-ssa/prefetch-9.c: New. Test from original
prefetch-7.c that generate one non-temporal store and one
one-temporal prefetch.
From-SVN: r160566
Anatoly Sokolov [Thu, 10 Jun 2010 17:30:32 +0000 (21:30 +0400)]
moxie.h (FUNCTION_VALUE, [...]): Remove macros.
* config/moxie/moxie.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
* config/moxie/moxie-protos.h (moxie_function_value): Remove.
* config/moxie/moxie.c (moxie_function_value): Make static.
(moxie_libcall_value, moxie_function_value_regno_p): New functions.
(TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
From-SVN: r160565
Martin Jambor [Thu, 10 Jun 2010 16:51:20 +0000 (18:51 +0200)]
Makefile.in (tree-sra.o): Add DBGCNT_H to dependencies.
2010-06-10 Martin Jambor <mjambor@suse.cz>
* Makefile.in (tree-sra.o): Add DBGCNT_H to dependencies.
* dbgcnt.def (tree_sra): New counter.
* tree-sra.c: Include dbgcnt.h.
(gate_intra_sra): Check tree_sra debug counter.
From-SVN: r160562
Martin Jambor [Thu, 10 Jun 2010 16:49:09 +0000 (18:49 +0200)]
re PR tree-optimization/44258 (possible SRA wrong-code generation.)
2010-06-10 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/44258
* tree-sra.c (build_access_subtree): Return false iff there is a
partial overlap.
(build_access_trees): Likewise.
(analyze_all_variable_accesses): Disqualify candidates if
build_access_trees returns true for them.
* testsuite/gcc.dg/tree-ssa/pr44258.c: New test.
From-SVN: r160561
Alexandre Oliva [Thu, 10 Jun 2010 16:44:04 +0000 (16:44 +0000)]
Makefile.def (configure-gcc): Depend on all-libelf.
* Makefile.def (configure-gcc): Depend on all-libelf.
* Makefile.in: Rebuild.
From-SVN: r160560
Alexandre Oliva [Thu, 10 Jun 2010 16:43:46 +0000 (16:43 +0000)]
re PR debug/41371 (var-tracking is slow and memory hungry)
PR debug/41371
* var-tracking.c (find_loc_in_1pdv): Remove recursion, only
tail-recurse into canonical node. Fast-forward over
non-canonical VALUEs.
From-SVN: r160559
Paolo Bonzini [Thu, 10 Jun 2010 16:09:23 +0000 (16:09 +0000)]
override.m4: Remove obsolete (<2.64) definitions.
2010-06-10 Paolo Bonzini <bonzini@gnu.org>
* override.m4: Remove obsolete (<2.64) definitions.
From-SVN: r160558
H.J. Lu [Thu, 10 Jun 2010 16:00:31 +0000 (16:00 +0000)]
Revert the part of r160394 to fix bootstap with --with-arch=atom.
2010-06-10 H.J. Lu <hongjiu.lu@intel.com>
PR boostrap/44470
* config/i386/i386.md (*add<mode>_1): Revert revision 160394.
(*addsi_1_zext) <TYPE_LEA>: Likewise.
(add lea splitter): Likewise.
(add_zext lea splitter): Likewise.
From-SVN: r160557
Jakub Jelinek [Thu, 10 Jun 2010 15:15:18 +0000 (17:15 +0200)]
re PR other/43838 (Incorrect output from abi::__cxa_demangle)
PR other/43838
* cp-demangle.c (struct d_print_info): Add flush_count field.
(d_print_init): Initialize it to 0.
(d_print_flush): Increment it.
(d_print_comp): If needed flush before appending ", ". Only
decrement dpi->len if no flushes happened during the recursive
call.
* testsuite/demangle-expected: Add a test for this.
From-SVN: r160554
Joseph Myers [Thu, 10 Jun 2010 15:10:11 +0000 (16:10 +0100)]
common.opt (fshow-column): Don't mark as C ObjC C++ ObjC++.
gcc:
* common.opt (fshow-column): Don't mark as C ObjC C++ ObjC++.
gcc/c-family:
* c-opts.c (c_common_handle_option): Don't handle
OPT_fshow_column.
libcpp:
* include/cpplib.h (struct cpp_options): Remove show_column.
* init.c (cpp_create_reader, post_options): Don't set show_column.
From-SVN: r160553
Suresh Gumpula [Thu, 10 Jun 2010 14:53:15 +0000 (14:53 +0000)]
re PR libstdc++/43918 (gcc 4.5.0 is failing for i586-pc-msdosdjgpp)
2010-06-10 Suresh Gumpula <suresh.gumpula@amd.com>
PR libstdc++/43918
* config/os/djgpp/error_constants.h: New.
* configure.host: Use it.
From-SVN: r160551
Daniel Kraft [Thu, 10 Jun 2010 14:47:49 +0000 (16:47 +0200)]
re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-06-10 Daniel Kraft <d@domob.eu>
PR fortran/38936
* gfortran.h (enum gfc_statement): Add ST_ASSOCIATE, ST_END_ASSOCIATE.
(struct gfc_symbol): New field `assoc'.
(struct gfc_association_list): New struct.
(struct gfc_code): New struct `block' in union, move `ns' there
and add association list.
(gfc_free_association_list): New method.
(gfc_has_vector_subscript): Made public;
* match.h (gfc_match_associate): New method.
* parse.h (enum gfc_compile_state): Add COMP_ASSOCIATE.
* decl.c (gfc_match_end): Handle ST_END_ASSOCIATE.
* interface.c (gfc_has_vector_subscript): Made public.
(compare_actual_formal): Rename `has_vector_subscript' accordingly.
* match.c (gfc_match_associate): New method.
(gfc_match_select_type): Change reference to gfc_code's `ns' field.
* primary.c (match_variable): Don't allow names associated to expr here.
* parse.c (decode_statement): Try matching ASSOCIATE statement.
(case_exec_markers, case_end): Add ASSOCIATE statement.
(gfc_ascii_statement): Hande ST_ASSOCIATE and ST_END_ASSOCIATE.
(parse_associate): New method.
(parse_executable): Handle ST_ASSOCIATE.
(parse_block_construct): Change reference to gfc_code's `ns' field.
* resolve.c (resolve_select_type): Ditto.
(resolve_code): Ditto.
(resolve_block_construct): Ditto and add comment.
(resolve_select_type): Set association list in generated BLOCK to NULL.
(resolve_symbol): Resolve associate names.
* st.c (gfc_free_statement): Change reference to gfc_code's `ns' field
and free association list.
(gfc_free_association_list): New method.
* symbol.c (gfc_new_symbol): NULL new field `assoc'.
* trans-stmt.c (gfc_trans_block_construct): Change reference to
gfc_code's `ns' field.
2010-06-10 Daniel Kraft <d@domob.eu>
PR fortran/38936
* gfortran.dg/associate_1.f03: New test.
* gfortran.dg/associate_2.f95: New test.
* gfortran.dg/associate_3.f03: New test.
* gfortran.dg/associate_4.f08: New test.
From-SVN: r160550
Jan Hubicka [Thu, 10 Jun 2010 14:46:40 +0000 (16:46 +0200)]
df-problems.c (df_live_problem_data): Add live_bitmaps.
* df-problems.c (df_live_problem_data): Add live_bitmaps.
(df_live_alloc): Initialize problem data and live_osbtacks.
(df_live_finalize): Remove obstack, problem data; do not
clear all bitmaps.
(df_live_top_dump, df_live_bottom_dump): Do not dump old
data when not allocated.
(df_live_verify_solution_start): Do not allocate problem data.
(df_live_verify_solution_end): Check if out is allocated.
(struct df_md_problem_data): New structure.
(df_md_alloc): Allocate problem data.
(df_md_free): Free problem data; do not clear bitmaps.
From-SVN: r160549
Paolo Carlini [Thu, 10 Jun 2010 12:24:31 +0000 (12:24 +0000)]
tuple (tuple(const tuple&)): Define explicitly-defaulted.
2010-06-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/tuple (tuple(const tuple&)): Define explicitly-defaulted.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
line number.
From-SVN: r160539
Jan Beulich [Thu, 10 Jun 2010 11:58:28 +0000 (11:58 +0000)]
configure.ac: Replace $() with ${} when intending to expand variables rather than invoking...
gcc/
2010-06-10 Jan Beulich <jbeulich@novell.com>
* configure.ac: Replace $() with ${} when intending to expand
variables rather than invoking commands.
* configure: Re-generate.
From-SVN: r160538
Hans-Peter Nilsson [Thu, 10 Jun 2010 11:12:12 +0000 (11:12 +0000)]
re PR rtl-optimization/44460 (r160380 breaks libjava bootstrap on *-apple-darwin*)
PR rtl-optimization/44460
* emit-rtl.c (set_mem_attributes_minus_bitpos): Remove TYPE_NEEDS_CONSTRUCTING
sanity check.
(oops, forgot the PR markers)
From-SVN: r160533