Richard Henderson [Wed, 15 Dec 2004 17:41:58 +0000 (09:41 -0800)]
re PR target/19010 (sse and mmx parameter passing broken)
PR target/19010
* config/i386/i386.c (ix86_must_pass_in_stack): Don't return true
for TImode vectors.
(gen_reg_or_parallel): New.
(function_arg): Use it.
(ix86_hard_regno_mode_ok): Test SSE1 and SSE2 separately,
MMX and 3DNOW separately.
(ix86_rtx_costs): Simplify FLOAT_EXTEND case.
(ix86_vector_mode_supported_p): Test SSE1 and SSE2 separately.
* config/i386/i386.h (VALID_SSE2_REG_MODE): Move SSE2 cases from ...
(VALID_SSE_REG_MODE): ... here.
* gcc.target/i386/i386.exp: New harness.
* gcc.target/i386/vect-args.c: New.
From-SVN: r92205
David Edelsohn [Wed, 15 Dec 2004 16:01:55 +0000 (16:01 +0000)]
* xcoffout.c (xcoffout_declare_function): Change strncpy to memcpy.
From-SVN: r92202
David Edelsohn [Wed, 15 Dec 2004 15:54:48 +0000 (15:54 +0000)]
* gcc.dg/
20040813-1.c: Skip for *-*-aix*.
From-SVN: r92201
Kriang Lerdsuwanakij [Wed, 15 Dec 2004 15:21:11 +0000 (15:21 +0000)]
re PR c++/18825 (ICE segmentation fault in wv2)
PR c++/18825
* pt.c (instantiate_class_template): Set input_location for
friend function.
(tsubst_friend_function): Don't set input_location here.
Make sure the context is complete if necessary.
* g++.dg/template/friend32.C: New test.
From-SVN: r92200
Ian Lance Taylor [Wed, 15 Dec 2004 14:03:58 +0000 (14:03 +0000)]
arm.c (arm_xscale_rtx_costs): Increase cost of COMPARE of MULT.
* config/arm/arm.c (arm_xscale_rtx_costs): Increase cost of
COMPARE of MULT.
* config/arm/arm.md (mulsi3_compare0): Don't check
arm_arch_xscale.
(mulsi_compare0_scratch, mulsi3_addsi_compare0): Likewise.
(mulsi3addsi_compare0_scratch): Likewise.
From-SVN: r92199
Eric Botcazou [Wed, 15 Dec 2004 13:37:31 +0000 (13:37 +0000)]
Add missing entry.
From-SVN: r92196
Eric Botcazou [Wed, 15 Dec 2004 13:31:28 +0000 (14:31 +0100)]
re PR preprocessor/15167 (Internal compiler error with "#pragma once")
PR preprocessor/15167
* files.c (destroy_cpp_file): New function.
(should_stack_file): Make a new file if the
compared file is still stacked.
From-SVN: r92194
Bud Davis [Wed, 15 Dec 2004 12:42:39 +0000 (12:42 +0000)]
re PR libfortran/17597 (list directed read has error)
2004-12-15 Bud Davis <bdavis9659@comcast.net>
Steven G. Kargl <kargls@comcast.net>
PR fortran/17597
* io/list_read.c (read_real): do not push back a comma when
it delimits a real value without a decimal point
2004-12-15 Bud Davis <bdavis9659@comcast.net>
Steven G. Kargle <kargls@comcast.net>
PR fortran/17597
* gfortran.dg/list_read_3.f90: New test.
Co-Authored-By: Steven G. Kargl <kargls@comcast.net>
Co-Authored-By: Steven G. Kargl <kargls@comcast.net>
From-SVN: r92190
Eric Botcazou [Wed, 15 Dec 2004 12:30:46 +0000 (13:30 +0100)]
re PR other/18665 (-ftrapv borks up simple integer arithmetic)
PR other/18665
* libgcc-std.ver (GCC_3.4.4): Inherit from GCC_3.4.2.
Export __absvti2, __addvti3, __mulvti3, __negvti2 and __subvti3.
* libgcc2.c (__addvsi3): Rename to __addvSI3.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__addvdi3): Rename to __addvDI3.
(__subvsi3): Rename to __subvSI3. Use word type for the result.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__subvdi3): Rename to __subvDI3.
(_mulvsi3): Rename to _mulvSI3.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(_mulvdi3): Rename to _mulvDI3.
(__negvsi2): Rename to __negvSI2.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__negvdi2): Rename to __negvDI2.
(__absvsi2): Rename to __absvSI2.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__absvdi2): Rename to __absvDI2.
* libgcc2.h (64-bit targets): Define COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__absvSI2, __addvSI3, __subvSI3, __mulvSI3, __negvSI2, __absvDI2,
__addvDI3, __subvDI3, __mulvDI3, __negvDI2): Define to the appropriate
symbol and declare.
(__absvsi2, __addvsi3, __subvsi3, __mulvsi3, __negvsi2): Declare if
COMPAT_SIMODE_TRAPPING_ARITHMETIC.
From-SVN: r92187
Kazuhiro Inaoka [Wed, 15 Dec 2004 12:13:07 +0000 (12:13 +0000)]
config/m32r.c (m32r_legitimize_pic_address): Changed to support GOTOFF relocation.
config/m32r.c (m32r_legitimize_pic_address): Changed to support GOTOFF
relocation.
config/m32r.md (UNSPEC_GOTOFF): New.
(gotoff_load_addr): New.
From-SVN: r92186
Kazuhiro Inaoka [Wed, 15 Dec 2004 11:53:44 +0000 (11:53 +0000)]
(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
From-SVN: r92185
Nathan Sidwell [Wed, 15 Dec 2004 10:25:14 +0000 (10:25 +0000)]
re PR c++/18981 (ICE in cp_parser_lookup_name)
cp:
PR c++/18981
* parser.c (cp_parser_lookup_name): Remove unneeded TYPENAME_TYPE
flag setting.
testsuite:
PR 18981
* g++.dg/template/typename9.C: New test.
From-SVN: r92184
Richard Sandiford [Wed, 15 Dec 2004 08:55:05 +0000 (08:55 +0000)]
mips.c (mips_arg_info): Use FUNCTION_ARG_BOUNDARY to decide whether an argument is double-word aligned.
* config/mips/mips.c (mips_arg_info): Use FUNCTION_ARG_BOUNDARY to
decide whether an argument is double-word aligned.
From-SVN: r92182
Richard Henderson [Wed, 15 Dec 2004 07:59:34 +0000 (23:59 -0800)]
* config/i386/i386.md: Fix missing modes on cmove splitters.
From-SVN: r92180
Jan Beulich [Wed, 15 Dec 2004 07:43:48 +0000 (07:43 +0000)]
mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.
gcc/
2004-12-15 Jan Beulich <jbeulich@novell.com>
* mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.
From-SVN: r92179
Uros Bizjak [Wed, 15 Dec 2004 06:54:53 +0000 (07:54 +0100)]
* config/i386/i386.md (floathisf2, *floathisf2_1, floatsisf2,
*floatsisf2_i387, *floatsisf2_sse, floatdisf2,
*floatdisf2_i387_only, *floatdisf2_i387, *floatdisf2_sse,
floathidf2, *floathidf2_1, *floatsidf2_i387, *floatsidf2_sse,
floatdidf2, *floatdidf2_i387_only, *floatdidf2_i387,
*floatdidf2_sse, floatunssisf2, floatunsdisf2, floatunsdidf2):
Unify enable constraint with respect to TARGET_80387, TARGET_SSE,
TARGET_SSE2, TARGET_64BIT, TARGET_SSE_MATH and TARGET_MIX_SSE_I387.
(*float?i?f_i387): Rename to *float?i?f2_mixed.
(*float?i?f2_1): Rename to *float?i?f2_i387.
(*float?i?f2_i387_only): Rename to *float?i?f2_i387.
(float?ixf2): Penalize integer register operand.
From-SVN: r92178
John David Anglin [Wed, 15 Dec 2004 05:10:57 +0000 (05:10 +0000)]
re PR c++/17242 (Testsuite fails due to duplicate symbols)
PR c++/17242
* configure.ac: Add GAS check for HP-UX .nsubspa comdat.
* configure, config.in: Rebuilt.
* config/pa/pa-hpux10.h (SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Delete
defines.
* config/pa/pa.c (pa_select_section): Allow uninitialized variables in
one-only (comdat) subspaces.
* config/pa/som.h (SUPPORTS_SOM_COMDAT): New define.
(SUPPORTS_ONE_ONLY): True if SUPPORTS_WEAK or SUPPORTS_SOM_COMDAT are
true.
(MAKE_DECL_ONE_ONLY): Place uninitialized variables in common.
From-SVN: r92177
Richard Henderson [Wed, 15 Dec 2004 03:56:06 +0000 (19:56 -0800)]
gfortran.h (gfc_expr.function.name): Make const.
* gfortran.h (gfc_expr.function.name): Make const.
(gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
(gfc_get_string): Update prototype.
* iresolve.c: Include tree.h.
(string_node, HASH_SIZE, string_head, hash): Remove.
(gfc_get_string): Use vsnprintf, get_identifier.
(free_strings, gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
* misc.c (gfc_init_1): Don't call gfc_iresolve_init_1.
(gfc_done_1): Don't call gfc_iresolve_done_1.
* module.c (mio_allocated_string): Take and return const char *,
instead of modifying char**.
(mio_expr): Update to match.
* resolve.c (pure_function): Constify name argument.
(resolve_function): Constify name.
* trans-intrinsic.c (gfc_conv_intrinsic_function): Likewise.
From-SVN: r92176
Ian Lance Taylor [Wed, 15 Dec 2004 01:02:55 +0000 (01:02 +0000)]
combine.c (combine_validate_cost): Consider cost of undobuf.other_insn rather than always allowing the...
* combine.c (combine_validate_cost): Consider cost of
undobuf.other_insn rather than always allowing the recombination
if it is set.
From-SVN: r92173
Mark Mitchell [Wed, 15 Dec 2004 00:42:33 +0000 (00:42 +0000)]
re PR c++/18738 (typename not allowed with non-dependent qualified name)
PR c++/18738
* decl.c (make_typename_type): Do not handle namespace-scoped
names here.
(tag_name): Handle typename_type.
(check_elaborated_type_specifier): Handle typenames.
* parser.c (cp_parser_diagnose_invalid_type_name): Improve
comment.
(cp_parser_elaborated_type_specifier): Use
cp_parser_diagnose_invalid_type_name.
PR c++/18738
* g++.dg/template/typename8.C: New test.
* g++.dg/parse/friend2.C: Tweak error message.
From-SVN: r92172
GCC Administrator [Wed, 15 Dec 2004 00:16:21 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92170
John David Anglin [Tue, 14 Dec 2004 22:48:53 +0000 (22:48 +0000)]
pa-host.c (MAP_FAILED): Define if not defined.
* pa-host.c (MAP_FAILED): Define if not defined.
(pa_gt_pch_use_address): Handle short reads.
From-SVN: r92166
Richard Henderson [Tue, 14 Dec 2004 22:45:28 +0000 (14:45 -0800)]
re PR target/17990 (sse used for negate without -mfpmath=sse)
PR target/17990
* config/i386/i386.c (x86_use_bt): New.
(ix86_expand_unary_operator): Use MEM_P.
(ix86_expand_fp_absneg_operator): New.
* config/i386/i386.h (x86_use_bt): Declare.
(TARGET_USE_BT): New.
* config/i386/i386-protos.h: Update.
* config/i386/i386.md (negsf2): Use ix86_expand_fp_absneg_operator.
(negdf2, negxf2, abssf2, absdf2, absxf2): Likewise.
(negsf2_memory, negsf2_ifs, negsf2_if, negdf2_memory, negdf2_ifs,
negdf2_ifs_rex64, negdf2_if, negdf2_if_rex64, negxf2_if,
abssf2_memory, abssf2_ifs, abssf2_if, absdf2_memory, absdf2_ifs,
absdf2_ifs_rex64, absdf2_if, absxf2_if): Remove.
(absnegsf2_mixed, absnegsf2_sse, absnegsf2_i387, absnegdf2_mixed,
absnegdf2_sse, absnegdf2_i387, absnegxf2_i387): New. Merge all
neg and abs splitters. Handle DFmode in general regs in 64-bit mode.
(negextendsfdf2, absextendsfdf2): Disable for non-mixed sse math.
(btsq, btrq, btcq): New. Add peepholes as well.
(movv4sf_internal splitter): Postpone til after reload.
(movv2di_internal splitter): Likewise.
* config/i386/predicates.md (const_0_to_63_operand): New.
(absneg_operator): New.
From-SVN: r92165
John David Anglin [Tue, 14 Dec 2004 22:35:48 +0000 (22:35 +0000)]
pa.h (REGNO_OK_FOR_INDEX_P, [...]): Check register number and that reg_renumber is nonzero before using it.
* pa.h (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P):
Check register number and that reg_renumber is nonzero before using it.
From-SVN: r92164
Tobias Schlüter [Tue, 14 Dec 2004 22:00:54 +0000 (23:00 +0100)]
Fix date on ChangeLog
From-SVN: r92163
Steve Ellcey [Tue, 14 Dec 2004 21:50:54 +0000 (21:50 +0000)]
invoke.texi (IA-64 options): Add existing options that weren't already listed.
* doc/invoke.texi (IA-64 options): Add existing options that
weren't already listed.
From-SVN: r92162
Jeff Law [Tue, 14 Dec 2004 20:29:12 +0000 (13:29 -0700)]
20041214-1.c: New test.
* gcc.c-torture/execute/
20041214-1.c: New test.
Actually commit
20041213-2.c (pr18694).
From-SVN: r92160
Andrew Pinski [Tue, 14 Dec 2004 20:21:49 +0000 (12:21 -0800)]
Forgot to add dg-do
From-SVN: r92159
Andrew Pinski [Tue, 14 Dec 2004 20:13:16 +0000 (20:13 +0000)]
re PR middle-end/18965 (ICE in gimplify_init_ctor_eval)
2004-12-14 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/18965
* init.c (build_zero_init): If the max_index is 0, there is no
need to create a RANGE_EXPR.
2004-12-14 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/18965
* g++.dg/init/array17.C: New test.
From-SVN: r92158
Jeff Law [Tue, 14 Dec 2004 20:05:48 +0000 (13:05 -0700)]
tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target partition to conflict_graph_merge_regs.
* tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target
partition to conflict_graph_merge_regs.
From-SVN: r92157
Mark Mitchell [Tue, 14 Dec 2004 19:38:25 +0000 (19:38 +0000)]
re PR c++/18793 (ICE in cp_expr_size)
PR c++/18793
* cp-objcp-common.c (cp_expr_size): Loosen assertion.
PR c++/18793
* g++.dg/init/aggr3.C: New test.
From-SVN: r92156
Uttam Pawar [Tue, 14 Dec 2004 18:43:57 +0000 (18:43 +0000)]
rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors for vector types with invalid component types.
* rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors
for vector types with invalid component types.
testsuite:
* gcc.dg/altivec-types-1.c: New test.
* gcc.dg/altivec-types-2.c: New test.
* gcc.dg/altivec-types-3.c: New test.
* gcc.dg/altivec-types-4.c: New test.
* g++.dg/ext/altivec-types-1.C: New test.
* g++.dg/ext/altivec-types-2.C: New test.
* g++.dg/ext/altivec-types-3.C: New test.
* g++.dg/ext/altivec-types-4.C: New test.
Co-Authored-By: Janis Johnson <janis187@us.ibm.com>
From-SVN: r92154
Jakub Jelinek [Tue, 14 Dec 2004 18:04:56 +0000 (19:04 +0100)]
re PR middle-end/18951 (Invalid code generated by expand_errno_check)
PR middle-end/18951
* builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2,
expand_builtin_mathfn_3): Avoid using arguments passed to
save_expr after that call.
* gcc.c-torture/execute/
20041213-1.c: New test.
From-SVN: r92151
Jakub Jelinek [Tue, 14 Dec 2004 17:59:36 +0000 (18:59 +0100)]
fold-const.c (fold_single_bit_test): If flag_syntax_only, pretend LOAD_EXTEND_OP is not defined.
* fold-const.c (fold_single_bit_test): If flag_syntax_only, pretend
LOAD_EXTEND_OP is not defined.
(fold): Likewise. If flag_syntax_only, don't depend on BITS_PER_WORD.
From-SVN: r92150
Jeff Law [Tue, 14 Dec 2004 17:46:11 +0000 (10:46 -0700)]
Remove >>> conflict indicator.
From-SVN: r92148
Kazu Hirata [Tue, 14 Dec 2004 17:45:37 +0000 (10:45 -0700)]
Forgot to commit yesterday.
From-SVN: r92147
Tobias Schlüter [Tue, 14 Dec 2004 17:24:46 +0000 (18:24 +0100)]
tree.def, [...]: Correctly document restrictions on the shift width.
2004-12-14 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* tree.def, doc/c-tree.texi: Correctly document restrictions on the
shift width.
From-SVN: r92145
Tobias Schlüter [Tue, 14 Dec 2004 17:19:37 +0000 (18:19 +0100)]
tree.def, [...]: Correctly document restrictions on the shift width.
2004-12-14 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* tree.def, doc/c-tree.texi: Correctly document restrictions on the
shift width.
From-SVN: r92144
Steve Ellcey [Tue, 14 Dec 2004 16:34:08 +0000 (16:34 +0000)]
transfer.c (us_read): Use memcpy/memset instead of assignment to fill unaligned buffer.
* libgfortran/io/transfer.c (us_read): Use memcpy/memset
instead of assignment to fill unaligned buffer.
(us_write): Ditto.
(next_record_w): Ditto.
From-SVN: r92143
Kazu Hirata [Tue, 14 Dec 2004 16:24:42 +0000 (16:24 +0000)]
* expr.h (expand_modifier): Define EXPAND_STACK_PARM as 1.
From-SVN: r92140
Nathan Sidwell [Tue, 14 Dec 2004 15:39:12 +0000 (15:39 +0000)]
re PR c++/18949 (trouble with const_cast in templates)
cp:
PR c++/18949
* pt.c (tsubst_copy_and_build): <INDIRECT_REF case> Check that a
REFERENCE_REF_P is dereferencing a reference type.
* typeck.c (build_static_cast): Convert from reference even in a
template.
(build_reinterpret_cast, build_const_cast, build_c_cast): Likewise.
testsuite:
PR c++/18949
* g++.dg/template/cast1.C: New.
From-SVN: r92136
Richard Earnshaw [Tue, 14 Dec 2004 14:06:02 +0000 (14:06 +0000)]
re PR target/18973 (-mcpu=arm926ejs should set FL_LDSCHED)
PR target/18973
arm-cores.def (arm926ej-s, arm1026ej-s, arm1136j-s, arm1136-jfs)
(arm1176jz-s, arm1176jzf-s, mpcorenovfp, mpcore): Add load-scheduling
property to flags.
From-SVN: r92135
Diego Novillo [Tue, 14 Dec 2004 13:41:52 +0000 (13:41 +0000)]
* tree-gimple.c (get_base_address): Update documentation.
From-SVN: r92134
Volker Reichelt [Tue, 14 Dec 2004 13:32:03 +0000 (13:32 +0000)]
parser.c (cp_parser_uncommitted_to_tentative_parse_p): New function.
* parser.c (cp_parser_uncommitted_to_tentative_parse_p): New function.
(cp_parser_name_lookup_error): Use it.
(cp_parser_check_for_invalid_template_id): Likewise.
(cp_parser_skip_to_closing_parenthesis): Likewise.
(cp_parser_nested_name_specifier_opt): Likewise.
(cp_parser_simple_declaration, cp_parser_template_id): Likewise.
(cp_parser_parameter_declaration_list): Likewise.
(cp_parser_parameter_declaration): Likewise.
(cp_parser_template_name): Let cp_parser_simulate_error perform
the checking.
(cp_parser_committed_to_tentative_parse): Remove.
From-SVN: r92133
Steven G. Kargl [Tue, 14 Dec 2004 10:43:36 +0000 (10:43 +0000)]
re PR libfortran/18966 (cshift etc. not implemented for kind=1 and kind=2 actual arguments)
PR libfortran/18966
* gfortran.h: typedef GFC_INTEGER_1 and GFC_INTEGER_2
* intrinsics/cshift0.c (cshift0_1,cshift0_2): New functions.
* intrinsics/eoshift0.c (eoshift0_1,eoshift0_2): New functions.
* intrinsics/eoshift2.c (eoshift2_1,eoshift2_2): New functions.
From-SVN: r92132
Richard Henderson [Tue, 14 Dec 2004 05:34:26 +0000 (21:34 -0800)]
* gcc.dg/i386-sse-10.c: Fix typo in options.
From-SVN: r92128
Andrew Pinski [Tue, 14 Dec 2004 02:21:56 +0000 (02:21 +0000)]
re PR c++/18968 (ICE: tree check: expected ssa_name, have addr_expr in vrp_hash)
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/18968
* g++.dg/opt/pr18968.C: New test.
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/18968
* class.c (build_base_path): Convert the zero constant to the correct
type when comparing.
From-SVN: r92121
Mark Mitchell [Tue, 14 Dec 2004 02:15:55 +0000 (02:15 +0000)]
re PR target/18925 (Invalid gprel relocation in PIC)
PR c++/18925
* class.c (layout_class_type): Determine the visibility of static
data members.
PR c++/18925
* g++.dg/ext/visibility/staticdatamem.C: New test.
From-SVN: r92120
Kelley Cook [Tue, 14 Dec 2004 01:52:40 +0000 (01:52 +0000)]
below100.S: Remove DOS line endings.
2004-12-13 Kelley Cook <kcook@gcc.gnu.org>
* gcc.target/xstormy16/below100.S: Remove DOS line endings.
From-SVN: r92118
Richard Henderson [Tue, 14 Dec 2004 01:30:35 +0000 (17:30 -0800)]
re PR middle-end/17930 (-mfpmath=sse creates illegal code (movapd with misaligned argument))
PR middle-end/17930
* passes.c (rest_of_clean_state): Fix computation of
preferred_incoming_stack_boundary.
From-SVN: r92116
Wolfgang Bangerth [Tue, 14 Dec 2004 01:01:26 +0000 (18:01 -0700)]
* reload.h: Remove struct needs and its only use.
From-SVN: r92114
GCC Administrator [Tue, 14 Dec 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92112
Roger Sayle [Mon, 13 Dec 2004 23:49:28 +0000 (23:49 +0000)]
re PR rtl-optimization/18928 (ice on valid code with -O2 -fPIC)
PR rtl-optimization/18928
* simplify_rtx.c (plus_minus_operand_p): New function to encode
the test for suitable operands for calls to simplify_plus_minus.
Only allow (CONST (PLUS x y)) if both x and y are CONSTANT_P.
(simplify_binary_operation): Use plus_minus_operand_p.
* gcc.dg/pr18928-1.c: New test case.
From-SVN: r92109
Alexandre Oliva [Mon, 13 Dec 2004 21:03:47 +0000 (21:03 +0000)]
re PR tree-optimization/16951 (ICE in make_decl_rtl with recursion in C++ constructor (-O1))
gcc/ChangeLog:
PR tree-opt/16951
* tree-inline.c (setup_one_parameter): Don't directly map a
parameter to the address of another variable of the same
function.
gcc/testsuite/ChangeLog:
PR tree-opt/16951
* gcc.c-torture/compile/
20041211-1.c: New.
From-SVN: r92106
Steven Bosscher [Mon, 13 Dec 2004 20:44:31 +0000 (20:44 +0000)]
basic-block.h (PROP_POSTRELOAD): Do not include PROP_AUTOINC, we can never create autoinc insns after reload.
* basic-block.h (PROP_POSTRELOAD): Do not include PROP_AUTOINC, we
can never create autoinc insns after reload.
Co-Authored-By: Kazu Hirata <kazu@cs.umass.edu>
From-SVN: r92105
Andrew Pinski [Mon, 13 Dec 2004 20:29:19 +0000 (12:29 -0800)]
fix typo in my last changelog
From-SVN: r92103
Jeff Law [Mon, 13 Dec 2004 20:12:33 +0000 (13:12 -0700)]
tree-ssa-dom.c (thread_across_edge): Do not thread jumps if a PHI argument is set from a PHI_RESULT in the same...
* tree-ssa-dom.c (thread_across_edge): Do not thread jumps if a
PHI argument is set from a PHI_RESULT in the same block and the
PHI argument is not the same as the PHI result.
Co-Authored-By: Kazu Hirata <kazu@cs.umass.edu>
From-SVN: r92102
David Edelsohn [Mon, 13 Dec 2004 19:44:03 +0000 (19:44 +0000)]
xcoffout.c (xcoffout_declare_function): Always strip storage class encoding.
* xcoffout.c (xcoffout_declare_function): Always strip storage
class encoding.
From-SVN: r92101
Andrew Pinski [Mon, 13 Dec 2004 19:42:02 +0000 (19:42 +0000)]
re PR target/18964 (Typo in visibility warning message)
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
PR target/18964
* config/darwin.c (darwin_assemble_visibility): Fix minor diadnostic
problem, adding a space at the end of the string before concatenation.
From-SVN: r92100
Kazu Hirata [Mon, 13 Dec 2004 18:10:52 +0000 (18:10 +0000)]
* tree-ssa-dom.c (record_edge_info): Fix memory leak.
From-SVN: r92097
Kazu Hirata [Mon, 13 Dec 2004 17:14:56 +0000 (17:14 +0000)]
c-common.c (fname_as_string): Free namep if we are returning cstr.text.
* c-common.c (fname_as_string): Free namep if we are returning
cstr.text.
From-SVN: r92095
David Edelsohn [Mon, 13 Dec 2004 16:06:57 +0000 (16:06 +0000)]
* io/transfer.c (read_sf): Change bitwise "and" to logical "and".
From-SVN: r92094
Andrew Pinski [Mon, 13 Dec 2004 16:06:23 +0000 (16:06 +0000)]
tree-cfg.c (remove_useless_stmts_cond): Call fold on COND_EXPR_COND.
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
* tree-cfg.c (remove_useless_stmts_cond): Call fold on COND_EXPR_COND.
From-SVN: r92093
Kazu Hirata [Mon, 13 Dec 2004 16:03:40 +0000 (16:03 +0000)]
defaults.h, [...]: Fix comment typos.
* defaults.h, stmt.c, tree-cfg.c, tree-ssa-dce.c: Fix comment
typos.
From-SVN: r92092
Kazu Hirata [Mon, 13 Dec 2004 15:43:13 +0000 (15:43 +0000)]
tree-ssa-dom.c (record_equivalences_from_phis): Add a comment.
* tree-ssa-dom.c (record_equivalences_from_phis): Add a
comment.
From-SVN: r92091
Andrew Pinski [Mon, 13 Dec 2004 15:42:10 +0000 (15:42 +0000)]
re PR bootstrap/18458 ("make install" -> fixincl missing extension)
2004-12-13 Andrew Pinski <pinskia@physics.uc.edu>
PR 18458
* Makefile.in (install): Add @EXEEXT@ to the end of the program name,
fixincl.
From-SVN: r92090
Kazu Hirata [Mon, 13 Dec 2004 15:15:48 +0000 (15:15 +0000)]
tree-ssa-dom.c (record_equivalences_from_phis): Speed up by doing a pointer comparison.
* tree-ssa-dom.c (record_equivalences_from_phis): Speed up by
doing a pointer comparison.
From-SVN: r92089
Paolo Carlini [Mon, 13 Dec 2004 15:01:02 +0000 (15:01 +0000)]
type_traits (extent): Minor tweak (i.e., public).
2004-12-13 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (extent): Minor tweak (i.e., public).
From-SVN: r92088
Kelley Cook [Mon, 13 Dec 2004 13:18:22 +0000 (13:18 +0000)]
configure: Regenerate.
2004-12-13 Kelley Cook <kcook@gcc.gnu.org>
* configure: Regenerate.
From-SVN: r92087
Kazuhiro Inaoka [Mon, 13 Dec 2004 12:10:01 +0000 (12:10 +0000)]
t-linux (SHLIB_MAPFILES): Add libgcc-glibc.ver to the list rather than replacing the existing value.
* config/m32r/t-linux (SHLIB_MAPFILES): Add libgcc-glibc.ver to the list
rather than replacing the existing value.
From-SVN: r92085
Richard Henderson [Mon, 13 Dec 2004 10:45:07 +0000 (02:45 -0800)]
* cfg.c (dump_flow_info): Don't dump pseudo info after reload.
From-SVN: r92081
Richard Henderson [Mon, 13 Dec 2004 10:27:46 +0000 (02:27 -0800)]
Makefile.in (insn-preds.o): Depend on REGS_H.
* Makefile.in (insn-preds.o): Depend on REGS_H.
* genpreds.c (write_insn_preds_c): Include regs.h.
* config/i386/predicates.md (index_register_operand): Use
REG_OK_FOR_INDEX_STRICT_P and REG_OK_FOR_INDEX_NONSTRICT_P.
* config/i386/i386.h (REG_CLASS_FROM_LETTER): Add 'l'.
* config/i386/i386.md (lea_general_1, lea_general_1_zext,
lea_general_2, lea_general_2_zext, lea_general_3, lea_general_3_zext,
adddi_1_rex64, addsi_1, addsi_1_zext, addhi_1_lea, addqi_1_lea,
ashldi3_1_rex64, ashlsi3_1, ashlsi3_1_zext, ashlhi3_1_lea,
ashlqi3_1_lea): Use 'l' for index register operand.
(ashldi3_1_rex64 splitter): Use index_register_operand.
(ashlsi3_1 splitter): Be more careful with modes.
From-SVN: r92080
Danny Smith [Mon, 13 Dec 2004 08:35:10 +0000 (08:35 +0000)]
re PR target/18459 (gcj no longer works on win32)
PR target/18459
Fix ChangeLog entry to refer to correct PR
http://gcc.gnu.org/ml/gcc-cvs/2004-12/msg00507.html
From-SVN: r92079
Danny Smith [Mon, 13 Dec 2004 06:57:13 +0000 (06:57 +0000)]
defaults.h (TARGET_USE_JCR_SECTION): New macro.
gcc
PR/18549
* defaults.h (TARGET_USE_JCR_SECTION): New macro.
* doc/tm.texi (TARGET_USE_JCR_SECTION): Document it.
* config/i386/cygming.h (TARGET_USE_JCR_SECTION): Override
default.
gcc/java
PR/18549
* class.c (emit_register_classes): Use TARGET_USE_JCR_SECTION.
Update comment.
From-SVN: r92078
Uros Bizjak [Mon, 13 Dec 2004 06:38:45 +0000 (07:38 +0100)]
re PR target/14941 (i386.md strangeness in sse2_movsd)
PR target/14941
PR target/18503
* config/i386/i386.md (sse_movss, sse2_movsd, sse2_movhpd):
Fix wrong vec_merge selector bitmask.
From-SVN: r92077
John David Anglin [Mon, 13 Dec 2004 04:08:39 +0000 (04:08 +0000)]
re PR middle-end/17564 (New treatment of function pointers when used with equality operators, when casts are involved)
PR middle-end/17564
* gcc.c-torture/execute/
20041212-1.c: New test.
From-SVN: r92076
Richard Henderson [Mon, 13 Dec 2004 02:47:58 +0000 (18:47 -0800)]
iresolve.c (gfc_resolve_all, [...]): Use PREFIX.
gcc/fortran/
* iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
gfc_resolve_cshift, gfc_resolve_dot_product, gfc_resolve_eoshift,
gfc_resolve_matmul, gfc_resolve_maxloc, gfc_resolve_maxval,
gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_pack,
gfc_resolve_product, gfc_resolve_reshape, gfc_resolve_shape,
gfc_resolve_spread, gfc_resolve_sum, gfc_resolve_transpose,
gfc_resolve_unpack: Use PREFIX.
libgfortran/
* intrinsics/cshift0.c, intrinsics/eoshift0.c, intrinsics/eoshift2.c,
intrinsics/pack_generic.c, intrinsics/reshape_generic.c,
intrinsics/spread_generic.c, intrinsics/transpose_generic.c,
intrinsics/unpack_generic.c, m4/cshift1.m4, m4/dotprod.m4,
m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4, m4/eoshift3.m4,
m4/iforeach.m4, m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4,
m4/reshape.m4, m4/shape.m4, m4/transpose.m4: Use standard prefix
instead of "__".
* generated/*: Rebuild.
From-SVN: r92075
Richard Henderson [Mon, 13 Dec 2004 02:32:06 +0000 (18:32 -0800)]
re PR rtl-optimization/17186 (ICE in move_for_stack_reg, at reg-stack.c:1065)
PR rtl-opt/17186
* reg-stack.c (move_nan_for_stack_reg): New.
(subst_stack_regs_pat): Use it.
(move_for_stack_reg): Handle source register not live with a nan.
From-SVN: r92073
Richard Henderson [Mon, 13 Dec 2004 01:11:41 +0000 (17:11 -0800)]
i386.c (ix86_gimplify_va_arg): Fix type mismatch errors across operations.
* config/i386/i386.c (ix86_gimplify_va_arg): Fix type mismatch
errors across operations.
From-SVN: r92072
GCC Administrator [Mon, 13 Dec 2004 00:16:17 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r92070
Roger Sayle [Sun, 12 Dec 2004 22:33:00 +0000 (22:33 +0000)]
re PR middle-end/12454 (large number of if ();else if cause)
PR middle-end/12454
* cp-gimplify.c (gimplify_if_stmt): Optimize the case where the
condition is a constant and the unexecuted clause is empty.
From-SVN: r92067
Di-an Jan [Sun, 12 Dec 2004 21:34:58 +0000 (21:34 +0000)]
* doc/passes.texi (Pass Manager): Correct list of source files.
From-SVN: r92066
Richard Henderson [Sun, 12 Dec 2004 21:12:43 +0000 (13:12 -0800)]
expr.c (emit_move_change_mode): New.
* expr.c (emit_move_change_mode): New.
(emit_move_via_alt_mode): Use it.
From-SVN: r92065
Tobias Schlüter [Sun, 12 Dec 2004 21:12:00 +0000 (22:12 +0100)]
re PR fortran/18869 (multiple common blocks in a single line rejected)
gcc/
PR fortran/18869
* match.c (gfc_match_common): Skip whitespace.
testsuite/
PR fortran/18869
* gfortran.dg/common_1.f90: New test.
From-SVN: r92064
Steven G. Kargl [Sun, 12 Dec 2004 21:09:09 +0000 (21:09 +0000)]
re PR fortran/16581 (gfortran F90 bit intrinsics don't work with integer*{1,2,8})
2004-12-12 Steven G. Kargl <kargls@comcast.net>
PR fortran/16581
* check.c (gfc_check_iand, gfc_check_ibclr, gfc_check_ibits,
gfc_check_ibset, gfc_check_ieor, gfc_check_ior): Remove default
integer kind check; Issue error for -std=f95 when needed.
* intrinsic.c (add_functions): Change ieor from GFC_STD_GNU to
GFC_STD_F95.
* iresolve.c (gfc_resolve_iand, gfc_resolve_ieor, gfc_resolve_ior):
Promote arguments to same kind.
From-SVN: r92063
Paolo Carlini [Sun, 12 Dec 2004 21:01:37 +0000 (21:01 +0000)]
type_traits: Minor tweak.
2004-12-12 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Minor tweak.
* testsuite/tr1/4_metaprogramming/type_properties/extent/
typedefs.cc: Fix date.
From-SVN: r92062
Nathanael Nerode [Sun, 12 Dec 2004 21:01:17 +0000 (21:01 +0000)]
re PR middle-end/17564 (New treatment of function pointers when used with equality operators, when casts are involved)
PR middle-end/17564
* dojump.c (do_compare_and_jump): Only canonicalize function pointers
in a comparison if both sides are function pointers.
Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r92061
Richard Henderson [Sun, 12 Dec 2004 20:57:28 +0000 (12:57 -0800)]
re PR target/18932 (ICE in copyprop_hardreg_forward_1, at regrename.c)
PR target/18932
* config/i386/i386.md (all splits and peepholes): Use flags_reg_operand
and compare_operator to propagate the input CC mode to the output.
* config/i386/predicates.md (compare_operator): New.
From-SVN: r92058
Steven G. Kargl [Sun, 12 Dec 2004 20:27:02 +0000 (20:27 +0000)]
re PR fortran/16222 (non-integral DO loop variables are unsupported.)
2004-12-12 Steven G. Kargl <kargls@comcast.net>
Paul Brook <paul@codesourcery.com>
PR fortran/16222
* resolve.c (gfc_resolve_iterator_expr): New function.
(gfc_resolve_iterator): Use it. Add real_ok argument. Convert
start, end and stride to correct type.
(resolve_code): Pass extra argument.
* array.c (resolve_array_list): Pass extra argument.
* gfortran.h (gfc_resolve): Add prototype.
* trans-stmt.c (gfc_trans_do): Remove redundant type conversions.
Handle real type iterators.
testsuite/
* gfortran.dg/real_do_1.f90: New test.
Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r92057
Paolo Carlini [Sun, 12 Dec 2004 18:07:41 +0000 (18:07 +0000)]
type_traits: Implement extent.
2004-12-12 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Implement extent.
* testsuite/tr1/4_metaprogramming/type_properties/extent/
extent.cc: New.
* testsuite/tr1/4_metaprogramming/type_properties/extent/
typedefs.cc: Likewise.
From-SVN: r92054
Kazu Hirata [Sun, 12 Dec 2004 17:03:37 +0000 (17:03 +0000)]
* tree-ssa-dom.c (thread_across_edge): Fix a comment typo.
From-SVN: r92053
Kazu Hirata [Sun, 12 Dec 2004 16:55:34 +0000 (16:55 +0000)]
* tree-ssa-dom.c (thread_across_edge): Fix a comment typo.
From-SVN: r92052
Andrew Pinski [Sun, 12 Dec 2004 16:45:20 +0000 (16:45 +0000)]
re PR tree-optimization/18040 (ICE in for_each_index, at tree-ssa-loop-im.c:178)
2004-12-12 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/18040
* g++.dg/opt/ptrmem6.C: New test.
2004-12-12 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/18040
* expr.c (get_inner_reference): Remove NON_LVALUE_EXPR, NOP_EXPR,
CONVERT_EXPR cases.
(handled_component_p): Likewise.
From-SVN: r92051
Paul Brook [Sun, 12 Dec 2004 16:30:00 +0000 (16:30 +0000)]
Fix trivial comment typo.
From-SVN: r92050
Kazu Hirata [Sun, 12 Dec 2004 15:59:31 +0000 (15:59 +0000)]
* reg-stack.c (convert_regs_2): Free stack.
From-SVN: r92049
Daniel Berlin [Sun, 12 Dec 2004 15:52:33 +0000 (15:52 +0000)]
tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null.
2004-12-13 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-loop-ch.c (copy_loop_headers): Loop can be null.
* tree-ssa-loop-im.c (determine_lsm): tree_root may not have a real
inner loop.
From-SVN: r92048
Paolo Carlini [Sun, 12 Dec 2004 14:31:11 +0000 (14:31 +0000)]
type_traits: Implement is_pointer, remove_pointer, and add_pointer; reformat.
2004-12-12 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits: Implement is_pointer, remove_pointer,
and add_pointer; reformat.
(_DEFINE_PRIMARY_SPEC_HELPER, _DEFINE_PRIMARY_SPEC): Generalize
and rename to _DEFINE_SPEC_HELPER and _DEFINE_SPEC; update uses.
* testsuite/tr1/4_metaprogramming/pointer_modifications/
add_pointer.cc: New.
* testsuite/tr1/4_metaprogramming/pointer_modifications/
remove_pointer.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_pointer/is_pointer.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_pointer/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_reference/is_reference.cc: Slightly tweak consistently.
From-SVN: r92047
Diego Novillo [Sun, 12 Dec 2004 13:58:49 +0000 (13:58 +0000)]
* tree-gimple.c (get_base_address): Update documentation.
From-SVN: r92046
Richard Henderson [Sun, 12 Dec 2004 08:59:05 +0000 (00:59 -0800)]
acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
* acinclude.m4 (LIBGFOR_CHECK_ATTRIBUTE_VISIBILITY): New.
(LIBGFOR_CHECK_ATTRIBUTE_DLLEXPORT): New.
(LIBGFOR_CHECK_ATTRIBUTE_ALIAS): New.
* configure.ac: Use them.
* configure, config.h.in, aclocal.m4: Rebuild.
* libgfortran.h (prefix): Remove.
(PREFIX, IPREFIX): New.
(sym_rename, sym_rename1, sym_rename2): New.
(internal_proto, export_proto, export_proto_np): New.
(iexport_proto, iexport): New.
(iexport_data_proto, iexport_data): New.
* intrinsics/abort.c, intrinsics/args.c, intrinsics/associated.c,
intrinsics/cpu_time.c, intrinsics/cshift0.c,
intrinsics/date_and_time.c, intrinsics/env.c, intrinsics/eoshift0.c,
intrinsics/eoshift2.c, intrinsics/etime.c, intrinsics/exit.c,
intrinsics/flush.c, intrinsics/fnum.c, intrinsics/getXid.c,
intrinsics/getcwd.c, intrinsics/ishftc.c, intrinsics/mvbits.c,
intrinsics/pack_generic.c, intrinsics/rand.c, intrinsics/random.c,
intrinsics/reshape_generic.c, intrinsics/size.c,
intrinsics/spread_generic.c, intrinsics/stat.c,
intrinsics/string_intrinsics.c, intrinsics/system.c,
intrinsics/system_clock.c, intrinsics/transpose_generic.c,
intrinsics/umask.c, intrinsics/unlink.c, intrinsics/unpack_generic.c,
io/backspace.c, io/close.c, io/endfile.c, io/inquire.c, io/io.h,
io/open.c, io/rewind.c, io/transfer.c, libgfortran.h, m4/cshift1.m4,
m4/dotprod.m4, m4/dotprodc.m4, m4/dotprodl.m4, m4/eoshift1.m4,
m4/eoshift3.m4, m4/exponent.m4, m4/fraction.m4, m4/iforeach.m4,
m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/nearest.m4,
m4/pow.m4, m4/reshape.m4, m4/set_exponent.m4, m4/shape.m4,
m4/transpose.m4, runtime/environ.c, runtime/error.c,
runtime/in_pack_generic.c, runtime/in_unpack_generic.c,
runtime/main.c, runtime/memory.c, runtime/pause.c, runtime/select.c,
runtime/stop.c: Use them to mark symbols internal or external.
* generated/*: Rebuild.
From-SVN: r92045
Kazu Hirata [Sun, 12 Dec 2004 03:05:20 +0000 (03:05 +0000)]
lcm.c (optimize_mode_switching): Free ptr even when mode_set is NULL_RTX.
* lcm.c (optimize_mode_switching): Free ptr even when mode_set
is NULL_RTX.
From-SVN: r92044