gcc.git
16 years agocgraph.c (dump_cgraph_node): Update.
Jan Hubicka [Wed, 7 May 2008 09:44:30 +0000 (11:44 +0200)]
cgraph.c (dump_cgraph_node): Update.

* cgraph.c (dump_cgraph_node): Update.
* cgraph.h (cgraph_local_info): Break out inline summary.
* cgraphunit.c (cgraph_process_new_functions): Use inliner analysis
hook.
* ipa-inline (inline_summary): New accestor function.
(cgraph_clone_inlined_nodes, cgraph_check_inline_limits,
cgraph_decide_inlining, compute_inline_parameters): Update.
* ipa.c (cgraph_remove_unreachable_nodes): Remove statistics.

From-SVN: r135037

16 years agoCleanup ColdFire scheduling support and add V4 pipeline model.
Maxim Kuvyrkov [Wed, 7 May 2008 08:09:27 +0000 (08:09 +0000)]
Cleanup ColdFire scheduling support and add V4 pipeline model.

* config/m68k/m68k.md (UNSPEC_TIE): New constant.
(define_attr cpu): Add cfv4 value.
(define_attr type, define_attr type1): Merge into a single 'type'
attribute.  Update all uses.
(define_attr opx_type, define_attr opy_type, define_attr opx_access):
Rearrange and update.  Rename value 'reg' to 'Rn', add value 'FPn'.
Update all uses.
(define_attr opx_mem, define_attr opy_mem): Remove.
(define_attr op_mem): Clean up, update comment.
(define_attr size): Use specific values instead of general int.
(define_attr guess, define_attr split): Remove.  Update all uses.
(movdf_internal, tstsi_internal, tsthi_internal, tstqi_internal,
tst<mode>_68881, pushexthisi_const, movsi_const0_68000_10,
movsi_const0_68040_60, movsi_const0, movsi_cf, movstrictqi_cf,
zero_extendhisi2_cf, zero_extendqisi2_cfv4, cfv4_extendhisi2,
68k_extendhisi2, extendqihi2, cfv4_extendqisi2, 68k_extendqisi2,
floatsi<mode>2_68881, ftrunc<mode>2_68881, ftrunc<mode>2_cf,
fix<mode>qi2_68881, fix<mode>hi2_68881, fix<mode>si2_68881,
adddi_dishl32, addsi3_5200, add<mode>3_floatsi_68881,
add<mode>3_floathi_68881, add<mode>3_floatqi_68881,
add<mode>3_68881, add<mode>3_cf, subdi_dishl32, subsi3,
sub<mode>3_floatsi_68881, sub<mode>3_floathi_68881,
sub<mode>3_floatqi_68881, sub<mode>3_68881, sub<mode>3_cf,
mulhi3, mulhisi3, mulhisisi3_s, mulsi3_68020, mulsi3_cf,
umulhisi3, mulhisisi3_z, mul<mode>3_floatsi_68881,
mul<mode>3_floathi_68881, mul<mode>3_floatqi_68881, fmul<mode>3_cf,
div<mode>3_cf, sqrt<mode>2_cf, abs<mode>2_cf, clzsi2,
one_cmplsi2_5200, subreghi1ashrdi_const32, ashrsi3, lshrsi3,
bsetmemqi, bsetmemqi_ext, bclrmemqi, bclrmemqi_ext,
beq, bne, bgt, blt, bordered, bunordered, buneq, bunge, bungt, bunle,
bunlt, bltgt, tablejump_internal, call, non_symbolic_call_value,
symbolic_call_value_jsr, symbolic_call_value_bsr, link):
Update or set attributes.
(stack_tie): New fake instruction.

* config/m68k/m68k.h (TUNE_CFV4): New macro.
(m68k_sched_attr_size): Update declaration.
(m68k_sched_attr_type2): Remove.
(m68k_sched_address_bypass_p, m68k_sched_indexed_address_bypass_p):
Declare new bypass predicates.

