OSDN Git Service

pf3gnuchains/gcc-fork.git
14 years ago gcc/
jules [Tue, 3 Jul 2007 19:42:36 +0000 (19:42 +0000)]
gcc/
* config.gcc (with_fpu): Allow --with-fpu=vfp3.
* config/arm/aout.h (REGISTER_NAMES): Add D16-D31.
* config/arm/aof.h (REGISTER_NAMES): Add D16-D31.
* config/arm/arm.c (FL_VFPV3): New flag for VFPv3 processor
capability.
(all_fpus): Add FPUTYPE_VFP3.
(fp_model_for_fpu): Add VFPv3 field.
(arm_rtx_costs_1): Give cost to VFPv3 constants.
(vfp3_const_double_index): New function. Return integer index of
VFPv3 constant suitable for fconst[sd] insns, or -1 if constant
isn't suitable.
(vfp3_const_double_rtx): New function. True if VFPv3 is enabled
and argument represents a valid RTX for a VFPv3 constant.
(vfp_output_fldmd): Split fldmd with > 16 registers in the list into
two instructions.
(vfp_emit_fstmd): Similar, for fstmd.
(arm_print_operand): Implement new code 'G' for VFPv3 floating-point
constants, represented as integer indices.
(arm_hard_regno_mode_ok): Use VFP_REGNO_OK_FOR_SINGLE,
VFP_REGNO_OK_FOR_DOUBLE macros.
(arm_regno_class): Handle VFPv3 d0-d7, low, high register split.
(arm_file_start): Set float-abi attribute for VFPv3, and output
correct ".fpu" assembler directive.
(arm_dbx_register_numbering): Add FIXME.
* config/arm/arm.h (TARGET_VFP3): New macro. Target supports VFPv3.
(fputype): Add FPUTYPE_VFP3.
(FIXED_REGISTERS): Add 32 registers for D16-D31.
(CALL_USED_REGISTERS): Likewise.
(CONDITIONAL_REGISTER_USAGE): Add note about conditional definition
of LAST_VFP_REGNUM. Make D16-D31 caller-saved, if present.
(LAST_VFP_REGNUM): Extend available VFP registers for VFPv3.
(D7_VFP_REGNUM): New.
(LAST_LO_VFP_REGNUM, FIRST_HI_VFP_REGNUM, LAST_HI_VFP_REGNUM)
(VFP_REGNO_OK_FOR_SINGLE, VFP_REGNO_OK_FOR_SINGLE)
(VFP_REGNO_OK_FOR_DOUBLE): Define new macros.
(FIRST_PSEUDO_REGISTER): Shift up to 128 to accommodate VFPv3.
(REG_ALLOC_ORDER): Adjust for VFPv3.
(reg_class): Add VFP_D0_D7_REGS, VFP_LO_REGS, VFP_HI_REGS.
(REG_CLASS_NAMES): Add entries corresponding to VFP_D0_D7_REGS,
VFP_LO_REGS, VFP_HI_REGS.
(REG_CLASS_CONTENTS): Likewise. Extend contents for VFP_REGS.
(IS_VFP_CLASS): Define macro.
(SECONDARY_OUTPUT_RELOAD_CLASS, SECONDARY_INPUT_RELOAD_CLASS): Use
IS_VFP_CLASS.
(REGISTER_MOVE_COST): Likewise.
* config/arm/arm-protos.h (vfp3_const_double_rtx): Add prototype.
* config/arm/vfp.md (VFPCC_REGNUM): Redefine as 127.
(*arm_movsi_vfp, *thumb2_movsi_vfp, *movsfcc_vfp)
(*thumb2_movsfcc_vfp, *abssf2_vfp, *negsf2_vfp, *addsf3_vfp)
(*subsf3_vfp, *divsf_vfp, *mulsf_vfp, *mulsf3negsf_vfp)
(*mulsf3addsf_vfp, *mulsf3subsf_vfp, *mulsf3negsfaddsf_vfp)
(*extendsfdf2_vfp, *truncdfsf2_vfp, *truncsisf2_vfp)
(*truncsidf2_vfp, fixuns_truncsfsi2, fixuns_truncdfsi2)
(*floatsisf2_vfp, *floatsidf2_vfp, floatunssisf2)
(floatunssidf2, *sqrtsf2_vfp, *cmpsf_split_vfp)
(*cmpsf_trap_split_vfp, *cmpsf_vfp, *cmpsf_trap_vfp): Use 't'
where appropriate for single-word registers.
(*movsf_vfp, *thumb2_movsf_vfp, *movdf_vfp, *thumb2_movdf_vfp):
As above. Fix type attributes.
* config/arm/constraints.md (register_contraint "t"): Define.
(register_constraint "w"): Change to D0-D15, or D0-D31 for
VFPv3/NEON.
(register_constraint "x"): Define.
(constraint "Dv"): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126272 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 3 Jul 2007 19:16:42 +0000 (19:16 +0000)]
2007-07-03  Tobias Burnus  <burnus@net-b.de>

PR fortran/30940
* interface.c (get_sym_storage_size): New function.
(get_sym_storage_size): New function.
(compare_actual_formal): Enhance sequence association
support and improve checking.

2007-07-03  Tobias Burnus  <burnus@net-b.de>

PR fortran/30940
* gfortran.dg/argument_checking_1.f90: New.
* gfortran.dg/argument_checking_2.f90: New.
* gfortran.dg/argument_checking_3.f90: New.
* gfortran.dg/argument_checking_4.f90: New.
* gfortran.dg/argument_checking_5.f90: New.
* gfortran.fortran-torture/execute/st_function_1.f90: Add dg-warning.
* gfortran.fortran-torture/execute/st_function.f90: Add dg-warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126271 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * tree.h (DECL_ALIGN): Prevent use on a FUNCTION_DECL.
geoffk [Tue, 3 Jul 2007 19:13:00 +0000 (19:13 +0000)]
* tree.h (DECL_ALIGN): Prevent use on a FUNCTION_DECL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126270 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * c-parser.c (objc_pq_context): Removed.
tromey [Tue, 3 Jul 2007 18:09:15 +0000 (18:09 +0000)]
* c-parser.c (objc_pq_context): Removed.
(objc_need_raw_identifier): Likewise.
(c_parser) <objc_pq_context>: New field.
<objc_need_raw_identifier>: Likewise.
(OBJC_NEED_RAW_IDENTIFIER): Removed.
(c_lex_one_token): Update.
(c_parser_objc_protocol_definition): Update.
(c_parser_objc_method_definition): Update.
(c_parser_objc_methodproto): Update.
(c_parser_declspecs): Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126269 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Tue, 3 Jul 2007 18:07:08 +0000 (18:07 +0000)]
gcc/
2007-07-03  David Ung  <davidu@mips.com>

* config/mips/mips.c (mips_issue_rate): Return 4 for 74K processors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126268 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Tue, 3 Jul 2007 18:00:06 +0000 (18:00 +0000)]
gcc/
2007-07-03  David Ung  <davidu@mips.com>
    Richard Sandiford  <richard@codesourcery.com>

* doc/invoke.texi: Document -march=74kf3_2.
* config/mips/mips.h (PROCESSOR_74KF3_2): New processor_type.
(TUNE_74K): Check for it.
* config/mips/mips.c (mips_cpu_info): Add 74kf3_2.
(mips_rtx_cost_data): Add an entry for PROCESSOR_74KF3_2.
* config/mips/mips.md (cpu): Add 74kf3_2.
* config/mips/74k.md (r74k_int_logical, r74k_int_arith, r74k_int_nop)
(r74k_int_cmove, r74k_int_mult, r74k_int_mul3, r74k_int_mfhilo)
(r74k_int_mthilo, r74k_int_div, r74k_int_call, r74k_int_jump)
(r74k_int_load, r74k_int_store, r74k_unknown, r74k_multi): Add
74kf3_2 to the CPU list.
(r74kf3_2_fadd, r74kf3_2_fmove, r74kf3_2_fload, r74kf3_2_fstore)
(r74kf3_2_fmul_sf, r74kf3_2_fmul_df, r74kf3_2_fdiv_sf)
(r74kf3_2_fdiv_df, r74kf3_2_frsqrt_sf, r74kf3_2_frsqrt_df)
(r74kf3_2_fcmp, r74kf3_2_fcvt, r74kf3_2_fxfer_to_c1)
(r74kf3_2_fxfer_from_c1): New insn reservations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126267 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Tue, 3 Jul 2007 17:34:59 +0000 (17:34 +0000)]
gcc/
2007-07-03  Richard Sandiford  <richard@codesourcery.com>
    David Ung  <davidu@mips.com>

