Commit Graph

86991 Commits

Author SHA1 Message Date
Rafael Avila de Espindola
d059947010 tree-const.c (tree_call_nonnegative_warnv_p): Remove local variable arg1.
2008-04-15  Rafael Espindola  <espindola@google.com>

	* gcc/tree-const.c (tree_call_nonnegative_warnv_p): Remove local
	variable arg1.

From-SVN: r134315
2008-04-15 13:48:52 +00:00
Richard Guenther
649caaad39 tree-ssa-sccvn.h (vn_reference_lookup): Adjust prototype.
2008-04-15  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.h (vn_reference_lookup): Adjust prototype.
	* tree-ssa-sccvn.c (vn_reference_lookup): New parameter maywalk.
	(visit_reference_op_load): Do walk vuse-vdef chains on
	vn_reference_lookup.
	(visit_reference_op_store): But do not here.
	* tree-vn.c (vn_lookup): Do not walk vuse-vdef chains on
	vn_reference_lookup.
	(vn_lookup_with_vuses): But do so here.

From-SVN: r134314
2008-04-15 13:28:08 +00:00
Samuel Tardieu
462c31ef75 re PR ada/28733 (GNAT crash while compiling Ada-2005 code)
2008-04-15  Samuel Tardieu  <sam@rfc1149.net>
            Gary Dismukes  <dismukes@adacore.com>

    gcc/ada/
	PR ada/28733
	* sem_ch8.adb (Analyze_Use_Package): Do not allow "use" of something
	which is not an entity (and hence not a package).
	(End_Use_Package): Ditto.

Co-Authored-By: Gary Dismukes <dismukes@adacore.com>

From-SVN: r134313
2008-04-15 11:59:39 +00:00
Samuel Tardieu
8abe457acb [multiple changes]
2008-04-15  Ed Schonberg  <schonberg@adacore.com>

    gcc/ada/
	PR ada/16086
	* sem_ch12.adb (Analyze_Formal_Subprogram): The default can be any
	protected operation that matches the signature, not only an entry, a
	regular subprogram or a literal.

2008-04-15  Samuel Tardieu  <sam@rfc1149.net>

    gcc/testsuite/
	PR ada/16086
	* gnat.dg/prot_def.adb: New.

From-SVN: r134312
2008-04-15 11:02:58 +00:00
Eric Botcazou
29f4754ff0 ada-tree.h (DECL_BY_COMPONENT_PTR_P): Use DECL_LANG_FLAG_3.
* ada-tree.h (DECL_BY_COMPONENT_PTR_P): Use DECL_LANG_FLAG_3.
	* decl.c (gnat_to_gnu_entity) <object>: Call maybe_pad_type only
	if a size or alignment is specified.  Do not take into account
	alignment promotions for the computation of the object's size.
	<type>: Call maybe_pad_type only if a size or alignment is specified.
	(maybe_pad_type): Really reuse the RM_Size of the original type if
	requested.
	* trans.c (Attribute_to_gnu): Fix a couple of nits.
	* utils2.c (build_binary_op) <MODIFY_EXPR>: Merge related conditional
	statements.  Use the padded view of the type when copying between
	padded objects of the same underlying type.

From-SVN: r134310
2008-04-15 07:18:21 +00:00
Ian Lance Taylor
55d7d0fa97 * fold-const.c (fold_overflow_warning): Remove assertion.
From-SVN: r134307
2008-04-15 05:57:00 +00:00
GCC Administrator
cbe9a76f3e Daily bump.
From-SVN: r134303
2008-04-15 00:17:41 +00:00
Ben Elliston
2c4eec6975 Fix bootstrap on Alpha.
* config/alpha/alpha.c (alpha_initialize_trampoline): Remove temp,
	temp1 local variables.

From-SVN: r134299
2008-04-15 10:03:46 +10:00
Danny Smith
39e6670f28 re PR target/35921 (Con/de-structor definition fails to override dllimport declaration)
PR target/35921
       * optimize.c (maybe_clone_body): Copy DECL_DLLIMPORT_P flag
       to clone.

From-SVN: r134298
2008-04-14 23:53:54 +00:00
Benjamin Kosnik
8edb93c423 re PR libstdc++/35816 (libstdc++ build during bootstrap is optimizing away atomic builtin check)
2008-04-14  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/35816
	* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Set CXXFLAGS to
	-O0 when checking for atomic builtins.
	* configure: Regenerate.

