Commit Graph

83664 Commits

Author SHA1 Message Date
Olivier Hainque
8dfea8e714 adaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around #include <utime.h> and #define GCC_RESOURCE_H...
2007-09-26  Olivier Hainque  <hainque@adacore.com>

	* adaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around
	#include <utime.h> and #define GCC_RESOURCE_H before
	#include <sys/wait.h>.
	Add more protections in __gnat_translate_vms.

	* expect.c (if defined (__Lynx__)): #define GCC_RESOURCE_H before
	#include <sys/wait.h>.

From-SVN: r128782
2007-09-26 12:41:58 +02:00
Jerome Guitton
ed18d8583b s-taprop-lynxos.adb, [...] (Stop_Task): New function, dummy implementation.
2007-09-26  Jerome Guitton  <guitton@adacore.com>

	* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
	s-taprop-hpux-dce.adb, s-taprop-linux.adb, s-taprop-dummy.adb,
	 s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb,
	s-taprop-posix.adb (Stop_Task): New function, dummy implementation.

	* s-taprop.ads, s-taprop-vxworks.adb (Stop_Task): New function.

	* s-tasdeb.adb (Stop_All_Tasks): New function, implementing a run-time
	function which can be called by the debugger to interrupt the tasks of
	an Ada application asynchronously, as needed on VxWorks.
	(Stop_All_Tasks_Handler): Renamed from Stop_All_Tasks.

	* s-tasdeb.ads (Stop_All_Tasks_Handler): New function declaration,
	renamed from Stop_All_Tasks. Update comments.
	(Stop_All_tasks): New function declaration.

From-SVN: r128781
2007-09-26 12:41:47 +02:00
Hristian Kirtchev
fe8f5daf7b a-calend-vms.adb, [...]: Add a section on leap seconds control along with two entities used to enable...
2007-09-26  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-calend-vms.adb, a-calend.adb: 
	Add a section on leap seconds control along with two entities used to
	enable and disable leap seconds support. The array Leap_Second_Times is
	now constant and contains hard time values pre-generated. Remove
	all elaboration code used to populate the table of leap seconds.

	* bindgen.adb: 
	Add entity Leap_Seconds_Support to the list of global run-time variables
	along with a comment on its usage and values.
	(Gen_Adainit_Ada): Add code to generate the declaration and import of
	Integer variable Leap_Seconds_Support. Set its value to zero (disabled)
	or one (enabled) depending on the presence of binder switch "-y".
	(Gen_Adainit_C): Add code to generate the declaration of external int
	__gl_leap_seconds_support. Set is value to zero (disabled) or one
	(enabled) depending on the presence of binder switch "-y".

	* init.c: Add __gl_leap_seconds_support to the list of global values
	computed by the binder.

From-SVN: r128780
2007-09-26 12:41:35 +02:00
Hristian Kirtchev
954c111a1a sem_ch8.adb (Analyze_Use_Type): Code cleanup.
2007-09-26  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch8.adb (Analyze_Use_Type): Code cleanup.
	(Applicable_Use): Emit a warning when a package tries to use itself.
	(Use_One_Type): Add variable Is_Known_Used. Emit a warning when a type
	is already in use or the package where it is declared is in use or is
	declared in the current package.
	(Spec_Reloaded_For_Body): New subsidiary routine for Use_One_Type.

	* a-tasatt.adb, s-osprim-vxworks.adb, g-socthi-mingw.adb,
	s-intman-vms.adb, g-socket.adb, g-thread.adb, s-tarest.adb,
	s-tassta.adb, s-tporft.adb: Remove redundant 'use type' clause.

From-SVN: r128779
2007-09-26 12:41:24 +02:00
Arnaud Charlet
ba6dccf8f9 Update test.
From-SVN: r128778
2007-09-26 12:41:08 +02:00
GCC Administrator
6928628c9f Daily bump.
From-SVN: r128776
2007-09-26 00:17:07 +00:00
DJ Delorie
f9f3567eeb re PR target/33551 (ICE: RTL check: expected elt 0 type 'i' or 'n', have 'w' (rtx const_int) in m32c_immd_dbl_mov, at config/m32c/m32c.c:3010)
PR target/33551
* config/m32c/m32c.c (m32c_immd_dbl_mov): Use INTVAL instead of
XINT.

From-SVN: r128773
2007-09-25 20:03:07 -04:00
Richard Sandiford
23b72f1746 libstdc++.exp (check_v3_target_fileio): Test lseek.
libstdc++-v3/
	* testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.

