Uros Bizjak [Thu, 23 Aug 2007 14:23:40 +0000 (16:23 +0200)]
re PR target/17390 (missing floating point compare optimization)
PR target/17390
* config/i386/i386.c (ix86_expand_fp_compare): Expand fp comparison to
fake fcomi i387 instruction for !TARGET_CMOVE.
(ix86_expand_branch): Expand natural sequence with one jump for
all targets, not only TARGET_CMOVE.
* config/i386/i386.md (*cmpfp_0_cc): New define_insn_and_split
pattern to implement fake fcomi sequence. Split instruction after
reload to correct compare sequences.
(*cmpfp_xf_cc): Ditto.
(*cmpfp_<mode>_cc): Ditto.
(*cmpfp_u_cc): Ditto.
(*cmpfp_<mode>_cc): Ditto.
testsuite/ChangeLog:
PR target/17390
* gcc.target/i386/pr17390.c: New test.
From-SVN: r127742
Richard Guenther [Thu, 23 Aug 2007 13:36:43 +0000 (13:36 +0000)]
tree-pretty-print.c (dump_generic_node): Annotate GIMPLE_MODIFY_STMTs with volatile ops with "{v}".
2007-08-23 Richard Guenther <rguenther@suse.de>
* tree-pretty-print.c (dump_generic_node): Annotate
GIMPLE_MODIFY_STMTs with volatile ops with "{v}".
* gcc.dg/tree-ssa/fprinf-1.c: Adjust patterns.
* gcc.dg/tree-ssa/fprinf-chk-1.c: Likewise.
* gcc.dg/tree-ssa/prinf-1.c: Likewise.
* gcc.dg/tree-ssa/prinf-chk-1.c: Likewise.
* gcc.dg/tree-ssa/vfprinf-chk-1.c: Likewise.
* gcc.dg/tree-ssa/vfprinf-chk-1.c: Likewise.
* gcc.dg/tree-ssa/vprinf-chk-1.c: Likewise.
* gcc.dg/tree-ssa/vprinf-chk-1.c: Likewise.
From-SVN: r127741
Richard Guenther [Thu, 23 Aug 2007 13:18:37 +0000 (13:18 +0000)]
builtins.c (expand_builtin_mathfn): Wrap argument in save_expr directly instead of re-building the call.
2007-08-23 Richard Guenther <rguenther@suse.de>
* builtins.c (expand_builtin_mathfn): Wrap argument in
save_expr directly instead of re-building the call.
(expand_builtin_mathfn_2): Likewise.
(expand_builtin_mathfn_3): Likewise.
(expand_builtin_interclass_mathfn): Likewise.
(expand_builtin_int_roundingfn): Set arg.
(expand_builtin_int_roundingfn_2): Likewise.
From-SVN: r127740
Francois-Xavier Coudert [Thu, 23 Aug 2007 13:03:35 +0000 (13:03 +0000)]
re PR libfortran/23138 ([mingw32] real(16) values are printed incorrectly)
PR libfortran/23138
* acinclude.m4 (LIBGFOR_CHECK_MINGW_SNPRINTF): New check.
* configure.ac: Use LIBGFOR_CHECK_MINGW_SNPRINTF.
* libgfortran.h: If HAVE_MINGW_SNPRINTF is true, use __mingw_snprintf
instead of snprintf.
* config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r127739
Uros Bizjak [Thu, 23 Aug 2007 13:03:07 +0000 (15:03 +0200)]
s390: New directory.
* gcc.target/s390: New directory.
* gcc.target/s390/s390.exp: New file.
* gcc.dg/
20020926-1.c, gcc.dg/
20030123-1.c, gcc.dg/
20030129-1.c,
gcc.dg/
20040305-1.c, gcc.dg/
20041109-1.c, gcc.dg/
20041216-1.c,
gcc.dg/
20050409-1.c, gcc.dg/
20050524-1.c, gcc.dg/
20050824-1.c,
gcc.dg/pr20927.c, gcc.dg/pr24624.c, gcc.dg/pr27661.c: Move to
gcc.target/s390 directory.
From-SVN: r127738
H.J. Lu [Thu, 23 Aug 2007 12:48:39 +0000 (12:48 +0000)]
gcc_update: Handle different URL paths and tags.
2007-08-23 H.J. Lu <hongjiu.lu@intel.com>
* gcc_update: Handle different URL paths and tags.
From-SVN: r127737
Richard Guenther [Thu, 23 Aug 2007 12:41:59 +0000 (12:41 +0000)]
re PR tree-optimization/32328 (-fstrict-aliasing causes skipped code)
2007-08-23 Richard Guenther <rguenther@suse.de>
PR tree-optimization/32328
* testsuite/gcc.dg/pr32328.c: New testcase.
From-SVN: r127736
Paolo Bonzini [Thu, 23 Aug 2007 12:15:20 +0000 (12:15 +0000)]
gcc:
2007-08-23 Paolo Bonzini <bonzini@gnu.org>
* config/i386/sse.md (*sse_and<mode>3, *sse_ior<mode>3,
*sse_nand<mode>3, *sse_xor<mode>3): New.
gcc/testsuite:
2007-08-23 Paolo Bonzini <bonzini@gnu.org>
* gcc.target/i386/xorps-sse.c: New.
* gcc.target/i386/xorps-sse2.c: New.
From-SVN: r127735
Rask Ingemann Lambertsen [Thu, 23 Aug 2007 12:13:10 +0000 (14:13 +0200)]
simd-4.x: Only run when stdint.h types are available.
* gcc.c-torture/execute/simd-4.x: Only run when stdint.h types are
available.
From-SVN: r127734
Francois-Xavier Coudert [Thu, 23 Aug 2007 10:22:18 +0000 (10:22 +0000)]
re PR fortran/33095 (MAX with optional arguments gives run-time error)
PR fortran/33095
* trans-intrinsic.c (gfc_conv_intrinsic_minmax): Remove
runtime error checking.
* gfortran.dg/min_max_optional_5.f90: New test.
* gfortran.dg/min_max_optional_2.f90: Remove.
* gfortran.dg/min_max_optional_3.f90: Remove.
* gfortran.dg/min_max_optional_4.f90: Remove.
From-SVN: r127732
Paolo Bonzini [Thu, 23 Aug 2007 10:13:54 +0000 (10:13 +0000)]
cmov3.c: Fix scan-assembler.
2007-08-23 Paolo Bonzini <bonzini@gnu.org>
* gcc.target/i386/cmov3.c: Fix scan-assembler.
* gcc.target/i386/cmov4.c: Fix scan-assembler.
* gcc.target/i386/xchg-2.c: Fix scan-assembler.
From-SVN: r127731
Uros Bizjak [Thu, 23 Aug 2007 05:35:13 +0000 (07:35 +0200)]
i386.h (PRINT_OPERAND_PUNCT_VALID_P): Add ';' code.
* config/i386/i386.h (PRINT_OPERAND_PUNCT_VALID_P): Add ';' code.
* config/i386/i386.c (print_operand): Handle ';' code. Output
semicolon for TARGET_MACHO.
* config/i386/sync.md (*sync_compare_and_swap<mode>): Use '%;' to
emit semicolon after 'lock' prefix.
(sync_double_compare_and_swap<mode>): Ditto.
(*sync_double_compare_and_swapdi_pic): Ditto.
(*sync_compare_and_swap_cc<mode>): Ditto.
(sync_double_compare_and_swap_cc<mode>): Ditto.
(*sync_double_compare_and_swap_ccdi_pic): Ditto.
(sync_old_add<mode>): Ditto.
(sync_add<mode>): Ditto.
(sync_sub<mode>): Ditto.
(sync_ior<mode>): Ditto.
(sync_and<mode>): Ditto.
(sync_xor<mode>): Ditto.
From-SVN: r127728
Roger Sayle [Thu, 23 Aug 2007 05:03:19 +0000 (05:03 +0000)]
match.c (intrinsic_operators): Delete.
2007-08-22 Roger Sayle <roger@eyesopen.com>
Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
* match.c (intrinsic_operators): Delete.
(gfc_match_intrinsic_op): Rewrite matcher to avoid calling
gfc_match_strings.
Co-Authored-By: Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
From-SVN: r127727
Bud Davis [Thu, 23 Aug 2007 04:15:24 +0000 (04:15 +0000)]
MAINTAINERS (Write After Approval): Added myself.
2007-08-22 Bud Davis <jmdavis@link.com>
* MAINTAINERS (Write After Approval): Added myself.
* MAINTAINERS (Reviewers): Removed myself.
From-SVN: r127726
Chao-ying Fu [Thu, 23 Aug 2007 00:30:39 +0000 (00:30 +0000)]
rtl.c (rtx_code_size): Check CONST_FIXED to calcualte correct sizes in DEF_RTL_EXPR.
* rtl.c (rtx_code_size): Check CONST_FIXED to calcualte correct sizes
in DEF_RTL_EXPR.
(copy_rtx): Handle CONST_FIXED.
(rtx_equal_p): Likewise.
* rtl.h (fixed_value.h): New include.
(rtx_def): Add a new field of fixed_value to u.
(XCNMPFV): Define for accessing fixed_value.
(CONST_FIXED_VALUE, CONST_FIXED_VALUE_HIGH, CONST_FIXED_VALUE_LOW):
Define.
* rtl.def (CONST_FIXED): New constant.
(SS_MULT, US_MULT, SS_DIV, US_DIV, FRACT_CONVERT,
UNSIGNED_FRACT_CONVERT, SAT_FRACT, UNSIGNED_SAT_FRACT, US_NEG,
US_ASHIFT): New codes.
* doc/rtl.texi (Expressions): Document const_fixed, us_neg, ss_mult,
us_mult, ss_div, us_div, us_ashift, fract_convert, sat_fract,
unsigned_fract_convert, unsigned_sat_fract): Document them.
* varasm.c (assemble_integer): Extend to support fixed-point constants
by using different machine classes.
(decode_addr_const): Handle FIXED_CST.
(const_hash_1): Likewise.
(compare_constant): Likewise.
(copy_constant): Likewise.
(const_rtx_hash_1): Handle CONST_FIXED.
(output_constant_pool_2): Handle MODE_FRACT, MODE_UFRACT, MODE_ACCUM,
MODE_UACCUM, MODE_VECTOR_FRACT, MODE_VECTOR_UFRACT, MODE_VECTOR_ACCUM,
MODE_VECTOR_UACCUM.
(initializer_constant_valid_p): Handle FIXED_CST.
(output_constant): Support FIXED_POINT_TYPE.
* gengenrtl.c (excluded_rtx): Check CONST_FIXED to exclude.
* cse.c (hash_rtx): Support CONST_FIXED.
(exp_equiv_p): Likewise.
(cannon_reg): Likewise.
(fold_rtx): Likewise.
(equiv_constant): Likewise.
(cse_process_notes_1): Likewise.
(count_reg_usage): Likewise.
* cselib.c (entry_and_rtx_equal_p): Check CONST_FIXED.
(rtx_equal_for_cselib_p): Handle CONST_FIXED.
(wrap_constant): Check CONST_FIXED.
(cselib_hash_rtx): Support CONST_FIXED.
(cselib_subst_to_values): Likewise.
* df-scan.c (df_uses_record): Likewise.
* gcse.c (want_to_gcse_p): Likewise.
(oprs_unchanged_p): Likewise.
(oprs_not_set_p): Likewise.
(compute_transp): Likewise.
(extract_mentioned_regs_helper): Likewise.
* genemit.c (gen_exp): Likewise.
* local-alloc.c (equiv_init_varies_p): Likewise.
(contains_replace_regs): Likewise.
(memref_referenced_p): Likewise.
* loop-invariant.c (check_maybe_invariant): Likewise.
(hash_invariant_expr_1): Likewise.
(invariant_expr_equal_p): Likewise.
* postreload-gcse.c (oprs_unchanged_p): Likewise.
* regclass.c (reg_scan_mark_refs): Likewise.
* regrename.c (scan_rtx): Likewise.
* resource.c (mark_referenced_resources): Likewise.
(mark_set_resources): Likewise.
* rtlanal.c (rtx_unstable_p): Likewise.
(rtx_varies_p): Likewise.
(count_occurrences): Likewise.
(reg_mentioned_p): Likewise.
(modified_between_p): Likewise.
(modified_in_p): Likewise.
(volatile_insn_p): Likewise.
(volatile_refs_p): Likewise.
(side_effects_p): Likewise.
(may_trap_p_1): Likewise.
(inequality_comparisons_p): Likewise.
(computed_jump_p_1): Likewise.
(commutative_operand_precedence): Likewise.
* sched-deps.c (sched_analyze_2): Likewise.
* sched-vis.c (print_value): Likewise.
* reload.c (operands_match_p): Likewise.
(subst_reg_equivs): Likewise.
* reload1.c (eliminate_regs_1): Likewise.
(elimination_effects): Likewise.
(scan_paradoxical_subregs): Likewise.
* alias.c (rtx_equal_for_memref_p): Likewise.
* Makefile.in (RTL_BASE_H): Add fixed-value.h.
* emit-rtl.c (const_fixed_htab): New hash table.
(const_fixed_htab_hash, const_fixed_htab_eq, lookup_const_fixed):
Declare.
(const_fixed_htab_hash, const_fixed_htab_eq, lookup_const_fixed,
const_fixed_from_fixed_value): New functions.
(verify_rtx_sharing): Handle CONST_FIXED.
(copy_rtx_if_shared_1): Likewise.
(reset_used_flags): Likewise.
(set_used_flags): Likewise.
(copy_insn_1): Likewise.
(init_emit_once): Create const_fixed_htab.
Store fixed-point scalar and vector zero and one to const_tiny_rtx.
From-SVN: r127725
GCC Administrator [Thu, 23 Aug 2007 00:17:33 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127723
Zdenek Dvorak [Wed, 22 Aug 2007 23:05:05 +0000 (01:05 +0200)]
re PR tree-optimization/32949 (suboptimal address generation for int indices on 64-bit targets)
2007-08-22 Zdenek Dvorak <ook@ucw.cz>
PR tree-optimization/32949
* tree-ssa-loop-niter.c (scev_probably_wraps_p): Test nowrap_type_p
before failing for ivs with non-constant step.
From-SVN: r127720
Christopher D. Rickett [Wed, 22 Aug 2007 21:28:08 +0000 (21:28 +0000)]
re PR fortran/33020 (Bind(C): c_f_pointer: type/rank mismatch error with integer(8) SHAPE)
2007-08-22 Christopher D. Rickett <crickett@lanl.gov>
PR fortran/33020
* resolve.c (gfc_iso_c_sub_interface): Remove setting of type and
kind for optional SHAPE parameter of C_F_POINTER.
2007-08-22 Christopher D. Rickett <crickett@lanl.gov>
PR fortran/33020
* gfortran.dg/c_f_pointer_shape_tests_2.f03: Update test to
include multiple kinds for SHAPE parameter within a single
namespace.
* gfortran.dg/c_f_pointer_shape_tests_2_driver.c: Ditto.
* gfortran.dg/c_f_pointer_shape_tests_3.f03: New test case.
From-SVN: r127719
Janus Weil [Wed, 22 Aug 2007 21:11:13 +0000 (21:11 +0000)]
decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
2007-08-22 Janus Weil <jaydub66@gmail.com>
* decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
(gfc_match_bind_c): Bugfix in check for NAME= with abstract interfaces.
(gfc_match_mopdproc): Bugfix to reject module procedures in
abstract interfaces.
2007-08-22 Janus Weil <jaydub66@gmail.com>
* interface_abstract_1.f90: Extended test case.
* interface_abstract_3.f90: New test.
From-SVN: r127718
Jason Merrill [Wed, 22 Aug 2007 20:43:06 +0000 (16:43 -0400)]
fix changelog entry
From-SVN: r127717
Hans-Peter Nilsson [Wed, 22 Aug 2007 20:32:18 +0000 (20:32 +0000)]
md.texi (Iterators): Renamed from Macros.
* doc/md.texi (Iterators): Renamed from Macros. All contents
changed to reflect rename of respectively define_code_macro and
define_mode_macro to define_code_iterator and define_mode_iterator.
(Mode Iterators, Code Iterators): Similar.
* read-rtl.c (struct iterator_group, struct iterator_traverse_data)
(uses_mode_iterator_p, apply_mode_iterator, uses_code_iterator_p)
(apply_iterator_to_string, uses_iterator_p, apply_iterator_traverse)
(initialize_iterators, find_iterator, check_code_iterator)
(map_attr_string, apply_mode_maps, apply_iterator_to_rtx, add_mapping)
(read_mapping, read_rtx_1): Similar.
* config/alpha/sync.md, config/alpha/alpha.md, config/frv/frv.md,
config/s390/s390.md, config/m32c/blkmov.md, config/m32c/m32c.md,
config/spu/spu.md, config/sparc/sparc.md, config/sparc/sync.md,
config/i386/i386.md, config/i386/mmx.md, config/i386/sse.md,
config/i386/sync.md, config/crx/crx.md, config/xtensa/xtensa.md,
config/cris/cris.c, config/cris/cris.md, config/ia64/sync.md,
config/ia64/div.md, config/ia64/vect.md, config/ia64/ia64.md,
config/m68k/m68k.md, config/rs6000/spe.md, config/rs6000/altivec.md,
config/rs6000/sync.md, config/rs6000/rs6000.md,
config/arm/vec-common.md, config/arm/neon.md, config/arm/iwmmxt.md,
config/arm/arm.md, config/mips/mips-dsp.md, config/mips/mips.md,
config/vax/vax.md, config/bfin/bfin.md: Similar.
From-SVN: r127715
Bernhard Fischer [Wed, 22 Aug 2007 20:30:26 +0000 (22:30 +0200)]
Makefile.am (AM_CPPFLAGS): Commentary typo fix.
2007-08-22 Bernhard Fischer <rep.dot.nop@gmail.com>
* libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
From-SVN: r127714
David Daney [Wed, 22 Aug 2007 18:31:53 +0000 (18:31 +0000)]
* doc/install.texi (Testing): Mention testing on a simulator.
From-SVN: r127713
Jason Merrill [Wed, 22 Aug 2007 17:23:37 +0000 (13:23 -0400)]
re PR c++/29365 (Unnecessary anonymous namespace warnings)
PR c++/29365
* pt.c (outermost_tinst_level): New function.
* lex.c (in_main_input_context): New function.
* decl2.c (constrain_class_visibility): Use it to avoid warning
about uses of the anonymous namespace in the main input file.
From-SVN: r127711
Janis Johnson [Wed, 22 Aug 2007 17:16:44 +0000 (17:16 +0000)]
* config/dfp-bit.c (DFP_TO_DFP): Check for overflow.
From-SVN: r127710
Janis Johnson [Wed, 22 Aug 2007 16:36:28 +0000 (16:36 +0000)]
libgcc.texi (Decimal float library routines): Fix formatting and rearrange floating point conversion functions into different...
* doc/libgcc.texi (Decimal float library routines): Fix formatting
and rearrange floating point conversion functions into different
categories.
From-SVN: r127709
Krister Walfridsson [Wed, 22 Aug 2007 16:00:54 +0000 (18:00 +0200)]
env.c ( __gnat_clearenv): Use the __gnat_unsetenv mechanism for NetBSD.
* env.c ( __gnat_clearenv): Use the __gnat_unsetenv mechanism for
NetBSD.
From-SVN: r127708
Maxim Kuvyrkov [Wed, 22 Aug 2007 15:07:10 +0000 (15:07 +0000)]
target.h (struct gcc_target.sched: dfa_pre_advance_cycle, [...]): New scheduler hooks.
* target.h (struct gcc_target.sched: dfa_pre_advance_cycle,
dfa_post_advance_cycle): New scheduler hooks.
* target-def.h (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE,
TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): New macros to initialize
new hooks.
(TARGET_SCHED): Use them.
* doc/tm.texi (TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE,
TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Document new hooks.
* haifa-sched.c (advance_one_cycle): Invoke new hooks.
* genautomata.c (insn_has_dfa_reservation_p): New DFA interface
function to facilitate debugging.
(INSN_HAS_DFA_RESERVATION_P_FUNC_NAME): New macro.
(output_insn_has_dfa_reservation_p): New static function to output
insn_has_dfa_reservation_p ().
(write_automata): Use it.
* genattr.c (main): Output declaration for
insn_has_dfa_reservation_p ().
From-SVN: r127707
Christian Bruel [Wed, 22 Aug 2007 14:44:28 +0000 (16:44 +0200)]
fixed wrong date
From-SVN: r127706
Christian Bruel [Wed, 22 Aug 2007 14:38:16 +0000 (16:38 +0200)]
fixed -ffinite-math-only A-A missing optimisation
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r127705
Kai Tietz [Wed, 22 Aug 2007 13:06:22 +0000 (13:06 +0000)]
[PATCH Fortran] bootstrap failure by wrong sizetype.
From-SVN: r127704
Rask Ingemann Lambertsen [Wed, 22 Aug 2007 12:56:35 +0000 (14:56 +0200)]
re PR rtl-optimization/32557 (internal compiler error: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:956)
PR rtl-optimization/32557
* df-problems.c (df_note_bb_compute): Use mws->start_regno instead
of REGNO (mws->mw_reg).
From-SVN: r127703
Uros Bizjak [Wed, 22 Aug 2007 12:12:10 +0000 (14:12 +0200)]
20000724-1.c, [...]: Move to gcc.target/i386 directory.
* gcc.dg/
20000724-1.c, gcc.dg/980312-1.c, gcc.dg/980313-1.c,
gcc.dg/attr-returns_twice-1.c, gcc.dg/inline-mcpy.c, gcc.dg/pr25196.c,
gcc.dg/pr25993.c, gcc.dg/pr26449.c, gcc.dg/pr28839.c,
gcc.dg/pr32191.c: Move to gcc.target/i386 directory.
* gcc.target/i386/pr31854.c, gcc.target/i386/pr32065-1.c,
gcc.target/i386/pr32065-2.c: Use dg-require-effective-target dfp.
From-SVN: r127702
Richard Guenther [Wed, 22 Aug 2007 11:43:32 +0000 (11:43 +0000)]
re PR middle-end/33007 (builtin lround doesn't work)
2007-08-22 Richard Guenther <rguenther@suse.de>
PR middle-end/33007
* builtins.c (expand_builtin_int_roundingfn): Replace call
argument wrapped with SAVE_EXPR directly.
(expand_builtin_int_roundingfn_2): Likewise.
* gcc.dg/pr33007.c: New testcase.
From-SVN: r127701
Richard Sandiford [Wed, 22 Aug 2007 10:02:05 +0000 (10:02 +0000)]
Properly remove.
From-SVN: r127700
Richard Sandiford [Wed, 22 Aug 2007 10:00:00 +0000 (10:00 +0000)]
strcmp-1.x: Delete.
gcc/testsuite/
* gcc.c-torture/execute/strcmp-1.x: Delete.
From-SVN: r127699
Uros Bizjak [Wed, 22 Aug 2007 09:59:14 +0000 (11:59 +0200)]
*.c: Remove target selectors from dg-do directives.
* gcc.target/i386/*.c: Remove target selectors from dg-do directives.
* gcc.target/i386/991129-1.c, gcc.target/i386/991209-1.c,
gcc.target/i386/991214-1.c, gcc.target/i386/pr26778.c,
gcc.target/i386/pr27827.c, gcc.target/i386/pr30505.c,
gcc.target/i386/pr32389.c, gcc.target/i386/sse-8.c,
gcc.target/i386/stack-realign.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-1.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-2.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-3.c: Require ilp32
target using dg-require-effective-target directive.
* gcc.target/i386/amd64-abi-1.c, gcc.target/i386/amd64-abi-2.c,
gcc.target/i386/cleanup-2.c, gcc.target/i386/cmpxchg16b-1.c,
gcc.target/i386/gcc-have-sync-compare-and-swap-4.c,
gcc.target/i386/large-size-array-3.c, gcc.target/i386/pr25254.c,
gcc.target/i386/pr31167.c, gcc.target/i386/pr32268.c,
gcc.target/i386/pr32661-1.c, gcc.target/i386/pr32708-2.c,
gcc.target/i386/pr32708-3.c, gcc.target/i386/sse4_1-pextrq.c,
gcc.target/i386/sse4_1-pinsrq.c, gcc.target/i386/sse4_2-crc32q.c,
gcc.target/i386/sse4_2-popcntq.c, gcc.target/i386/stack-prot-kernel.c:
Require lp64 target using dg-require-effective-target directive.
* gcc.target/i386/cleanup-1.c, gcc.target/i386/cleanup-2.c,
gcc.target/i386/pr32268.c: Use *-*-linux* target selector in dg-do
directive.
* gcc.target/i386/
20010202-1.c: Move from here ...
* gcc.dg/
20010202-1.c: ... to here.
From-SVN: r127698
Richard Guenther [Wed, 22 Aug 2007 08:47:26 +0000 (08:47 +0000)]
re PR tree-optimization/33142 (wrong code with VRP through ABS_EXPR)
2007-08-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/33142
* gcc.c-torture/execute/pr33142.c: New testcase.
From-SVN: r127693
Richard Guenther [Wed, 22 Aug 2007 08:10:42 +0000 (08:10 +0000)]
tree-inline.c (inlinable_function_p): Restore disregarding inline limits for GNU extern inline functions.
2007-08-22 Richard Guenther <rguenther@suse.de>
* tree-inline.c (inlinable_function_p): Restore disregarding
inline limits for GNU extern inline functions.
From-SVN: r127690
Richard Guenther [Wed, 22 Aug 2007 08:00:55 +0000 (08:00 +0000)]
re PR debug/32563 (ICE on pointer arithmetic)
2007-08-22 Richard Guenther <rguenther@suse.de>
PR middle-end/32563
* tree.c (host_integerp): Treat sizetype as signed as it is
sign-extended.
* g++.dg/torture/pr32563.C: New testcase.
From-SVN: r127688
Jakub Jelinek [Wed, 22 Aug 2007 07:53:57 +0000 (09:53 +0200)]
pr32912-1.c: Add -w to options.
* gcc.dg/pr32912-1.c: Add -w to options.
* gcc.dg/pr32912-2.c: Likewise.
* gcc.dg/pr32912-3.c: Scan for ~{ rather than just ~.
From-SVN: r127687
Ian Lance Taylor [Wed, 22 Aug 2007 04:30:25 +0000 (04:30 +0000)]
* g++.dg/torture/pr33134.C: Moved from g++.dg/tree-ssa.
From-SVN: r127686
Benjamin Kosnik [Wed, 22 Aug 2007 01:26:43 +0000 (01:26 +0000)]
Makefile.am (install-data-local): Remove pch-install rules.
2007-08-21 Benjamin Kosnik <bkoz@montsouris.artheist.org>
* include/Makefile.am (install-data-local): Remove pch-install rules.
(host_headers): Add stdc++.h, stdtr1c++.h, extc++.h.
* include/Makefile.in: Regenerate.
* config.h.in: Same.
* scripts/check_compile: Remove space between outputs.
* include/ext/throw_allocator.h: Correct doxygen markup.
* include/bits/char_traits.h: Correct spacing.
* include/bits/stl_function.h: Same, for 80 column.
* include/std/valarray: Same.
* testsuite/util/testsuite_iterators.h: Same.
* testsuite/25_algorithms/headers/algorithm/synopsis.cc: Format.
From-SVN: r127685
GCC Administrator [Wed, 22 Aug 2007 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127683
Ian Lance Taylor [Tue, 21 Aug 2007 21:35:06 +0000 (21:35 +0000)]
re PR tree-optimization/33134 (ICE in set_value_range, at tree-vrp.c:325)
./: PR tree-optimization/33134
* tree-vrp.c (adjust_range_with_scev): Call
set_value_range_to_value.
testsuite/:
PR tree-optimization/33134
* g++.dg/tree-ssa/pr33134.C: New test.
From-SVN: r127679
Aldy Hernandez [Tue, 21 Aug 2007 21:16:40 +0000 (21:16 +0000)]
value-prof.h (gimple_remove_histogram_value): Remove duplicate prototype.
* value-prof.h (gimple_remove_histogram_value): Remove duplicate
prototype.
From-SVN: r127678
Aldy Hernandez [Tue, 21 Aug 2007 19:03:49 +0000 (19:03 +0000)]
tree-flow-inline.h (next_imm_use_stmt): Remove unecessary whitespace.
* tree-flow-inline.h (next_imm_use_stmt): Remove unecessary
whitespace.
From-SVN: r127674
Nathan Froyd [Tue, 21 Aug 2007 17:22:46 +0000 (17:22 +0000)]
rs6000.c (expand_block_clear): Add TARGET_SPE cases to set eight bytes at a time.
gcc/
* config/rs6000/rs6000.c (expand_block_clear): Add TARGET_SPE
cases to set eight bytes at a time.
(expand_block_move): Likewise.
gcc/testsuite/
* gcc.target/powerpc/spe-vector-memset.c: New testcase.
* gcc.target/powerpc/spe-vector-memcpy.c: New testcase.
From-SVN: r127670
Jakub Jelinek [Tue, 21 Aug 2007 17:11:20 +0000 (19:11 +0200)]
re PR debug/32610 (ICE in gen_tagged_type_instantiation_die, at dwarf2out.c:12762)
PR debug/32610
* dwarf2out.c (gen_decl_die): Don't call
gen_tagged_type_instantiation_die if decl doesn't have tagged type.
* gcc.dg/debug/pr32610.c: New test.
From-SVN: r127669
Jakub Jelinek [Tue, 21 Aug 2007 17:03:23 +0000 (19:03 +0200)]
init.c (build_new_1): Use get_target_expr instead of save_expr.
* init.c (build_new_1): Use get_target_expr instead of save_expr.
* g++.dg/init/new24.C: New test.
From-SVN: r127668
Paul Brook [Tue, 21 Aug 2007 15:35:30 +0000 (15:35 +0000)]
configure.ac: Add --with-pkgversion and --with-bugurl.
gcc:
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* configure.ac: Add --with-pkgversion and --with-bugurl.
* configure: Regenerate.
* doc/install.texi: Document them.
* version.c (version_string): Remove VERSUFFIX.
(VERSUFFIX): Remove.
(pkgversion_string): New.
(bug_report_url): Do not hard-code initializer.
* version.h (pkgversion_string): Declare.
* Makefile.in (PKGVERSION_s, BUGURL_s, PKGVERSION, BUGURL_TEXI):
Define.
(version.o): Define PKGVERSION and BUGURL.
(gcc-vers.texi): Define VERSION_PACKAGE and BUGURL.
(%.pod): Define BUGURL.
* gcc.c (process_command, main): Use pkgversion_string.
* toplev.c (compile_file, print_version): Likewise.
* protoize.c (main): Likewise.
* gcov.c (print_version): Likewise. Update copyright date.
* gcov-dump.c (print_version): Likewise. Update copyright date.
* mips-tdump.c (main): Likewise. Update copyright date.
* mips-tfile.c (main): Likewise. Update copyright date.
* doc/include/gcc-common.texi: Include VERSION_PACKAGE as subtitle.
* doc/bugreport.texi: Use BUGURL for bug-reporting instructions;
shorten description.
* doc/gcc.texi: Include VERSION_PACKAGE in version description.
* doc/gccint.texi: Likewise.
* doc/invoke.texi: Use BUGURL for bug-reporting instructions.
Update copyright date.
gcc/fortran:
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* gfortranspec.c (lang_specific_driver): Use pkgversion_string.
* Make-lang.in (gfortran.pod): Define BUGURL.
* invoke.texi: Use BUGURL for bug-reporting instructions.
gcc/java:
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* jcf-dump.c (version): Use pkgversion_string. Update copyright
date.
gcc/treelang:
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* tree1.c (treelang_handle_option): Use pkgversion_string.
* treelang.texi (which-treelang): Define to use VERSION_PACKAGE.
maintainer-scripts:
2007-08-21 Paul Brook <paul@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Mark Mitchell <mark@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* gcc_release: Do not include copies of bugs.html in releases.
* update_web_docs_svn: Set VERSION_PACKAGE and BUGURL in
gcc-vers.texi.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
From-SVN: r127667
Uros Bizjak [Tue, 21 Aug 2007 12:26:12 +0000 (14:26 +0200)]
i386.c (ix86_expand_clear): Use FLAGS_REG.
* config/i386/i386.c (ix86_expand_clear): Use FLAGS_REG.
(ix86_expand_strlensi_unroll_1): Ditto.
(ix86_expand_branch): Use FLAGS_REG and FPSR_REG.
(ix86_expand_carry_flag_compare): Update comment.
From-SVN: r127666
Joseph Myers [Tue, 21 Aug 2007 11:46:39 +0000 (12:46 +0100)]
be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po,
sv.po, tr.po, vi.po, zh_CN.po, zh_TW.po: Update.
* uk.po: New.
From-SVN: r127664
Joseph Myers [Tue, 21 Aug 2007 11:42:31 +0000 (12:42 +0100)]
be.po, [...]: Update.
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po,
ru.po, sr.po, sv.po, tr.po, zh_CN.po, zh_TW.po: Update.
From-SVN: r127662
Jakub Jelinek [Tue, 21 Aug 2007 09:22:14 +0000 (11:22 +0200)]
re PR middle-end/32912 (ICE with vector code)
PR middle-end/32912
* fold-const.c (fold_unary): Optimize BIT_NOT_EXPR of VECTOR_CST.
(fold_binary): Handle vectors in X | ~X and X ^ ~X optimizations.
* gcc.dg/pr32912-1.c: New test.
* gcc.dg/pr32912-2.c: New test.
* gcc.dg/pr32912-3.c: New test.
From-SVN: r127661
Richard Guenther [Tue, 21 Aug 2007 09:18:15 +0000 (09:18 +0000)]
fold-const.c (fold_binary): Revert removing of index +p PTR
2007-08-21 Richard Guenther <rguenther@suse.de>
* fold-const.c (fold_binary): Revert removing of index +p PTR
* folding.
* gcc.dg/pointer-arith-10.c: New testcase.
From-SVN: r127660
Richard Guenther [Tue, 21 Aug 2007 08:23:50 +0000 (08:23 +0000)]
re PR middle-end/33122 (Mistaken type mismatch error prevents bootstrap)
2007-08-21 Richard Guenther <rguenther@suse.de>
PR middle-end/33122
* fold-const.c (fold_binary): Remove index +p PTR folding.
Fix types of POINTER_PLUS_EXPR generated by folding of
(PTR +p B) +p A.
* gcc.c-torture/compile/pr33122.c: New testcase.
From-SVN: r127659
GCC Administrator [Tue, 21 Aug 2007 00:17:31 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127656
Chao-ying Fu [Mon, 20 Aug 2007 22:26:47 +0000 (22:26 +0000)]
c-common.h (enum rid): Add new enumeration values of RID_SAT, RID_FRACT, and RID_ACCUM.
* c-common.h (enum rid): Add new enumeration values of RID_SAT,
RID_FRACT, and RID_ACCUM. RID_SAT needs to be inserted before
RID_ONEWAY, so that it can be checked in declspecs_add_type.
(c_common_fixed_point_type_for_size): Declare.
* c-parser.c (reswords): Add _Fract, _Accum, and _Sat.
(c_token_starts_typename): Handle RID_FRACT, RID_ACCUM, and RID_SAT.
(c_token_starts_declspecs): Likewise.
(c_parser_declspecs): Likewise.
(c_parser_attributes): Likewise.
* c-tree.h (enum c_typespec_keyword): Add cts_fract and cts_accum.
(c_declspecs): Add saturating_p.
* c-decl.c (build_null_declspecs): Initialize saturating_p.
(declspecs_add_type): Avoid using complex with _Fract, _Accum, or _Sat.
Handle RID_SAT.
Avoid using void, bool, char, int, float, double, _Decimal32,
_Decimal64, _Decimal128, and complex with _Sat.
Handle RID_FRACT and RID_ACCUM.
Make sure _Sat is used with _Fract or _Accum.
(finish_declspecs): Handle cts_fract and cts_accum.
* c-common.c (fixed-value.h): New include.
(constant_expression_warning): Handle FIXED_CST.
(overflow_warning): Likewise.
(warnings_for_convert_and_check): Likewise.
(c_common_fixed_point_type_for_size): New.
(c_common_type_for_mode): Handle fixed-point modes to
return various saturating/non-saturating, signed/unsigned types.
(c_common_signed_or_unsigned_type): Support fixed-point types.
(shorten_compare): Check fixed-point zero.
Handle FIXED_POINT_TYPE.
(c_common_truthvalue_conversion): Handle FIXED_CST.
Handle FIXED_POINT_TYPE.
(c_common_nodes_and_builtins): Record builtin types for fixed-point
types.
(handle_mode_attribute): Handle fixed-point modes. Need to check
if the signness of base type and fixed-point modes are consistent.
(handle_vector_size_attribute): Handle fixed-point modes.
(same_scalar_type_ignoring_signedness): Handle FIXED_POINT_TYPE.
(warn_for_div_by_zero): Check fixed-point zero.
* c-typeck.c (c_common_type): Check FIXED_POINT_TYPE. Build
a common fixed-point type based on fbit, ibit, sign, and saturation.
(build_unary_op): Allow FIXED_POINT_TYPE for CONVERT_EXPR,
NEGATE_EXPR, TRUTH_NOT_EXPR, PREINCREMENT_EXPR, POSTINCREMENT_EXPR,
PREDECREMENT_EXPR, and POSTDECREMENT_EXPR.
(convert_for_assignment): Support FIXED_POINT_TYPE.
(digest_init): Handle FIXED_POINT_TYPE.
(build_binary_op): Support FIXED_POINT_TYPE in *_DIV_EXPR,
TRUTH_ANDIF_EXPR, TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR,
TRUTH_XOR_EXPR, RSHIFT_EXPR, LSHIFT_EXPR, EQ_EXPR, NE_EXPR, LE_EXPR,
GE_EXPR, LT_EXPR, GT_EXPR.
* target-def.h (TARGET_FIXED_POINT_SUPPORTED_P): New.
(TARGET_INITIALIZER): Add TARGET_FIXED_POINT_SUPPORTED_P.
* target.h (gcc_target): Add fixed_point_supported_p.
* targhooks.c (default_scalar_mode_supported_p): Handle MODE_FRACT,
MODE_UFRACT, MODE_ACCUM, and MODE_UACCUM.
(default_fixed_point_supported_p): Define.
* targhooks.h (default_fixed_point_supported_p): Declare.
* doc/tm.texi (TARGET_FIXED_POINT_SUPPORTED_P): Add.
* doc/install.texi (Configuration): Add --enable-fixed-point.
* configure.ac (--enable-fixed-point): New to enable fixed-point
arithmetic extension to C. For mips targets, we enable it by default.
* configure, config.in: Regenerate.
From-SVN: r127652
Pawel Sikora [Mon, 20 Aug 2007 15:08:24 +0000 (15:08 +0000)]
re PR c++/7302 (-Wnon-virtual-dtor should't complain of protected dtor)
PR c++/7302
* cp/class.c (finish_struct_1): Warn when a class has virtual
functions and accessible non-virtual destructor.
* doc/invoke.texi (-Wnon-virtual-dtor): Update documentation.
* g++.dg/warn/Wnvdtor-2.C: New testcase.
From-SVN: r127649
David Edelsohn [Mon, 20 Aug 2007 13:52:16 +0000 (13:52 +0000)]
dwarf2out.c (text_section_used): Move declaration outside ifdef DWARF2_DEBUGGING_INFO.
* dwarf2out.c (text_section_used): Move declaration outside ifdef
DWARF2_DEBUGGING_INFO.
(cold_text_section_used): Same.
(cold_text_section): Same.
From-SVN: r127648
Richard Guenther [Mon, 20 Aug 2007 12:31:44 +0000 (12:31 +0000)]
re PR c++/22369 (C++ produces mis-matched types with pointers to member functions)
2007-08-20 Richard Guenther <rguenther@suse.de>
PR c++/22369
PR c++/22451
* call.c (build_new_method_call): Convert initializer to
the basetype.
* init.c (build_aggr_init): Do not fiddle with types.
(build_vec_delete_1): Use correct type for POINTER_PLUS_EXPR.
* except.c (build_throw): Do not drop qualifiers for the
pointer type.
* typeck.c (get_member_function_from_ptrfunc): Do not
fiddle with types, instead convert.
(build_ptrmemfunc1): Convert to the target type for
initialization.
(gfc_trans_allocate): Convert result to target type.
* cp-objcp-common.c (cxx_get_alias_set): Pointers to
pointer-to-member structures shall have alias set zero as well.
From-SVN: r127647
Richard Guenther [Mon, 20 Aug 2007 11:41:30 +0000 (11:41 +0000)]
c-typeck.c (convert_for_assignment): Use the type of the member for the initialization.
2007-08-20 Richard Guenther <rguenther@suse.de>
* c-typeck.c (convert_for_assignment): Use the type of
the member for the initialization.
From-SVN: r127646
Dorit Nuzman [Mon, 20 Aug 2007 11:37:39 +0000 (11:37 +0000)]
* gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c: Add missing }.
From-SVN: r127645
Richard Guenther [Mon, 20 Aug 2007 11:37:08 +0000 (11:37 +0000)]
c-objc-common.c (c_disregard_inline_limits): Remove.
2007-08-20 Richard Guenther <rguenther@suse.de>
* c-objc-common.c (c_disregard_inline_limits): Remove.
* c-objc-common.h (c_disregard_inline_limits): Likewise.
* cgraphunit.c (cgraph_process_new_functions): Call
disregard_inline_limits_p.
(cgraph_preserve_function_body_p): Likewise.
* ipa-inline.c (compute_inline_parameters): Likewise.
* langhooks-def.h (lhd_tree_inlining_disregard_inline_limits):
Remove.
(LANG_HOOKS_TREE_INLINING_DISREGARD_INLINE_LIMITS): Remove.
(LANG_HOOKS_TREE_INLINING_INITIALIZER): Remove initializer for
disregard_inline_limits langhook.
* langhooks.c (lhd_tree_inlining_disregard_inline_limits):
Remove.
* langhooks.h (lang_hooks_for_tree_inlining): Remove
disregard_inline_limits langhook.
* tree-inline.c (disregard_inline_limits_p): New function.
* tree-inline.h (disregard_inline_limits_p): Declare.
From-SVN: r127644
Richard Guenther [Mon, 20 Aug 2007 11:28:14 +0000 (11:28 +0000)]
langhooks-def.h (lhd_tree_inlining_auto_var_in_fn_p): Remove.
2007-08-20 Richard Guenther <rguenther@suse.de>
* langhooks-def.h (lhd_tree_inlining_auto_var_in_fn_p): Remove.
(LANG_HOOKS_TREE_INLINING_AUTO_VAR_IN_FN_P): Likewise.
(LANG_HOOKS_TREE_INLINING_INITIALIZER): Remove initializer for
auto_var_in_fn_p langhook.
* langhooks.c (lhd_tree_inlining_auto_var_in_fn_p): Rename and
move ...
* tree.c (auto_var_in_fn_p): ... here.
(find_var_from_fn): Call auto_var_in_fn_p directly.
* langhooks.h (lang_hooks_for_tree_inlining): Remove
auto_var_in_fn_p langhook.
* tree-inline.c (remap_decls): Call auto_var_in_fn_p directly.
(copy_body_r): Likewise.
(self_inlining_addr_expr): Likewise.
* tree.h (auto_var_in_fn_p): Declare.
cp/
* cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_AUTO_VAR_IN_FN_P):
Remove.
* cp-tree.h (cp_auto_var_in_fn_p): Remove.
(nonstatic_local_decl_p): Likewise.
* tree.c (cp_auto_var_in_fn_p): Remove.
* decl.c (nonstatic_local_decl_p): Remove.
From-SVN: r127643
Richard Guenther [Mon, 20 Aug 2007 11:19:22 +0000 (11:19 +0000)]
tree.c (WALK_SUBTREE): Call walk_tree_1.
2007-08-20 Richard Guenther <rguenther@suse.de>
* tree.c (WALK_SUBTREE): Call walk_tree_1.
(walk_type_fields): Take lh parameter.
(walk_tree): Rename to ...
(walk_tree_1): ... this. Do not call the walk_subtrees
langhook but the now passed callback. Pass lh on recursion.
(walk_tree_without_duplicates): Rename to ...
(walk_tree_without_duplicates_1): ... this. Take lh parameter
and call walk_tree_1.
* tree.h (walk_tree_lh): New typedef.
(walk_tree_1): Declare.
(walk_tree_without_duplicates_1): Likewise.
(walk_tree): New define to walk_tree_1 with NULL lh parameter.
(walk_tree_without_duplicates): New define to
walk_tree_without_duplicates_1 with NULL lh parameter.
* langhooks.c (lhd_tree_inlining_walk_subtrees): Remove.
* langhooks.h (lang_hooks_for_tree_inlining): Remove walk_subtrees
langhook.
* langhooks-def.h (lhd_tree_inlining_walk_subtrees): Remove.
(LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise.
(LANG_HOOKS_TREE_INLINING_INITIALIZER): Remove walk_subtrees
initializer.
java/
* lang.c (java_tree_inlining_walk_subtrees): Remove.
(LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Remove.
cp/
* cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES):
Remove define.
* tree.h (cp_walk_tree): New define to walk_tree_1 with
cp_walk_subtrees lh parameter.
(cp_walk_tree_without_duplicates): New define to
walk_tree_without_duplicates_1 with cp_walk_subtrees lh parameter.
* tree.c (count_trees): Call
cp_walk_tree_without_duplicates.
(verify_stmt_tree): Call cp_walk_tree.
(break_out_target_exprs): Likewise.
(WALK_SUBTREE): Likewise.
* cp-gimplify.c (cp_genericize): Likewise.
* cp-pt.c (find_parameter_packs_r): Likewise.
(uses_parameter_packs): Likewise.
(make_pack_expansion): Likewise.
(check_for_bare_parameter_packs): Likewise.
(for_each_template_parm): Likewise.
* decl.c (check_default_argument): Call
cp_walk_tree_without_duplicates.
* except.c (build_throw): Likewise.
* decl2.c (type_visibility): Likewise.
* semantics.c (expand_or_defer_fn): Likewise.
(finalize_nrv): Call cp_walk_tree.
From-SVN: r127642
Jakub Jelinek [Mon, 20 Aug 2007 07:53:58 +0000 (09:53 +0200)]
re PR c++/33025 (Wrong calling of placement new with conditionals)
PR c++/33025
* init.c (build_new_1): Rename placement_var variable to placement_expr.
Initialize it with save_expr rather than get_temp_regvar.
* g++.dg/init/new23.C: New test.
From-SVN: r127639
Andrew Pinski [Mon, 20 Aug 2007 07:42:55 +0000 (07:42 +0000)]
re PR tree-optimization/30564 (ice for legal code with -O3)
2007-08-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/30564
* tree-inline.c (optimize_inline_calls): Move the cgraph checking
code in front of the compacting of basic blocks.
Move the folding of statements inbetween the cgraph checking
and compacting of basic blocks.
2007-08-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/30564
* gcc.c-torture/compile/pr30564-1.c: New test.
* gcc.c-torture/compile/pr30564-2.c: New test.
From-SVN: r127638
Andrew Pinski [Mon, 20 Aug 2007 06:53:05 +0000 (06:53 +0000)]
re PR target/32522 (Bootstrap failure on Alpha due to pointer-plus changes)
2007-08-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
Serge Belyshev <belyshev@depni.sinp.msu.ru>
PR target/32522
* config/alpha/alpha.c (va_list_skip_additions): Check for
POINTER_PLUS_EXPR in addition to PLUS_EXPR.
(alpha_stdarg_optimize_hook): Look for POINTER_PLUS_EXPR instead of
PLUS_EXPR when checking ap.__base.
(alpha_va_start): Create POINTER_PLUS_EXPR instead of PLUS_EXPR
when doing addition on pointer types. Use size_int instead of
build_int_cst.
(alpha_gimplify_va_arg_1): Likewise, but use sizetype instead of
ptr_type in the second operand.
Co-Authored-By: Serge Belyshev <belyshev@depni.sinp.msu.ru>
From-SVN: r127637
Roger Sayle [Mon, 20 Aug 2007 06:11:15 +0000 (06:11 +0000)]
match.c (intrinsic_operators): Make static.
* match.c (intrinsic_operators): Make static.
(gfc_op2string): New function for converting a gfc_intrinsic_op to
to a "const char*", replacing the macro of the same name.
* gfortran.h (intrinsic_operators): Delete prototype.
(gfc_op2string): Replace macro with function prototype.
From-SVN: r127636
Andrew Pinski [Mon, 20 Aug 2007 05:16:10 +0000 (22:16 -0700)]
re PR target/33115 (-march=native is not supported under x86 darwin)
2007-08-19 Andrew Pinski <pinskia@gmail.com>
PR target/33115
* config/i386/darwin.h (CC1_SPEC): Add %(cc1_cpu) in front.
From-SVN: r127635
Andrew Pinski [Mon, 20 Aug 2007 00:48:09 +0000 (00:48 +0000)]
re PR middle-end/32940 (REG_POINTER attribute on DECL_ARTIFICIAL pointers)
2007-08-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32940
* cfgexpand.c (expand_one_register_var): Mark pointer
DECL_ARTIFICIAL as REG_POINTER also.
* stmt.c (expand_decl): Likewise.
From-SVN: r127634
GCC Administrator [Mon, 20 Aug 2007 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r127632
Daniel Berlin [Sun, 19 Aug 2007 23:23:29 +0000 (23:23 +0000)]
Fix PR 32772 Fix PR 32716 Fix PR 32328 Fix PR 32303
2007-08-19 Daniel Berlin <dberlin@dberlin.org>
Fix PR 32772
Fix PR 32716
Fix PR 32328
Fix PR 32303
* tree-flow.h (struct stmt_ann_d): Remove makes_clobbering_call.
* tree-ssa-alias.c (init_transitive_clobber_worklist): Add
on_worklist argument and avoid adding things to worklist multiple
times.
(add_to_worklist): Ditto.
(mark_aliases_call_clobbered): Mark entire structure clobbered if
single SFT is clobbered.
(set_initial_properties): Ditto.
(compute_call_clobbered): Update for changes to function
arguments.
(create_overlap_variables_for): Always create SFT for offset 0.
(create_structure_vars): Handle PHI's, since we are in SSA form at
this point.
* tree-ssa-loop-ivopts.c (get_ref_tag): Don't return subvars.
* tree-ssa-operands.c (access_can_touch_variable): Don't handle
TARGET_MEM_REF.
(add_vars_for_offset): Figure out aliases from access + points-to.
(add_virtual_operand): Use add_vars-for_offset.
(get_tmr_operands): Update for NMT changes, rewrite to be correct.
(add_call_clobber_ops): Remove makes_clobbering_call set.
(get_expr_operands): Always pass through the INDIRECT_REF
reference.
* tree-ssa-structalias.c (struct constraint_graph): Remove
variables member.
Add pe, pe_rep, pointer_label, loc_label, pointed_by, points_to,
address_taken, pt_used, number_incoming.
(FIRST_ADDR_NODE): Removed.
(merge_graph_nodes): Remove broken code for the moment.
(init_graph): New function.
(build_pred_graph): Remove code to init_graph.
Add location equivalence support.
(struct scc_info): Rename roots to deleted.
(scc_visit): Ditto.
(init_scc_info): Ditto
(init_topo_info): Use graph->size.
(compute_topo_order): Ditto.
(do_da_constraint): Removed.
(do_sd_constraint): Remove calls to find().
set_union_with_increment should always get 0 as last arg here.
(do_complex_constraint): Replace do_da_constraint with assert.
Stop calling find.
(struct equiv_class_label): New.
(pointer_equiv_class_table): Ditto.
(location_equiv_class_table): Ditto.
(equiv_class_label_hash): Ditto.
(equiv_class_label_eq): Ditto
(equiv_class_lookup): Ditto.
(equiv_class_ladd): Ditto.
(pointer_equiv_class): Ditto.
(location_equiv_class): Ditto.
(condense_visit): Rename and rewrite from label_visit to do only
SCC related stuff for HU.
(label_visit): Do HU work for HU.
(perform_var_substitution): Update to do HU and location
equivalence.
(free_var_substitution_info): Update to free HU and location
equivalence structures. */
(find_equivalent_node): Update for pointer but not location
equivalence.
(unite_pointer_equivalences): New function.
(move_complex_constraints): Rewrite to only do moving.
(rewrite_constraints): Split out of move_complex_constraints.
(solve_graph): Use graph->size.
(process_constraint_1): Add from_call argument, use it.
Split *a = &b into two constraints.
(process_constraint): Use new process_constraint_1.
(get_constraint_for_component_ref): Handle bitmaxsize == -1 case.
(get_constraint_for): Handle non-pointer integers properly.
Remove code that used to handle structures.
(handle_ptr_arith): Fix a few bugs in pointer arithmetic handling
with unknown addends.
(handle_rhs_call): New function.
(find_func_aliases): Use handle_rhs_call.
(set_uids_in_ptset): Add an assert.
(set_used_smts): Fix bug in not considering unified vars.
(compute_tbaa_pruning): Stop initing useless iteration_obstack.
(compute_points_to_sets): Update for other function changes.
(delete_points_to_sets): Ditto.
(ipa_pta_execute): Ditto.
(pass_ipa_pta): We need to update SSA after ipa_pta.
From-SVN: r127629
Jan Hubicka [Sun, 19 Aug 2007 23:09:15 +0000 (01:09 +0200)]
* i386.md: Replace "rim" and "mri" constraints by "g".
From-SVN: r127628
Joseph Myers [Sun, 19 Aug 2007 23:07:15 +0000 (00:07 +0100)]
dwarf2out.c (text_section_used, [...]): New.
* dwarf2out.c (text_section_used, cold_text_section_used,
cold_text_section, dwarf2out_note_section_used): New.
(dwarf2out_init): Initialize cold_text_section.
(dwarf2out_switch_text_section, dwarf2out_begin_function): Call
dwarf2out_note_section_used.
(size_of_aranges): Only count entry for text section if it was
used. Count entry for cold text section if it was used.
(output_aranges): Only output entries for text section and cold
text section if they were used.
testsuite:
* gcc.dg/debug/dwarf2/aranges-fnsec-1.c: New test.
From-SVN: r127627
Tobias Burnus [Sun, 19 Aug 2007 20:08:14 +0000 (22:08 +0200)]
[multiple changes]
2007-08-18 Tobias Burnus <burnus@net-b.de>
* gfortran.h (gfc_is_intrinsic_typename): Add declaration.
* symbol.c (gfc_is_intrinsic_typename): New function.
* parse.c (decode_statement): Check for space in ABSTRACT INTERFACE.
(parse_interface): Use gfc_is_intrinsic_typename.
* decl.c (gfc_match_derived_decl): Ditto.
* module.c (gfc_match_use): Use gcc_unreachable() for
INTERFACE_ABSTRACT in switch().
2007-08-19 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/interface_abstract_2.f90: New.
* gfortran.dg/interface_abstract_1.f90: Fix typo.
From-SVN: r127626
Andrew Pinski [Sun, 19 Aug 2007 18:33:06 +0000 (11:33 -0700)]
tree-pretty-print.c (debug_generic_expr): Add a comment about the function.
2007-08-19 Andrew Pinski <pinskia@gmail.com>
* tree-pretty-print.c (debug_generic_expr): Add a comment about
the function.
(debug_generic_stmt): Likewise.
(debug_tree_chain): Likewise.
From-SVN: r127625
Dorit Nuzman [Sun, 19 Aug 2007 12:02:48 +0000 (12:02 +0000)]
tree-data-refs.c (split_constant_offset): Expose.
* tree-data-refs.c (split_constant_offset): Expose.
* tree-data-refs.h (split_constant_offset): Add declaration.
* tree-vectorizer.h (dr_alignment_support): Renamed
dr_unaligned_software_pipeline to dr_explicit_realign_optimized.
Added a new value dr_explicit_realign.
(_stmt_vec_info): Added new fields: dr_base_address, dr_init,
dr_offset, dr_step, and dr_aligned_to, along with new access
functions for these fields: STMT_VINFO_DR_BASE_ADDRESS,
STMT_VINFO_DR_INIT, STMT_VINFO_DR_OFFSET, STMT_VINFO_DR_STEP, and
STMT_VINFO_DR_ALIGNED_TO.
* tree-vectorizer.c (vect_supportable_dr_alignment): Add
documentation.
In case of outer-loop vectorization with non-fixed misalignment - use
the dr_explicit_realign scheme instead of the optimized realignment
scheme.
(new_stmt_vec_info): Initialize new fields.
* tree-vect-analyze.c (vect_compute_data_ref_alignment): Handle the
'nested_in_vect_loop' case. Change verbosity level.
(vect_analyze_data_ref_access): Handle the 'nested_in_vect_loop' case.
Don't fail on zero step in the outer-loop for loads.
(vect_analyze_data_refs): Call split_constant_offset to calculate base,
offset and init relative to the outer-loop.
* tree-vect-transform.c (vect_create_data_ref_ptr): Replace the unused
BSI function argument with a new function argument - at_loop.
Simplify the condition that determines STEP. Takes additional argument
INV_P. Support outer-loop vectorization (handle the nested_in_vect_loop
case), including zero step in the outer-loop. Call
vect_create_addr_base_for_vector_ref with additional argument.
(vect_create_addr_base_for_vector_ref): Takes additional argument LOOP.
Updated function documentation. Handle the 'nested_in_vect_loop' case.
Fixed and simplified calculation of step.
(vectorizable_store): Call vect_create_data_ref_ptr with loop instead
of bsi, and with additional argument. Call bump_vector_ptr with
additional argument. Fix typos. Handle the 'nested_in_vect_loop' case.
(vect_setup_realignment): Takes additional arguments INIT_ADDR and
DR_ALIGNMENT_SUPPORT. Returns another value AT_LOOP. Handle the case
when the realignment setup needs to take place inside the loop. Support
the dr_explicit_realign scheme. Allow generating the optimized
realignment scheme for outer-loop vectorization. Added documentation.
(vectorizable_load): Support the dr_explicit_realign scheme. Handle the
'nested_in_vect_loop' case, including loads that are invariant in the
outer-loop and the realignment schemes. Handle the case when the
realignment setup needs to take place inside the loop. Call
vect_setup_realignment with additional arguments. Call
vect_create_data_ref_ptr with additional argument and with loop instead
of bsi. Fix 80-column overflow. Fix typos. Rename PHI_STMT to PHI.
(vect_gen_niters_for_prolog_loop): Call
vect_create_addr_base_for_vector_ref with additional arguments.
(vect_create_cond_for_align_checks): Likewise.
(bump_vector_ptr): Updated to support the new dr_explicit_realign
scheme: takes additional argument bump; argument ptr_incr is now
optional; updated documentation.
(vect_init_vector): Takes additional argument (bsi). Use it, if
available, to insert the vector initialization.
(get_initial_def_for_induction): Pass additional argument in call to
vect_init_vector.
(vect_get_vec_def_for_operand): Likewise.
(vect_setup_realignment): Likewise.
(vectorizable_load): Likewise.
From-SVN: r127624
Dorit Nuzman [Sun, 19 Aug 2007 09:39:50 +0000 (09:39 +0000)]
tree-vectorizer.h (vect_is_simple_reduction): Takes a loop_vec_info as argument instead of struct loop.
* tree-vectorizer.h (vect_is_simple_reduction): Takes a loop_vec_info
as argument instead of struct loop.
(nested_in_vect_loop_p): New function.
(vect_relevant): Add enum values vect_used_in_outer_by_reduction and
vect_used_in_outer.
(is_loop_header_bb_p): New. Used to differentiate loop-header phis
from other phis in the loop.
(destroy_loop_vec_info): Add additional argument to declaration.
* tree-vectorizer.c (supportable_widening_operation): Also check if
nested_in_vect_loop_p (don't allow changing the order in this case).
(vect_is_simple_reduction): Takes a loop_vec_info as argument instead
of struct loop. Call nested_in_vect_loop_p and don't require
flag_unsafe_math_optimizations if it returns true.
(new_stmt_vec_info): When setting def_type for phis differentiate
loop-header phis from other phis.
(bb_in_loop_p): New function.
(new_loop_vec_info): Inner-loop phis already have a stmt_vinfo, so just
update their loop_vinfo. Order of BB traversal now matters - call
dfs_enumerate_from with bb_in_loop_p.
(destroy_loop_vec_info): Takes additional argument to control whether
stmt_vinfo of the loop stmts should be destroyed as well.
(vect_is_simple_reduction): Allow the "non-reduction" use of a
reduction stmt to be defines by a non loop-header phi.
(vectorize_loops): Call destroy_loop_vec_info with additional argument.
* tree-vect-transform.c (vectorizable_reduction): Call
nested_in_vect_loop_p. Check for multitypes in the inner-loop.
(vectorizable_call): Likewise.
(vectorizable_conversion): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_type_promotion): Likewise.
(vectorizable_type_demotion): Likewise.
(vectorizable_store): Likewise.
(vectorizable_live_operation): Likewise.
(vectorizable_reduction): Likewise. Also pass loop_info to
vect_is_simple_reduction instead of loop.
(vect_init_vector): Call nested_in_vect_loop_p.
(get_initial_def_for_reduction): Likewise.
(vect_create_epilog_for_reduction): Likewise.
(vect_init_vector): Check which loop to work with, in case there's an
inner-loop.
(get_initial_def_for_inducion): Extend to handle outer-loop
vectorization. Fix indentation.
(vect_get_vec_def_for_operand): Support phis in the case vect_loop_def.
In the case vect_induction_def get the vector def from the induction
phi node, instead of calling get_initial_def_for_inducion.
(get_initial_def_for_reduction): Extend to handle outer-loop
vectorization.
(vect_create_epilog_for_reduction): Extend to handle outer-loop
vectorization.
(vect_transform_loop): Change assert to just skip this case. Add a
dump printout.
(vect_finish_stmt_generation): Add a couple asserts.
(vect_estimate_min_profitable_iters): Multiply
cost of inner-loop stmts (in outer-loop vectorization) by estimated
inner-loop bound.
(vect_model_reduction_cost): Don't add reduction epilogue cost in case
this is an inner-loop reduction in outer-loop vectorization.
* tree-vect-analyze.c (vect_analyze_scalar_cycles_1): New function.
Same code as what used to be vect_analyze_scalar_cycles, only with
additional argument loop, and loop_info passed to
vect_is_simple_reduction instead of loop.
(vect_analyze_scalar_cycles): Code factored out into
vect_analyze_scalar_cycles_1. Call it for each relevant loop-nest.
Updated documentation.
(analyze_operations): Check for inner-loop loop-closed exit-phis during
outer-loop vectorization that are live or not used in the outerloop,
cause this requires special handling.
(vect_enhance_data_refs_alignment): Don't consider versioning for
nested-loops.
(vect_analyze_data_refs): Check that there are no datarefs in the
inner-loop.
(vect_mark_stmts_to_be_vectorized): Also consider vect_used_in_outer
and vect_used_in_outer_by_reduction cases.
(process_use): Also consider the case of outer-loop stmt defining an
inner-loop stmt and vice versa.
(vect_analyze_loop_1): New function.
(vect_analyze_loop_form): Extend, to allow a restricted form of nested
loops. Call vect_analyze_loop_1.
(vect_analyze_loop): Skip (inner-)loops within outer-loops that have
been vectorized. Call destroy_loop_vec_info with additional argument.
* tree-vect-patterns.c (vect_recog_widen_sum_pattern): Don't allow
in the inner-loop when doing outer-loop vectorization. Add
documentation and printout.
(vect_recog_dot_prod_pattern): Likewise. Also add check for
GIMPLE_MODIFY_STMT (in case we encounter a phi in the loop).
From-SVN: r127623
Dorit Nuzman [Sun, 19 Aug 2007 09:32:22 +0000 (09:32 +0000)]
pr20122.c: Fix test (now vectorized, with versioning for aliasing).
* testsuite/gcc.dg/vect/pr20122.c: Fix test (now vectorized, with
versioning for aliasing).
* testsuite/gcc.dg/vect/vect-35.c: Likewise.
* testsuite/gcc.dg/vect/vect-iv-6.c: Fix test for vect_no_align targets.
* testsuite/gcc.dg/vect/vect-multitypes-11.c: Likewise.
From-SVN: r127621
Roger Sayle [Sun, 19 Aug 2007 01:52:23 +0000 (01:52 +0000)]
primary.c (match_logical_constant_string): New function to match a ".true." or a ".false.".
* primary.c (match_logical_constant_string): New function to match
a ".true." or a ".false.".
(match_logical_constant): Use it instead of gfc_match_strings.
From-SVN: r127620
GCC Administrator [Sun, 19 Aug 2007 00:18:54 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r127618
Andrew Pinski [Sat, 18 Aug 2007 20:53:02 +0000 (13:53 -0700)]
tree-affine.h (print_aff): New prototype.
2007-08-18 Andrew Pinski <pinskia@gmail.com>
* tree-affine.h (print_aff): New prototype.
(debug_aff): Likewise.
* tree-affine.c (print_aff): New function.
(debug_aff): Likewise.
From-SVN: r127615
Tom Tromey [Sat, 18 Aug 2007 17:54:11 +0000 (17:54 +0000)]
re PR preprocessor/32974 (#pragma GCC dependency generates extra token error.)
gcc/testsuite
PR preprocessor/32974:
* gcc.dg/cpp/pr32974.c: New file.
libcpp
PR preprocessor/32974:
* directives.c (parse_include): Don't check for EOL when
processing #pragma dependency.
From-SVN: r127614
Paul Brook [Sat, 18 Aug 2007 15:15:39 +0000 (15:15 +0000)]
Makefile.tpl (DEBUG_PREFIX_CFLAGS_FOR_TARGET): New.
2007-08-18 Paul Brook <paul@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* Makefile.tpl (DEBUG_PREFIX_CFLAGS_FOR_TARGET): New.
(CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Include it.
* Makefile.in: Regenerate.
* configure.ac (--with-debug-prefix-map): New.
* configure: Regenerate.
config:
2007-08-18 Paul Brook <paul@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* mt-gnu (CXXFLAGS_FOR_TARGET): Add
$(DEBUG_PREFIX_CFLAGS_FOR_TARGET).
gcc:
2007-08-18 Paul Brook <paul@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
* common.opt (-fdebug-prefix-map=): New option.
* opts.c: Include debug.h.
(common_handle_option): Handle -fdebug-prefix-map.
* final.c: Include ggc.h.
(struct debug_prefix_map, debug_prefix_maps, add_debug_prefix_map,
remap_debug_filename): New.
* Makefile.in (final.o, opts.o): Update dependencies.
* debug.h (remap_debug_filename, add_debug_prefix_map): Declare.
* configure.ac: Check for assembler --debug-prefix-map support.
* configure, config.in: Regenerate.
* gcc.c (ASM_MAP): Define conditional on HAVE_AS_DEBUG_PREFIX_MAP.
(ASM_DEBUG_SPEC): Include ASM_MAP.
* doc/install.texi (--with-debug-prefix-map): Document.
* doc/invoke.texi (-fdebug-prefix-map): Document.
* dbxout.c (dbxout_init, dbxout_start_source_file,
dbxout_source_file): Call remap_debug_filename.
* dwarf2out.c (add_comp_dir_attribute, maybe_emit_file,
dwarf2out_start_source_file, dwarf2out_finish): Call
remap_debug_filename.
(file_table_relative_p): Do not check d->emitted_number.
* toplev.c (output_file_directive): Call remap_debug_filename.
* vmsdbgout.c (write_srccorr): Call remap_debug_filename.
* xcoffout.c (xcoffout_source_file): Call remap_debug_filename.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r127613
Tobias Burnus [Sat, 18 Aug 2007 14:57:21 +0000 (16:57 +0200)]
[multiple changes]
2007-08-18 Paul Thomas <pault@gcc.gnu.org>
Janus Weil <jaydub66@gmail.com>
* interface.c (gfc_match_interface,gfc_match_abstract_interface,
gfc_match_end_interface,gfc_add_interface): Add abstract interface.
* dump-parse-tree.c (gfc_show_attr): Ditto.
* gfortran.h (interface_type,symbol_attribute): Ditto.
* module.c (gfc_match_use,ab_attribute,attr_bits,
mio_symbol_attribute): Ditto.
* resolve.c (resolve_function): Ditto.
* match.h: Ditto.
* parse.c (decode_statement): Ditto.
(parse_interface): Ditto, check for C1203 (name of abstract interface
cannot be the same as an intrinsic type).
* decl.c (gfc_match_bind_c): Check for NAME= with abstract interfaces.
(access_attr_decl): Handle Abstract interfaces.
2007-08-17 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/interface_abstract_1.f90: New.
From-SVN: r127612
Paul Thomas [Sat, 18 Aug 2007 10:47:58 +0000 (10:47 +0000)]
re PR fortran/32881 (PURE attribute escapes from contained procedure)
2007-08-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32881
* expr.c (gfc_check_pointer_assign): If the rhs is the
initialization expression for the rhs, there is no error.
2007-08-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32881
* gfortran.dg/pure_initializer_1.f90: New test.
From-SVN: r127611
Paul Thomas [Sat, 18 Aug 2007 08:34:42 +0000 (08:34 +0000)]
re PR fortran/32875 (Not Implemented: complex character array constructor)
2007-08-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32875
* trans-array.c (get_array_ctor_strlen): Set the character
length of a zero length array to zero.
2007-08-18 Paul Thomas <pault@gcc.gnu.org>
PR fortran/32875
* gfortran.dg/array_constructor_18.f90: New test.
From-SVN: r127608
GCC Administrator [Sat, 18 Aug 2007 00:18:03 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r127606
Andrew Pinski [Fri, 17 Aug 2007 22:14:47 +0000 (22:14 +0000)]
re PR c++/28989 (post-increment of bool variable accepted as lvalue)
2007-08-17 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/28989
* tree.c (lvalue_p_1 <case SAVE_EXPR>): SAVE_EXPRs are never
lvalues.
2007-08-17 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c++/28989
* g++.dg/expr/lval3.C: New test.
* g++.dg/expr/lval4.C: New test.
From-SVN: r127603
Tom Tromey [Fri, 17 Aug 2007 22:08:04 +0000 (22:08 +0000)]
typeck.c (find_method_in_interfaces): Update.
* typeck.c (find_method_in_interfaces): Update.
* jcf-parse.c (load_class): Update.
* java-gimplify.c (java_gimplify_component_ref): Removed.
(java_gimplify_modify_expr): Update. Removed pre_p and post_p
arguments.
(java_gimplify_expr): Update.
* decl.c (java_init_decl_processing): Update.
* class.c (set_constant_value): Update.
(make_class_data): Update.
(finish_class): Update.
(build_static_field_ref): Update.
(is_compiled_class): Update.
(maybe_layout_super_class): Update.
(layout_class): Update.
(layout_class_method): Update.
* java-tree.h (CAN_COMPLETE_NORMALLY): Removed.
(lang_decl_var) <am, final_iud, cif>: Removed fields.
(lang_decl_func) <init_calls_this>: Removed field.
(lang_type) <dot_class, verify_method>: Removed fields.
(FIELD_NESTED_ACCESS): Removed.
(FIELD_NESTED_ACCESS_P): Removed.
(DECL_FIELD_FINAL_IUD): Removed.
(DECL_LOCAL_FINAL_IUD): Removed
(LOCAL_FINAL_P): Removed.
(FINAL_VARIABLE_P): Removed.
(CLASS_FINAL_VARIABLE_P): Removed.
(DECL_BIT_INDEX): Removed.
(DECL_INIT_CALLS_THIS): Removed.
(FIELD_LOCAL_ALIAS): Removed.
(FIELD_LOCAL_ALIAS_USED): Removed.
(FIELD_THISN): Removed.
(DECL_FUNCTION_INIT_TEST_CLASS): Removed.
(LOCAL_CLASS_INITIALIZATION_FLAG): Removed.
(LOCAL_CLASS_INITIALIZATION_FLAG_P): Removed.
(TYPE_DOT_CLASS): Removed.
(TYPE_VERIFY_METHOD): Removed.
(ID_CLASSDOLLAR_P): Removed.
(enum java_tree_index) <JTI_CLASSDOLLAR_IDENTIFIER_NODE>:
Removed.
(classdollar_identifier_node): Removed.
(TYPE_UNKNOWN): Removed.
(CLASS_FROM_SOURCE_P): Removed.
* expr.c (build_jni_stub): Update.
(force_evaluation_order): Update.
(build_java_empty_stmt): Update.
(build_class_init): Update.
(java_stack_swap): Update.
(build_jni_stub): Update.
From-SVN: r127602
Ollie Wild [Fri, 17 Aug 2007 21:42:38 +0000 (21:42 +0000)]
re PR c++/31749 (ICE with invalid redeclaration of builtin)
PR c++/31749
gcc/cp/
* name-lookup.c (do_nonmember_using_decl): Shift implicit type
declarations into appropriate slots for comparison. Fix type
comparison.
gcc/testsuite/
* g++.dg/lookup/builtin3.C: New test.
* g++.dg/lookup/builtin4.C: New test.
* g++.dg/lookup/using19.C: New test.
From-SVN: r127600
Paolo Carlini [Fri, 17 Aug 2007 21:31:40 +0000 (21:31 +0000)]
re PR c++/32190 (wrong error recovery on parsing template arguments)
2007-08-17 Paolo Carlini <pcarlini@suse.de>
PR c++/32190
* g++.dg/parse/error31.C: New.
From-SVN: r127597
Paolo Carlini [Fri, 17 Aug 2007 20:46:59 +0000 (20:46 +0000)]
re PR c++/32112 (#'unbound_class_template' not supported by dump_decl#)
/cp
2007-08-17 Paolo Carlini <pcarlini@suse.de>
PR c++/32112
* error.c (dump_decl): Deal with UNBOUND_CLASS_TEMPLATE.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Likewise.
/testsuite
2007-08-17 Paolo Carlini <pcarlini@suse.de>
PR c++/32112
* g++.dg/template/error26.C: New.
From-SVN: r127596
Michael Snyder [Fri, 17 Aug 2007 19:28:22 +0000 (19:28 +0000)]
make-relative-prefix.c (make_relative_prefix_1): Resource leaks.
2007-08-17 Michael Snyder <msnyder@access-company.com>
* make-relative-prefix.c (make_relative_prefix_1): Resource leaks.
From-SVN: r127595
Kaveh R. Ghazi [Fri, 17 Aug 2007 17:56:28 +0000 (17:56 +0000)]
loop-invariant.c (find_invariants_to_move): Add missing macro argument.
* loop-invariant.c (find_invariants_to_move): Add missing macro
argument.
From-SVN: r127591
Daniel Jacobowitz [Fri, 17 Aug 2007 17:24:22 +0000 (17:24 +0000)]
re PR testsuite/31884 (priority_queue_dijkstra.cc operates on deallocated memory)
PR testsuite/31884
* testsuite/ext/pb_ds/example/priority_queue_dijkstra.cc (main): Do
not access deleted nodes.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc,
testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc,
testsuite/27_io/basic_filebuf/open/char/4.cc,
testsuite/27_io/objects/char/9.cc: Use dg-require-fileio.
* testsuite/ext/forced_exception_error/cons_virtual_derivation.cc,
testsuite/ext/pb_ds/regression/hash_data_map_rand.cc,
testsuite/ext/pb_ds/regression/trie_data_map_rand.cc,
testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc,
testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc,
testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc,
testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc,
testsuite/ext/pb_ds/regression/priority_queue_rand.cc,
testsuite/ext/pb_ds/regression/tree_data_map_rand.cc,
testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc,
testsuite/ext/throw_allocator/deallocate_global.cc,
testsuite/ext/throw_allocator/check_delete.cc,
testsuite/ext/throw_allocator/check_allocate_max_size.cc,
testsuite/ext/throw_allocator/check_deallocate_null.cc,
testsuite/ext/throw_allocator/check_new.cc,
testsuite/ext/throw_allocator/deallocate_local.cc,
testsuite/tr1/5_numerical_facilities/random/subtract_with_carry_01/cons/gen1.cc,
testsuite/tr1/5_numerical_facilities/random/subtract_with_carry/cons/gen1.cc,
testsuite/tr1/5_numerical_facilities/random/linear_congruential/cons/gen1.cc,
testsuite/tr1/5_numerical_facilities/random/mersenne_twister/cons/gen1.cc,
testsuite/23_containers/list/modifiers/insert/25288.cc: Use
dg-require-time.
From-SVN: r127590
Paolo Carlini [Fri, 17 Aug 2007 16:50:35 +0000 (16:50 +0000)]
typedefs_neg.cc: Adjust dg-error lines.
2007-08-17 Paolo Carlini <pcarlini@suse.de>
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error lines.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Ditto.
From-SVN: r127589