From-SVN: r134297
2008-04-14 23:53:15 +00:00
Zuxy Meng
40f39798ce re PR target/35661 (__attribute__((cold)) generates wrong code)
2008-04-16  Zuxy Meng  <zuxy.meng@gmail.com>

	PR target/35661
	* config/i386/winnt.c (i386_pe_section_type_flags): Mark
	".text.unlikely" section as executable.

From-SVN: r134296
2008-04-14 23:47:39 +00:00
James E Wilson
07acc7b3e1 ia64.c (rtx_needs_barrier): Handle UNSPEC_FR_SQRT_RECIP_APPROX_RES.
* config/ia64/ia64.c (rtx_needs_barrier): Handle
UNSPEC_FR_SQRT_RECIP_APPROX_RES.
* config/ia64/ia64.c (UNSPEC_FR_SQRT_RECIP_APPROX_RES): Define.
(divsi3_internal, divdi3_internal_lat, divdi3_internal_thr,
divsf3_internal_lat, sqrt_approx, sqrtsf2_internal_thr,
divdf3_internal_lat, sqrtdf2_internal_thr, divxf3_internal_lat,
divxf3_internal_thr, sqrtxf2_internal_thr, recip_approx): Use it.

From-SVN: r134295
2008-04-14 16:38:40 -07:00
Ralf Wildenhues
f3d0f304ff vms_data.ads: Fix typo in constant.
gcc/ada/

	* vms_data.ads: Fix typo in constant.
	* gen-soccon.c: Fix typo in error string.
	* gnat_rm.texi (Pragma Optimize_Alignment, Pragma Postcondition):
	Fix typos.
	* a-calcon.ads, a-calend-vms.adb, a-calend.adb, a-crdlli.ads,
	bcheck.adb, checks.adb, einfo.ads, errout.adb, erroutc.adb,
	erroutc.ads, exp_attr.adb, exp_ch11.adb, exp_ch2.adb,
	exp_ch5.adb, exp_ch9.adb, exp_ch9.ads, exp_pakd.adb,
	exp_util.adb, fmap.adb, g-soccon-linux-mips.ads,
	g-soccon-rtems.ads, g-timsta.adb, g-timsta.ads, lib-writ.ads,
	mlib-tgt-specific-linux.adb, mlib-tgt-specific-tru64.adb,
	s-interr-vxworks.adb, s-interr.adb, s-osinte-lynxos.ads,
	s-rident.ads, s-taprop-solaris.adb, s-tassta.adb, s-win32.ads,
	sem_aggr.adb, sem_attr.ads, sem_ch10.adb, sem_ch13.ads,
	sem_ch3.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb,
	sem_prag.ads, sem_res.adb, sem_util.adb, sem_util.ads,
	sinfo.ads: Fix typos in comments.

From-SVN: r134291
2008-04-14 21:07:59 +00:00
Benjamin Kosnik
682db6f9c0 c++config: Guard _LDBL_ macros with __cplusplus.
2008-04-14  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/c++config: Guard _LDBL_ macros with __cplusplus.

From-SVN: r134288
2008-04-14 19:22:27 +00:00
Ian Lance Taylor
4c9db6e07a flags.h (POINTER_TYPE_OVERFLOW_UNDEFINED): Define.
gcc/:
	* flags.h (POINTER_TYPE_OVERFLOW_UNDEFINED): Define.
	* fold-const.c (fold_comparison): If appropriate, test
	POINTER_TYPE_OVERFLOW_UNDEFINED, and issue an overflow warning.
	(fold_binary): Test POINTER_TYPE_OVERFLOW_UNDEFINED when
	reassociating a pointer type.
	* doc/invoke.texi (Optimize Options): Document that
	-fstrict-overflow applies to pointer wraparound.
gcc/testsuite/:
	* gcc.dg/strict-overflow-6.c: New.
	* gcc.dg/no-strict-overflow-7.c: New.
	* gcc.dg/Wstrict-overflow-22.c: New.

From-SVN: r134287
2008-04-14 19:18:31 +00:00
Thomas Koenig
3a5a8be120 re PR libfortran/32972 (performance of pack/unpack)
2008-04-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/32972
	* intrinsics/spread_generic.c (spread):  Use spread_i2()
	for GFC_DTYPE_DERIVED_2 (fix typo from previous commit).