* config/m68k/m68k.c (m68k_sched_issue_rate,
m68k_sched_first_cycle_multipass_dfa_lookahead): Declare hook
implementations.
(TARGET_SCHED_ISSUE_RATE,
TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Override hooks.
(override_options): Handle scheduling for ColdFire V4 core.
(m68k_expand_prologue): Emit stack_tie.
(enum attr_op_type): Split value 'OP_TYPE_REG' to 'OP_TYPE_RN' and
'OP_TYPE_FPN'.  Update all uses.
(sched_guess_p): Remove.
(sched_address_type): Handle symbolic addresses.
(sched_get_operand): New static function.
(sched_operand_type): Merge into sched_attr_op_type.
(sched_attr_op_type): Handle FP registers, handle quick constants,
update.
(m68k_sched_attr_opx_type, m68k_sched_attr_opy_type): Update.
(m68k_sched_attr_size): Update.  Move logic to ...
(sched_get_attr_size_int): New static function.
(sched_get_opxy_mem_type): New static function.
(m68k_sched_attr_op_mem): Update.
(m68k_sched_attr_type2): Remove.
(sched_cfv4_bypass_data): New static variable.
(m68k_sched_adjust_cost): Handle ColdFire V4 bypass.
(m68k_sched_issue_rate): Implement scheduler hook.
(struct _sched_ib: enabled_p): New field.
(m68k_sched_variable_issue): Update.  Handle V4.
(SCHED_DUMP_TODO, SCHED_DUMP_DONE, SCHED_DUMP_NOTHING,
sched_dump_class_func_t, sched_dump_split_class,
sched_dump_dfa_guess_unit_code, sched_dump_dfa_state,
sched_dump_dfa_class, m68k_sched_dump): Remove.
(m68k_sched_first_cycle_multipass_dfa_lookahead): Implement scheduler
hook.
(m68k_sched_init_global): Remove statisctics dumping, introduce
sanity check that all instructions have pipeline reservations.  Handle
ColdFire V4 core.
(m68k_sched_dfa_pre_advance_cycle, m68k_sched_dfa_post_advance_cycle):
Handle ColdFire V4 core.
(sched_mem_operand_p, sched_get_reg_operand, sched_get_mem_operand):
New static functions.
(m68k_sched_address_bypass_p): New bypass predicate.
(sched_get_indexed_address_scale): New static function.
(m68k_sched_indexed_address_bypass_p): New bypass predicate.

* cf.md: Update comments.
(define_attr type2): Remove.  Use 'type' attribute instead.
Update all uses.
(cf_ib): Rename to cfv123_ib.  Update all uses.
(cf_oep): Rename to cfv123_oep.  Update all uses.
(cf_chr): Rename to cfv123_chr.  Update all uses.
(cf_mem): Rename to cfv123_mem.  Update all uses.
(cf_mac): Move to more appropriate place.
(cfv123_guess): New automaton and cpu_unit.
(cfv123_*, cfv12_*, cfv1_*, cfv2_*, cfv3_*): Use type attribute.
Update uses of 'size' attribute.  Handle before reload scheduling.
(cfv123_guess): New dummy reservation for unhandled instructions.
(cfv4_*): Pipeline description of ColdFire V4 core.
(ignore): New reservation to handle 'ignore' type.

From-SVN: r135033

16 years agore PR middle-end/36013 (Wrong code involving restricted pointers to non-restricted...
Ian Lance Taylor [Wed, 7 May 2008 07:45:17 +0000 (09:45 +0200)]
re PR middle-end/36013 (Wrong code involving restricted pointers to non-restricted pointers)

PR middle-end/36013
* gimplify.c (find_single_pointer_decl_1): Don't look through
indirections.
(find_single_pointer_decl): Adjust comments.

* gcc.c-torture/execute/20080506-2.c: New test.

From-SVN: r135029

16 years agore PR middle-end/36137 (gcc can't do math)
Jakub Jelinek [Wed, 7 May 2008 07:40:01 +0000 (09:40 +0200)]
re PR middle-end/36137 (gcc can't do math)

PR middle-end/36137
* fold-const.c (fold_binary): Use STRIP_SIGN_NOPS instead of
STRIP_NOPS on arguments even for MIN_EXPR and MAX_EXPR.

* gcc.c-torture/execute/20080506-1.c: New test.

From-SVN: r135028

16 years agore PR middle-end/36106 (#pragma omp atomic issues with floating point types)
Jakub Jelinek [Wed, 7 May 2008 07:28:14 +0000 (09:28 +0200)]
re PR middle-end/36106 (#pragma omp atomic issues with floating point types)

PR middle-end/36106
* omp-low.c (expand_omp_atomic_pipeline): Load value using the
integral type rather than floating point, then VIEW_CONVERT_EXPR
to the floating point type.

* testsuite/libgomp.c/atomic-5.c: New test.
* testsuite/libgomp.c/atomic-6.c: New test.
* testsuite/libgomp.c/autopar-1.c: New test.

From-SVN: r135027

16 years agoi386.c (ix86_expand_copysign): Force non-zero constant TFmode op0 to register.
Uros Bizjak [Wed, 7 May 2008 07:19:01 +0000 (09:19 +0200)]
i386.c (ix86_expand_copysign): Force non-zero constant TFmode op0 to register.

* config/i386/i386.c (ix86_expand_copysign): Force non-zero constant
TFmode op0 to register.

From-SVN: r135025

16 years agore PR libfortran/34974 (null bytes when reverse-tabbing long records (regression...
Jerry DeLisle [Wed, 7 May 2008 02:28:45 +0000 (02:28 +0000)]
re PR libfortran/34974 (null bytes when reverse-tabbing long records (regression vs. g77))

2008-05-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/34974
gfortran.dg/fmt_t_7.f: XFAIL this until we get issue resolved.

From-SVN: r135017

16 years agoc-decl.c (grokdeclarator): Comment typo.
Alan Modra [Wed, 7 May 2008 01:46:50 +0000 (01:46 +0000)]
c-decl.c (grokdeclarator): Comment typo.

* c-decl.c (grokdeclarator): Comment typo.

From-SVN: r135016

16 years agomutex (mutex::mutex): Fix usage of initializing macro.
Benjamin Kosnik [Wed, 7 May 2008 00:55:51 +0000 (00:55 +0000)]
mutex (mutex::mutex): Fix usage of initializing macro.

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/mutex (mutex::mutex): Fix usage of initializing macro.
(recursive_mutex::recursive_mutex): Same.
(once_flag::once_flag): Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Fix line numbers.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.

From-SVN: r135015

16 years agoDaily bump.
GCC Administrator [Wed, 7 May 2008 00:17:45 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135013

16 years agotree-flow.h: Remove prototype for computed_goto_p.
Aldy Hernandez [Tue, 6 May 2008 22:16:50 +0000 (22:16 +0000)]
tree-flow.h: Remove prototype for computed_goto_p.

        * tree-flow.h: Remove prototype for computed_goto_p.
        * tree-cfg.c (computed_goto_p): Make static.

From-SVN: r135009

16 years agore PR testsuite/36155 (UTF tests doesn't work on Linux)
H.J. Lu [Tue, 6 May 2008 21:35:33 +0000 (21:35 +0000)]
re PR testsuite/36155 (UTF tests doesn't work on Linux)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/36155
* g++.dg/ext/utf32-4.C: Fix a typo.

From-SVN: r135008

16 years agocondition_variable: New.
Benjamin Kosnik [Tue, 6 May 2008 21:11:47 +0000 (21:11 +0000)]
condition_variable: New.

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/condition_variable: New.
* include/std/mutex: New.
* src/condition_variable.cc: New.
* src/mutex.cc: New.
* include/bits/functexcept.h: Add __throw_system_error varients.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: Add exports.

* doc/xml/manual/using.xml: Add new includes.
* doc/doxygen/user.cfg.in: Doxygen support.
* doc/doxygen/doxygroups.cc: Same.

* include/Makefile.am: Add mutex, condition_variable.
* include/Makefile.in: Regenerated.
* src/Makefile.am: Add mutex.cc, condition_variable.cc.
* src/Makefile.in: Regenerated.

* testsuite/30_threads: New.
* testsuite/30_threads/lock_error: New.
* testsuite/30_threads/mutex: New.
* testsuite/30_threads/mutex/dest: New.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: New.
* testsuite/30_threads/mutex/native_handle: New.
* testsuite/30_threads/mutex/native_handle/1.cc: New.
* testsuite/30_threads/mutex/cons: New.
* testsuite/30_threads/mutex/cons/assign_neg.cc: New.
* testsuite/30_threads/mutex/cons/1.cc: New.
* testsuite/30_threads/mutex/cons/copy_neg.cc: New.
* testsuite/30_threads/mutex/requirements: New.
* testsuite/30_threads/mutex/requirements/typedefs.cc: New.
* testsuite/30_threads/mutex/try_lock: New.
* testsuite/30_threads/mutex/try_lock/1.cc: New.
* testsuite/30_threads/mutex/try_lock/2.cc: New.
* testsuite/30_threads/mutex/lock: New.
* testsuite/30_threads/mutex/lock/1.cc: New.
* testsuite/30_threads/mutex/unlock: New.
* testsuite/30_threads/mutex/unlock/1.cc: New.
* testsuite/30_threads/recursive_mutex: New.
* testsuite/30_threads/recursive_mutex/dest: New.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: New.
* testsuite/30_threads/recursive_mutex/native_handle: New.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: New.
* testsuite/30_threads/recursive_mutex/cons: New.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: New.
* testsuite/30_threads/recursive_mutex/cons/1.cc: New.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: New.
* testsuite/30_threads/recursive_mutex/requirements: New.
* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc: New.
* testsuite/30_threads/lock_guard: New.
* testsuite/30_threads/lock_guard/requirements: New.
* testsuite/30_threads/lock_guard/requirements/typedefs.cc: New.
* testsuite/30_threads/lock_guard/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/headers: New.
* testsuite/30_threads/headers/mutex: New.
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: New.
* testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: New.
* testsuite/30_threads/headers/condition_variable: New.
* testsuite/30_threads/headers/condition_variable/
types_std_c++0x.cc: New.
* testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc: New.
* testsuite/30_threads/once_flag: New.
* testsuite/30_threads/unique_lock: New.
* testsuite/30_threads/unique_lock/requirements: New.
* testsuite/30_threads/unique_lock/requirements/typedefs.cc: New.
* testsuite/30_threads/unique_lock/requirements/
explicit_instantiation.cc: New.
* testsuite/17_intro/headers/c++200x/all.cc: Add new includes.

From-SVN: r135007

16 years agoarith.c: (gfc_arith_concat...
Francois-Xavier Coudert [Tue, 6 May 2008 21:06:20 +0000 (21:06 +0000)]
arith.c: (gfc_arith_concat...

* arith.c: (gfc_arith_concat, gfc_compare_string,
gfc_compare_with_Cstring, hollerith2representation,
gfc_hollerith2int, gfc_hollerith2real, gfc_hollerith2complex,
gfc_hollerith2character, gfc_hollerith2logical): Use wide
characters for character constants.
* data.c (create_character_intializer): Likewise.
* decl.c (gfc_set_constant_character_len): Likewise.
* dump-parse-tree.c (show_char_const): Correctly dump wide
character strings.
error.c (print_wide_char): Rename into gfc_print_wide_char.
(show_locus): Adapt to new prototype of gfc_print_wide_char.
expr.c (free_expr0): Representation is now disjunct from
character string value, so we always free it.
(gfc_copy_expr, find_substring_ref, gfc_simplify_expr): Adapt
to wide character strings.
* gfortran.h (gfc_expr): Make value.character.string a wide string.
(gfc_wide_toupper, gfc_wide_strncasecmp, gfc_wide_memset,
gfc_widechar_to_char, gfc_char_to_widechar): New prototypes.
(gfc_get_wide_string): New macro.
(gfc_print_wide_char): New prototype.
* io.c (format_string): Make a wide string.
(next_char, gfc_match_format, compare_to_allowed_values,
gfc_match_open): Deal with wide strings.
* module.c (mio_expr): Convert between wide strings and ASCII ones.
* primary.c (match_hollerith_constant, match_charkind_name):
Handle wide strings.
* resolve.c (build_default_init_expr): Likewise.
* scanner.c (gfc_wide_toupper, gfc_wide_memset,
gfc_char_to_widechar): New functions.
(wide_strchr, gfc_widechar_to_char, gfc_wide_strncasecmp):
Changes in prototypes.
(gfc_define_undef_line, load_line, preprocessor_line,
include_line, load_file, gfc_read_orig_filename): Handle wide
strings.
* simplify.c (gfc_simplify_achar, gfc_simplify_adjustl,
gfc_simplify_adjustr, gfc_simplify_char, gfc_simplify_iachar,
gfc_simplify_ichar, simplify_min_max, gfc_simplify_new_line,
gfc_simplify_repeat): Handle wide strings.
(wide_strspn, wide_strcspn): New helper functions.
(gfc_simplify_scan, gfc_simplify_trim, gfc_simplify_verify):
Handle wide strings.
* symbol.c (generate_isocbinding_symbol): Likewise.
* target-memory.c (size_character, gfc_target_expr_size,
encode_character, gfc_target_encode_expr, gfc_interpret_character,
gfc_target_interpret_expr): Handle wide strings.
* trans-const.c (gfc_conv_string_init): Lower wide strings to
narrow ones.
(gfc_conv_constant_to_tree): Likewise.
* trans-expr.c (gfc_conv_substring_expr): Handle wide strings.
* trans-io.c (gfc_new_nml_name_expr): Likewise.
* trans-stmt.c (gfc_trans_label_assign): Likewise.

From-SVN: r135006

16 years agosimplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1, [...]): Mark arguments...
Francois-Xavier Coudert [Tue, 6 May 2008 20:28:19 +0000 (20:28 +0000)]
simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1, [...]): Mark arguments with ATTRIBUTE_UNUSED.

* simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): Mark arguments
with ATTRIBUTE_UNUSED.

From-SVN: r134998

16 years agocheck.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
Francois-Xavier Coudert [Tue, 6 May 2008 20:24:05 +0000 (20:24 +0000)]
check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.

* check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
* simplify.c (gfc_simplify_lgamma): Likewise.

From-SVN: r134997

16 years agore PR libstdc++/36130 (Atomics regression test fail to compile when parallel mode...
Benjamin Kosnik [Tue, 6 May 2008 18:57:46 +0000 (18:57 +0000)]
re PR libstdc++/36130 (Atomics regression test fail to compile when parallel mode is enabled)

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/36130
* include/bits/c++config: Namespace macros and setup only in C++.
* testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: New.

From-SVN: r134995

16 years agore PR testsuite/36155 (UTF tests doesn't work on Linux)
H.J. Lu [Tue, 6 May 2008 18:37:03 +0000 (18:37 +0000)]
re PR testsuite/36155 (UTF tests doesn't work on Linux)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/36155
* gcc.dg/utf32-4.c: Fix a typo.

* lib/target-supports.exp (check_effective_target_4byte_wchar_t):
Use __WCHAR_TYPE__ instead of wchar_t.

From-SVN: r134994

16 years agoenum6.C, [...]: Broaden dg-options pattern.
Mark Shinwell [Tue, 6 May 2008 18:34:53 +0000 (18:34 +0000)]
enum6.C, [...]: Broaden dg-options pattern.

* g++.old-deja/g++.jason/enum6.C, g++.old-deja/g++.law/enum9.C,
g++.old-deja/g++.other/enum4.C, gfortran/enum_9.f90,
gfortran.dg/enum_10.f90: Broaden dg-options pattern.

Co-Authored-By: Andrew Jenner <andrew@codesourcery.com>
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r134993

16 years agoopenmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and gfc_peek_ascii_char.
Francois-Xavier Coudert [Tue, 6 May 2008 18:28:32 +0000 (20:28 +0200)]
openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and gfc_peek_ascii_char.

* openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and
gfc_peek_ascii_char.
* decl.c (gfc_match_kind_spec, gfc_match_type_spec,
gfc_match_implicit_none, match_implicit_range, gfc_match_implicit,
match_string_p, match_attr_spec, gfc_match_suffix,
match_procedure_decl, gfc_match_entry, gfc_match_subroutine):
Likewise.
* gfortran.h (gfc_char_t): New type.
(gfc_linebuf): Make line member a gfc_char_t.
(locus): Make nextc member a gfc_char_t.
(gfc_wide_is_printable, gfc_wide_is_digit, gfc_wide_fits_in_byte,
gfc_wide_tolower, gfc_wide_strlen, gfc_next_ascii_char,
gfc_peek_ascii_char, gfc_check_digit): New prototypes.
* error.c (print_wide_char): New function.
(show_locus): Use print_wide_char and gfc_wide_strlen.
* io.c (next_char): Use gfc_char_t type.
(match_io): Use gfc_peek_ascii_char and gfc_next_ascii_char.
* match.c (gfc_match_parens, gfc_match_eos,
gfc_match_small_literal_int, gfc_match_name, gfc_match_name_C,
gfc_match_intrinsic_op, gfc_match_char,  gfc_match_return,
gfc_match_common): Likewise.
* match.h (gfc_match_special_char): Change prototype.
* parse.c (decode_specification_statement, decode_statement,
decode_omp_directive, next_free, next_fixed): Use
gfc_peek_ascii_char and gfc_next_ascii_char.
* primary.c (gfc_check_digit): Change name.
(match_digits, match_hollerith_constant, match_boz_constant,
match_real_constant, next_string_char, match_charkind_name,
match_string_constant, match_logical_constant_string,
match_complex_constant, match_actual_arg, match_varspec,
gfc_match_rvalue, match_variable): Use gfc_peek_ascii_char and
gfc_next_ascii_char.
* scanner.c (gfc_wide_fits_in_byte, wide_is_ascii,
gfc_wide_is_printable, gfc_wide_tolower, gfc_wide_is_digit,
gfc_wide_is_digit, wide_atoi, gfc_wide_strlen, wide_strcpy,
wide_strchr, widechar_to_char, wide_strncmp, wide_strncasecmp,
gfc_next_ascii_char, gfc_peek_ascii_char):
New functions.
(next_char, gfc_define_undef_line, skip_free_comments,
gfc_next_char_literal, gfc_next_char, gfc_peek_char,
gfc_error_recovery, load_line, preprocessor_line, include_line,
load_file, gfc_read_orig_filename): Use gfc_char_t for source
characters and the {gfc_,}wide_* functions to manipulate wide
strings.

From-SVN: r134992

16 years agommx.md: Rename "*..." insn patterns from my previous commit to "*mmx_...".
Uros Bizjak [Tue, 6 May 2008 17:41:46 +0000 (19:41 +0200)]
mmx.md: Rename "*..." insn patterns from my previous commit to "*mmx_...".

* config/i386/mmx.md: Rename "*..." insn patterns from my
previous commit to "*mmx_...".

From-SVN: r134991

16 years agoPR preprocessor/35313, PR preprocessor/36088:
Tom Tromey [Tue, 6 May 2008 17:15:07 +0000 (17:15 +0000)]
PR preprocessor/35313, PR preprocessor/36088:

gcc/testsuite
PR preprocessor/35313, PR preprocessor/36088:
* gcc.dg/cpp/pr35313.c: New file.
* gcc.dg/cpp/if-oppr.c: Remove test for ',' in a conditional
expression.
* gcc.dg/cpp/if-oppr2.c: New file.
libcpp
PR preprocessor/35313, PR preprocessor/36088:
* expr.c (optab) <QUERY, COMMA>: Set precedence to 4.
(reduce) <case CPP_QUERY>: Special case CPP_COMMA and CPP_COLON.

From-SVN: r134989

16 years agore PR fortran/36117 (Use MPFR for bessel function (optimization, rejects valid F2008))
Tobias Burnus [Tue, 6 May 2008 17:06:54 +0000 (19:06 +0200)]
re PR fortran/36117 (Use MPFR for bessel function (optimization, rejects valid F2008))

2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * intrinsic.c (add_functions): Call gfc_simplify_bessel_*.
        * intrinsic.h: Add prototypes for gfc_simplify_bessel_*.
        * simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
        gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
        gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): New.

2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * gfortran.dg/bessel_2.f90: New.

From-SVN: r134988

16 years agore PR target/35657 (Alignments of DFP types aren't consistent)
H.J. Lu [Tue, 6 May 2008 15:41:08 +0000 (08:41 -0700)]
re PR target/35657 (Alignments of DFP types aren't consistent)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR target/35657
* config/i386/i386.c (contains_128bit_aligned_vector_p): Renamed
to ...
(contains_aligned_value_p): This.  Handle _Decimal128.
(ix86_function_arg_boundary): Only align _Decimal128 to its
natural boundary and handle it properly.

From-SVN: r134987

16 years agoFix another typo in ChangeLog.
H.J. Lu [Tue, 6 May 2008 14:28:58 +0000 (07:28 -0700)]
Fix another typo in ChangeLog.

From-SVN: r134986

16 years agoFix a typo in ChangeLog.
H.J. Lu [Tue, 6 May 2008 14:26:01 +0000 (07:26 -0700)]
Fix a typo in ChangeLog.

From-SVN: r134985

16 years agoipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
Martin Jambor [Tue, 6 May 2008 14:15:18 +0000 (16:15 +0200)]
ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.

2008-05-06  Martin Jambor  <mjambor@suse.cz>

        * ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
        (ipcp_method_is_cloned): Renamed to ipcp_node_is_clone
        (ipcp_method_set_orig_node): Removed.
        (ipcp_cval_get_cvalue_type): Removed.
        (ipcp_method_get_scale): Renamed to ipcp_get_node_scale.
        (ipcp_method_set_scale): Renamed to ipcp_set_node_scale.
        (ipcp_cval_set_cvalue_type): Removed.
        (ipcp_cval_get_cvalue): Removed.
        (ipcp_cval_set_cvalue): Removed.
        (ipcp_type_is_const): Renamed to ipcp_lat_is_const.
        (ipcp_cval_equal_cvalues): Renamed to ipcp_lats_are_equal
        (ipcp_lats_are_equal): Changed parameters to two ipcp_lattice's
        (ipcp_cval_meet): Renamed to ipa_lattice_meet
        (ipcp_cval_changed): Changed to use ipcp_lat_is_const
        (ipcp_method_cval): Renamed to ipcp_get_ith_lattice
        (ipcp_get_ith_lattice): Changed parameters.
        (ipcp_cval_compute): Renamed to ipcp_lattice_from_jfunc
        (ipcp_lattice_from_jfunc): Changed parameters.
(ipcp_redirect): Local lattice pointer instead of lattice type variable.
(ipcp_method_cval_print): Added temporary variable info.
(ipcp_redirect): Removed already unused local variable caller.
(ipcp_redirect): New temporary variable orig_callee_info
(ipcp_redirect): Removed newly unused local variable callee.
(ipcp_redirect): Removed (a bit confusing) local variable type.
(ipcp_insert_stage): Added local variable info.
(ipcp_cval_changed): Renamed to ipcp_lattice_changed, parameters
renamed too
(ipcp_formal_create): Removed.
(ipcp_method_cval_set): Removed.
(ipcp_propagate_stage): Renamed lattice variables.
(ipcp_method_cval_set_cvalue_type): Removed.
(ipcp_method_cval_print): Renamed to ipcp_print_all_lattices
(ipcp_print_all_lattices): Changed printed strings to refer to
lattices rather than cvals.
(ipcp_method_cval_init): Renamed to ipcp_initialize_node_lattices
(ipcp_propagate_const): Changed formal parameters.
(build_const_val): Changed formal parameters.
(ipcp_insert_stage): Removed useless variable cvalue
(build_const_val): Changed formal parameters.
(ipcp_method_compute_scale): Renamed to ipcp_compute_node_scale
(ipcp_after_propagate): Renamed to ipcp_change_tops_to_bottom
(ipcp_callsite_param_print): Renamed to ipcp_print_all_jump_functions
(ipcp_profile_mt_count_print): Renamed to ipcp_print_func_profile_counts
(ipcp_print_func_profile_counts): Changed string from "method" to
"function"
(ipcp_profile_cs_count_print): Renamed to ipcp_print_call_profile_counts
(ipcp_profile_edge_print): Renamed to ipcp_print_edge_profiles
(ipcp_profile_bb_print): Renamed to ipcp_print_bb_profiles
(ipcp_structures_print): Renamed to ipcp_print_all_structures
(ipcp_profile_print): Renamed to ipcp_print_profile_data
(ipcp_lat_is_const): Changed parameters and made inline.
(ipcp_replace_map_create): Renamed to ipcp_create_replace_map
(ipcp_redirect): Renamed to ipcp_need_redirect_p
(ipcp_need_redirect_p): Calls ipcp_lat_is_const instead of using
the predicate condition directly
(ipcp_propagate_stage): Added local variable args. Removed local
variable callee.  (Both are mere code simplifications.)
(ipcp_method_dont_insert_const): Renamed to
ipcp_node_not_modifiable_p.
(ipcp_node_not_modifiable_p): Made inline.
(ipcp_cloned_create): Renamed to ipcp_init_cloned_node
(ipcp_propagate_const): Renamed to ipcp_propagate_one_const
(ipcp_print_all_lattices): Removed variable cvalue
(ipcp_method_scale_print): Renamed to ipcp_function_scale_print
Updated comments.

From-SVN: r134984

16 years agotree-sra.c (try_instantiate_multiple_fields): Early return if field has POINTER_TYPE.
Olivier Hainque [Tue, 6 May 2008 12:13:07 +0000 (12:13 +0000)]
tree-sra.c (try_instantiate_multiple_fields): Early return if field has POINTER_TYPE.

        * tree-sra.c (try_instantiate_multiple_fields): Early return
        if field has POINTER_TYPE.

        testsuite/
        * gnat.dg/fatp_sra.adb: New test.

From-SVN: r134982

16 years agoi386.c (output_set_got): Fix for x86_64 output_emit_asm by using 'q' specifier for...
Kai Tietz [Tue, 6 May 2008 10:07:13 +0000 (10:07 +0000)]
i386.c (output_set_got): Fix for x86_64 output_emit_asm by using 'q' specifier for instruction.

2008-05-06  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/i386.c (output_set_got): Fix for x86_64 output_emit_asm
by using 'q' specifier for instruction.
(ix86_file_end): Replaced case TARGET_64BIT_MS_ABI by TARGET_64BIT.

From-SVN: r134981

16 years agoavr.md (*sbrx_branch, [...]): Change mode of zero_extract from QImode to HImode.
Anatoly Sokolov [Tue, 6 May 2008 09:30:17 +0000 (13:30 +0400)]
avr.md (*sbrx_branch, [...]): Change mode of zero_extract from QImode to HImode.

* config/avr/avr.md (*sbrx_branch, *sbix_branch, *sbix_branch_tmp):
Change mode of zero_extract from QImode to HImode.
(sign bit tests peepholes): (Ditto.).

From-SVN: r134979

16 years ago2008-05-06 Johannes Singler <singler@ira.uka.de>
Johannes Singler [Tue, 6 May 2008 08:55:57 +0000 (08:55 +0000)]
2008-05-06  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/multiway_merge.h:
          (multiway_merge_*_unguarded):
          Pass sentinel directly, to allow correct determination.
          (multiway_merge_loser_tree_unguarded):
          Remove over-cautious assertion.
          (calls to multiway_merge_*_splitting):
          Parametrize with type that is correct in all cases.
        * include/parallel/losertree.h:
          (delete_min_insert (in many classes)):
          Correct and standardize assertions.

From-SVN: r134977

16 years agommx.md: Remove double backslashes from asm templates.
Uros Bizjak [Tue, 6 May 2008 08:39:51 +0000 (10:39 +0200)]
mmx.md: Remove double backslashes from asm templates.

* config/i386/mmx.md: Remove double backslashes from asm templates.
(*addv2sf3): Rename from mmx_addv2sf3 insn pattern.
(mmx_addv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mulv2sf3): Rename from mmx_mulv2sf3 insn pattern.
(mmx_mulv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*<code>v2sf3_finite): New insn pattern.
(*<code>v2sf3): Rename from mmx_<code>v2sf3 insn pattern.
(mmx_<code>v2sf3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(mmx_<plusminus_insn><mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<plusminus_insn><mode>3): New insn pattern.
(mmx_add<mode>3): Removed.
(mmx_ssadd<mode>3): Ditto.
(mmx_usadd<mode>3): Ditto.
(mmx_sub<mode>3): Ditto.
(mmx_sssub<mode>3): Ditto.
(mmx_ussub<mode>3): Ditto.
(*mulv4hi3): Rename from mmx_mulv4hi3 insn pattern.
(mmx_mulv4hi3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*smulv4hi3_highpart): Rename from mmx_smulv4hi3_highpart
insn pattern.
(mmx_smulv4hi3_highpart): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*umulv4hi3_highpart): Rename from mmx_umulv4hi3_highpart
insn pattern.
(mmx_umulv4hi3_highpart): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code>v4hi3): Rename from mmx_<code>v4hi3 insn pattern.
(mmx_<code>v4hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code>v8qi3): Rename from mmx_<code>v8qi3 insn pattern.
(mmx_<code>v8qi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code><mode>3): Rename from mmx_<code><mode>3 insn pattern.
(mmx_<code><mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.

From-SVN: r134976

16 years agore PR tree-optimization/36118 ([4.4 Regressions] inline-related regressions)
Jan Hubicka [Tue, 6 May 2008 07:59:54 +0000 (09:59 +0200)]
re PR tree-optimization/36118 ([4.4 Regressions] inline-related regressions)

PR tree-optimization/36118
* passes.c (pass_init_dump_file): Fix dump header.

From-SVN: r134975

16 years agore PR libfortran/36131 (wrong IO)
Jerry DeLisle [Tue, 6 May 2008 04:00:38 +0000 (04:00 +0000)]
re PR libfortran/36131 (wrong IO)

2008-05-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/36131
* io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974.
(next_record_w): Likewise.

From-SVN: r134973

16 years agore PR middle-end/36141 (Gcc 4.4 failed to boostrap)
Andrew Pinski [Tue, 6 May 2008 03:47:29 +0000 (03:47 +0000)]
re PR middle-end/36141 (Gcc 4.4 failed to boostrap)

2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Don't create VCE
        for function decls.

2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * gcc.c-torture/pr36141.c: New testcase.

From-SVN: r134972

16 years agotarget_supports.exp (check_effective_target_4byte_wchar_t): New proc.
Danny Smith [Tue, 6 May 2008 02:59:12 +0000 (02:59 +0000)]
target_supports.exp (check_effective_target_4byte_wchar_t): New proc.

* lib/target_supports.exp (check_effective_target_4byte_wchar_t):
New proc.
* gcc.dg/utf16-4.c: Use it.
* gcc.dg/utf32-4.c: Use it.
* g++.dg/ext/utf16-4.C: Use it.
* gcc.dg/ext/utf32-4.C: Use it.

From-SVN: r134971

16 years agosse.md (sse2_<plusminus_insn><mode>3): Fix a typo.
H.J. Lu [Tue, 6 May 2008 00:17:57 +0000 (00:17 +0000)]
sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.

2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.

From-SVN: r134966

16 years agoDaily bump.
GCC Administrator [Tue, 6 May 2008 00:17:57 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134965

16 years agoi386.md (sat_plusminus): New.
H.J. Lu [Mon, 5 May 2008 21:34:17 +0000 (14:34 -0700)]
i386.md (sat_plusminus): New.

2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (sat_plusminus): New.
(plusminus_insn): Likewise.
(plusminus_mnemonic): Likewise.
(addsub): Removed.
(comm): Add ss_plus, us_plus, ss_minus and us_minus.
(*<addsub><mode>3_cc_overflow): Renamed to ...
(*<plusminus_insn><mode>3_cc_overflow): This.
(*<addsub>si3_zext_cc_overflow): Renamed to ...
(*<plusminus_insn>si3_zext_cc_overflow): This.

* gcc/config/i386/sse.md (<addsub><mode>3): Renamed to ...
(<plusminus_insn><mode>3): This.
(*<addsub><mode>3): Renamed to ...
(*<plusminus_insn><mode>3): This.
(<sse>_vm<addsub><mode>3): Renamed to ...
(<sse>_vm<plusminus_insn><mode>3): This.
(sse3_h<addsub>v4sf3): Renamed to ...
(sse3_h<plusminus_insn>v4sf3): This.
(sse3_h<addsub>v2df3): Renamed to ...
(sse3_h<plusminus_insn>v2df3): This.
(<plusminus_insn><mode>3): New.
(*<plusminus_insn><mode>3): Likewise.
(sse2_<plusminus_insn><mode>3): Likewise.
(add<mode>): Removed.
(*add<mode>3): Likewise.
(sse2_ssadd<mode>3): Likewise.
(sse2_usadd<mode>3): Likewise.
(sub<mode>3): Likewise.
(*sub<mode>3): Likewise.
(sse2_sssub<mode>3): Likewise.
(sse2_ussub<mode>3): Likewise.

From-SVN: r134957

16 years ago* gfortran.dg/dev_null.f90. Remove and replace with...
Danny Smith [Mon, 5 May 2008 21:15:51 +0000 (21:15 +0000)]
* gfortran.dg/dev_null.f90. Remove and replace with...

* gfortran.dg/dev_null.F90: Use preprocessor define to
generalize the DEV_NULL name.

From-SVN: r134955

16 years ago* decl.c (maybe_pad_type): Add ??? comment.
Eric Botcazou [Mon, 5 May 2008 19:44:55 +0000 (19:44 +0000)]
* decl.c (maybe_pad_type): Add ??? comment.

From-SVN: r134953

16 years agogthr-single.h: Add in required interface elements as per gthr.h.
Benjamin Kosnik [Mon, 5 May 2008 17:42:26 +0000 (17:42 +0000)]
gthr-single.h: Add in required interface elements as per gthr.h.

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

        * gthr-single.h: Add in required interface elements as per gthr.h.
        Add stub types for __gthread_key_t, __gthread_once_t. Add defines
        for __GTHREAD_ONCE_INIT, __GTHREAD_RECURSIVE_MUTEX_INIT.
        Generalize UNUSED macro.
        (__gthread_once): Add.
        (__gthread_key_create): Add.
        (__gthread_key_delete): Add.
        (__gthread_getspecific): Add.
        (__gthread_setspecific): Add.

From-SVN: r134951

16 years agotestsuite_visualization.h: Move contents into...
Benjamin Kosnik [Mon, 5 May 2008 17:22:02 +0000 (17:22 +0000)]
testsuite_visualization.h: Move contents into...

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_visualization.h: Move contents into...
* testsuite/util/testsuite_performance.h: ...here.
* testsuite/util/testsuite_common_types.h: Move
performance-related test infrastructure into
testsuite_performance.
* testsuite/performance/25_algorithms/search_n.cc: Fix includes.
* testsuite/performance/23_containers/find/map.cc: Same.
* testsuite/performance/23_containers/create/map.cc: Same.
* testsuite/performance/23_containers/insert_erase/associative.cc: Same.
* testsuite/performance/23_containers/insert/sequence.cc: Same.
* testsuite/performance/23_containers/insert/associative.cc: Same.
* testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/index/map.cc: Same.
* testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/create_sort/list.cc: Same.
* testsuite/performance/23_containers/sort_search/list.cc: Same.
* testsuite/performance/23_containers/producer_consumer/sequence.cc:
Same.
* testsuite/performance/23_containers/producer_consumer/associative.cc:
Same.

* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.

From-SVN: r134949

16 years agotypedefs-1.cc: Correct requirements.
Benjamin Kosnik [Mon, 5 May 2008 17:16:44 +0000 (17:16 +0000)]
typedefs-1.cc: Correct requirements.

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

* 20_util/make_signed/requirements/typedefs-1.cc: Correct requirements.
* 20_util/make_unsigned/requirements/typedefs-1.cc: Same.

From-SVN: r134948

16 years agotree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the same size types...
Andrew Pinski [Mon, 5 May 2008 16:10:43 +0000 (09:10 -0700)]
tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the same size types for...

2008-05-05  Andrew Pinski  <Andrew.Pinski@playstation.sony.com>

        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the
        same size types for the indirect reference on the rhs, then create a VCE.

2008-05-05  Andrew Pinski  <andrew.pinski@playstation.sony.com>

        * gcc.dg/tree-ssa/forwprop-5.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-6.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-7.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-8.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-9.c: New testcase.

From-SVN: r134947

16 years ago* config/i386/i386.md
Uros Bizjak [Mon, 5 May 2008 12:56:15 +0000 (14:56 +0200)]
* config/i386/i386.md
(*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit): Use only
one insn template instead of template series.
(*xordi_1_rex64): Ditto.
(*xordi_2_rex64): Ditto.

From-SVN: r134946

16 years agore PR tree-optimization/36119 (internal compiler error: in vectorizable_assignment...
Ira Rosen [Mon, 5 May 2008 07:47:49 +0000 (07:47 +0000)]
re PR tree-optimization/36119 (internal compiler error: in vectorizable_assignment, at tree-vect-transform.c:3671)

PR tree-optimization/36119
* tree-vect-transform.c (vectorizable_assignment): Set NCOPIES to 1
in case of SLP.

From-SVN: r134944

16 years agotree-pass.h (pass_O0_always_inline): Declare.
Jan Hubicka [Mon, 5 May 2008 05:31:34 +0000 (07:31 +0200)]
tree-pass.h (pass_O0_always_inline): Declare.

tree-optimization/36100
* tree-pass.h (pass_O0_always_inline): Declare.
* ipa-inline.c (inline_transform): Remove dead code.
(cgraph_gate_O0_always_inline, cgraph_O0_always_inline,
pass_O0_always_inline): New.
* passes.c (init_optimization_passes): Add pass_O0_always_inline.

From-SVN: r134942

16 years agoDaily bump.
GCC Administrator [Mon, 5 May 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134940

16 years agore PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
Thomas Koenig [Sun, 4 May 2008 20:56:30 +0000 (20:56 +0000)]
re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/32770
* gfortran.dg/any_all_1.f90:  Adjust kinds to make test
pass with -fdefault-integer-8.
* gfortran.dg/maxloc_bounds_4.f90:  Likewise.
* gfortran.dg/maxloc_bounds_5.f90:  Likewise.
* gfortran.dg/maxloc_bounds_7.f90:  Likewise.

From-SVN: r134936

16 years agoi386.c (x86_output_mi_thunk): Use movq alternative mnemonic in this_param move for...
Kai Tietz [Sun, 4 May 2008 19:19:50 +0000 (19:19 +0000)]
i386.c (x86_output_mi_thunk): Use movq alternative mnemonic in this_param move for TARGET_64BIT.

2008-05-04  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/i386.c (x86_output_mi_thunk): Use movq alternative
mnemonic in this_param move for TARGET_64BIT.

From-SVN: r134935

16 years agore PR fortran/35995 (ANY, ALL, and COUNT errors for zero sized sections)
Thomas Koenig [Sun, 4 May 2008 19:07:28 +0000 (19:07 +0000)]
re PR fortran/35995 (ANY, ALL, and COUNT errors for zero sized sections)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35995
* m4/ifunction_logical.m4:  If the extent of "array"
is less than zero, set it to zero.  Use an explicit
flag for breaking out of the main loop to avoid, because
the data pointer for "array" may be NULL for an empty
array.
* m4/ifunction.m4:  Likewise.
* generated/all_l1.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35995
* gfortran.dg/intrinsic_ifunction_1.f90:  New test case.

From-SVN: r134934

16 years agoi386.md (*strmovsi_1): Simplify asm alternatives.
Uros Bizjak [Sun, 4 May 2008 18:40:15 +0000 (20:40 +0200)]
i386.md (*strmovsi_1): Simplify asm alternatives.

        * config/i386/i386.md (*strmovsi_1): Simplify asm alternatives.
        (*strmovsi_rex_1): Ditto.
        (*strsetsi_1): Ditto.
        (*strsetsi_rex_1): Ditto.

        (add<mode>cc): Macroize expander from addqicc, addhicc, addsicc and
        adddicc expanders using SWI mode iterator.

From-SVN: r134933

16 years agore PR target/36121 (config/i386/i386.c: array index out of range)
H.J. Lu [Sun, 4 May 2008 15:22:05 +0000 (15:22 +0000)]
re PR target/36121 (config/i386/i386.c: array index out of range)

2008-05-04  H.J. Lu  <hongjiu.lu@intel.com>

PR target/36121
* config/i386/i386.c (ix86_expand_special_args_builtin): Remove
3 argument handling.

From-SVN: r134932

16 years agonested-func-5.c: Skip for target without trampolines.
Andy Hutchinson [Sun, 4 May 2008 13:10:14 +0000 (13:10 +0000)]
nested-func-5.c: Skip for target without trampolines.

2008-05-04   Andy Hutchinson   <hutchinsonandy@aim.com>

* gcc.dg/nested-func-5.c: Skip for target without trampolines.
* gcc.dg/torture/nested-fn-1.c: Ditto.

From-SVN: r134931

16 years agoSorry, forgot this in previous commit.
David S. Miller [Sun, 4 May 2008 11:25:30 +0000 (04:25 -0700)]
Sorry, forgot this in previous commit.

From-SVN: r134930

16 years agoconfig.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
David S. Miller [Sun, 4 May 2008 11:25:04 +0000 (11:25 +0000)]
config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.

gcc/

* config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
(sparc*-*-linux*): Use linux.h in tm_file.
(sparc-*-linux*): If 'enabled_targets' is 'all', build a bi-arch
compiler defaulting to 32-bit.
(sparc*-*-*): Remove explicit target settings of need_64bit_hwint,
no longer needed.
* config/sparc/linux.h: Remove definitions now obtained
properly from linux.h
* config/sparc/linux64.h: Likewise.
(ASM_CPU_DEFAULT_SPEC): Change this to ASM_CPU64_DEFAULT_SPEC, we
don't want this setting for 32-bit builds in a biarch compiler.
* doc/install.texi: Add sparc-linux to list of targets
supporting --enable-targets=all.

libcpp/

* configure.ac (sparc*-*-*): Always set need_64bit_hwint to yes.
* configure: Regenerate.

From-SVN: r134929

16 years agore PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
Thomas Koenig [Sun, 4 May 2008 10:14:49 +0000 (10:14 +0000)]
re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* intrinsics/pack_generic.c:  Really commit.

From-SVN: r134928

16 years agore PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
Thomas Koenig [Sun, 4 May 2008 08:06:02 +0000 (08:06 +0000)]
re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* intrinsics/pack_generic.c:  If an extent of the source
array is less then zero, set it to zero.  Set the source
pointer to NULL if the source size is zero.  Set the total
number of elements to zero if the vector has an extent
less or equal to zero.
* m4/pack.m4:  Set the source pointer to NULL if the
source array is zero-sized.  Set the total number of
elemements to zero if the vector has an extent less or
equal to zero.
* generated/pack_i1.c:  Regenerated.
* generated/pack_i2.c:  Regenerated.
* generated/pack_i4.c:  Regenerated.
* generated/pack_i8.c:  Regenerated.
* generated/pack_i16.c:  Regenerated.
* generated/pack_r4.c:  Regenerated.
* generated/pack_r8.c:  Regenerated.
* generated/pack_r10.c:  Regenerated.
* generated/pack_r16.c:  Regenerated.
* generated/pack_c4.c:  Regenerated.
* generated/pack_c8.c:  Regenerated.
* generated/pack_c10.c:  Regenerated.
* generated/pack_c16.c:  Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* gfortran.dg/intrinsic_pack_4.f90:  New test case.

From-SVN: r134927

16 years agoAdded myself with write-after-approval privs.
Kris Van Hees [Sun, 4 May 2008 00:54:32 +0000 (00:54 +0000)]
Added myself with write-after-approval privs.

From-SVN: r134926

16 years agoDaily bump.
GCC Administrator [Sun, 4 May 2008 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134924

16 years agoMakefile.in (tree-ssa-phiprop.o): Fix dependencies.
Andrew Pinski [Sat, 3 May 2008 20:54:43 +0000 (13:54 -0700)]
Makefile.in (tree-ssa-phiprop.o): Fix dependencies.

2008-05-03  Andrew Pinski  <pinskia@gmail.com>

        * Makefile.in (tree-ssa-phiprop.o): Fix dependencies.

From-SVN: r134920

16 years agomisc.c (gfc_clear_ts): Set interface to NULL.
Janus Weil [Sat, 3 May 2008 20:37:48 +0000 (20:37 +0000)]
misc.c (gfc_clear_ts): Set interface to NULL.

2008-05-03  Janus Weil  <jaydub66@gmail.com>

* misc.c (gfc_clear_ts): Set interface to NULL.

From-SVN: r134918

16 years agodecl.c (components_to_record): Zero the alignment of the qualified union built for...
Eric Botcazou [Sat, 3 May 2008 19:47:22 +0000 (19:47 +0000)]
decl.c (components_to_record): Zero the alignment of the qualified union built for the variant part upon...

* decl.c (components_to_record): Zero the alignment of the qualified
union built for the variant part upon creating it.

From-SVN: r134917

16 years agodecl.c (maybe_pad_type): Try to get a form of the type with integral mode even if...
Eric Botcazou [Sat, 3 May 2008 19:35:01 +0000 (19:35 +0000)]
decl.c (maybe_pad_type): Try to get a form of the type with integral mode even if...

* decl.c (maybe_pad_type): Try to get a form of the type with integral
mode even if the alignment is not a factor of the original size.  But
make sure to create the inner field with the original size.  Reorder.
* trans.c (addressable_p) <COMPONENT_REF>: Treat the field of a padding
record as always addressable.
* utils.c (convert): Deal specially with conversions between original
and packable versions of a record type.
* utils2.c (build_binary_op) <MODIFY_EXPR>: Be more restrictive when
recognizing an assignment between padded objects.

From-SVN: r134916

16 years agoloop-36.c: Cleanup the dump file.
Richard Guenther [Sat, 3 May 2008 16:31:59 +0000 (16:31 +0000)]
loop-36.c: Cleanup the dump file.

2008-05-03  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/loop-36.c: Cleanup the dump file.

From-SVN: r134912

16 years ago* zh_CN.po: Update.
Joseph Myers [Sat, 3 May 2008 16:19:42 +0000 (17:19 +0100)]
* zh_CN.po: Update.

From-SVN: r134907

16 years agoi386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF after V4SI_FTYPE_V8HI.
H.J. Lu [Sat, 3 May 2008 16:17:24 +0000 (16:17 +0000)]
i386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF after V4SI_FTYPE_V8HI.

2008-05-03  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF
after V4SI_FTYPE_V8HI.
(ix86_init_mmx_sse_builtins): Move case V4HI_FTYPE_V4HI after
case V4SI_FTYPE_V2DF.

From-SVN: r134906

16 years agoinvoke.texi (max-flow-memory-locations): Removed.
Kenneth Zadeck [Sat, 3 May 2008 15:53:11 +0000 (15:53 +0000)]
invoke.texi (max-flow-memory-locations): Removed.

2008-05-03  Kenneth Zadeck <zadeck@naturalbridge.com>

* doc/invoke.texi (max-flow-memory-locations): Removed.
* params.def (PARAM_MAX_FLOW_MEMORY_LOCATIONS): Removed.

From-SVN: r134904

16 years agore PR middle-end/34973 (Wno-strict-aliasing is not working)
Richard Guenther [Sat, 3 May 2008 15:28:57 +0000 (15:28 +0000)]
re PR middle-end/34973 (Wno-strict-aliasing is not working)

2008-05-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/34973
* opts.c (set_Wstrict_aliasing): Handle the turn-off case.

From-SVN: r134903

16 years agore PR fortran/33268 (read ('(f3.3)'), a rejected due to the extra (...))
Jerry DeLisle [Sat, 3 May 2008 15:14:55 +0000 (15:14 +0000)]
re PR fortran/33268 (read ('(f3.3)'), a  rejected due to the extra (...))

2008-05-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/33268
* gfortran.dg/io_constraints_4.f90: New test.

From-SVN: r134901

16 years agore PR fortran/33268 (read ('(f3.3)'), a rejected due to the extra (...))
Jerry DeLisle [Sat, 3 May 2008 15:11:33 +0000 (15:11 +0000)]
re PR fortran/33268 (read ('(f3.3)'), a  rejected due to the extra (...))

2008-05-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/33268
* gfortran.h: Add extra_comma pointer to gfc_dt structure. Add iokind to
gfc_expr value union. Add io_kind enum to here from io.c.
* io.c (gfc_free_dt): Free extra_comma.
(gfc_resolve_dt): If an extra comma was encountered and io_unit is type
BT_CHARACTER, resolve to format_expr and set default unit.  Error if
io_kind is M_WRITE. (match_io):  Match the extra comma and set new
pointer, extra_comma.

From-SVN: r134900

16 years agoconfig.gcc (need_64bit_hwint): Document libcpp dependency.
David S. Miller [Sat, 3 May 2008 09:16:49 +0000 (09:16 +0000)]
config.gcc (need_64bit_hwint): Document libcpp dependency.

2008-05-02  David S. Miller  <davem@davemloft.net>

* config.gcc (need_64bit_hwint): Document libcpp dependency.

From-SVN: r134898

16 years agoDaily bump.
GCC Administrator [Sat, 3 May 2008 00:17:24 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134895

16 years agoRolled back the following changes made in revision 134865:
Simon Baldwin [Fri, 2 May 2008 20:01:31 +0000 (20:01 +0000)]
Rolled back the following changes made in revision 134865:

        * c-common.h (warn_array_subscript_range): New function.
        * c-common.c (warn_array_subscript_range): Ditto.
        * tree-vrp.c (check_array_ref): Corrected code to agree with
        comment, ignoring only arrays of size 0 or size 1.
        * c-typeck.c (build_array_ref): Call warn_array_subscript_range.

        * testsuite/gcc.dg/Warray-bounds.c: Updated for frontend warnings,
        additional tests for arrays of size 0 and size 1.
        * testsuite/g++.dg/warn/Warray-bounds.c: Ditto.
        * testsuite/gcc.dg/Warray-bounds-noopt.c: New testcase.
        * testsuite/g++.dg/warn/Warray-bounds-noopt.c: Ditto.

        * typeck.c (build_array_ref): Call warn_array_subscript_range.

From-SVN: r134889

16 years agoi386.c (ix86_special_builtin_type): New.
H.J. Lu [Fri, 2 May 2008 19:20:43 +0000 (19:20 +0000)]
i386.c (ix86_special_builtin_type): New.

2008-05-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_special_builtin_type): New.
(bdesc_special_args): Likewise.
(ix86_expand_special_args_builtin): Likewise.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_builtin): Updated.
(ix86_expand_store_builtin): Removed.
(ix86_expand_unop_builtin): Likewise.

* config/i386/mm3dnow.h (__v2sf): Moved to ...
* config/i386/mmintrin.h (__v2sf): Here.

* config/i386/xmmintrin.h (_mm_loadh_pi): Replace __v2si with
const __v2sf.
(_mm_loadl_pi): Likewise.
(_mm_storeh_pi): Replace __v2si with __v2sf.
(_mm_storel_pi): Likewise.

* doc/extend.texi: Correct __builtin_ia32_loadhps,
__builtin_ia32_loadlps, __builtin_ia32_storehps,
__builtin_ia32_storelps, __builtin_ia32_loadhpd and
__builtin_ia32_loadlpd.

2008-05-02  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Add FLOAT_FTYPE_FLOAT,
V4SF_FTYPE_V4SF_VEC_MERGE and V2DF_FTYPE_V2DF_VEC_MERGE.
(bdesc_args): Updated.  Add scalar SSE builtins with vec_merge.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.
(ix86_expand_unop1_builtin): Renamed to ...
(ix86_expand_unop_vec_merge_builtin): This.

From-SVN: r134886

16 years agore PR tree-optimization/36100 (always_inline attribute is broken at -O0)
Jan Hubicka [Fri, 2 May 2008 11:08:22 +0000 (13:08 +0200)]
re PR tree-optimization/36100 (always_inline attribute is broken at -O0)

PR bootstrap/36100
* ipa-inline.c (inline_generate_summary): Make static.
(inline_transform): Do not call inlining at -O0; make static.
* passes.c (execute_todo): Add sanity check.
(execute_one_ipa_transform_pass): Execute proper flags.

From-SVN: r134885

16 years agoc++config: Revert _GLIBCXX_LONG_DOUBLE_COMPAT change.
Benjamin Kosnik [Fri, 2 May 2008 06:08:28 +0000 (06:08 +0000)]
c++config: Revert _GLIBCXX_LONG_DOUBLE_COMPAT change.

2008-05-01  Benjamin Kosnik  <bkoz@redhat.com>

* include/bits/c++config: Revert _GLIBCXX_LONG_DOUBLE_COMPAT change.

From-SVN: r134883

16 years agoPR fortran/PR35940
Bud Davis [Fri, 2 May 2008 04:05:12 +0000 (04:05 +0000)]
PR fortran/PR35940

2008-05-01  Bud Davis  <bdavis9659@sbcglobal.net>

PR fortran/PR35940
* gfortran.dg/index.f90: New test.

2008-05-01  Bud Davis  <bdavis9659@sbcglobal.net>

PR35940/Fortran
* simplify.c (gfc_simplify_index): Check for direction argument
being a constant.

From-SVN: r134879

16 years agore PR libfortran/36094 (Runtime error show_locus not working correctly)
Jerry DeLisle [Fri, 2 May 2008 01:33:16 +0000 (01:33 +0000)]
re PR libfortran/36094 (Runtime error show_locus not working correctly)

2008-05-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/36094
* runtime/error.c (show_locus): Provide modified error message when
filename has not yet been associated with a unit number.
* io/open.c (encoding_opt[]): Comment out "utf-8" option and add TODO.

From-SVN: r134876

16 years agoDaily bump.
GCC Administrator [Fri, 2 May 2008 00:17:42 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134874

16 years agotree.h (TYPE_NONALIASED_COMPONENT): Expand comment.
Eric Botcazou [Thu, 1 May 2008 20:13:56 +0000 (20:13 +0000)]
tree.h (TYPE_NONALIASED_COMPONENT): Expand comment.

* tree.h (TYPE_NONALIASED_COMPONENT): Expand comment.
(DECL_NONADDRESSABLE_P): Likewise.
* alias.c (record_component_aliases): Fix comment.

From-SVN: r134868

16 years agogfortran.h (struct gfc_symbol): Moving "interface" member to gfc_typespec (plus fixin...
Janus Weil [Thu, 1 May 2008 19:38:04 +0000 (19:38 +0000)]
gfortran.h (struct gfc_symbol): Moving "interface" member to gfc_typespec (plus fixing a small docu error).

* gfortran.h (struct gfc_symbol): Moving "interface" member to
gfc_typespec (plus fixing a small docu error).
* interface.c (gfc_procedure_use): Ditto.
* decl.c (match_procedure_decl): Ditto.
* resolve.c (resolve_specific_f0,
resolve_specific_f0, resolve_symbol): Ditto.

From-SVN: r134867

16 years agoc-common.h (warn_array_subscript_range): New function.
Simon Baldwin [Thu, 1 May 2008 19:03:32 +0000 (19:03 +0000)]
c-common.h (warn_array_subscript_range): New function.

        * c-common.h (warn_array_subscript_range): New function.
        * c-common.c (warn_array_subscript_range): Ditto.
        * tree-vrp.c (check_array_ref): Corrected code to agree with
        comment, ignoring only arrays of size 0 or size 1.
        * c-typeck.c (build_array_ref): Call warn_array_subscript_range.

        * testsuite/gcc.dg/Warray-bounds.c: Updated for frontend warnings,
        additional tests for arrays of size 0 and size 1.
        * testsuite/g++.dg/warn/Warray-bounds.c: Ditto.
        * testsuite/gcc.dg/Warray-bounds-noopt.c: New testcase.
        * testsuite/g++.dg/warn/Warray-bounds-noopt.c: Ditto.

        * typeck.c (build_array_ref): Call warn_array_subscript_range.

From-SVN: r134865

16 years agoi386.c (ix86_builtin_type): Replace DI_FTYPE_DI_DI_INT with V1DI2DI_FTYPE_V1DI_V1DI_INT.
H.J. Lu [Thu, 1 May 2008 17:47:43 +0000 (17:47 +0000)]
i386.c (ix86_builtin_type): Replace DI_FTYPE_DI_DI_INT with V1DI2DI_FTYPE_V1DI_V1DI_INT.

2008-05-01  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Replace
DI_FTYPE_DI_DI_INT with V1DI2DI_FTYPE_V1DI_V1DI_INT.
(bdesc_args): Updated.
(ix86_init_mmx_sse_builtins): Likewise.
(ix86_expand_args_builtin): Likewise.

* config/i386/tmmintrin.h (_mm_alignr_pi8): Replace long long
with __v1di.

* doc/extend.texi: Correct __builtin_ia32_palignr.

From-SVN: r134864

16 years agore PR target/36095 (__builtin_ia32_crc32di shouldn't defined in 32bit)
H.J. Lu [Thu, 1 May 2008 16:13:23 +0000 (16:13 +0000)]
re PR target/36095 (__builtin_ia32_crc32di shouldn't defined in 32bit)

2008-05-01  H.J. Lu  <hongjiu.lu@intel.com>

PR target/36095
* config/i386/i386.c (bdesc_crc32): Removed.
(ix86_expand_crc32): Likewise.
(ix86_builtin_type): Replace V2DI2TI_FTYPE_V2DI2TI_INT with
V2DI2TI_FTYPE_V2DI_INT, V2DI2TI_FTYPE_V2DI2TI_V2DI2TI_INT with
V2DI2TI_FTYPE_V2DI_V2DI_INT.  Add UINT64_FTYPE_UINT64_UINT64,
UINT_FTYPE_UINT_UINT, UINT_FTYPE_UINT_USHORT and
UINT_FTYPE_UINT_UCHAR.
(bdesc_args): Updated. Add crc32 builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Updated to support subreg.

* doc/extend.texi: Correct __builtin_ia32_crc32di.

From-SVN: r134861

16 years agotree-pass.h (opt_pass): Add IPA_PASS.
Jan Hubicka [Thu, 1 May 2008 16:08:15 +0000 (18:08 +0200)]
tree-pass.h (opt_pass): Add IPA_PASS.

* tree-pass.h (opt_pass): Add IPA_PASS.
(varpool_node, cgraph_node): Forward declare.
(ipa_opt_pass): Define.
(pass_ipa_inline): Turn into ipa_opt_pass.
(pass_apply_inline): Remove.
* ipa-inline.c (pass_ipa_inline): Turn into ipa_opt_pass.
(apply_inline): Turn into ....
(inline_transform): ... this one.
(inline_generate_summary): New function.
(pass_apply_inline): Remove.
* function.h (ipa_opt_pass): Forward declare structure; typedef;
vector.
(struct function): Add ipa_transforms_to_apply.
* passes.c (register_one_dump_file): Work on IPA_PASS.
(init_optimization_passes): Remove pass_inline_parameters and
pass_apply_inline.
(pass_init_dump_file, pass_fini_dump_file): Break out from ....
(execute_one_pass) ... here; apply transforms when possible.
(add_ipa_transform_pass, execute_ipa_summary_asses,
execute_one_ipa_transform_pass): New.
(execute_ipa_pass_list): Update for IPA_PASS type.

From-SVN: r134859

16 years agoi386.c (ix86_builtin_type): Add V2DI_FTYPE_V2DI_V16QI...
H.J. Lu [Thu, 1 May 2008 15:03:57 +0000 (15:03 +0000)]
i386.c (ix86_builtin_type): Add V2DI_FTYPE_V2DI_V16QI...

2008-05-01  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Add
V2DI_FTYPE_V2DI_V16QI, V2DI_FTYPE_V2DI_UINT_UINT and
V2DI_FTYPE_V2DI_V2DI_UINT_UINT.
(bdesc_args): Add SSE4a builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.

From-SVN: r134854

16 years agoi386.c (ix86_builtin_type): Add V8HI_FTYPE_V8HI_V8HI_COUNT...
H.J. Lu [Thu, 1 May 2008 15:02:16 +0000 (15:02 +0000)]
i386.c (ix86_builtin_type): Add V8HI_FTYPE_V8HI_V8HI_COUNT...

2008-05-01  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Add
V8HI_FTYPE_V8HI_V8HI_COUNT, V8HI_FTYPE_V8HI_SI_COUNT,
V4SI_FTYPE_V4SI_V4SI_COUNT, V4SI_FTYPE_V4SI_SI_COUNT,
V4HI_FTYPE_V4HI_V4HI_COUNT, V4HI_FTYPE_V4HI_SI_COUNT,
V2DI_FTYPE_V2DI_V2DI_COUNT, V2DI_FTYPE_V2DI_SI_COUNT,
V2SI_FTYPE_V2SI_V2SI_COUNT, V2SI_FTYPE_V2SI_SI_COUNT,
V1DI_FTYPE_V1DI_V1DI_COUNT, V1DI_FTYPE_V1DI_SI_COUNT,
V8HI_FTYPE_V8HI_INT, V4SI_FTYPE_V4SI_INT, V4HI_FTYPE_V4HI_INT,
V2DI2TI_FTYPE_V2DI2TI_INT, V2DI2TI_FTYPE_V2DI2TI_V2DI2TI_INT
and DI_FTYPE_DI_DI_INT.
(bdesc_args): Add MMX/SSE shift, shuffle and palignr builtins.
(ix86_init_mmx_sse_builtins): Updated.
(ix86_expand_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.
(ix86_expand_binop_imm_builtin): Removed.

* doc/extend.texi: Correct __builtin_ia32_palignr128.

From-SVN: r134853

16 years agore PR middle-end/36093 (__align__ produces incorrect results in certain cases)
Richard Guenther [Thu, 1 May 2008 11:22:33 +0000 (11:22 +0000)]
re PR middle-end/36093 (__align__ produces incorrect results in certain cases)

2008-05-01  Richard Guenther  <rguenther@suse.de>

PR middle-end/36093
* gcc.c-torture/execute/pr36093.c: New testcase.

From-SVN: r134851

16 years agodecl.c (make_packable_type): Resize the last component to its RM size only if it...
Eric Botcazou [Thu, 1 May 2008 10:50:01 +0000 (10:50 +0000)]
decl.c (make_packable_type): Resize the last component to its RM size only if it is of an aggregate type.

* decl.c (make_packable_type): Resize the last component to its RM size
only if it is of an aggregate type.
* trans.c (call_to_gnu): Fix nit in comment.
(gnat_to_gnu): Likewise.

From-SVN: r134848

16 years agoDaily bump.
GCC Administrator [Thu, 1 May 2008 00:17:47 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134843

16 years agointrinsic.c (add_functions): Add SELECTED_CHAR_KIND intrinsic.
François-Xavier Coudert [Wed, 30 Apr 2008 21:45:02 +0000 (21:45 +0000)]
intrinsic.c (add_functions): Add SELECTED_CHAR_KIND intrinsic.

* intrinsic.c (add_functions): Add SELECTED_CHAR_KIND intrinsic.
* intrinsic.h (gfc_check_selected_char_kind,
gfc_simplify_selected_char_kind): New prototypes.
* gfortran.h (gfc_isym_id): Add GFC_ISYM_SC_KIND.
* trans.h (gfor_fndecl_sc_kind): New function decl.
* trans-decl.c (gfor_fndecl_sc_kind): Build new decl.
* arith.c (gfc_compare_with_Cstring): New function.
* arith.h (gfc_compare_with_Cstring): New prototype.
* check.c (gfc_check_selected_char_kind): New function.
* primary.c (match_string_constant, match_kind_param): Mark
symbols used as literal constant kind param as referenced.
* trans-intrinsic.c (gfc_conv_intrinsic_sc_kind): New function.
(gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_sc_kind.
* intrinsic.texi (SELECTED_CHAR_KIND): Document new intrinsic.
* simplify.c (gfc_simplify_selected_char_kind): New function.

* intrinsics/selected_char_kind.c: New file.
* Makefile.am: Add intrinsics/selected_char_kind.c.
* Makefile.in: Regenerate.

* gfortran.dg/selected_char_kind_1.f90: New test.
* gfortran.dg/selected_char_kind_2.f90: New test.
* gfortran.dg/selected_char_kind_3.f90: New test.

From-SVN: r134839

16 years agore PR tree-optimization/32921 (Revision 126326 causes 12% slowdown)
Richard Guenther [Wed, 30 Apr 2008 21:42:24 +0000 (21:42 +0000)]
re PR tree-optimization/32921 (Revision 126326 causes 12% slowdown)

2008-04-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/32921
* tree-ssa-loop-im.c (mem_refs_may_alias_p): Disambiguate with TBAA.

From-SVN: r134838

16 years agochmod_1.f90: Disable for *-*-mingw*.
Kai Tietz [Wed, 30 Apr 2008 20:24:46 +0000 (20:24 +0000)]
chmod_1.f90: Disable for *-*-mingw*.

2008-04-30  Kai Tietz  <kai.tietz@onevision.com>

* gfortran.dg/chmod_1.f90: Disable for *-*-mingw*.
* gfortran.dg/chmod_2.f90: Likewise.
* gfortran.dg/chmod_3.f90: Likewise.
* gfortran.dg/open_errors.f90: Likewise.

From-SVN: r134837

16 years agore PR fortran/35997 (Used function interface bug)
Paul Thomas [Wed, 30 Apr 2008 20:13:21 +0000 (20:13 +0000)]
re PR fortran/35997 (Used function interface bug)

2008-04-30  Paul Thomas  <pault@gcc.gnu.org>

       PR fortran/35997
       * module.c (find_symbol): Do not return a result for a symbol
       that has been renamed in another module.

2008-04-30  Paul Thomas  <pault@gcc.gnu.org>

       PR fortran/35997
       * gfortran.dg/use_rename_3.f90

From-SVN: r134836

16 years agoarm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_thr...
Richard Sandiford [Wed, 30 Apr 2008 19:33:32 +0000 (19:33 +0000)]
arm.c (arm_unwind_emit): Use crtl->all_throwers_are_sibcalls instead of cfun->all_throwers_are_sibcalls.

gcc/
* config/arm/arm.c (arm_unwind_emit): Use
crtl->all_throwers_are_sibcalls instead of
cfun->all_throwers_are_sibcalls.
(arm_output_fn_unwind): Likewise.
* config/frv/frv.c (frv_stack_info): Use crtl->uses_pic_offset_table
instead of cfun->uses_pic_offset_table.
(frv_expand_prologue): Likewise.
(frv_frame_pointer_required): Likewise.
(frv_expand_fdpic_call): Likewise.
(frv_emit_movsi): Likewise.
* config/iq2000/iq2000.c (iq2000_expand_prologue): Use
cfun->returns_pcc_struct instead of
current_function_returns_pcc_struct.
* config/m32c/m32c.c (need_to_save): Use crtl->calls_eh_return
instead of cfun->calls_eh_return.
(m32c_pushm_popm): Likewise.
* config/xtensa/xtensa.h (cfun->calls_alloca): Remove bogus
"extern" declaration.

From-SVN: r134835

16 years agore PR tree-optimization/21636 (Missed ccp optimization)
Richard Guenther [Wed, 30 Apr 2008 19:05:12 +0000 (19:05 +0000)]
re PR tree-optimization/21636 (Missed ccp optimization)

2008-04-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/21636
* tree-ssa-ccp.c (ccp_fold): Handle &p->x with p being a
constant address.
(evaluate_stmt): Print the likely value.
(ccp_visit_stmt): Avoid excessive vertical spacing.

* gcc.dg/tree-ssa/ssa-ccp-19.c: New testcase.

From-SVN: r134834

16 years agobuiltins.c (fold_call_expr): Return realret.
Rafael Avila de Espindola [Wed, 30 Apr 2008 17:21:55 +0000 (17:21 +0000)]
builtins.c (fold_call_expr): Return realret.

2008-04-30  Rafael Espindola  <espindola@google.com>

* builtins.c (fold_call_expr): Return realret.
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts_at_dest): Ignore calls to
__builtin_object_size.

From-SVN: r134833

16 years agogcc.c (wrapper_string): New variable.
Seongbae Park [Wed, 30 Apr 2008 17:17:03 +0000 (17:17 +0000)]
gcc.c (wrapper_string): New variable.

2008-04-30  Seongbae Park  <seongbae.park@gmail.com>

* gcc.c (wrapper_string): New variable.
(insert_wrapper): New function.
(execute): New option -wrapper.
* doc/invoke.texi (Overall Options): New driver option -wrapper.

From-SVN: r134832