* doc/invoke.texi: Replace -march=24kf with -march=24kf2_1 and
-march=24kx with -march=24kf1_1.  Likewise 24ke[fx], 34k[fx]
and 74k[fx].  Document aliases for the new options.
* config/mips/mips.h (PROCESSOR_24KF): Rename to...
(PROCESSOR_24KF2_1): ...this.
(PROCESSOR_24KX): Rename to...
(PROCESSOR_24KF1_1): ...this.
(PROCESSOR_74KF): Rename to...
(PROCESSOR_74KF2_1): ...this.
(PROCESSOR_74KX): Rename to...
(PROCESSOR_74KF1_1): ...this.
(TUNE_74K): Update PROCESSOR_* names.
* config/mips/mips.c (mips_cpu_info): Add 24kf2_1 as a synonym
for 24kf.  Add 24kf1_1 and 24kfx as synonyms for 24kx.  Likewise
the 24ke*, 34k* and 74k* processors.  Update PROCESSOR_* names.
(mips_rtx_cost_data): Update processor names in comments.
(mips_issue_rate): Update PROCESSOR_* names.
* config/mips/mips.md (cpu): Rename 24kf to 24kf2_1, 24kx to
24kf1_1, 74kf to 74kf2_1 and 74kx to 74kf1_1.
* config/mips/24k.md: Rename FPU-related r24k_* insn reservations
to r24kf2_1_*.  Rename r24kx_* insn reservations to r24kf1_1_*.
Update cpu attribute names.
(r24k_fpu_iss): Rename this reservation to...
(r24kf2_1_fpu_iss): ...this and update all uses.
(r24kx_fpu_iss): Rename this reservation to...
(r24kf1_1_fpu_iss): ...this and update all uses.
* config/mips/74k.md: Rename FPU-related r74kf_* insn reservations
to r74kf2_1_*.  Rename r74kx_* insn reservations to r74kf1_1_*.
Update cpu attribute names.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126266 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago* config/m32r/constraints.md: New file.
nickc [Tue, 3 Jul 2007 16:56:20 +0000 (16:56 +0000)]
* config/m32r/constraints.md: New file.
* config/m32r/m32r.c: Include tm-constrs.h.
  (small_data_operand): Use satisfies_constraint_* instead of macro.
  (addr24_operand, gen_compare): Likewise.
* config/m32r/m32r.h (REG_CLASS_FROM_LETTER): Remove.
  (INT8_P, UPPER16_P, UINT32_P, UINT5_P, INVERTED_SIGNED_8BIT,
  CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Likewise.
* config/m32r/m32r.md: Include constraints.md.
  (movsi_insn): Use satisfies_constraint_* instead of macro.
  (andsi3, iorsi3, xorsi3, seq_insn+1, sne): Likewise.
* config/m32r/predicates.md (conditional_move_operand): Likewise.
  (two_insn_const_operand, int8_operand, uint16_operand,
   reg_or_int16_operand, reg_or_uint16_operand,
   reg_or_cmp_int16_operand, cmp_int16_operand,
   seth_add3_operand): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126265 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFortran frontend:
jb [Tue, 3 Jul 2007 16:50:05 +0000 (16:50 +0000)]
Fortran frontend:

2007-07-03  Janne Blomqvist  <jb@gcc.gnu.org>

* trans-decl.c (gfc_build_builtin_function_decls): Mark
internal_realloc as a malloc function.

libgfortran:

2007-07-03  Janne Blomqvist  <jb@gcc.gnu.org>

* libgfortran.h: Mark internal_malloc_size as a malloc function.
* runtime/memory.c (internal_realloc_size): Remove.
(internal_realloc): Call realloc directly instead of
internal_realloc_size.
(allocate_size): Remove.
(allocate): Call malloc directly instead of allocate_size, mark as
malloc function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126264 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Eric Christopher <echristo@gmail.com>
echristo [Tue, 3 Jul 2007 16:35:20 +0000 (16:35 +0000)]
2007-07-03  Eric Christopher  <echristo@gmail.com>

        * libgcc2.h: Conditionally declare __bswapsi2 and
        __bswapdi2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126263 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 3 Jul 2007 15:29:19 +0000 (15:29 +0000)]
2007-07-03  Richard Guenther  <rguenther@suse.de>

PR c++/32609
* class.c (fixed_type_or_null): Re-lookup the hashtable slot
after recursing.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126262 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * MAINTAINERS (Write After Approval): Add myself.
jules [Tue, 3 Jul 2007 15:03:28 +0000 (15:03 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126260 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 3 Jul 2007 14:19:33 +0000 (14:19 +0000)]
2007-07-03  H.J. Lu  <hongjiu.lu@intel.com>

* ddg.c (check_sccs): Define only if ENABLE_CHECKING is
defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126258 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * testsuite/ChangeLog: Forgot to commit with my last change.
uros [Tue, 3 Jul 2007 13:55:37 +0000 (13:55 +0000)]
    * testsuite/ChangeLog: Forgot to commit with my last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126257 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.dg/pr32176.c: Add -w to default dg-options.
uros [Tue, 3 Jul 2007 13:47:59 +0000 (13:47 +0000)]
* gcc.dg/pr32176.c: Add -w to default dg-options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126256 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/28307
ro [Tue, 3 Jul 2007 13:41:00 +0000 (13:41 +0000)]
PR target/28307
* gthr-posix.h [SUPPORTS_WEAK && GTHREAD_USE_WEAK]
(__gthrw_pragma): Provide default definition.
(__gthrw2): Use it.
* gthr-posix.c (__gthrw_pragma): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126253 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Daniel Berlin <dberlin@dberlin.org>
dberlin [Tue, 3 Jul 2007 12:55:13 +0000 (12:55 +0000)]
2007-07-03  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-sccvn.c (set_ssa_val_to): Check for operand_equal_p
before declaring inequality.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126252 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * combine.c (recog_for_combine): Log the success or failure of
rask [Tue, 3 Jul 2007 12:45:31 +0000 (12:45 +0000)]
* combine.c (recog_for_combine): Log the success or failure of
  matching new insn patterns against the machine description in
  detailed dumps.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126251 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agomodulo-sched: print sccs and check it
revitale [Tue, 3 Jul 2007 10:27:19 +0000 (10:27 +0000)]
modulo-sched: print sccs and check it

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126249 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 3 Jul 2007 08:02:08 +0000 (08:02 +0000)]
2007-07-03  Tobias Burnus  <burnus@net-b.de>

PR fortran/20888
* resolve.c (resolve_operator): Check for NULL as operand.

2007-07-03  Tobias Burnus  <burnus@net-b.de>

PR fortran/20888
* gfortran.dg/null_2.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126247 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
uros [Tue, 3 Jul 2007 07:06:26 +0000 (07:06 +0000)]
2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

* configure.ac: Rewrite 'configure --help' strings to look nicer.
* configure: Regenerate.

2007-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

* configure.ac: Add some missing m4 quotation.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126246 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR middle-end/32176
uros [Tue, 3 Jul 2007 06:35:05 +0000 (06:35 +0000)]
PR middle-end/32176
* gcc.dg/pr32176.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126245 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agolibcpp/ChangeLog:
uros [Tue, 3 Jul 2007 05:53:58 +0000 (05:53 +0000)]
libcpp/ChangeLog:

* include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
Add new constants.
* expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
suffixes.  Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
for 'q' or 'Q' suffixes.

gcc/ChangeLog:

* targhooks.h (default_mode_for_suffix): New function declaration.
* targhooks.c (default_mode_for_suffix): New default target hook.
* target.h (struct c): New structure in the targetm struct.
(mode_for_suffix): New target hook as part of struct c.
target-def.h (TARGET_C_MODE_FOR_SUFFIX): Define as
default_mode_for_suffix.
(TARGET_C): New define.
* c-lex.c: Include "target.h".
(interpret_float): Use targetm.c.mode_for_suffix to determine
the mode for a given non-standard suffix.
Makefile.in (c-lex.o): Depend on $(TARGET_H).