From-SVN: r134286
2008-04-14 18:50:57 +00:00
Samuel Tardieu
dcf461fa7f storage.ads: Fix expected error message.
gcc/testsuite/
	* gnat.dg/specs/storage.ads: Fix expected error message.

From-SVN: r134281
2008-04-14 16:41:58 +00:00
Robert Dewar
2efcad9f79 sem_prag.adb (Analyze_Pragma, [...]): Extend error to every non-object and change error message.
2008-04-14  Robert Dewar  <dewar@adacore.com>

    gcc/ada/
	* sem_prag.adb (Analyze_Pragma, Linker_Section case): Extend error
	to every non-object and change error message.

    gcc/testsuite/
	* gnat.dg/specs/linker_section.ads: Check for more error conditions.

From-SVN: r134280
2008-04-14 16:38:16 +00:00
Bernd Schmidt
96a791f748 Sigh.
Sigh.  Fix the license of the new file from the previous commit to be
GPLv3, and fix the copyright year.

From-SVN: r134277
2008-04-14 15:55:04 +00:00
Bernd Schmidt
018a61c9f4 Add missing file from my previous commit...
From-SVN: r134276
2008-04-14 15:51:51 +00:00
Robert Dewar
8f3723e0ae sem_util.ads, [...] (In_Subprogram): Remove.
2008-04-14  Robert Dewar  <dewar@adacore.com>

    gcc/ada/
	* sem_util.ads, sem_util.adb (In_Subprogram): Remove.
	* sem_attr.adb (Anayze_Attribute): Check for Current_Subprogram
	directly.

From-SVN: r134273
2008-04-14 15:01:42 +00:00
Samuel Tardieu
32f7efe1a5 re PR ada/18680 (pragma Linker_Section problems)
gcc/ada/
	PR ada/18680
	* sem_prag.adb (Analyze_Pragma, Linker_Section case): Refuse to
	apply pragma Linker_Section on type.

    gcc/testsuite/
	PR ada/18680
	* gnat.dg/specs/linker_section.ads: New.

From-SVN: r134266
2008-04-14 13:41:25 +00:00
Samuel Tardieu
b039b10e28 re PR ada/16098 (Illegal program not detected, RM 13.1(6))
gcc/ada/
	PR ada/16098
	* sem_prag.adb (Error_Pragma_Ref): New.
	(Process_Convention): Specialized message for non-local
	subprogram renaming. Detect the problem in homonyms as well.

    gcc/testsuite/
	PR ada/16098
	* gnat.dg/specs/renamings.ads: New.

From-SVN: r134262
2008-04-14 12:11:06 +00:00
Samuel Tardieu
cb572b755d re PR ada/15915 (Illegal program not detected, RM 13.11(15))
gcc/ada/
	PR ada/15915
	* sem_util.ads, sem_util.adb (Denotes_Variable): New function.
	* sem_ch12.adb (Instantiate_Object): Use it.
	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Ensure that
	storage pool denotes a variable as per RM 13.11(15).

    gcc/testsuite/
	PR ada/15915
	* gnat.dg/specs/storage.ads: New.

From-SVN: r134261
2008-04-14 12:10:16 +00:00
Samuel Tardieu
17972da719 sem_util.ads, [...] (In_Subprogram): New function.
gcc/ada/
	* sem_util.ads, sem_util.adb (In_Subprogram): New function.
	* sem_attr.adb (Analyze_Attribute, Attribute_Old case): Use it.

    gcc/testsuite/
	* gnat.dg/deep_old.adb: New.

From-SVN: r134260
2008-04-14 12:08:31 +00:00
Eric Botcazou
e965b4534f loop_address2.adb: New test.
* gnat.dg/loop_address2.adb: New test.

From-SVN: r134258
2008-04-14 11:34:05 +00:00
Rolf Ebert
57f80aa9eb re PR ada/20822 (makeinfo cannot process gnat_ugn_unw.texi)
2008-04-14  Rolf Ebert  <rolf.ebert.gcc@gmx.de>

    gcc/ada/
	PR ada/20822
	* xgnatugn.adb (Put_Line): New procedure, ensuring Unix
	line endings even on non-Unix platforms.

From-SVN: r134257
2008-04-14 09:39:39 +00:00
Samuel Tardieu
9ff231e23c re PR ada/35050 (renames entities not in symbol table)
gcc/ada/
	PR ada/35050
	* xref_lib.adb (Parse_Identifier_Info): Correctly parse and ignore the
	renaming information.

