Arnaud Charlet
e5c73177bf
Makefile.in: Switch VxWorks to s-interr-hwint.adb.
...
* gcc-interface/Makefile.in: Switch VxWorks to s-interr-hwint.adb.
* s-interr-vxworks.adb: Renamed to s-interr-hwint.adb
* s-interr-hwint.adb: New file.
* s-osinte-vxworks.ads, s-osinte-vxworks.adb: Add new functions
needed by s-interr-hwint.adb.
* s-osinte-vxworks-kernel.adb: New file.
From-SVN: r140147
2008-09-09 15:01:51 +02:00
Bernd Schmidt
22fb24d53a
bfin.c (n_regs_to_save): New static variable.
...
* config/bfin/bfin.c (n_regs_to_save): New static variable.
(push_multiple_operation, pop_multiple_operation): Set it.
(workaround_rts_anomaly): New function.
(workaround_speculation): New function, broken out of bfin_reorg.
(bfin_reorg): Call the new functions.
From-SVN: r140146
2008-09-09 12:09:37 +00:00
Richard Guenther
8b17cc05d3
re PR tree-optimization/37354 (ICE: in find_func_aliases, at tree-ssa-structalias.c:3906)
...
2008-09-09 Richard Guenther <rguenther@suse.de>
PR middle-end/37354
PR middle-end/30165
* gimplify.c (gimplify_conversion): Change conversions of
non-register type to VIEW_CONVERT_EXPRs.
(gimplify_addr_expr): If we need to make the operand
addressable make sure to use a properly initialized
temporary for that so it gets a valid gimple store.
* g++.dg/torture/pr37354.C: New testcase.
From-SVN: r140145
2008-09-09 11:26:45 +00:00
Aldy Hernandez
1751ecd619
function.h (struct function): Add function_start_locus.
...
* function.h (struct function): Add function_start_locus.
* cfgexpand.c (gimple_expand_cfg): Use it.
* c-parser.c (c_parser_declaration_or_fndef): Set it.
testsuite/
* gcc.dg/always_inline.c: Place error message on function
name line.
* gcc.dg/winline-6.c: Same.
* gcc.dg/noreturn-1.c: Same.
* gcc.dg/noreturn-7.c: Same.
* gcc.dg/inline-14.c: Same.
* gcc.dg/always_inline3.c: Same.
* gcc.dg/winline-3.c: Same.
* gcc.dg/wtr-func-def-1.c: Same.
* gcc.dg/winline-5.c: Same.
* gcc.dg/winline-7.c: Same.
* gcc.dg/winline-9.c: Same.
* gcc.dg/noreturn-4.c: Same.
* gcc.dg/20041213-1.c: Use column numbers.
From-SVN: r140144
2008-09-09 10:56:23 +00:00
Richard Guenther
a135b1c41c
re PR tree-optimization/37433 (tree check: expected function_decl, have string_cst in ccp_fold, at tree-ssa-ccp.c:1050)
...
2008-09-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37433
* tree-ssa-ccp.c (ccp_fold): Properly guard folding of
function calls.
* gcc.c-torture/compile/pr37433.c: New testcase.
From-SVN: r140143
2008-09-09 10:06:54 +00:00
Richard Guenther
6e548df501
re PR tree-optimization/37387 (ICE in extract_range_from_binary_expr, at tree-vrp.c:2145)
...
2008-09-09 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37387
* tree-ssa-ifcombine.c (ifcombine_iforif): Convert the name
and bits to a common type.
* gcc.c-torture/compile/pr37387.c: New testcase.
From-SVN: r140142
2008-09-09 10:05:49 +00:00
Daniel Kraft
18b0679f09
re PR fortran/37411 (ICE (segfault) in trans-array.c)
...
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37411
* trans-array.c (gfc_conv_array_parameter): Added assertion that the
symbol has an array spec.
2008-09-09 Daniel Kraft <d@domob.eu>
PR fortran/37411
* gfortran.dg/array_function_4.f90: New test.
From-SVN: r140141
2008-09-09 11:46:51 +02:00
Nick Clifton
108faf872d
* config/v850/v850.md (return): Restore frame size restriction.
...
From-SVN: r140139
2008-09-09 09:16:07 +00:00
Paolo Bonzini
0c03f46fcb
c-common.c (c_expand_decl): Remove.
...
2008-09-09 Paolo Bonzini <bonzini@gnu.org>
* c-common.c (c_expand_decl): Remove.
* c-common.h (anon_aggr_type_p): Remove prototype.
(DECL_ANON_UNION_ELEMS): Remove.
* c-objc-common.h (LANG_HOOKS_EXPAND_DECL): Remove.
* c-decl.c (anon_aggr_type_p): Remove.
* langhooks-def.h (LANG_HOOKS_EXPAND_DECL): Remove.
(LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_EXPAND_DECL.
* langhooks.h (struct lang_hooks): Remove expand_decl.
* langhooks.c (lhd_expand_decl): Remove.
* stmt.c (expand_anon_union_decl): Remove.
* tree.h (expand_anon_union_decl): Remove prototype.
cp:
2008-09-09 Paolo Bonzini <bonzini@gnu.org>
* cp-objcp-common.h (LANG_HOOKS_EXPAND_DECL): Remove.
* cp-tree.h: Don't mention DECL_ANON_UNION_ELEMS.
* semantics.c (anon_aggr_type_p): Remove.
From-SVN: r140138
2008-09-09 08:56:58 +00:00
Daniel Jacobowitz
6efbd94a33
filter2_x.C: Declare abort.
...
* g++.dg/compat/eh/filter2_x.C: Declare abort.
* g++.dg/compat/eh/new1_x.C, g++.dg/compat/eh/new1_y.C: Include
cstddef and use std::size_t.
* gcc.dg/compat/compat-common.h: Define SKIP_COMPLEX_INT if
SKIP_COMPLEX. Honor SKIP_COMPLEX.
* gcc.dg/compat/scalar-by-value-3_x.c,
gcc.dg/compat/scalar-by-value-3_y.c,
gcc.dg/compat/scalar-by-value-4_x.c,
gcc.dg/compat/scalar-by-value-4_y.c,
gcc.dg/compat/scalar-by-value-5.c,
gcc.dg/compat/scalar-by-value-5_main.c,
gcc.dg/compat/scalar-by-value-6.c,
gcc.dg/compat/scalar-by-value-6_main.c,
gcc.dg/compat/scalar-by-value-6_x.c,
gcc.dg/compat/scalar-by-value-6_y.c,
gcc.dg/compat/struct-by-value-16_x.c,
gcc.dg/compat/struct-by-value-16_y.c,
gcc.dg/compat/struct-by-value-16a_x.c,
gcc.dg/compat/struct-by-value-16a_y.c,
gcc.dg/compat/struct-by-value-17_x.c,
gcc.dg/compat/struct-by-value-17_y.c,
gcc.dg/compat/struct-by-value-17a_x.c,
gcc.dg/compat/struct-by-value-17a_y.c,
gcc.dg/compat/struct-by-value-18_x.c,
gcc.dg/compat/struct-by-value-18_y.c,
gcc.dg/compat/struct-by-value-18a_x.c,
gcc.dg/compat/struct-by-value-18a_y.c,
gcc.dg/compat/struct-layout-1.h,
gcc.dg/compat/scalar-return-3_x.c,
gcc.dg/compat/scalar-return-3_y.c,
gcc.dg/compat/scalar-return-4_x.c,
gcc.dg/compat/scalar-return-4_y.c: Honor SKIP_COMPLEX.
* gcc.dg/compat/scalar-by-value-y.h: Use stdarg.h for non-GCC
compilers.
* gcc.dg/compat/struct-by-value-22_y.c,
gcc.dg/compat/struct-by-value-22_main.c,
gcc.dg/compat/struct-by-value-22_x.c: Honor SKIP_VLA_IN_STRUCT.
* lib/c-compat.exp (compat_setup_dfp): Check the compiler under test
first.
* lib/compat.exp: Document COMPLEX and VLA_IN_STRUCT skips.
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r140137
2008-09-09 03:17:22 +00:00
GCC Administrator
fa3f957a2e
Daily bump.
...
From-SVN: r140134
2008-09-09 00:16:31 +00:00
Andy Hutchinson
564475d71f
wo_prof_escape_substr_value.c: Limit allocation based on STACK_SIZE.
...
* gcc.dg/struct/wo_prof_escape_substr_value.c: Limit allocation based on STACK_SIZE.
* gcc.dg/struct/wo_prof_array_through_pointer.c: Ditto.
* gcc.dg/struct/wo_prof_escape_substr_pointer.c: Ditto.
* gcc.dg/struct/wo_prof_escape_arg_to_local.c: Limit allocation based on STACK_SIZE. Check malloc return for NULL.
* gcc.dg/struct/w_prof_local_var.c: Ditto.
* gcc.dg/struct/wo_prof_mult_field_peeling.c: Ditto.
* gcc.dg/struct/w_prof_local_array.c: Limit allocation based on STACK_SIZE. XFAIL AVR target.
* gcc.dg/struct/wo_prof_local_array.c: Ditto.
* gcc.dg/struct/w_prof_two_strs.c: Limit allocation based on STACK_SIZE. Limit random size to N.
* gcc.dg/struct/wo_prof_two_strs.c: Limit allocation based on STACK_SIZE. XFAIL AVR target. Limit random size to N.
* gcc.dg/struct/w_prof_single_str_global.c: XFAIL AVR target.
* gcc.dg/struct/wo_prof_array_field.c: Ditto.
* gcc.dg/struct/wo_prof_double_malloc.c: Ditto.
* gcc.dg/struct/wo_prof_global_array.c: Ditto.
* gcc.dg/struct/wo_prof_single_str_global.c: Ditto.
* gcc.dg/struct/wo_prof_single_str_local.c: Ditto.
* gcc.dg/struct/w_prof_global_var.c: Limit allocation based on STACK_SIZE. Check malloc return for NULL. XFAIL AVR target.
* gcc.dg/struct/wo_prof_global_var.c: Ditto.
* gcc.dg/struct/wo_prof_local_var.c: Ditto.
* gcc.dg/struct/wo_prof_malloc_size_var.c: Access only allocated space. Limit allocation based on STACK_SIZE. XFAIL AVR target.
From-SVN: r140126
2008-09-08 22:41:27 +00:00
John David Anglin
d70ddd9078
cdce3.C: Require c99 runtime.
...
* g++.dg/cdce3.C: Require c99 runtime.
From-SVN: r140125
2008-09-08 22:26:44 +00:00
Andy Hutchinson
3d7094661b
re PR target/36609 (AVR wrong code using incorrect RTL for test reversal pattern)
...
PR target/36609
* config/avr/avr.c (avr_reorg): Create RTL for reversed compare with zero.
* config/avr/avr.md (QISI) : Define mode iterator.
(negated_tst<mode>) : Redefine as split using mode macro.
(reversed_tstqi): Define insn as reversed compare with zero.
(reversed_tsthi): Ditto.
(reversed_tstsi): Ditto.
From-SVN: r140124
2008-09-08 22:25:42 +00:00
Jakub Jelinek
9cfa22be65
re PR middle-end/37393 (error: EH edge 10->12 is missing)
...
PR middle-end/37393
* tree-inline.c (copy_bb): When replacing a gimple_call_va_arg_pack_p
call stmt by new_call, clear gimple_bb on stmt after gsi_replace.
* g++.dg/tree-ssa/pr37393.C: New test.
From-SVN: r140123
2008-09-08 23:31:36 +02:00
Jakub Jelinek
7f4b6d207c
re PR middle-end/37414 (ICE with -ffast-math)
...
PR middle-end/37414
* predict.c (optimize_function_for_size_p): Don't segfault if
FUN is NULL.
* fold-const.c (LOGICAL_OP_NON_SHORT_CIRCUIT, fold_truthop,
tree_swap_operands_p): Don't test cfun != NULL before calling
optimize_function_for_s*_p.
* g++.dg/opt/init2.C: New test.
From-SVN: r140122
2008-09-08 23:30:23 +02:00
Eric Botcazou
99b96649c1
ira-color.c (ira_reuse_stack_slot): Set slot_num on success at the end of the search.
...
* ira-color.c (ira_reuse_stack_slot): Set slot_num on success at the
end of the search.
From-SVN: r140121
2008-09-08 21:21:10 +00:00
Jason Merrill
b344d949d2
re PR c++/37302 (function parameters are declared too late)
...
PR c++/37302
* parser.c (cp_parser_parameter_declaration_list): Process the
PARM_DECLs as we go and push them. Return a TREE_LIST.
(cp_parser_parameter_declaration_clause): Return a TREE_LIST.
(cp_parser_direct_declarator): Create a binding level and
suppress deprecated warnings in the parameter list.
(make_call_declarator): PARMS is now a tree.
* cp-tree.h (struct cp_declarator): Function parms are now a tree.
* decl.h (enum deprecated_states, deprecated_state): Move here.
* decl.c: From here.
(type_is_deprecated): New fn.
(grokparms): PARMLIST is a tree now. Warn about parms that
use deprecated types.
* mangle.c (write_expression): Handle PARM_DECL, CALL_EXPR and
0-operand cast.
* pt.c (tsubst) [DECLTYPE_TYPE]: Set skip_evaluation.
(tsubst_copy) [PARM_DECL]: Handle a PARM_DECL used outside of a
function.
* name-lookup.c (pushtag): Look through function parameter scopes.
(pushdecl_maybe_friend): Don't set DECL_CONTEXT on a PARM_DECL
when we're parsing a function declarator.
From-SVN: r140120
2008-09-08 16:52:44 -04:00
M R Swami Reddy
37022b7c72
crx.h (IRA_COVER_CLASSES): Define.
...
2008-09-02 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
* config/crx/crx.h (IRA_COVER_CLASSES): Define.
From-SVN: r140118
2008-09-08 13:55:05 -06:00
Jakub Jelinek
c5cac099b7
re PR middle-end/37337 (ICE: verify_flow_info failed)
...
PR middle-end/37337
* tree-ssa-dom.c (optimize_stmt): Call maybe_clean_or_replace_eh_stmt
even when a stmt has been gimple_modified_p, but after fold_stmt is
not any longer. Remove unneeded may_have_exposed_new_symbols
initializations.
* g++.dg/tree-ssa/pr37337.C: New test.
From-SVN: r140117
2008-09-08 21:31:18 +02:00
Richard Guenther
7220ca2b38
re PR tree-optimization/37421 (ICE in vn_reference_insert_pieces at tree-ssa-sccvn.c:1131)
...
2008-09-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/37421
* tree-ssa-sccvn.c (visit_copy): Make sure to fully
valueize the RHS.
* g++.dg/torture/pr37421.C: New testcase.
From-SVN: r140111
2008-09-08 16:31:43 +00:00
Daniel Kraft
94c8a0cca5
re PR fortran/36167 (ICE in gfc_conv_descriptor_dimension, at fortran/trans-array.c:242)
...
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/36167
* gfortran.dg/array_function_3.f90: New test.
* gfortran.dg/save_3.f90: Added cleanup-modules directive.
* gfortran.dg/string_compare_1.f90: Ditto.
From-SVN: r140107
2008-09-08 15:51:26 +02:00
Jakub Jelinek
37aaba15f3
re PR middle-end/37415 (ICE with -ftree-store-ccp)
...
PR middle-end/37415
* opts.c (common_handle_option): Handle OPT_ftree_store_ccp.
From-SVN: r140105
2008-09-08 14:39:28 +02:00
Andreas Schwab
bcb455baa4
Typo.
...
From-SVN: r140103
2008-09-08 09:23:49 +00:00
Daniel Kraft
0a991dec38
re PR fortran/37199 (array assignment from function writes out of bounds)
...
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/37199
* trans-expr.c (gfc_add_interface_mapping): Set new_sym->as.
(gfc_map_intrinsic_function): Added checks against NULL bounds in
array specs.
2008-09-08 Daniel Kraft <d@domob.eu>
PR fortran/37199
* gfortran.dg/array_function_2.f90: New test.
From-SVN: r140102
2008-09-08 11:17:27 +02:00
Tobias Burnus
10c17e8fd0
re PR fortran/37400 (implicit character(len=*,kind=kind('A')) (Q) ... no longer gives the right answer.)
...
2008-09-07 Tobias Burnus <burnus@net.b.de>
PR fortran/37400
* symbol.c (gfc_set_default_type): Copy char len.
2008-09-07 Tobias Burnus <burnus@net.b.de>
PR fortran/37400
* gfortran.dg/implicit_12.f90: New test.
From-SVN: r140100
2008-09-08 09:19:46 +02:00
John David Anglin
d9de9cad96
re PR driver/37409 (-fwhole-program option breaks collect2-generated global constructors)
...
PR driver/37409
* pa-hpux.h (LINK_SPEC): Strip -fwhole-program.
* pa-hpux10.h (LINK_SPEC): Likewise.
* pa-hpux11.h (LINK_SPEC): Likewise.
`
From-SVN: r140099
2008-09-08 04:26:15 +00:00
GCC Administrator
b87c8930ac
Daily bump.
...
From-SVN: r140096
2008-09-08 00:16:44 +00:00
John David Anglin
be2f06ed3d
pa32-regs.h (IRA_COVER_CLASSES): Define.
...
* pa32-regs.h (IRA_COVER_CLASSES): Define.
* pa64-regs.h (IRA_COVER_CLASSES): Define.
From-SVN: r140093
2008-09-07 19:54:30 +00:00
Helge Deller
d6ab7b032f
linux-atomic.c: New file.
...
* pa/linux-atomic.c: New file.
* pa/t-linux (LIB2FUNCS_STATIC_EXTRA): Define.
* pa/t-linux64 (LIB2FUNCS_STATIC_EXTRA): Define.
From-SVN: r140091
2008-09-07 16:53:31 +00:00
Paolo Carlini
a834e097ea
acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Check wcstoimax and wcstoumax, define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
...
2008-09-07 Paolo Carlini <paolo.carlini@oracle.com>
* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Check wcstoimax and
wcstoumax, define _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1.
* include/tr1_impl/cinttypes: Use the latter.
* testsuite/tr1/8_c_compatibility/cinttypes/functions.cc: Likewise.
* configure: Regenerate.
* config.h.in: Likewise.
From-SVN: r140089
2008-09-07 16:41:06 +00:00
Thomas Koenig
fd7f975423
re PR fortran/37203 (Check ORDER= of RESHAPE)
...
2008-09-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37203
* intrinsics/reshape_generic.c: Add checking on
out-of-bounds and duplicate values of order argument.
* m4/reshape.m4: Likewise.
* generated/reshape_c10.c: Regenerated.
* generated/reshape_c16.c: Regenerated.
* generated/reshape_c4.c: Regenerated.
* generated/reshape_c8.c: Regenerated.
* generated/reshape_i16.c: Regenerated.
* generated/reshape_i4.c: Regenerated.
* generated/reshape_i8.c: Regenerated.
* generated/reshape_r10.c: Regenerated.
* generated/reshape_r16.c: Regenerated.
* generated/reshape_r4.c: Regenerated.
* generated/reshape_r8.c: Regenerated.
2008-09-07 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37203
* gfortran.d/reshape_order_1.f90: New test case.
* gfortran.d/reshape_order_2.f90: New test case.
* gfortran.d/reshape_order_3.f90: New test case.
* gfortran.d/reshape_order_4.f90: New test case.
From-SVN: r140086
2008-09-07 13:33:18 +00:00
Richard Guenther
73356a7d3b
re PR tree-optimization/36630 (ICE in vect_update_ivs_after_vectorizer)
...
PR tree-optimization/36630
* tree-vect-transform.c (vect_update_ivs_after_vectorizer):
Call STRIP_NOPS before calling evolution_part_in_loop_num.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r140085
2008-09-07 10:05:37 +00:00
Daniel Kraft
fe2c39c8c2
stfunc_6.f90: Extended testcase to include more tests related to PURE and statement functions.
...
2008-09-07 Daniel Kraft <d@domob.eu>
* gfortran.dg/stfunc_6.f90: Extended testcase to include more tests
related to PURE and statement functions.
From-SVN: r140084
2008-09-07 11:11:53 +02:00
Dorit Nuzman
cc54af2085
re PR tree-optimization/35642 (short * short multiplication not vectorized on Power)
...
PR tree-optimization/35642
* config/rs6000/altivec.md (mulv8hi3): Implement.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r140083
2008-09-07 08:54:00 +00:00
Victor Kaplansky
c0cf64a287
re PR testsuite/37334 (gcc.dg/fastmath-2.c doesn't work)
...
2008-09-07 Victor Kaplansky <victork@il.ibm.com>
PR testsuite/37334
* gcc/testsuite/gcc.dg/fastmath-2.c: Add volatile to
definition of b, change -ffast-math to -ffinite-math-only
and rename test to ...
* gcc/testsuite/gcc.dg/div-double-1.c: ... this.
From-SVN: r140082
2008-09-07 07:34:30 +00:00
GCC Administrator
5f195f0c72
Daily bump.
...
From-SVN: r140079
2008-09-07 00:16:49 +00:00
H.J. Lu
6a4bde9629
configure.ac: Fix a typo.
...
2008-09-06 H.J. Lu <hongjiu.lu@intel.com>
* configure.ac: Fix a typo.
* configured: Regenerate.
From-SVN: r140076
2008-09-06 16:00:24 -07:00
Bruce Korb
dc5a9b1dfb
add: m4_sinclude(../libtool.m4)
...
From-SVN: r140075
2008-09-06 21:50:14 +00:00
Jeff Law
f8505a3616
h8300.h (IRA_COVER_CLASSES): Define.
...
* h8300.h (IRA_COVER_CLASSES): Define.
From-SVN: r140074
2008-09-06 15:00:02 -06:00
Jeff Law
6ad9475ec8
memcpy-bi.c: Include <string.h>
...
* gcc.c-torture/execute/memcpy-bi.c: Include <string.h>
From-SVN: r140073
2008-09-06 14:55:41 -06:00
Bruce Korb
6aa1f8c190
fix glibc_mutex_init fix
...
From-SVN: r140071
2008-09-06 19:57:26 +00:00
Tobias Burnus
1b1f56cf4d
re PR fortran/37399 (gfortran.dg/size_kind.f90 doesn't work)
...
2008-09-06 Tobias Burnus <burnus@net-b.de>
PR fortran/37399
* gfortran.dg/size_kind.f90: Remove allocate statement
as it overflows at compile time on 32bit systems.
From-SVN: r140070
2008-09-06 20:27:17 +02:00
Jan Hubicka
b91bc3493e
re PR tree-optimization/14703 (Inadequate optimization of inline templated functions, infinite loop in ipa-reference and memory hog)
...
PR tree-optimization/14703
* tree-ssa-live.c (remove_unused_scope_block_p): Remove ignored declarations.
* passes.c (init_optimization_passes): Recompute inline parameters.
* g++.dg/tree-ssa-pr14703.C: New testcase.
From-SVN: r140068
2008-09-06 17:10:00 +00:00
Tobias Burnus
7a687b2265
[multiple changes]
...
2008-09-06 Steven G. Kargl <kargls@comcast.net>
PR fortran/36153
* fortran/resolve.c (resolve_function): Shortcircuit for SIZE and
UBOUND if 2nd argument is KIND.
2008-09-06 Tobias Burnus <burnus@net-b.de>
PR fortran/36153
* gfortran.dg/size_kind.f90: New test.
From-SVN: r140063
2008-09-06 17:27:50 +02:00
Steven G. Kargl
2c68bc89b7
re PR fortran/33229 (ICE with "intrinsic" plus calling a subroutine as function)
...
2008-09-06 Steven G. Kargl <kargls@comcast.net>
PR fortran/33229
* resolve.c (resolve_function): An intrinsic subroutine should
* not be
called as a function.
2008-09-06 Steven G. Kargl <kargls@comcast.net>
PR fortran/33229
* gfortran.dg/intrinsic_subroutine.f90: New test.
From-SVN: r140061
2008-09-06 17:11:29 +02:00
Tobias Burnus
9731c4a348
libgfortran.h (likely,unlikely): New makros.
...
2008-09-06 Tobias Burnus <burnus@net-b.de>
* libgfortran.h (likely,unlikely): New makros.
(runtime_warning_at,__mingw_snprintf): Add __attribute__(format()).
* m4/spread.m4 (spread_'rtype_code`): Use unlikely for bounds_check.
* m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Ditto.
* m4/matmull.m4 (matmul_'rtype_code`): Ditto.
* m4/ifunction_logical.m4 (name`'rtype_qual`_'atype_code): Ditto.
* m4/ifunction.m4 (name`'rtype_qual`_'atype_code): Ditto.
* m4/matmul.m4 (matmul_'rtype_code`): Ditto.
* generated/minval_r8.c: Regenerated.
* generated/spread_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/spread_i8.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc0_4_r4.c: Regenerated.
* generated/all_l1.c: Regenerated.
* generated/matmul_r8.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/minloc0_4_r16.c: Regenerated.
* generated/minloc0_4_i1.c: Regenerated.
* generated/maxloc0_4_r16.c: Regenerated.
* generated/maxloc0_4_i2.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc0_8_i8.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/minloc0_16_i8.c: Regenerated.
* generated/spread_i1.c: Regenerated.
* generated/maxloc0_16_i8.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc0_16_i16.c: Regenerated.
* generated/matmul_r16.c: Regenerated.
* generated/minloc0_4_r4.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/minloc0_4_i2.c: Regenerated.
* generated/spread_c10.c: Regenerated.
* generated/maxloc0_8_i1.c: Regenerated.
* generated/spread_r4.c: Regenerated.
* generated/minloc0_8_i8.c: Regenerated.
* generated/matmul_c8.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/minloc0_16_i1.c: Regenerated.
* generated/maxloc0_16_i1.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/spread_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc0_16_i16.c: Regenerated.
* generated/maxloc0_8_r4.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/minloc0_4_r10.c: Regenerated.
* generated/minloc0_8_i16.c: Regenerated.
* generated/maxloc0_4_r10.c: Regenerated.
* generated/maxloc0_8_i16.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/minloc0_16_r4.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc0_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc0_8_i1.c: Regenerated.
* generated/maxloc0_4_i4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc0_8_i2.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/matmul_i8.c: Regenerated.
* generated/minloc0_16_i2.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/maxloc0_16_i2.c: Regenerated.
* generated/spread_c4.c: Regenerated.
* generated/matmul_c16.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/matmul_r10.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc0_8_r4.c: Regenerated.
* generated/matmul_l4.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/minloc0_16_r16.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/minloc0_4_i4.c: Regenerated.
* generated/minloc0_8_i2.c: Regenerated.
* generated/matmul_i1.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/spread_i16.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/spread_i4.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc0_4_r8.c: Regenerated.
* generated/maxloc0_16_r16.c: Regenerated.
* generated/matmul_r4.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/minloc0_8_r16.c: Regenerated.
* generated/maxloc0_8_r16.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/maxloc0_8_i4.c: Regenerated.
* generated/matmul_i2.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/matmul_c10.c: Regenerated.
* generated/minloc0_16_i4.c: Regenerated.
* generated/maxloc0_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/matmul_l16.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/minloc0_16_r10.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc0_4_r8.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/sum_r8.c: Regenerated.
* generated/minloc0_8_i4.c: Regenerated.
* generated/matmul_c4.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/spread_r8.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/spread_r16.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/maxloc0_16_r10.c: Regenerated.
* generated/minloc0_4_i16.c: Regenerated.
* generated/maxloc0_8_r8.c: Regenerated.
* generated/maxloc0_4_i16.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/minloc0_8_r10.c: Regenerated.
* generated/maxloc0_8_r10.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/minloc0_16_r8.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/maxloc0_16_r8.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/maxloc0_4_i8.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/matmul_i4.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/spread_c8.c: Regenerated.
* generated/matmul_i16.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/minloc0_8_r8.c: Regenerated.
* generated/matmul_l8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/maxloc0_4_i1.c: Regenerated.
* generated/minloc0_4_i8.c: Regenerated.
* generated/spread_c16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
From-SVN: r140060
2008-09-06 16:53:26 +02:00
Richard Sandiford
cf90009713
mips.c (mips_function_ok_for_sibcall): Check for DECL being null.
...
gcc/
* config/mips/mips.c (mips_function_ok_for_sibcall): Check for
DECL being null.
From-SVN: r140056
2008-09-06 09:21:39 +00:00
Richard Sandiford
4d210b073f
2008-xx-xx Richard Sandiford <rdsandiford@goolemail.com> Peter Fuerst <post@pfrst.de>
...
gcc/
2008-xx-xx Richard Sandiford <rdsandiford@goolemail.com>
Peter Fuerst <post@pfrst.de>
* doc/invoke.texi: Document -mr10k-cache-barrier=.
* doc/extend.texi: Document __builtin_mips_cache.
* config/mips/mips-ftypes.def: Add a (VOID, SI, CVPOINTER) entry.
* config/mips/mips.opt (mr10k-cache-barrier=): New option.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define
__GCC_HAVE_BUILTIN_MIPS_CACHE.
(TARGET_CACHE_BUILTIN, ISA_HAS_CACHE): New macros.
* config/mips/mips.c (mips_r10k_cache_barrier_setting): New enum.
(set_push_mips_isas): New variable.
(mips_r10k_cache_barrier): New variable.
(cache): New availability predicate.
(mips_builtins): Add an entry for __builtin_mips_cache.
(mips_build_cvpointer_type): New function.
(MIPS_ATYPE_CVPOINTER): New macro.
(mips_prepare_builtin_arg): Only use the insn's mode if the rtx's
mode is VOIDmode.
(r10k_simplified_address_p, r10k_simplify_address)
(r10k_uncached_address_p, r10k_safe_address_p)
(r10k_needs_protection_p_1, r10k_needs_protection_p_store)
(r10k_needs_protection_p_call, r10k_needs_protection_p)
(r10k_insert_cache_barriers): New functions.
(mips_reorg_process_insns): Delete cache barriers after a
branch-likely instruction.
(mips_reorg): Call r10k_insert_cache_barriers.
(mips_handle_option): Handle OPT_mr10k_cache_barrier_.
* config/mips/mips.md (UNSPEC_MIPS_CACHE): New constant.
(UNSPEC_R10K_CACHE_BARRIER): Likewise.
(mips_cache, r10k_cache_barrier): New define_insns.
gcc/testsuite/
* gcc.target/mips/mips.exp (dg-mips-options): Make
-mr10k-cache-barrier=* imply -mips3 or above.
* gcc.target/mips/cache-1.c: New test.
* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-10.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
From-SVN: r140055
2008-09-06 08:13:09 +00:00
Richard Sandiford
4f341ea068
ira-int.h (ira_zero_hard_reg_set, [...]): Delete.
...
gcc/
* ira-int.h (ira_zero_hard_reg_set, ira_one_hard_reg_set): Delete.
* ira-color.c (setup_allocno_left_conflicts_num): Use
hard_reg_set_equal_p instead of a comparison with
ira_zero_hard_reg_set.
* ira.c (setup_reg_subclasses): Likewise.
(setup_cover_and_important_classes): Likewise.
(setup_class_translate): Likewise.
(setup_reg_class_intersect_union): Likewise.
(ira_zero_hard_reg_set, ira_one_hard_reg_set): Delete.
(ira_init_once): Don't initialize them.
From-SVN: r140054
2008-09-06 08:08:49 +00:00