* config/i386/i386.c (ix86_c_mode_for_suffix): New static function.
(TARGET_C_MODE_FOR_SUFFIX): Define to ix86_c_mode_for_suffix.

* doc/extend.texi (Floating Types): New node.  Document __float80 and
__float128 types.  Document 'w', 'W', 'q' and 'Q' suffixes.

testsuite/ChangeLog:

* gcc.dg/const-float80.c : New test.
* gcc.dg/const-float128.c : New test.
* gcc.dg/const-float80-ped.c : New test.
* gcc.dg/const-float128-ped.c : New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126244 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/32506
kkojima [Tue, 3 Jul 2007 04:01:35 +0000 (04:01 +0000)]
PR target/32506
* config/sh/sh.md (udivsi3_i1_media): Use target_reg_operand
predicate instead of target_operand.
(divsi3_i1_media, divsi3_media_2): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126243 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Tue, 3 Jul 2007 00:16:54 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126241 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 2 Jul 2007 23:29:27 +0000 (23:29 +0000)]
2007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>

Restore collateral damage from ISO C Binding merge.

        2007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/32456
* io/unit.c (filename_from_unit): Don't use find_unit, instead search
for unit directly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126238 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.dg/c99-math.h: Fix typo.
ghazi [Mon, 2 Jul 2007 21:27:45 +0000 (21:27 +0000)]
* gcc.dg/c99-math.h: Fix typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126235 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * tree.h (alias_sets_might_conflict_p): Rename into
ebotcazou [Mon, 2 Jul 2007 20:01:32 +0000 (20:01 +0000)]
* tree.h (alias_sets_might_conflict_p): Rename into
alias_sets_must_conflict_p.
* alias.c (alias_sets_might_conflict_p): Likewise.
(alias_sets_conflict_p): Use it.
(objects_must_conflict_p): Likewise.
* c-common.c (strict_aliasing_warning): Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126233 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 2 Jul 2007 19:46:19 +0000 (19:46 +0000)]
2007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>

        * Makefile.in:  Regenerated with automake 1.9.6.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126232 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Mon, 2 Jul 2007 19:40:30 +0000 (19:40 +0000)]
2007-07-02  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * rtlhooks.c (gen_lowpart_if_possible): Check for
        invalid subreg before calling gen_lowpart_SUBREG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126230 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/darwin9.h: Add copyright notice.
geoffk [Mon, 2 Jul 2007 19:36:14 +0000 (19:36 +0000)]
* config/darwin9.h: Add copyright notice.
(LINK_COMMAND_SPEC): Add comment.
(DARWIN_LIBSYSTEM_HAS_UNWIND): Define.
* config/rs6000/darwin.h (MD_UNWIND_SUPPORT): Conditionalise on
DARWIN_LIBSYSTEM_HAS_UNWIND.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126229 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR libgomp/32468
jakub [Mon, 2 Jul 2007 19:22:47 +0000 (19:22 +0000)]
PR libgomp/32468
* omp-low.c (check_combined_parallel): New function.
(lower_omp_parallel): Call it via walk_stmts, set
OMP_PARALLEL_COMBINED if appropriate.
(determine_parallel_type): If OMP_FOR resp. OMP_SECTIONS
isn't the only statement in WS_ENTRY_BB or OMP_RETURN
the only one in PAR_EXIT_BB and not OMP_PARALLEL_COMBINED,
don't consider it as combined parallel.

* gcc.dg/gomp/pr32468-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126226 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Mon, 2 Jul 2007 19:20:33 +0000 (19:20 +0000)]
gcc/
* configure.ac (gcc_gxx_include_dir): Use $(libsubdir_to_prefix).
(gcc_tooldir): Likewise.
* configure: Regenerate.
* Makefile.in (libsubdir_to_prefix): New variable, based on the
old configure.ac gcc_tooldir setting.
(prefix_to_exec_prefix): New variable.
(DRIVER_DEFINES): Use $(libsubdir_to_prefix)$(prefix_to_exec_prefix)
rather than $(unlibsubdir)/../ to derive TOOLDIR_BASE_PREFIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126225 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR libgomp/32468
jakub [Mon, 2 Jul 2007 19:19:28 +0000 (19:19 +0000)]
PR libgomp/32468
* sections.c (GOMP_parallel_sections_start): Only decrease
number of threads to COUNT if dyn_var is true.
* testsuite/libgomp.c/pr32468.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126224 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/testsuite/
rsandifo [Mon, 2 Jul 2007 19:08:33 +0000 (19:08 +0000)]
gcc/testsuite/
* gcc.target/mips/mips.exp (setup_mips_tests): Treat -mfp* as
an ABI option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126223 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Daniel Berlin <dberlin@dberlin.org>
dberlin [Mon, 2 Jul 2007 18:27:46 +0000 (18:27 +0000)]
2007-07-02  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/32583
Fix PR tree-optimization/32584
* tree-ssa-pre.c (phi_translate): Always pass seen bitmap.
(phi_translate_set): Use phi_translate directly now.
(make_values_for_stmt): Don't value number RHS if we already know
it is constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126222 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Simon Baldwin <simonb@google.com>
simonb [Mon, 2 Jul 2007 18:08:56 +0000 (18:08 +0000)]
2007-07-02  Simon Baldwin  <simonb@google.com>

        * MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126221 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Mon, 2 Jul 2007 18:01:09 +0000 (18:01 +0000)]
2007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>

        * Makefile.in:  Remove extraneous kill.lo rule.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126220 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Simon Baldwin <simonb@google.com>
simonb [Mon, 2 Jul 2007 17:57:57 +0000 (17:57 +0000)]
2007-07-02  Simon Baldwin  <simonb@google.com>

        * parser.c (cp_parser_elaborated_type_specifier): Added a warning
        for inner-style nested forward declarations that don't declare
        anything useful.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126219 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * g++.dg/lookup/using16.C: Merge dg-errors with common line.
aaw [Mon, 2 Jul 2007 17:28:53 +0000 (17:28 +0000)]
* g++.dg/lookup/using16.C: Merge dg-errors with common line.
* g++.dg/lookup/using17.C: Merge dg-errors with common line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126218 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Simon Baldwin <simonb@google.com>
simonb [Mon, 2 Jul 2007 17:25:37 +0000 (17:25 +0000)]
2007-07-02  Simon Baldwin <simonb@google.com>

        * argv.c (writeargv): Removed declaration of unused variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126217 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/31684
sje [Mon, 2 Jul 2007 17:15:35 +0000 (17:15 +0000)]
PR target/31684
* haifa-sched.c (add_to_speculative_block): Change copy_rtx to
copy_insn.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126216 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoForgot to delete these during yesterdays commit.
jb [Mon, 2 Jul 2007 16:21:37 +0000 (16:21 +0000)]
Forgot to delete these during yesterdays commit.

2007-07-02  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/32239
* generated/pow_r*_i4.c: Removed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126215 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * ChangeLog: Add following to my previous description:
uros [Mon, 2 Jul 2007 15:15:39 +0000 (15:15 +0000)]
    * ChangeLog: Add following to my previous description:

        (if_convertible_loop_p): Clear aux field of incoming edges if bb
        contains phi node.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126214 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR boehm-gc/21940