From-SVN: r128772
2007-09-25 21:18:11 +00:00
Eric Botcazou
0a86bcc925 trans.c: Fix misplaced #define.
* trans.c: Fix misplaced #define.

From-SVN: r128771
2007-09-25 19:29:23 +00:00
Simon Martin
dc3ca06f59 re PR c++/33207 (ICE redeclaring namespace as struct)
gcc/cp/

2007-09-25  Simon Martin  <simartin@users.sourceforge.net>
        
	PR c++/33207
	* name-lookup.c (pushtag): Do not create an implicit typedef before
	the associated type declaration is known to be valid.

gcc/testsuite/

2007-09-25  Simon Martin  <simartin@users.sourceforge.net>

	PR c++/33207
	* g++.dg/parse/crash38.C: New test.

From-SVN: r128769
2007-09-25 18:34:05 +00:00
Michael Meissner
53a833483c Fix 33524; SSE5 vectorized int->long conversions are broken
From-SVN: r128768
2007-09-25 15:54:00 +00:00
Revital Eres
49e39588b6 Add missing built-in support for 750CL ps_sel instruction
From-SVN: r128767
2007-09-25 15:34:48 +00:00
Joseph Myers
808d6eaa01 re PR c/32295 (An invalid c code causes an ICE in create_tmp_var, at gimplify.c:489)
PR c/32295
	* c-typeck.c (default_conversion): Call require_complete_type
	before perform_integral_promotions.
	(build_unary_op): Call require_complete_type except for ADDR_EXPR.
	(build_c_cast): Call require_complete_type except for casts to
	void types.
	(convert_for_assignment): Call require_complete_type.

testsuite:
	* gcc.dg/enum-incomplete-1.c: New test.

From-SVN: r128765
2007-09-25 16:04:58 +01:00
Revital Eres
ea6e01682b Fix doloop pattern in spu.md
From-SVN: r128764
2007-09-25 13:17:18 +00:00
Bernd Schmidt
8f7195f9ac 20070919-1.c: New test.
* gcc.c-torture/compile/20070919-1.c: New test.

From-SVN: r128763
2007-09-25 13:02:54 +00:00
Bernd Schmidt
bf3f95816f bfin.c (expand_prologue_reg_save, [...]): Code to save and restore I/M/B/L regs and ASTAT moved here...
* config/bfin/bfin.c (expand_prologue_reg_save,
	expand_epilogue_reg_restore): Code to save and restore I/M/B/L regs and
	ASTAT moved here...
	(expand_interrupt_handler_prologue, expand_interrupt_handler_epilogue):
	... from here.  New argument ALL; callers changed.
	(n_regs_saved_by_prologue): Count ASTAT for plain saveall functions.
	(bfin_expand_prologue, bfin_expand_epilogue): Deal with functions that
	have the "saveall" attribute.

From-SVN: r128762
2007-09-25 12:59:32 +00:00
Jakub Jelinek
1bde00421f tree.c (cxx_printable_name): Compare FUNCTION_DECL uids rather than pointers.
* tree.c (cxx_printable_name): Compare FUNCTION_DECL uids
	rather than pointers.

From-SVN: r128761
2007-09-25 12:30:21 +02:00
Kaz Kojima
32534ed1fe init_flag_3.f90: Add -mieee for sh.
* gfortran.dg/init_flag_3.f90: Add -mieee for sh.

From-SVN: r128745
2007-09-25 08:01:42 +00:00
Hans-Peter Nilsson
60e90d090b mmix.h (FUNCTION_INCOMING_ARG_REGNO_P): Don't define bogus target macro.
* config/mmix/mmix.h (FUNCTION_INCOMING_ARG_REGNO_P): Don't define
	bogus target macro.
	(INCOMING_REGNO, OUTGOING_REGNO): Define.
	* config/mmix/mmix.c (mmix_opposite_regno): New function.
	* config/mmix/mmix-protos.h (mmix_opposite_regno): Prototype.

From-SVN: r128744
2007-09-25 02:18:37 +00:00
Hans-Peter Nilsson
ab3e1ef66a mmix.md ("*cmpcc_folded"): In condition, gate with REG_P tests before REGNO access.
* config/mmix/mmix.md ("*cmpcc_folded"): In condition, gate
	with REG_P tests before REGNO access.