From-SVN: r134256
2008-04-14 09:38:34 +00:00
Ben Elliston
8479b1b131 * config.sub, config.guess: Update from upstream sources.
From-SVN: r134255
2008-04-14 19:31:06 +10:00
Jerry DeLisle
d20ca42891 re PR fortran/35882 (Miscounted continuation lines when interspersed with data)
2008-04-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/35882
	* gfortran.dg/continuation_3.f90: Update test.
	* gfortran.dg/continuation_5.f: Update test.
	* gfortran.dg/continuation_10.f90: New test.

From-SVN: r134252
2008-04-14 00:47:13 +00:00
Jerry DeLisle
dfbfb6301c re PR fortran/35882 (Miscounted continuation lines when interspersed with data)
2008-04-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
	    Tobias Burnus  <burnus@net-b.de>

	PR fortran/35882
	* options.c (gfc_init_options): Set the default maximum continuation
	lines to 255 for both free and fixed form source for warnings.
	(gfc_handle_option): Set -std=f95 fixed form max continuations to 19 and
	the -std=f95 free form max continuations to 39 for warnings.
	* scanner.c (gfc_next_char_literal): Adjust the current_line number only
	if it is less than the current locus.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r134251
2008-04-14 00:43:32 +00:00
GCC Administrator
e7d95f6fda Daily bump.
From-SVN: r134249
2008-04-14 00:17:43 +00:00
Thomas Koenig
c7d0f4d5fa re PR libfortran/32972 (performance of pack/unpack)
2008-04-13  Thomas Koenig  <tkoenig@gcc.gnu.org>
	Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>

	PR libfortran/32972
	PR libfortran/32512
	configure.ac:  Add test for uintptr_t.
	configure:  Regenerated.
	config.h.in:  Regenerated.
	* libgfortran.h: GFC_DTYPE_DERIVED_1:  New macro.
	GFC_DTYPE_DERIVED_2:  New macro.
	GFC_DTYPE_DERIVED_4:  New macro.
	GFC_DTYPE_DERIVED_8:  New macro.
	GFC_DTYPE_DERIVED_16:  New macro.
	GFC_UNALIGNED_2:  New macro.
	GFC_UNALIGNED_4:  New macro.
	GFC_UNALIGNED_8:  New macro.
	GFC_UNALIGNED_16:  New macro.
	intptr_t:  Define if we don't have it.
	uintptr_t:  Likewise.
	* runtime/backtrace.c (show_backtrace):  Use intptr_t.
	* intrinsics/signal.c (signal_sub):  Likewise.
	(signal_sub_int):  Likewise.
	(alarm_sub_int_i4):  Likewise.
	* intrinsics/spread_generic.c (spread):  Use the integer
	routines for handling derived types of sizes 1, 2, 4, 8 and 16
	if the alignment of all pointers is correct.
	(spread_scalar):  Likewise.
	* intrinsics/pack_generic.c (pack):  Likewise.
	Use GFD_DTYPE_TYPE_SIZE to avoid nested switch statements.
	* intrinsics/unpack_generic.c (unpack1):  Likewise.
	(unpack0):  Likewise.
	* runtime/in_pack_generic.c (internal_pack):  Likewise.
	* runtime/in_unpack_generic.c (internal_unpack):  Likewise.

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

	PR libfortran/32972
	PR libfortran/32512
	* gfortran.dg/internal_pack_1.f90:  Add test for derived type.
	* gfortran.dg/intrinsic_spread_1.f90:  Likewise.
	* gfortran.dg/intrinsic_pack_1.f90:  Likewise.
	* gfortran.dg/intrinsic_unpack_1.f90:  Likewise.


Co-Authored-By: Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>

From-SVN: r134245
2008-04-13 20:15:58 +00:00
Samuel Tardieu
92d4508a7d re PR ada/17985 (GNAT accepts extension aggregate where expexted type is not extension)
gcc/ada/
	PR ada/17985
	* sem_aggr.adb (Valid_Ancestor_Type): A type is not an ancestor of
	itself.

    gcc/testsuite/
	PR ada/17985
	* gnat.dg/ancestor_type.ads, gnat.dg/ancestor_type.adb: New test.