ro [Mon, 2 Jul 2007 14:56:58 +0000 (14:56 +0000)]
PR boehm-gc/21940
PR boehm-gc/21942
* configure.ac (GC_SOLARIS_THREADS): Don't define on *-*-solaris*.
Use alternate thread library in /usr/lib/lwp.
* configure: Regenerate.
* dyn_load.c: Use GC_SOLARIS_PTHREADS.
* include/gc_config_macros.h (GC_SOLARIS_THREADS): Don't define.
* include/private/gcconfig.h: Handle 64-bit Solaris 2/x86.
(GC_SOLARIS_THREADS): Don't define.
* include/private/solaris_threads.h: Remove.
* pthread_support.c (GC_thr_init) [GC_SOLARIS_PTHREADS]: Determine
GC_nprocs via sysconf().
* Makefile.am (libgcjgc_la_SOURCES): Remove solaris_pthreads.c and
solaris_threads.c.
(gctest_LDADD): Use THREADLIBS instead of THREADDLLIBS.
* Makefile.in: Regenerate.
* solaris_pthreads.c: Remove.
* solaris_threads.c: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126211 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR libgcj/30513
ro [Mon, 2 Jul 2007 14:48:28 +0000 (14:48 +0000)]
PR libgcj/30513
* configure.host (i[3-6]86-*): Undef sun.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126210 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR libgomp/26308
ro [Mon, 2 Jul 2007 14:38:13 +0000 (14:38 +0000)]
PR libgomp/26308
* config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126208 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Mon, 2 Jul 2007 14:37:15 +0000 (14:37 +0000)]
gcc/
2007-07-02  Sandra Loosemore  <sandra@codesourcery.com>
    Richard Sandiford  <richard@codesourcery.com>
    Nigel Stephens  <nigel@mips.com>

* config/mips/mips-protos.h (mips16e_save_restore_info): New struct.
(mips16e_output_save_restore): Declare.
(mips16e_save_restore_pattern_p): Likewise.
* config/mips/mips.h (GENERATE_MIPS16E_SAVE_RESTORE): New macro.
* config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Return 0x7f8
for GENERATE_MIPS16E_SAVE_RESTORE.  Return 0x400 for TARGET_MIPS16
&& !GENERATE_MIPS16E_SAVE_RESTORE && !TARGET_64BIT.
(BITSET_P): New global macro, extracted from...
(mips_for_each_saved_reg): ...here.
(mips16e_save_restore_info): New struct.
(mips16e_s2_s8_regs, mips16e_a0_a3_regs): New variables.
(mips16e_save_restore_regs): New variable.
(mips_split_plus, mips16e_find_first_register): New functions.
(mips16e_mask_registers): New function.
(compute_frame_size): Expand the commentary before the function.
Enforce the MIPS16e save and restore register range restrictions.
Pad the general register save area at the low end.
(mips16e_save_restore_reg, mips16e_build_save_restore)
(mips16e_save_restore_pattern_p, mips16e_add_register_range)
(mips16e_output_save_restore, mips16e_collect_propagate_value)
(mips16e_collect_argument_save, mips16e_collect_argument_saves):
New functions.
(mips_expand_prologue, mips_expand_epilogue): Handle
GENERATE_MIPS16E_SAVE_RESTORE.
* config/mips/mips.md (*mips16e_save_restore): New pattern.

gcc/testsuite/
* gcc.target/mips/save-restore-1.c: New test.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126207 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR tree-optimization/31966
uros [Mon, 2 Jul 2007 14:26:11 +0000 (14:26 +0000)]
PR tree-optimization/31966
PR tree-optimization/32533
* tree-if-conv.c (add_to_dst_predicate_list): Use "edge", not
"basic_block" description as its third argument.  Update function
calls to get destination bb from "edge" argument.  Save "cond" into
aux field of the edge.  Update prototype for changed arguments.
(find_phi_replacement_condition): Operate on incoming edges, not
on predecessor blocks.  If there is a condition saved in the
incoming edge aux field, AND it with incoming bb predicate.
Return source bb of the first edge.
(clean_predicate_lists): Clean aux field of outgoing node edges.
(tree_if_conversion): Do not initialize cond variable. Move
variable declaration into the loop.
(replace_phi_with_cond_gimple_modify_stmt): Remove unneded
initializations of new_stmt, arg0 and arg1 variables.

testsuite/ChangeLog:

PR tree-optimization/31966
PR tree-optimization/32533
* gcc.dg/tree-ssa/pr31966.c: New runtime test.
* gfortran.dg/pr32533.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126206 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFixed Changelog entry on unreverted patch.
zadeck [Mon, 2 Jul 2007 14:01:31 +0000 (14:01 +0000)]
Fixed Changelog entry on unreverted patch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126205 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 2 Jul 2007 13:29:57 +0000 (13:29 +0000)]
2007-07-02  Richard Guenther  <rguenther@suse.de>

* testsuite/ChangeLog: Remove conflict marker, fix typo in date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126204 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Mon, 2 Jul 2007 13:11:13 +0000 (13:11 +0000)]
2007-07-02  Douglas Gregor  <doug.gregor@gmail.com>

        * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
        Tweak line numbers.
        * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
        Ditto.
        * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
        Don't try to create an unsigned wchar_t.
        * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
        Don't try to create an unsigned wchar_t.
        * testsuite/util/testsuite_hooks.h: Remove a stray semicolon.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126203 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR c++/31748
jakub [Mon, 2 Jul 2007 12:59:49 +0000 (12:59 +0000)]
PR c++/31748
* semantics.c (finish_omp_clauses): Use %qD instead of %qE for
DECL_P in not a variable and appears more than once error messages.

* g++.dg/gomp/pr31748.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126201 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * tree-nrv.c (dest_safe_for_nrv_p): Grok any handled_component_p,
jakub [Mon, 2 Jul 2007 12:57:22 +0000 (12:57 +0000)]
* tree-nrv.c (dest_safe_for_nrv_p): Grok any handled_component_p,
SSA_NAMEs, RESULT_DECLs and PARM_DECLs.

* g++.dg/opt/nrv12.C: New test.
* gcc.target/i386/nrv1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126200 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 2 Jul 2007 12:13:39 +0000 (12:13 +0000)]
2007-07-02  Richard Guenther  <rguenther@suse.de>

* tree-ssa.c (useless_type_conversion_p): Document
future intent as defining the middle-end type system.
Re-structure to call langhook last, group by type class,
mark questionable parts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126199 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 2 Jul 2007 11:53:08 +0000 (11:53 +0000)]
2007-07-02  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (types_compatible_p): Declare.
* tree-ssa.c (types_compatible_p): New function.
* ipa-type-escape.c (discover_unique_type): Use
types_compatible_p instead of lang_hooks.types_compatible_p.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
* tree-vn.c (expressions_equal_p): Likewise.
* tree.c (fields_compatible_p): Likewise.
* tree-ssa-dom.c (avail_expr_eq): Likewise.
(cprop_operand): Use useless_type_conversion_p instead of
lang_hooks.types_compatible_p.
* tree-inline.c (setup_one_parameter): Likewise.
(declare_return_variable): Likewise.
* tree-nrv.c (tree_nrv): Likewise.
* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Likewise.
(maybe_fold_offset_to_component_ref): Likewise.
(maybe_fold_offset_to_reference): Likewise.
* tree-ssa-copy.c (may_propagate_copy): Likewise.
(merge_alias_info): Likewise.
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
* tree-ssa-phiopt.c (conditional_replacement): Likewise.
* tree-ssa-reassoc.c (optimize_ops_list): Likewise.
* tree-tailcall.c (find_tail_calls): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* gimplify.c (canonicalize_addr_expr): Likewise.
(fold_indirect_ref_rhs): Likewise.
(gimplify_addr_expr): Likewise.  Swap parameters to cpt_same_type.
(cpt_same_type): Likewise.
(check_pointer_types_r): Swap parameters to cpt_same_type
where appropriate.
* fold-const.c (fold_convert): Revert fix for PR15988.
* tree-inline.c (setup_one_parameter): Instead fix it here by
using fold_build1 instead of fold_convert and checking for
error_mark_node.  Convert only if the conversion is necessary.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126198 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * configure.ac: Check for .gnu_attribute on Power.
jsm28 [Mon, 2 Jul 2007 10:46:35 +0000 (10:46 +0000)]
* configure.ac: Check for .gnu_attribute on Power.
* configure: Regenerate.
* config/rs6000/rs6000.c (rs6000_file_start): If supported, output
attribute for floating-point ABI.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126197 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR tree-optimization/32230
irar [Mon, 2 Jul 2007 10:27:27 +0000 (10:27 +0000)]
PR tree-optimization/32230
PR tree-optimization/32477
* tree-vect-analyze.c (vect_analyze_data_refs): Fail if base
address is a constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126196 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Mon, 2 Jul 2007 10:11:56 +0000 (10:11 +0000)]
gcc/
* config.gcc (mipsisa32-*-elf*, mipsisa32el-*-elf*)
(mipsisa32r2-*-elf*, mipsisa32r2el-*-elf*)
(mipsisa64-*-elf*, mipsisa64el-*-elf*): Combine top-level
stanzas.  Use the first part of the triplet to set MIPS_ISA_DEFAULT.
Remove redundant setting of MASK_FLOAT64 and MASK_64BIT for the
64-bit targets.  Add support for *-elfoabi*.
* config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Use
different settings if $(tm_defines) does not select the EABI.
(MULTILIB_EXCLUSIONS): Define in those circumstances.
* config/mips/mips.h (MIPS_ISA_LEVEL_OPTION_SPEC): New macro.
(MIPS_ARCH_OPTION_SPEC): Likewise.
(MIPS_ISA_LEVEL_SPEC): Likewise.
(OPTION_DEFAULT_SPECS): Use MIPS_ARCH_OPTION_SPEC.
* config/mips/elfoabi.h: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126195 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 2 Jul 2007 09:18:14 +0000 (09:18 +0000)]
2007-07-02  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (tree_ssa_useless_type_conversion_1): Rename to ...
(useless_type_conversion_p): ... this.
* tree-ssa.c (tree_ssa_useless_type_conversion_1): Rename to ...
(useless_type_conversion_p): ... this.
* builtins.c (fold_builtin_memory_op): Rename
tree_ssa_useless_type_conversion_1 to useless_type_conversion_p.
* tree-cfg.c (verify_expr): Likewise.
* tree-ssa-address.c (tree_ssa_useless_type_conversion_1): Likewise.
* tree-ssa-ccp.c (ccp_fold): Likewise.
* tree-ssa-copy.c (may_propagate_copy): Likewise.
* tree-ssa-dom.c (eliminate_redundant_computations): Likewise.
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Likewise.
* tree-ssa-loop-niter.c (refine_bounds_using_guard): Likewise.
* tree-ssa-pre.c (eliminate): Likewise.
* tree-ssa.c (delete_tree_ssa): Likewise.
(tree_ssa_useless_type_conversion): Likewise.
* tree.c (build2_stat): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126194 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 2 Jul 2007 08:33:26 +0000 (08:33 +0000)]
2007-07-02  Paolo Bonzini  <bonzini@gnu.org>

* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126193 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 2 Jul 2007 08:32:13 +0000 (08:32 +0000)]
2007-07-02  Tobias Burnus  <burnus@net-b.de>

* gfortran.texi (Fortran 2003): Add ISO Bind C.
* intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126192 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-02 Kai Tietz <kai.tietz@onevision.com>
bonzini [Mon, 2 Jul 2007 08:19:12 +0000 (08:19 +0000)]
2007-07-02  Kai Tietz   <kai.tietz@onevision.com>

* Makefile.def: Add windmc tool to build.
* Makefile.tpl: Likewise.
* configure.ac: Likewise.
* Makefile.in: Regenerate.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126191 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoAdd missing test from last commit
dberlin [Mon, 2 Jul 2007 04:55:48 +0000 (04:55 +0000)]
Add missing test from last commit
Fixup two existing C++ tests for SCCVN changes

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126187 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Daniel Berlin <dberlin@dberlin.org>
dberlin [Mon, 2 Jul 2007 04:35:37 +0000 (04:35 +0000)]
2007-07-01  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/32571
* tree-ssa-sccvn.c (visit_use): Shortcut copies to avoid
simplifying them.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126186 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
kargl [Mon, 2 Jul 2007 02:47:21 +0000 (02:47 +0000)]
2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>

* interface.c (gfc_compare_derived_types): Special case for comparing
derived types across namespaces.
(gfc_compare_types): Deal with BT_VOID.
(compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
* trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
to SCALAR
(gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and
NULL_FUNPTR.
(gfc_conv_expr): Convert expressions for ISO C Binding derived types.
* symbol.c (gfc_set_default_type): BIND(C) variables should not be
implicitly declared.
(check_conflict): Add BIND(C) and check for conflicts.
(gfc_add_explicit_interface): Whitespace.
(gfc_add_is_bind_c): New function.
(gfc_copy_attr): Use it.
(gfc_new_symbol): Initialize ISO C Binding objects.
(get_iso_c_binding_dt):  New function.
(verify_bind_c_derived_type): Ditto.
(gen_special_c_interop_ptr): Ditto.
(add_formal_arg): Ditto.
(gen_cptr_param): Ditto.
(gen_fptr_param): Ditto.
(gen_shape_param): Ditto.
(add_proc_interface): Ditto.
(build_formal_args): Ditto.
(generate_isocbinding_symbol):  Ditto.
(get_iso_c_sym):  Ditto.
* decl.c (num_idents_on_line, has_name_equals): New variables.
(verify_c_interop_param): New function.
(build_sym): Finish binding labels and deal with COMMON blocks.
(add_init_expr_to_sym): Check if the initialized expression is
an iso_c_binding named constants
(variable_decl): Set ISO C Binding type_spec components.
(gfc_match_kind_spec): Check match for C interoperable kind.
(match_char_spec): Fix comment. Chnage gfc_match_small_int
to gfc_match_small_int_expr.  Check for C interoperable kind.
(match_type_spec): Clear the current binding label.
(match_attr_spec): Add DECL_IS_BIND_C.  If BIND(C) is found, use it
to set attributes.
(set_binding_label): New function.
(set_com_block_bind_c): Ditto.
(verify_c_interop): Ditto.
(verify_com_block_vars_c_interop): Ditto.
(verify_bind_c_sym): Ditto.
(set_verify_bind_c_sym): Ditto.
(set_verify_bind_c_com_block): Ditto.
(get_bind_c_idents): Ditto.
(gfc_match_bind_c_stmt): Ditto.
(gfc_match_data_decl): Use num_idents_on_line.
(match_result): Deal with right paren in BIND(C).
(gfc_match_suffix): New function.
(gfc_match_function_decl): Use it.  Code is re-arranged to deal with
ISO C Binding result clauses.
(gfc_match_subroutine):  Deal with BIND(C).
  (gfc_match_bind_c): New function.
(gfc_get_type_attr_spec): New function.  Code is re-arranged in and
taken from gfc_match_derived_decl.
(gfc_match_derived_decl): Add check for BIND(C).
* trans-common.c: Forward declare gfc_get_common.
(gfc_sym_mangled_common_id): Change arg from 'const char *name' to
'gfc_common_head *com'.  Check for ISO C Binding of the common block.
(build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
* gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
(bt): Add BT_VOID
(sym_flavor): Add FL_VOID.
  (iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
(CInteropKind_t): New struct.
(c_interop_kinds_table): Use it.  Declare an array of structs.
(symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
bitfields.
(gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
(gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
common_block members.
(gfc_common_head): Add binding_label and is_bind_c members.
(gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
Add prototypes for get_c_kind, gfc_validate_c_kind,
gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
verify_bind_c_derived_type, verify_com_block_vars_c_interop,
generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
* iso-c-binding.def: New file. This file contains the definitions
of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
module.
* trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
 or C_NULL_FUNPTR expressions.
* expr.c (gfc_copy_expr): Add BT_VOID case.  For BT_CHARACTER, the
ISO C Binding requires a minimum string length of 1 for '\0'.
* module.c (intmod_sym): New struct.
(pointer_info): Add binding_label member.
(write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
(ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
(attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
(mio_symbol_attribute): Deal with ISO C Binding attributes.
(bt_types): Add "VOID".
(mio_typespec): Deal with ISO C Binding components.
(mio_namespace_ref): Add intmod variable.
(mio_symbol): Check for symbols from an intrinsic module.
(load_commons): Check for BIND(C) common block.
(read_module): Read binding_label and use it.
(write_common): Add label.  Write BIND(C) info.
(write_blank_common): Blank commons are not BIND(C).  Explicitly
set is_bind_c=0.
(write_symbol): Deal with binding_label.
(sort_iso_c_rename_list): New function.
(import_iso_c_binding_module): Ditto.
(create_int_parameter): Add to args.
(use_iso_fortran_env_module): Adjust to deal with iso_c_binding
intrinsic module.
* trans-types.c (c_interop_kinds_table): new array of structs.
(gfc_validate_c_kind): New function.
(gfc_check_any_c_kind): Ditto.
(get_real_kind_from_node): Ditto.
(get_int_kind_from_node): Ditto.
(get_int_kind_from_width): Ditto.
(get_int_kind_from_minimal_width): Ditto.
(init_c_interop_kinds): Ditto.
(gfc_init_kinds): call init_c_interop_kinds.
(gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
Adjust handling of BT_DERIVED.
(gfc_sym_type): Whitespace.
(gfc_get_derived_type):  Account for iso_c_binding derived types
* resolve.c (is_scalar_expr_ptr): New function.
(gfc_iso_c_func_interface): Ditto.
(resolve_function): Use gfc_iso_c_func_interface.
(set_name_and_label): New function.
(gfc_iso_c_sub_interface): Ditto.
(resolve_specific_s0): Use gfc_iso_c_sub_interface.
(resolve_bind_c_comms): New function.
(resolve_bind_c_derived_types): Ditto.
(gfc_verify_binding_labels): Ditto.
(resolve_fl_procedure): Check for ISO C interoperability.
(resolve_symbol): Check C interoperability.
(resolve_types): Walk the namespace.  Check COMMON blocks.
* trans-decl.c (gfc_sym_mangled_identifier):  Prevent the mangling
of identifiers that have an assigned binding label.
(gfc_sym_mangled_function_id): Use the binding label rather than
the mangled name.
(gfc_finish_var_decl): Put variables that are BIND(C) into a common
segment of the object file, because this is what C would do.
(gfc_create_module_variable): Conver to proper types
(set_tree_decl_type_code): New function.
(generate_local_decl): Check dummy variables and derived types for
ISO C Binding attributes.
* match.c (gfc_match_small_int_expr): New function.
(gfc_match_name_C): Ditto.
(match_common_name): Deal with ISO C Binding in COMMON blocks
* trans-io.c (transfer_expr):  Deal with C_NULL_PTR or C_NULL_FUNPTR
expressions
* match.h: Add prototypes for gfc_match_small_int_expr,
gfc_match_name_C, match_common_name, set_com_block_bind_c,
set_binding_label, set_verify_bind_c_sym,
set_verify_bind_c_com_block, get_bind_c_idents,
gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
gfc_get_type_attr_spec
* parse.c (decode_statement): Use gfc_match_bind_c_stmt
(parse_derived): Init *derived_sym = NULL, and gfc_current_block
later for valiadation.
* primary.c (got_delim): Set ISO C Binding components of ts.
(match_logical_constant): Ditto.
(match_complex_constant): Ditto.
(match_complex_constant): Ditto.
(gfc_match_rvalue): Check for existence of at least one arg for
C_LOC, C_FUNLOC, and C_ASSOCIATED.
* misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
(get_c_kind): New function.

2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>

* Makefile.in: Add support for iso_c_generated_procs.c and
iso_c_binding.c.
* Makefile.am: Ditto.
* intrinsics/iso_c_generated_procs.c: New file containing helper
functions.
* intrinsics/iso_c_binding.c: Ditto.
* intrinsics/iso_c_binding.h: New file
* gfortran.map: Include the __iso_c_binding_c_* functions.
* libgfortran.h: define GFC_NUM_RANK_BITS.

2007-06-23  Christopher D. Rickett  <crickett@lanl.gov>

* bind_c_array_params.f03: New files for Fortran 2003 ISO C Binding.
* bind_c_coms.f90: Ditto.
* bind_c_coms_driver.c: Ditto.
* bind_c_dts.f90: Ditto.
* bind_c_dts_2.f03: Ditto.
* bind_c_dts_2_driver.c: Ditto.
* bind_c_dts_3.f03: Ditto.
* bind_c_dts_4.f03: Ditto.
* bind_c_dts_driver.c: Ditto.
* bind_c_implicit_vars.f03: Ditto.
* bind_c_procs.f03: Ditto.
* bind_c_usage_2.f03: Ditto.
* bind_c_usage_3.f03: Ditto.
* bind_c_usage_5.f03: Ditto.
* bind_c_usage_6.f03: Ditto.
* bind_c_usage_7.f03: Ditto.
* bind_c_vars.f90: Ditto.
* bind_c_vars_driver.c: Ditto.
* binding_c_table_15_1.f03: Ditto.
* binding_label_tests.f03: Ditto.
* binding_label_tests_10.f03: Ditto.
* binding_label_tests_10_main.f03: Ditto.
* binding_label_tests_11.f03: Ditto.
* binding_label_tests_11_main.f03: Ditto.
* binding_label_tests_12.f03: Ditto.
* binding_label_tests_13.f03: Ditto.
* binding_label_tests_13_main.f03: Ditto.
* binding_label_tests_14.f03: Ditto.
* binding_label_tests_2.f03: Ditto.
* binding_label_tests_3.f03: Ditto.
* binding_label_tests_4.f03: Ditto.
* binding_label_tests_5.f03: Ditto.
* binding_label_tests_6.f03: Ditto.
* binding_label_tests_7.f03: Ditto.
* binding_label_tests_8.f03: Ditto.
* binding_label_tests_9.f03: Ditto.
* c_assoc.f90: Ditto.
* c_assoc_2.f03: Ditto.
* c_f_pointer_shape_test.f90: Ditto.
* c_f_pointer_tests.f90: Ditto.
* c_f_tests_driver.c: Ditto.
* c_funloc_tests.f03: Ditto.
* c_funloc_tests_2.f03: Ditto.
* c_funloc_tests_3.f03: Ditto.
* c_funloc_tests_3_funcs.c: Ditto.
* c_kind_params.f90: Ditto.
* c_kind_tests_2.f03: Ditto.
* c_kinds.c: Ditto.
* c_loc_driver.c: Ditto.
* c_loc_test.f90: Ditto.
* c_loc_tests_2.f03: Ditto.
* c_loc_tests_2_funcs.c: Ditto.
* c_loc_tests_3.f03: Ditto.
* c_loc_tests_4.f03: Ditto.
* c_loc_tests_5.f03: Ditto.
* c_loc_tests_6.f03: Ditto.
* c_loc_tests_7.f03: Ditto.
* c_loc_tests_8.f03: Ditto.
* c_ptr_tests.f03: Ditto.
* c_ptr_tests_10.f03: Ditto.
* c_ptr_tests_5.f03: Ditto.
* c_ptr_tests_7.f03: Ditto.
* c_ptr_tests_7_driver.c: Ditto.
* c_ptr_tests_8.f03: Ditto.
* c_ptr_tests_8_funcs.c: Ditto.
* c_ptr_tests_9.f03: Ditto.
* c_ptr_tests_driver.c: Ditto.
* c_size_t_driver.c: Ditto.
* c_size_t_test.f03: Ditto.
* com_block_driver.f90: Ditto.
* global_vars_c_init.f90: Ditto.
* global_vars_c_init_driver.c: Ditto.
* global_vars_f90_init.f90: Ditto.
* global_vars_f90_init_driver.c: Ditto.
* interop_params.f03: Ditto.
* iso_c_binding_only.f03: Ditto.
* iso_c_binding_rename_1.f03: Ditto.
* iso_c_binding_rename_1_driver.c: Ditto.
* iso_c_binding_rename_2.f03: Ditto.
* iso_c_binding_rename_2_driver.c: Ditto.
* kind_tests_2.f03: Ditto.
* kind_tests_3.f03: Ditto.
* module_md5_1.f90: Ditto.
* only_clause_main.c: Ditto.
* print_c_kinds.f90: Ditto.
* test_bind_c_parens.f03: Ditto.
* test_c_assoc.c: Ditto.
* test_com_block.f90: Ditto.
* test_common_binding_labels.f03: Ditto.
* test_common_binding_labels_2.f03: Ditto.
* test_common_binding_labels_2_main.f03: Ditto.
* test_common_binding_labels_3.f03: Ditto.
* test_common_binding_labels_3_main.f03: Ditto.
* test_only_clause.f90: Ditto.
* use_iso_c_binding.f90: Ditto.
* value_5.f90: Ditto.
* value_test.f90: Ditto.
* value_tests_f03.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126185 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Mon, 2 Jul 2007 02:33:26 +0000 (02:33 +0000)]
2007-07-01  Douglas Gregor  <doug.gregor@gmail.com>

* include/std/type_traits (__make_unsigned): Remove invalid
wchar_t specialization.
(__make_signed): Remove invalid wchar_t specialization.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126184 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Mon, 2 Jul 2007 00:17:06 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126182 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Daniel Berlin <dberlin@dberlin.org>
dberlin [Sun, 1 Jul 2007 23:41:38 +0000 (23:41 +0000)]
2007-07-01  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle constants
and ohter expected operations explicitly, change default to
gcc_unreachable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126179 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * config/arm/arm.c (arm_cannot_copy_insn_p): Do not expect a
drow [Sun, 1 Jul 2007 21:15:14 +0000 (21:15 +0000)]
* config/arm/arm.c (arm_cannot_copy_insn_p): Do not expect a
PARALLEL.
* config/arm/arm.md (pic_add_dot_plus_four, pic_add_dot_plus_eight)
(tls_load_dot_plus_eight): Move the label number into the unspec.
* config/arm/thumb2.md (pic_load_dot_plus_four): Likewise.

* gcc.dg/tls/opt-14.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126178 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * name-lookup.c (ambiguous_decl): Fix case when new->value is hidden.
aaw [Sun, 1 Jul 2007 20:49:29 +0000 (20:49 +0000)]
* name-lookup.c (ambiguous_decl): Fix case when new->value is hidden.
(select_decl): Remove function.
(unqualified_namespace_lookup): Populate binding by calling
ambiguous_decl.  Remove select_decl call.
(lookup_qualified_name): Remove select_decl call.
* decl.c (lookup_and_check_tag): Check for ambiguous references.
* parser.c (cp_parser_elaborated_type_specifier): Skip redundant error
generation when name lookup is ambiguous.

* g++.dg/lookup/using16.C: New test.
* g++.dg/lookup/using17.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126177 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/fortran:
jb [Sun, 1 Jul 2007 16:24:38 +0000 (16:24 +0000)]
gcc/fortran:

2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/32239
* trans-expr.c (gfc_conv_power_op): Use builtin_powi for
real**int4 powers.
* f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
builtins table.

libgfortran:

2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/32239
* Makefile.am: Don't generate real**int4 pow functions.
* gfortran.map: Remove real**int4 pow symbols.
* Makefile.in: Regenerated.

testsuite

2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/32239
* gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90
(test_4): Use proper test for floating point equality.
(test_8): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126175 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 1 Jul 2007 15:49:37 +0000 (15:49 +0000)]
2007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/32554
* gfortran.dg/fmt_p_1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126174 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 1 Jul 2007 15:46:33 +0000 (15:46 +0000)]
2007-07-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/32554
* io/write.c (output_float): Set edigits to a fixed size, avoiding
variation in field width calculation and eliminate buffer overrun.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126173 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * dwarf2out.c (initial_return_save): Define only if used.
schwab [Sun, 1 Jul 2007 15:28:34 +0000 (15:28 +0000)]
* dwarf2out.c (initial_return_save): Define only if used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126170 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-07-01 Richard Sandiford <richard@codesourcery.com>
zadeck [Sun, 1 Jul 2007 14:43:47 +0000 (14:43 +0000)]
2007-07-01  Richard Sandiford  <richard@codesourcery.com>

Unreverting Richard's Revert of:

2007-06-27  Richard Sandiford  <richard@codesourcery.com>

* dce.c (deletable_insn_p_1): New function, split out from...
(deletable_insn_p): ...here.  Only treat bare USEs and CLOBBERs
specially, not those inside PARALLELs.  Remove BODY argument
and adjust recursive call accordingly.
(prescan_insns_for_dce): Update call to delete_insn_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126168 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix missed initialization of scc_nodes.
revitale [Sun, 1 Jul 2007 14:03:51 +0000 (14:03 +0000)]
Fix missed initialization of scc_nodes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126167 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agofortran frontend:
jb [Sun, 1 Jul 2007 12:08:59 +0000 (12:08 +0000)]
fortran frontend:

2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>

* trans.h: Remove decls for 64-bit allocation functions.
* trans-array.c (gfc_grow_array): Always pick the standard realloc
function decl.
(gfc_array_allocate): Likewise.
* trans-decl.c: Remove trees for 64-bit allocation functions.
(gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
allocations functions, use index_int_type for normal allocation
functions.

libgfortran changelog:

2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>

* runtime/memory.c (internal_realloc): Use index_type for size
argument instead of GFC_INTEGER_4.
(allocate_array): Likewise.
(allocate): Likewise, add ifdef around unnecessary check.
(internal_reallo64): Remove.
(allocate_array64): Remove.
(allocate64): Remove.
* gfortran.map: Remove symbols for 64-bit allocation functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126166 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.dg/vect/vect-strided-store-u16-i4.c: Remove abort() from input
irar [Sun, 1 Jul 2007 11:52:45 +0000 (11:52 +0000)]
* gcc.dg/vect/vect-strided-store-u16-i4.c: Remove abort() from input
initialization and fix dg-final check - the initialization loop is
vectorizable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126165 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR middle-end/32559
uros [Sun, 1 Jul 2007 10:38:03 +0000 (10:38 +0000)]
    PR middle-end/32559
        * fold-const.c (fold-binary) [PLUS_EXPR]: Convert ~X + X to 1 or
        X + ~X to 1 only for INTEGRAL_TYPE_P type.

testsuite/ChangeLog:

        PR middle-end/32559
        * gcc.dg/pr32559.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126164 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR tree-optimization/25371
uros [Sun, 1 Jul 2007 10:30:31 +0000 (10:30 +0000)]
   PR tree-optimization/25371
       * gcc.dg/vect/pr25371.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126163 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Daniel Berlin <dberlin@dberlin.org>
dberlin [Sun, 1 Jul 2007 02:20:06 +0000 (02:20 +0000)]
2007-06-30  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-pre.c (is_exception_related): New function
(can_value_number_operation): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126162 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoDaily bump.
gccadmin [Sun, 1 Jul 2007 00:17:08 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126160 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * configure.ac: Check for .gnu_attribute on MIPS.
jsm28 [Sat, 30 Jun 2007 22:01:30 +0000 (22:01 +0000)]
* configure.ac: Check for .gnu_attribute on MIPS.
* configure, config.in: Regenerate.
* config/mips/mips.c (mips_file_start): If supported, output
attribute for floating-point ABI.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126157 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc.c-torture/execute/20051113-1.c (main): Use the correct type
froydnj [Sat, 30 Jun 2007 17:40:45 +0000 (17:40 +0000)]
* gcc.c-torture/execute/20051113-1.c (main): Use the correct type
when allocating and initializing a flexible array.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126156 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * gcc_update (files_and_dependencies): Handle
hp [Sat, 30 Jun 2007 17:17:14 +0000 (17:17 +0000)]
* gcc_update (files_and_dependencies): Handle
gcc/testsuite/gcc.dg/cpp/direct2s.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126155 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago PR target/32433
uros [Sat, 30 Jun 2007 17:05:49 +0000 (17:05 +0000)]
    PR target/32433
        * config/i386/i386.md (ffssi2): Expand as ffs_cmove for TARGET_CMOVE.
        (ffs_cmove): New expander to expand using ctz pattern.
        (*ffs_cmove): Remove pattern.
        (*ffs_no_cmove): Enable only for !TARGET_CMOVE.
        (ffsdi2): Expand using ctz pattern.
        (*ffs_rex64): Remove pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126154 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/fortran:
dfranke [Sat, 30 Jun 2007 16:26:55 +0000 (16:26 +0000)]
gcc/fortran:
2007-06-30  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/20373
* intrinsic.c (add_functions): Additional function types.
(gfc_convert_type_warn): Remove intrinsic-flag from conversion
functions.
* resolve.c (resolve_symbol): Added type checks to explicitly defined
intrinsics.

gcc/testsuite:
2007-06-28  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/20373
* gfortran.dg/intrinsic.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126153 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 30 Jun 2007 16:01:25 +0000 (16:01 +0000)]
2007-06-30  Tobias Burnus  <burnus@net-b.de>

PR fortran/32555
* io.c (check_format): Allow zero to precede the
P edit descriptor.

2007-06-30  Tobias Burnus  <burnus@net-b.de>

PR fortran/32555
* gfortran.dg/fmt_zero_check.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126152 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agoFix last ChangeLog entry.
danglin [Sat, 30 Jun 2007 15:17:27 +0000 (15:17 +0000)]
Fix last ChangeLog entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126151 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago rtl-optimization/32296
danglin [Sat, 30 Jun 2007 14:26:18 +0000 (14:26 +0000)]
rtl-optimization/32296
* pa.md (return): Delete pattern.
(return_internal): Remove "(const_int 1)" from pattern.
(epilogue): Use return_internal pattern for trivial returns.
* pa-protos.h (hppa_can_use_return_insn_p): Delete declaration.
* pa.c (hppa_can_use_return_insn_p): Delete function.  Include "df.h".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126150 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Daniel Berlin <dberlin@dberlin.org>
dberlin [Sat, 30 Jun 2007 14:15:26 +0000 (14:15 +0000)]
2007-06-30  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/32540
Fix PR tree-optimization/31651

* tree-ssa-sccvn.c: New file.

* tree-ssa-sccvn.h: Ditto.

* tree-vn.c: Include tree-ssa-sccvn.h
(val_expr_paid_d): Removed.
(value_table): Ditto.
(vn_compute): Ditto.
(val_expr_pair_hash): Ditto.
(val_expr_pair_expr_eq): Ditto.
(copy_vuses_from_stmt): Ditto.
(vn_delete): Ditto.
(vn_init): Ditto.
(shared_vuses_from_stmt): Ditto.
(print_creation_to_file): Moved up.
(sort_vuses): Ditto.
(sort_vuses_heap): Ditto.
(set_value_handle): Make non-static.
(make_value_handle): Ditto.
(vn_add): Rewritten to use sccvn lookups.
(vn_add_with_vuses): Ditto.
(vn_lookup): Ditto (and second argument removed).
(vn_lookup_with_vuses): Ditto.
(vn_lookup_or_add): Ditto (and second argument removed);
(vn_lookup_or_add_with_vuses): Ditto.
(vn_lookup_with_stmt): New.
(vn_lookup_or_add_with_stmt): Ditto.
(create_value_handle_for_expr): Ditto.

* tree-ssa-pre.c: Include tree-ssa-sccvn.h.
(seen_during_translate): New function.
(phi_trans_lookup): Use iterative_hash_expr, not vn_compute.
(phi_trans_add): Ditto.
(constant_expr_p): FIELD_DECL is always constant.
(phi_translate_1): Renamed from phi_translate, add seen bitmap.
Use constant_expr_p.
Avoid infinite recursion on mutually valued expressions.
Change callers of vn_lookup_or_add.
(phi_translate): New function.
(compute_antic_safe): Allow phi nodes.
(create_component_ref_by_pieces): Update for FIELD_DECL change.
(find_or_generate_expression): Rewrite slightly.
(create_expression_by_pieces): Updated for vn_lookup_or_add
change.
Update VN_INFO for new names.
(insert_into_preds_of_block): Update for new names.
(add_to_exp_gen): New function.
(add_to_sets): Use vn_lookup_or_add_with_stmt.
(find_existing_value_expr): Rewrite to changed vn_lookup.
(create_value_expr_from): Ditto, and use add_to_exp_gen.
(try_look_through_load): Removed.
(try_combine_conversion): Ditto.
(get_sccvn_value): New function.
(make_values_for_phi): Ditto.
(make_values_for_stmt): Ditto.
(compute_avail): Rewritten for vn_lookup_or_add changes and to use
SCCVN.
(init_pre): Update for SCCVN changes.
(fini_pre): Ditto.
(execute_pre): Ditto.

* tree-flow.h (make_value_handle): Declare.
(set_value_handle): Ditto.
(sort_vuses_heap): Ditto.
(vn_lookup_or_add_with_stmt): Ditto.
(vn_lookup_with_stmt): Ditto.
(vn_compute): Remove.
(vn_init): Ditto.
(vn_delete): Ditto.
(vn_lookup): Update arguments.

* Makefile.in (tree-ssa-pre.o): Add tree-ssa-sccvn.h
(tree-vn.o): Ditto.
(tree-ssa-sccvn.o): New.
(OBJS-common): Add tree-ssa-sccvn.o

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126149 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Paul Thomas <pault@gcc.gnu.org>
pault [Sat, 30 Jun 2007 13:09:14 +0000 (13:09 +0000)]
2007-06-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/32472
* simplify.c (gfc_simplify_repeat): Add handling of character
literal for first argument.

2007-06-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30284
* gfortran.dg/repeat_f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126148 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Paul Thomas <pault@gcc.gnu.org>
pault [Sat, 30 Jun 2007 13:08:19 +0000 (13:08 +0000)]
2007-06-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/32472
* simplify.c (gfc_simplify_repeat): Add handling of character
literal for first argument.

2007-06-30  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30284
* gfortran.dg/repeat_f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126147 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
manu [Sat, 30 Jun 2007 13:06:45 +0000 (13:06 +0000)]
2007-06-30  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR testsuite/25241
testsuite/
* gcc.dg/cpp/20000625-1.c: Without dg-options the default is
-pedantic-errors, so we should match errors.
* gcc.dg/cpp/escape-1.c: Likewise.
* gcc.dg/cpp/charconst.c: Empty character constants are errors.
* gcc.dg/cpp/direct2.c: This is a mandatory error instead of a
warning.
* gcc.dg/cpp/endif-pedantic2.c: Use -pedantic-errors to obtain
errors instead of warnings.
* gcc.dg/cpp/extratokens.c: Use dg-warning instead of dg-error for
a pedantic warning.
* gcc.dg/cpp/arith-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126146 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
manu [Sat, 30 Jun 2007 13:02:48 +0000 (13:02 +0000)]
2007-06-30  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR testsuite/25241
testsuite/
* gcc.dg/pch/valid-1.c: Match each diagnostic with its own directive.
* gcc.dg/pch/valid-2.c: Likewise.
* gcc.dg/pch/valid-3.c: Likewise.
* gcc.dg/pch/warn-1.c: Likewise.
* gcc.dg/pch/valid-4.c: Match a warning instead of an error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126145 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago2007-06-30 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
manu [Sat, 30 Jun 2007 12:56:43 +0000 (12:56 +0000)]
2007-06-30  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR c/4076
* c-typeck.c (build_external_ref): Don't mark as used if called
from itself.
* calls.c (rtx_for_function_call): Likewise.

testsuite/
* gcc.dg/Wunused-function.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126144 138bc75d-0d04-0410-961f-82ee72b054a4

14 years agogcc/
rsandifo [Sat, 30 Jun 2007 12:23:18 +0000 (12:23 +0000)]
gcc/
Revert:

2007-06-27  Richard Sandiford  <richard@codesourcery.com>

* dce.c (deletable_insn_p_1): New function, split out from...
(deletable_insn_p): ...here.  Only treat bare USEs and CLOBBERs
specially, not those inside PARALLELs.  Remove BODY argument
and adjust recursive call accordingly.
(prescan_insns_for_dce): Update call to delete_insn_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126143 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * combine.c (combine_validate_cost): New parameter NEWOTHERPAT.
rask [Sat, 30 Jun 2007 11:28:57 +0000 (11:28 +0000)]
* combine.c (combine_validate_cost): New parameter NEWOTHERPAT.
(try_combine): Move potential calls to undo_all() so they happen
before we commit to using the combined insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126142 138bc75d-0d04-0410-961f-82ee72b054a4

14 years ago * loop-unroll.c (unroll_loop_runtime_iterations): Unshare newly emit
hubicka [Sat, 30 Jun 2007 11:16:33 +0000 (11:16 +0000)]
* loop-unroll.c (unroll_loop_runtime_iterations): Unshare newly emit
code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126141 138bc75d-0d04-0410-961f-82ee72b054a4