From-SVN: r128743
2007-09-25 02:01:24 +00:00
DJ Delorie
8d2fd9c951 re PR target/31482 (error: could not split insn, internal compiler error: in final_scan_insn)
PR target/31482
* config/m32c/cond.md (stzx_reversed_<mode>): Add an output
constraint.
(movqicc_<code>_<mode>): Likewise.
(movhicc_<code>_<mode>): Likewise.

From-SVN: r128742
2007-09-24 21:42:34 -04:00
Rask Ingemann Lambertsen
c6004917e9 re PR target/33184 (m32c: ostream.tcc:92: error: unable to find a register to spill in class 'A_REGS')
2007-08-26  Rask Ingemann Lambertsen  <rask@sygehus.dk>
PR target/33184
* config/m32c/m32c.c (m32c_eh_return_data_regno): Leave an address
register for reload.

From-SVN: r128741
2007-09-24 21:40:30 -04:00
Danny Smith
18ff3013c2 re PR c++/14688 (Mis-matched calling convention on virtual functions accepted without error)
PR c++/14688
	* config/i386/i386.c (ix86_comp_type_attributes): Check
	METHOD_TYPE too.

cp
	* search.c (check_final_overrider): Fail if
	targetm.comp_type_attributes returns 0.

testsuite
	* g++.dg/inherit/override_attribs.C: New file.

From-SVN: r128740
2007-09-25 00:29:42 +00:00
GCC Administrator
2e10488521 Daily bump.
From-SVN: r128738
2007-09-25 00:17:13 +00:00
Tobias Schlüter
86e9d05f35 re PR fortran/33269 (Diagnose missing "(" in "PRINT ('a'),")
PR fortran/33269
fortran/
* io.c (check_format_string): Move NULL and constant checks into
this function.
(check_io_constraints): Call gfc_simplify_expr() before calling
check_format_string().  Remove NULL and constant checks.
testsuite/
* gfortran.dg/fmt_error_2.f90: New.

From-SVN: r128732
2007-09-24 23:15:00 +02:00
Roman Zippel
c028b28617 loop-2f.x: New.
* gcc.c-torture/execute/loop-2f.x: New. Disable test for m68k-linux.
	* gcc.c-torture/execute/loop-2g.x: Likewise.

From-SVN: r128731
2007-09-24 21:10:14 +00:00
Roman Zippel
aaca7021ce m68k.h (ASM_OUTPUT_ALIGN_WITH_NOP): New, use "move.l %a4,%a4" to produce nops.
* config/m68k/m68k.h (ASM_OUTPUT_ALIGN_WITH_NOP): New, use
	"move.l %a4,%a4" to produce nops.
	* config/m68k/m68k.c (override_options): Reset align options,
	if neccessary align macro isn't avaible.

From-SVN: r128730
2007-09-24 21:07:08 +00:00
Roman Zippel
bd7993c83c config/m68k/linux.h (PREFERRED_STACK_BOUNDARY): New.
From-SVN: r128729
2007-09-24 21:05:07 +00:00
Roman Zippel
3925008145 m68k.c (strict_low_part_peephole_ok): Don't leave the basic block.
* config/m68k/m68k.c (strict_low_part_peephole_ok): Don't leave
	the basic block.
	* config/m68k/m68k.md (movsi_m68k): Allow certain constant when
	reload is completed.
	(peephole pattern): Convert most of them to RTL peephole pattern.

From-SVN: r128728
2007-09-24 21:02:40 +00:00
Roman Zippel
67595cbb21 m68k.c (notice_update_cc): Recognize fp compare (moved from fp compare patterns).
* config/m68k/m68k.c (notice_update_cc): Recognize fp compare
	(moved from fp compare patterns).
	* config/m68k/m68k.md (cmp<mode>, cmp<mode>_68881, cmp<mode>_cf):
	Cleanup predicates to relieve reload.
	(conditional_trap): Reject conditional trap with fp condition.
	* gcc/config/m68k/predicates.md (fp_src_operand): New, reject
	certain constants early.

From-SVN: r128727
2007-09-24 21:00:22 +00:00
Roman Zippel
d5aa0eb1c4 * gcc/final.c (final_scan_insn): Remove accidentally duplicated code.
From-SVN: r128726
2007-09-24 20:57:06 +00:00
Jason Merrill
7a20d68989 re PR c++/33239 (internal compiler error in instantiate_class_template, at cp/pt.c:5666)
PR c++/33239
        * pt.c (resolve_typename_type): Don't look things up in the original
        template if it would mean losing template arguments.