From-SVN: r134244
2008-04-13 18:15:20 +00:00
Ralf Wildenhues
3354f96dac sfn_scan.adb, [...]: Fix comment typos.
gcc/ada/
	* sfn_scan.adb, sfn_scan.ads, sinfo.ads,
	sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput.ads,
	snames.ads, sprint.adb, stand.ads, stringt.ads,
	styleg.adb, styleg.ads, stylesw.adb, stylesw.ads,
	switch.ads, sysdep.c, table.adb, table.ads,
	targparm.ads, tb-gcc.c, tbuild.ads, tracebak.c,
	trans.c, tree_io.adb, treepr.adb, types.adb, types.ads,
	uintp.adb, uintp.ads, utils.c, utils2.c, validsw.ads,
	vms_conv.adb, vms_conv.ads, vms_data.ads, widechar.adb,
	widechar.ads, xeinfo.adb, xgnatugn.adb, xr_tabls.adb,
	xr_tabls.ads, xref_lib.adb, xref_lib.ads, xsinfo.adb:
	Fix comment typos.

From-SVN: r134243
2008-04-13 18:03:09 +00:00
Ralf Wildenhues
f3d5741623 sem_ch10.adb, [...]: Fix comment typos.
gcc/ada/
	* sem_ch10.adb, sem_ch10.ads,
	sem_ch12.adb, sem_ch12.ads, sem_ch13.adb, sem_ch13.ads,
	sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
	sem_ch6.ads, sem_ch8.adb, sem_ch8.ads, sem_ch9.adb,
	sem_elab.adb, sem_elab.ads, sem_elim.ads, sem_eval.adb,
	sem_eval.ads, sem_intr.adb, sem_mech.adb, sem_mech.ads,
	sem_prag.adb, sem_prag.ads, sem_res.adb, sem_res.ads,
	sem_type.adb, sem_util.adb, sem_util.ads, sem_warn.adb,
	sem_warn.ads: Fix comment typos.

From-SVN: r134242
2008-04-13 17:41:15 +00:00
Ralf Wildenhues
12a13f016f s-secsta.adb, [...]: Fix comment typos.
gcc/ada/

	* s-secsta.adb, s-sequio.ads, s-shasto.ads,
	s-soflin.ads, s-stalib.ads, s-stausa.adb,
	s-stausa.ads, s-strxdr.adb, s-taenca.adb, s-taenca.ads,
	s-taprob.adb, s-taprop-hpux-dce.adb, s-taprop-irix.adb,
	s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-posix.adb,
	s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
	s-taprop-vxworks.adb, s-taprop.ads, s-tarest.adb,
	s-tarest.ads, s-tasini.adb, s-tasini.ads, s-taskin.ads,
	s-tasque.ads, s-tassta.adb, s-tassta.ads, s-tasuti.ads,
	s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
	s-tpopsp-posix.adb, s-tpopsp-rtems.adb, s-tposen.adb,
	s-tposen.ads, s-traceb-hpux.adb, s-traces.ads,
	s-trafor-default.ads, s-unstyp.ads, s-utf_32.ads,
	s-vaflop.adb, s-vaflop.ads, s-valrea.adb, s-valuti.adb,
	s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, scans.ads,
	scn.adb, scng.adb, seh_init.c, sem.ads, sem_aggr.adb,
	sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
	sem_cat.adb, sem_cat.ads: Fix comment typos.

From-SVN: r134241
2008-04-13 17:25:22 +00:00
Jan Hubicka
305da3ecc8 * m32.c (m32c_pushm_popm): Use crtl->retrun_rtx.
From-SVN: r134240
2008-04-13 14:05:31 +00:00
Andrew Pinski
298ac1dd20 rs6000.c (compute_save_world_info): Set lr_save_p if we are going to "save the world".
2008-04-12  Andrew Pinski  <pinskia@gmail.com>

        * config/rs6000/rs6000.c (compute_save_world_info): Set lr_save_p if
        we are going to "save the world".


2008-04-12  Andrew Pinski  <pinskia@gmail.com>

        * gcc.target/powerpc/darwin-save-world-1.c: New test.

From-SVN: r134237
2008-04-12 20:17:01 -07:00
Hans-Peter Nilsson
70a7c7f11f * config/cris/cris.md ("*andhi_lowpart_non_v32", "*andhi_lowpart_v32")
("*andqi_lowpart_non_v32", "*andqi_lowpart_v32"): Use "+" for the
	operand 0 constraint, not "=".