From-SVN: r128725
2007-09-24 16:54:34 -04:00
Francois-Xavier Coudert
7b7bdf67e0 re PR fortran/33538 (bootstrap break in fortran on *-apple-darwin r128671)
PR fortran/33538
	* scanner.c, parse.c, gfortran.h: Revert revision 128671.

From-SVN: r128724
2007-09-24 20:24:11 +00:00
Richard Sandiford
06d20fa91b target-supports.exp (check_effective_target_mips16_attribute): Reject hard-float modes unless the ABI is o32 or o64.
gcc/testsuite/
	* lib/target-supports.exp (check_effective_target_mips16_attribute):
	Reject hard-float modes unless the ABI is o32 or o64.
	* gcc.target/mips/inter/mips16-inter.exp: Load gcc-dg.exp instead
	of gcc.exp.  Skip the tests when mips16 code generation is not
	supported.
	* gcc.target/mips/mips16-attributes.c: Require mips16_attribute
	and use dg-add-options mips16_attribute.

From-SVN: r128723
2007-09-24 19:57:29 +00:00
Andrew Pinski
a951757d9f config.gcc (powerpc*-*-*): --with-cpu=cell is a 64bit CPU.
2007-09-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config.gcc (powerpc*-*-*): --with-cpu=cell is a 64bit CPU.
        Allow --with-tune=cell and --with-cpu=cell.

From-SVN: r128721
2007-09-24 10:15:50 -07:00
Peter Bergner
a054acde5d * MAINTAINERS (Register allocation reviewer): Add myself.
From-SVN: r128720
2007-09-24 11:55:40 -05:00
David Edelsohn
9c78b944a8 rs6000-protos.h (rs6000_emit_swrsqrtsf): Declare.
* config/rs6000/rs6000-protos.h (rs6000_emit_swrsqrtsf): Declare.
	* config/rs6000/rs6000.opt (swdiv): Change option to ...
	(recip): this.
	* config/rs6000/rs6000.c (rs6000_builtin_reciprocal): New
	function.
	(TARGET_BUILTIN_RECIPROCAL): Use it.
	(rs6000_builtin_expand): Expand recip, recipf, and rsqrtf.
	(rs6000_init_builtins): Initialize recip, recipf, and rsqrtf.
	(rs6000_emit_swrsqrtsf): New.
	* config/rs6000/rs6000.h (rs6000_builtins): Add recip, recipf, and
	rsqrtf. 
	* config/rs6000/rs6000.md (UNSPEC_RSQRT): Define.
	(divsf3): Remove swdiv support.
	(recipsf3): New.
	(rsqrtsf2): New.
	(rsqrt_internal1): New.
	(divdf3): Remove swdiv support.
	(reciptdf3): New.

From-SVN: r128719
2007-09-24 11:39:18 -04:00
Jakub Jelinek
2dff8956e3 re PR c++/33506 (TYPE_RAISES_EXCEPTIONS dumped with attributes)
PR c++/33506
	* langhooks.h (struct lang_hooks_for_types): Add type_hash_eq
	field.
	* langhooks-def.h (LANG_HOOKS_TYPE_HASH_EQ): Define.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add LANG_HOOKS_TYPE_HASH_EQ.
	* tree.c (type_hash_eq): For FUNCTION_TYPE use
	lang_hooks.type.type_hash_eq in addition to generic tests.

	* cp-tree.h (cxx_type_hash_eq): New prototype.
	* cp-objcp-common.h (LANG_HOOKS_TYPE_HASH_EQ): Redefine.
	* tree.c (cxx_type_hash_eq): New function.

	* g++.dg/ext/attrib29.C: New test.

From-SVN: r128718
2007-09-24 17:16:23 +02:00
Douglas Gregor
c946ce8bb9 re PR c++/33185 (ICE: canonical types differ for identical types T [] and T [])
2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

	PR c++/33185	
	* tree.c (cp_build_qualified_type_real): Build a canonical
	ARRAY_TYPE if the original ARRAY_TYPE was not a canonical type.

From-SVN: r128717
2007-09-24 13:46:40 +00:00
Kenneth Zadeck
ffda6fc98d MAINTAINERS (Register allocation reviewer): Add myself.
2006-09-24  Kenneth Zadeck <zadeck@naturalbridge.com>

    * MAINTAINERS (Register allocation reviewer): Add myself.

From-SVN: r128716
2007-09-24 13:42:39 +00:00
Pranav Bhandarkar
625a2efbe7 tree-inline.h (eni_weights): Add field target_builtin_cost to reflect the cost per call to a target specific...
2007-09-24  Pranav Bhandarkar  <pranav.bhandarkar@celunite.com>
        Ramana Radhakrishnan  <ramana@hercules.pun.celunite.com>

        * tree-inline.h (eni_weights): Add field target_builtin_cost to
        reflect the cost per call to a target specific builtin.
        * tree-inline.c (estimate_num_insns_1): If it is a CALL_EXPR for
        * a
        call to a target specific builtin, then use
target_builtin_call_cost.
        (init_inline_once): Initialize target_builtin_call_cost field.

Co-Authored-By: Ramana Radhakrishnan <ramana@hercules.pun.celunite.com>

From-SVN: r128714
2007-09-24 13:31:25 +00:00
Uros Bizjak
548183dbd3 * testsuite/ChangeLog: Fix whitespace.
From-SVN: r128713
2007-09-24 14:36:57 +02:00
Uros Bizjak
e139c7f95d * ChangeLog: Fix whitespace.
From-SVN: r128712
2007-09-24 14:35:14 +02:00
Douglas Gregor
714f2304c6 re PR c++/33112 (ICE : canonical types differ for identical types const _CharT* [14] and const _CharT* [14])
2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

	PR c++/33112
	PR c++/33185	
	* tree.c (cplus_array_compare): Compare pointers, not types.
	(build_cplus_array_type_1): Store new array type into the hash
	table before building the canonical type; build the canonical type
	correctly.
	(cp_build_qualified_type_real): Put all of the array types with
	cv-qualified element types into the C++ array hash table, built as 
	variants of the unqualified versions.

From-SVN: r128711
2007-09-24 12:14:57 +00:00
Kai Tietz
996caac6da [patch][Bug middle-end/33472] ICE and invalid rtl sharing with complex on
x86_64-mingw.

2007-09-24  Kai Tietz  <kai.tietz@onevision.com>

	* i386.c: (return_in_memory_ms_64): Handle return types for complex types.

From-SVN: r128710
2007-09-24 11:20:34 +02:00
GCC Administrator
40bc41879b Daily bump.
From-SVN: r128707
2007-09-24 00:17:10 +00:00
H.J. Lu
5702b2736a configure.ac (ld_vers): Support GNU linker version xx.xx.*
2007-09-23  H.J. Lu  <hongjiu.lu@intel.com>

	* configure.ac (ld_vers): Support GNU linker version xx.xx.*
	* configure: Regenerated.

From-SVN: r128702
2007-09-23 14:07:27 -07:00
Ollie Wild
e5901cad3f fold-const.c (fold_binary): Fold BIT_AND_EXPR's with a pointer operand.
gcc/
	fold-const.c (fold_binary): Fold BIT_AND_EXPR's with a pointer operand.
	(get_pointer_modulus_and_residue): New function.

	gcc/testsuite/
	gcc.dg/fold-bitand-1.c: New test.
	gcc.dg/fold-bitand-2.c: New test.
	gcc.dg/fold-bitand-3.c: New test.
	gcc.dg/fold-bitand-4.c: New test.

From-SVN: r128701
2007-09-23 20:05:40 +00:00
Richard Sandiford
50b73fcde4 mips.c (build_mips16_call_stub): On 64-bit targets, combine an SC return value into a single register.
gcc/
	* config/mips/mips.c (build_mips16_call_stub): On 64-bit targets,
	combine an SC return value into a single register.

From-SVN: r128700
2007-09-23 19:20:01 +00:00
Richard Sandiford
e9276c3012 opth-gen.awk (target_flags_explicit): Declare.
gcc/
	* opth-gen.awk (target_flags_explicit): Declare.
	* toplev.h (target_flags_explicit): Delete declaration.
	* toplev.c (target_flags): Likewise.
	* config/mips/mips.h (mips_llsc_setting, mips_llsc): Delete.
	(GENERATE_SYNC, GENERATE_LL_SC): Redefine using target_explicit_flags.
	Never return true for TARGET_MIPS16.
	* config/mips/mips.c (mips_llsc): Delete.
	(mips_handle_option): Remove -mllsc handling.
	(mips_strip_unspec_address): Tweak comment.
	* config/mips/mips.opt (mllsc): Use a target mask.

gcc/testsuite/
	* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Don't expect
	any of the macros to be defined for __mips16.
	* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.

From-SVN: r128699
2007-09-23 19:18:27 +00:00