From-SVN: r134236
2008-04-13 00:51:51 +00:00
GCC Administrator
e5043f5f93 Daily bump.
From-SVN: r134234
2008-04-13 00:17:35 +00:00
Joel Sherrill
2b699ab198 re PR ada/35825 (Update g-soccon-rtems.ads)
2008-04-12  Joel Sherrill  <joel@oarcorp.com>

    gcc/ada/
	PR ada/35825
	* g-soccon-rtems.ads: Add IP_PKTINFO as unsupported.

From-SVN: r134230
2008-04-12 21:55:35 +00:00
Arnaud Charlet
1e2735380c re PR ada/35917 (s-linux.ads:106:41: "int" is not visible)
PR ada/35917
	* s-linux-hppa.ads: Fix syntax errors.

From-SVN: r134226
2008-04-12 21:08:18 +02:00
Hans-Peter Nilsson
295e261a16 Makefile.tpl: Error early unless at least GNU make 3.80.
* Makefile.tpl <gcc>: Error early unless at least GNU make 3.80.
	* Makefile.in: Regenerate.

From-SVN: r134225
2008-04-12 18:40:10 +00:00
James E Wilson
ad7aacbab6 Fix bug reported by Andrew Pinski.
* system.h: Change ASSERT_CHECKING to ENABLE_ASSERT_CHECKING.

From-SVN: r134219
2008-04-12 00:13:44 -07:00
GCC Administrator
21d16aade8 Daily bump.
From-SVN: r134213
2008-04-12 00:17:55 +00:00
H.J. Lu
9d6facc7fe dse.c (record_store): Use HOST_BITS_PER_WIDE_INT instead of size of positions_needed * CHAR_BIT.
2008-04-11  H.J. Lu  <hongjiu.lu@intel.com>

	* dse.c (record_store): Use HOST_BITS_PER_WIDE_INT instead
	of size of positions_needed * CHAR_BIT.

From-SVN: r134203
2008-04-11 10:24:24 -07:00
H.J. Lu
4fe663b091 re PR middle-end/35897 (DSE doesn't support targets with wide registers)
2008-04-11  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/35897
	* dse.c (store_info): Change positions_needed to unsigned
	HOST_WIDE_INT.
	(lowpart_bitmask): New.
	(record_store): Cast to unsigned HOST_WIDE_INT for
	positions_needed.  Assert width <= size of positions_needed *
	CHAR_BIT.  Call lowpart_bitmask to initialize positions_needed.
	(check_mem_read_rtx): Use unsigned HOST_WIDE_INT on mask.  Call
	lowpart_bitmask to set mask.

From-SVN: r134199
2008-04-11 08:52:19 -07:00
Bernd Schmidt
9fdd7520f9 constraints.md: New file.
* config/bfin/constraints.md: New file.
	* config/bfin/bfin.md: Include it.
	(adddi3): Use satisfies_constraint functions instead of the old macros.
	* config/bfin/bfin.h (REG_CLASS_FROM_LETTER, CONSTRAINT_LEN,
	CONST_18UBIT_IMM_P, CONST_16BIT_IMM_P, CONST_16UBIT_IMM_P,
	CONST_7BIT_IMM_P, CONST_7NBIT_IMM_P, CONST_5UBIT_IMM_P,
	CONST_4BIT_IMM_P, CONST_4UBIT_IMM_P, CONST_3BIT_IMM_P,
	CONST_3UBIT_IMM_P, CONST_OK_FOR_K, CONST_OK_FOR_P, CONST_OK_FOR_M,
	CONST_OK_FOR_CONSTRAINT_P, CONST_DOUBLE_OK_FOR_LETTER,
	EXTRA_CONSTRAINT): Delete.
	* config/bfin/predicates.md (highbits_operand, reg_or_7bit_operand,
	reg_or_neg7bit_operand): Use satisfies_constraint functions instead
	of the old macros.
	* config/bfin/bfin.c: Include "tm-constrs.h".
	(bfin_secondary_reload, split_load_immediate, bfin_rtx_costs):
	Use satisfies_constraint functions instead of the old macros.
	* doc/md.texi (Blackfin Constraints): Update file name reference.

From-SVN: r134198
2008-04-11 14:40:55 +00:00
Richard Guenther
0a4bf1d371 re PR tree-optimization/35869 (ICE in calc_dfs_tree at -O2 -gnatp after VRP optimization)
2008-04-11  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/35869
	* tree-vrp.c (execute_vrp): Move switch statement update after
	jump threading.  Schedule another cfg cleanup run.

	* gcc.c-torture/compile/pr35869.c: New testcase.

From-SVN: r134197
2008-04-11 14:14:04 +00:00