87777 Commits

Author SHA1 Message Date
Richard Guenther
acdfeac3e1 builtins.c (build_string_literal): Avoid generating a non-gimple_val result.
2008-05-30  Richard Guenther  <rguenther@suse.de>

	* builtins.c (build_string_literal): Avoid generating
	a non-gimple_val result.

From-SVN: r136222
2008-05-30 19:58:30 +00:00
DJ Delorie
97c3860d80 exec-tool.in: Use an environment variable (private) instead of a file (shared) as a semaphore...
* exec-tool.in: Use an environment variable (private) instead of a
file (shared) as a semaphore, so as to not break parallel builds.

From-SVN: r136221
2008-05-30 15:19:45 -04:00
Steven Bosscher
856905c263 optabs.c (maybe_encapsulate_block): Remove.
2008-05-30  Steven Bosscher  <stevenb.gcc@gmail.com>

	* optabs.c (maybe_encapsulate_block): Remove.
	(emit_libcall_block): Adjust accordingly.
	* optabs.h (maybe_encapsulate_block): Remove prototype.

	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address):
	Don't use maybe_encapsulate_block.

From-SVN: r136217
2008-05-30 18:28:48 +00:00
Steven Bosscher
0cdc04e8d5 rs6000.c (rs6000_legitimize_address, [...]): Make sure an rtx is a SYMBOL_REF before calling get_pool_constant.
2008-05-30  Steven Bosscher  <stevenb.gcc@gmail.com>

        * config/rs6000/rs6000.c (rs6000_legitimize_address,
        rs6000_legitimize_reload_address, rs6000_emit_move): Make sure an
        rtx is a SYMBOL_REF before calling get_pool_constant.

From-SVN: r136216
2008-05-30 14:21:31 -04:00
Julian Brown
3f6383d38b configure.ac (arm*-*-linux-gnueabi): Don't disable building of libobjc for ARM EABI Linux.
* configure.ac (arm*-*-linux-gnueabi): Don't disable building
    of libobjc for ARM EABI Linux.
    * configure: Regenerate.

    libobjc/
    * exception.c (__objc_exception_class): Initialise as constant
    array for ARM EABI. Change macro to static const for non-ARM EABI.
    (ObjcException): Add note about structure layout. Remove landingPad
    and handlerSwitchValue for ARM EABI.
    (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
    of function.
    (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
    (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
    ARM EABI unwinding support.
    (objc_exception_throw): Use memcpy to initialise exception class.

From-SVN: r136215
2008-05-30 18:21:31 +00:00
Tom Tromey
d750887f5f re PR preprocessor/36320 (Required diagnosis of syntax error missed)
gcc/testsuite
	PR preprocessor/36320:
	* gcc.dg/cpp/pr36320.c: New file.
libcpp
	PR preprocessor/36320:
	* internal.h (_cpp_parse_expr): Update.
	* expr.c (_cpp_parse_expr): Add 'is_if' argument.  Update error
	messages.
	* directives.c (do_if): Update.
	(do_elif): Require expression if processing group.

From-SVN: r136209
2008-05-30 14:25:09 +00:00
Eric Botcazou
bfab40f8e5 * fold-const.c (fold_unary) <CASE_CONVERT>: Add ??? comment.
From-SVN: r136200
2008-05-30 07:35:17 +00:00
Danny Smith
c100de59eb cpplib.h (struct cpp_dir): Add new field, canonical_name.
libcpp/ChangeLog
	* include/cpplib.h (struct cpp_dir): Add new field, canonical_name.

gcc/ChangeLog

	* incpath.c: Use HOST_LACKS_INODE_NUMBERS conditional
	rather than OS names to choose INO_T_EQ definition.
	(DIRS_EQ) [!INO_T_EQ]: Don't worry about case in comparison.
	(add_path) [!INO_T_EQ]: Use lrealpath to fill canonical_name field.

From-SVN: r136196
2008-05-30 00:57:56 +00:00
GCC Administrator
6551374ace Daily bump.
From-SVN: r136194
2008-05-30 00:17:13 +00:00
Daniel Franke
c776a6d0e4 re PR target/36348 (f951 link failure on i686-apple-darwin9)
gcc:
2008-05-29  Daniel Franke  <franke.daniel@gmail.com>

        PR target/36348
        * config/darwin-f.c: New.
        * config/t-darwin: Added rule to build darwin-f.o.
        * config.gcc: Defined new variable, fortran_target_objs.
        (*-*-darwin*): Set fortran_target_objs.
        * Makefile.in: Defined new variable FORTRAN_TARGET_OBJS.
        * configure.ac: Substitute fortran_target_objs, set
        FORTRAN_TARGET_OBJS.
        * configure: Regenerated.

gcc/fortran:
2008-05-29  Daniel Franke  <franke.daniel@gmail.com>

        PR target/36348
        * Make-lang.in (F95_OBJS): Added dependency on FORTRAN_TARGET_OBJS.

From-SVN: r136178
2008-05-29 14:21:35 -04:00
Paolo Carlini
aecaad790a re PR c++/35243 (ICE with invalid initializer list in variadic template)
/cp
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

        PR c++/35243
        * pt.c (tsubst_initializer_list): Consistently check the tree
        returned by tsubst_pack_expansion for error_mark_node.

/testsuite
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

        PR c++/35243
        * g++.dg/cpp0x/vt-35243.C: New.

From-SVN: r136174
2008-05-29 16:44:29 +00:00
Francois-Xavier Coudert
f2f5443c88 scanner.c (load_line): Add first_char argument.
* scanner.c (load_line): Add first_char argument. Don't call ungetc.
	(gfc_read_orig_filename): Adjust call to load_line. Don't call
	ungetc.
	(load_file): Adjust call to load_line.

From-SVN: r136171
2008-05-29 15:24:46 +00:00
H.J. Lu
a20007a490 re PR middle-end/35771 (Call expander ignores type alignment)
gcc/

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

	PR target/35771
	* config/i386/i386.c (ix86_function_arg_boundary): Convert to
	canonical type if needed.

gcc/testsuite/

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

	PR target/35771
	* gcc.dg/torture/pr35771.h: New.
	* gcc.dg/torture/pr35771-1.c: Likewise.
	* gcc.dg/torture/pr35771-2.c: Likewise.
	* gcc.dg/torture/pr35771-3.c: Likewise.

From-SVN: r136159
2008-05-29 05:35:04 -07:00
Paolo Carlini
37f449aa3b bitset (bitset(const char*)): Implement DR 778 in debug-mode too.
2008-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/debug/bitset (bitset(const char*)): Implement DR 778
	in debug-mode too.

	* include/bits/cpp_type_traits.h (__is_integer): In C++0x mode
	deal with char16_t and char32_t.

From-SVN: r136158
2008-05-29 11:42:08 +00:00
Eric Botcazou
4efa7ef955 tree-nested.c (check_for_nested_with_variably_modified): Fix typo.
* tree-nested.c (check_for_nested_with_variably_modified): Fix typo.

From-SVN: r136154
2008-05-29 11:33:17 +00:00
Richard Guenther
2f571334ff re PR tree-optimization/36343 (Wrong code due to bad TBAA pruning of points-to-sets and use in call clobbering)
2008-05-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/36343
	PR tree-optimization/36346
	PR tree-optimization/36347
	* tree-flow.h (clobber_what_p_points_to): Declare.
	* tree-ssa-structalias.c (set_uids_in_ptset): Whether the
	pointed-to variable is dereferenced is irrelevant to whether
	the pointer can access the pointed-to variable.
	(clobber_what_p_points_to): New function.
	* tree-ssa-alias.c (set_initial_properties): Use it.
	* tree-ssa.c (verify_flow_sensitive_alias_info): Adjust
	call clobber check for NMTs.

	* gcc.c-torture/execute/pr36343.c: New testcase.

From-SVN: r136152
2008-05-29 10:31:58 +00:00
Arnaud Charlet
b3d5f74124 * gnat.dg/abstract1.ad[sb]: New test.
From-SVN: r136151
2008-05-29 10:57:36 +02:00
Arnaud Charlet
fb8368fdcc Resync.
From-SVN: r136150
2008-05-29 10:56:41 +02:00
Arnaud Charlet
686b775265 re PR ada/864 (--program-suffix is ignored (for ada))
PR ada/864
	* osint.ads, osint.adb (Program_Name): New parameter "Prog" to
	allow recognition of program suffix in addition to prefix.
	
	* gnatchop.adb (Locate_Executable): Add support for prefix.
	
	* make.adb, gnatcmd.adb, gnatlink.adb, prj-makr.adb,
	mlib-utl.adb: Adjust calls to Program_Name.

From-SVN: r136149
2008-05-29 10:56:01 +02:00
Ed Schonberg
fe63b1b12c sem_ch6.adb (Analyze_Subprogram_Specification): if the return type is abstract...
2008-05-29  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Subprogram_Specification): if the return type
	is abstract, do not apply abstractness check on subprogram if this is
	a renaming declaration.

From-SVN: r136148
2008-05-29 10:55:46 +02:00
Arnaud Charlet
8682d22c80 * sem_eval.adb: Minor reformatting
From-SVN: r136147
2008-05-29 10:55:35 +02:00
Arnaud Charlet
fff3f472d5 Resync.
From-SVN: r136145
2008-05-29 10:07:25 +02:00
Robert Dewar
b49365b2a9 sem_eval.adb (Is_Same_Value): Take care of several more cases
2008-05-29  Robert Dewar  <dewar@adacore.com>

	* sem_eval.adb (Is_Same_Value): Take care of several more cases

From-SVN: r136144
2008-05-29 10:06:40 +02:00
Javier Miranda
26ff8edeba 2008-05-29 Javier Miranda <miranda@adacore.com>
* sem_util.adb:
	(Abstract_Interface_List): Add missing support for full type-declaration
	associated with synchronized types.

From-SVN: r136143
2008-05-29 10:06:31 +02:00
Arnaud Charlet
623fba708e * sinput-p.ads: Minor reformatting
From-SVN: r136142
2008-05-29 10:06:21 +02:00
Arnaud Charlet
cdbf04c041 * sem_res.adb: Minor reformatting
From-SVN: r136141
2008-05-29 10:06:12 +02:00
Arnaud Charlet
a168f51913 * sem_prag.adb: Minor reformatting
From-SVN: r136140
2008-05-29 10:06:03 +02:00
Arnaud Charlet
10619438e6 * sem_ch3.adb: Minor reformatting
From-SVN: r136139
2008-05-29 10:05:54 +02:00
GCC Administrator
2c05a837e5 Daily bump.
From-SVN: r136135
2008-05-29 00:17:14 +00:00
Seongbae Park
68bb68ca00 value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC for printing gcov_type.
2008-05-28  Seongbae Park  <seongbae.park@gmail.com>
	
	* value-prof.c (tree_ic_transform): Use HOST_WIDEST_INT_PRINT_DEC
	for printing gcov_type.

From-SVN: r136131
2008-05-28 22:03:14 +00:00
Janus Weil
e68954309d re PR fortran/36325 (specific or generic INTERFACE implies the EXTERNAL attribute)
2008-05-28  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36325
	PR fortran/35830
	* interface.c (gfc_procedure_use): Enable argument checking for
	external procedures with explicit interface.
	* symbol.c (check_conflict): Fix conflict checking for externals.
	(copy_formal_args): Fix handling of arrays.
	* resolve.c (resolve_specific_f0, resolve_specific_s0): Fix handling
	of intrinsics.
	* parse.c (parse_interface): Non-abstract INTERFACE statement implies
	EXTERNAL attribute.


2008-05-28  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36325
	PR fortran/35830
	* gfortran.dg/interface_23.f90: New.
	* gfortran.dg/gomp/reduction3.f90: Fixed invalid code.
	* gfortran.dg/proc_decl_12.f90: New:
	* gfortran.dg/external_procedures_1.f90: Fixed error message.

From-SVN: r136130
2008-05-28 23:27:56 +02:00
Francois-Xavier Coudert
691da334bc re PR fortran/36319 (Segfault with wide characters in DATA)
PR fortran/36319

	* intrinsic.c (gfc_convert_chartype): Don't mark conversion
	function as pure.
	* trans-array.c (gfc_trans_array_ctor_element): Divide element
	size by the size of one character to obtain length.
	* iresolve.c (gfc_resolve_cshift): Call the _char4 variant when
	appropriate.
	(gfc_resolve_eoshift): Likewise.
	* trans-intrinsic.c (gfc_conv_intrinsic_ctime): Minor beautification.
	(gfc_conv_intrinsic_fdate): Minor beautification.
	(gfc_conv_intrinsic_ttynam): Minor beautification.
	(gfc_conv_intrinsic_minmax_char): Allow all character kinds.
	(size_of_string_in_bytes): New function.
	(gfc_conv_intrinsic_size): Call size_of_string_in_bytes for
	character expressions.
	(gfc_conv_intrinsic_sizeof): Likewise.
	(gfc_conv_intrinsic_array_transfer): Likewise.
	(gfc_conv_intrinsic_trim): Allow all character kinds. Minor
	beautification.
	(gfc_conv_intrinsic_repeat): Fix comment typo.
	* simplify.c (gfc_convert_char_constant): Take care of conversion
	of array constructors.

	* intrinsics/string_intrinsics_inc.c (string_index): Return
	correct value for zero-length substring.
	* intrinsics/cshift0.c: Add _char4 variant.
	* intrinsics/eoshift0.c (eoshift0): Allow filler to be a pattern
	wider than a single byte. Add _char4 variant and use above
	functionality.
	* intrinsics/eoshift2.c (eoshift2): Likewise.
	* m4/eoshift1.m4: Likewise.
	* m4/eoshift3.m4: Likewise.
	* m4/cshift1.m4: Add _char4 variants.
	* gfortran.map (GFORTRAN_1.1): Add _gfortran_cshift0_1_char4,
	_gfortran_cshift0_2_char4, _gfortran_cshift0_4_char4,
	_gfortran_cshift0_8_char4, _gfortran_cshift1_16_char4,
	_gfortran_cshift1_4_char4, _gfortran_cshift1_8_char4,
	_gfortran_eoshift0_1_char4, _gfortran_eoshift0_2_char4,
	_gfortran_eoshift0_4_char4, _gfortran_eoshift0_8_char4,
	_gfortran_eoshift1_16_char4, _gfortran_eoshift1_4_char4,
	_gfortran_eoshift1_8_char4, _gfortran_eoshift2_1_char4,
	_gfortran_eoshift2_2_char4, _gfortran_eoshift2_4_char4,
	_gfortran_eoshift2_8_char4, _gfortran_eoshift3_16_char4,
	_gfortran_eoshift3_4_char4 and _gfortran_eoshift3_8_char4.
	* generated/eoshift3_4.c: Regenerate.
	* generated/eoshift1_8.c: Regenerate.
	* generated/eoshift1_16.c: Regenerate.
	* generated/cshift1_4.c: Regenerate.
	* generated/eoshift1_4.c: Regenerate.
	* generated/eoshift3_8.c: Regenerate.
	* generated/eoshift3_16.c: Regenerate.
	* generated/cshift1_8.c: Regenerate.
	* generated/cshift1_16.c: Regenerate.

	* gfortran.dg/widechar_5.f90: New file.
	* gfortran.dg/widechar_6.f90: New file.
	* gfortran.dg/widechar_7.f90: New file.
	* gfortran.dg/widechar_intrinsics_5.f90: Uncomment the lines
	testing the SPREAD intrinsic.
	* gfortran.dg/widechar_intrinsics_6.f90: New file.
	* gfortran.dg/widechar_intrinsics_7.f90: New file.
	* gfortran.dg/widechar_intrinsics_8.f90: New file.
	* gfortran.dg/widechar_intrinsics_9.f90: New file.
	* gfortran.dg/widechar_intrinsics_10.f90: New file.

From-SVN: r136129
2008-05-28 21:11:39 +00:00
Seongbae Park
b608a1bc71 tree-ssa-propagate.c (set_rhs): Preserve the histogram and the eh region information.
2008-05-28  Seongbae Park  <seongbae.park@gmail.com>

	* tree-ssa-propagate.c (set_rhs): Preserve the histogram
	and the eh region information.
	* value-prof.c (gimple_move_stmt_histograms): New function.
	* value-prof.h (gimple_move_stmt_histograms): New function declaration.

From-SVN: r136124
2008-05-28 20:15:10 +00:00
Andreas Tobler
77da4248a9 pa.md: Remove extern frame_pointer_needed declaration.
2008-05-28  Andreas Tobler  <a.tobler@schweiz.org>

	* config/pa/pa.md: Remove extern frame_pointer_needed declaration.

From-SVN: r136121
2008-05-28 20:56:56 +02:00
Seongbae Park
3dfb6f5963 value-prof.c (tree_ic_transform): Print counts.
gcc/ChangeLog:
2008-05-28  Seongbae Park <seongbae.park@gmail.com>

	* value-prof.c (tree_ic_transform): Print counts.
	* tree-profile.c (tree_gen_ic_func_profiler):
	Clear __gcov_indreict_call_callee variable
	to avoid misattribution of the profile.

gcc/testsuite/ChangeLog:
2008-05-28  Seongbae Park <seongbae.park@gmail.com>

	* gcc.dg/tree-prof/ic-misattribution-1.c: New test.
	* gcc.dg/tree-prof/ic-misattribution-1a.c: New test.
	* lib/profopt.exp (profopt-get-options): Support
	dg-additional-sources.
	(profopt-execute): Handle additional sources.

From-SVN: r136118
2008-05-28 18:14:32 +00:00
Rafael Avila de Espindola
5a976da002 see.c (see_def_extension_not_merged): Use copy_rtx_if_shared to avoid invalid sharing.
2008-05-28  Rafael Espindola  <espindola@google.com>

	* see.c (see_def_extension_not_merged): Use copy_rtx_if_shared to avoid
	invalid sharing.

2008-05-28  Rafael Espindola  <espindola@google.com>

	* gcc.dg/20080528-1.c: New test.

From-SVN: r136115
2008-05-28 16:20:25 +00:00
Arnaud Charlet
acca98c08f Resync.
From-SVN: r136114
2008-05-28 17:56:29 +02:00
Ed Schonberg
c147ac264f sem_res.adb (Valid_Conversion): An anonymous access_to_subprogram type has a deeper level than any master only...
2008-05-28  Ed Schonberg  <schonberg@adacore.com>

	* sem_res.adb (Valid_Conversion): An anonymous access_to_subprogram
	type has a deeper level than any master only when it is the type of an
	access parameter.

From-SVN: r136113
2008-05-28 17:56:02 +02:00
Vincent Celier
2b672e358d sinput-p.adb (Source_File_Is_Subunit): Allow special character used for preprocessing
2008-05-28  Vincent Celier  <celier@adacore.com>

	* sinput-p.adb (Source_File_Is_Subunit): Allow special character used
	for preprocessing
	
	* sinput-p.ads: Minor comment update and reformatting

From-SVN: r136112
2008-05-28 17:55:52 +02:00
Vincent Celier
3fdd06e1ec re PR ada/34446 (gnatprep evaluating "not" operator at incorrect precidence)
2008-05-28  Vincent Celier  <celier@adacore.com>

	PR ada/34446
	* gnat_ugn.texi: Document restriction introduced on 2007-04-20 in
	preprocessing expressions

From-SVN: r136111
2008-05-28 17:55:41 +02:00
Eric Botcazou
c79f341773 system-lynxos-ppc.ads (Always_Compatible_Rep): Set to False.
2008-05-28  Eric Botcazou  <ebotcazou@adacore.com>

	* system-lynxos-ppc.ads (Always_Compatible_Rep): Set to False.
	* system-lynxos-x86.ads (Always_Compatible_Rep): Set to False.

From-SVN: r136110
2008-05-28 17:55:30 +02:00
Ed Schonberg
33477fb7d8 sem_ch5.adb (Analyze_Assignment): If the name is of a local anonymous access type...
2008-05-28  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch5.adb (Analyze_Assignment): If the name is of a local anonymous
	access type, wrap the expression in a conversion to force an
	accessibility check.

	* sem_aggr.adb (Aggegate_Constraint_Checks): Apply conversion to force
	accessibility checks even when expansion is disabled in order to
	generate messages in the presence of previous errors or in
	semantics-only mode.

From-SVN: r136108
2008-05-28 17:55:20 +02:00
Arnaud Charlet
8250171ba3 Resync.
From-SVN: r136107
2008-05-28 17:34:31 +02:00
Sergey Rybin
bf8b6bfcec sem_prag.adb (Process_Extended_Import_Export_Subprogram_Pragma): Set Entity field for formal_parameter_NAME in MECHANISM_ASSOCIATION.
2008-05-28  Sergey Rybin  <rybin@adacore.com>

	* sem_prag.adb (Process_Extended_Import_Export_Subprogram_Pragma): Set
	Entity field for formal_parameter_NAME in MECHANISM_ASSOCIATION.

From-SVN: r136106
2008-05-28 17:34:15 +02:00
Javier Miranda
8aa15e3bf0 sem_util.ads (Find_Overridden_Synchronized_Primitive): Removed.
2008-05-28  Javier Miranda  <miranda@adacore.com>

	* sem_util.ads (Find_Overridden_Synchronized_Primitive): Removed.
	* sem_util.adb (Find_Overridden_Synchronized_Primitive): Removed.
	* sem_ch6.adb (Check_Synchronized_Overriding): Remove one formal.
	Add code that was previously located in
	Find_Overridden_Synchronized_Primitive because it is only used here.

From-SVN: r136105
2008-05-28 17:34:05 +02:00
Javier Miranda
9800ef594c sem_ch3.adb (Derive_Progenitor_Subprograms): Add documentation.
2008-05-28  Javier Miranda  <miranda@adacore.com>

	* sem_ch3.adb (Derive_Progenitor_Subprograms): Add documentation.

From-SVN: r136104
2008-05-28 17:33:54 +02:00
Andrew Haley
71292a0540 re PR libgcj/35020 (Class.getSimpleName() differs from Sun Java)
2008-05-28  Andrew Haley  <aph@redhat.com>

	* java/lang/Class.java (getSimpleName): Use getEnclosingClass().	
	* testsuite/libjava.lang/PR35020.java: New cases.
	* testsuite/libjava.lang/PR35020.out: New cases.

From-SVN: r136103
2008-05-28 15:12:47 +00:00
Richard Guenther
38154e4f0f re PR tree-optimization/36339 (not call clobbering variable for non common offset)
2008-05-28  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/36339
	* tree-ssa-alias.c (set_initial_properties): Move pt_anything
	and clobbering code out of the loop.

From-SVN: r136100
2008-05-28 14:45:57 +00:00
Andreas Krebbel
963fc8d00b constraints.md ('b', [...]): New constraint letters defined.
2008-05-28  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/constraints.md ('b', 'C', 'D', 'e'): New constraint
	letters defined.

	* config/s390/s390.c (s390_compare_and_branch_condition_mask,
	s390_contiguous_bitmask_p, s390_symref_operand_p,
	s390_check_symref_alignment, s390_reload_larl_operand,
	s390_reload_symref_address): New functions.
	(s390_branch_condition_mnemonic): Support compare and branch
	instructions.
	(s390_mem_constraint): Avoid symrefs to accepted by the 'T'
	and 'W' constraints.
	(s390_secondary_reload): Add secondary reloads for unaligned
	symbol refs or symbol refs to floating point or QI/TI mode
	integer values.
	(legitimate_address_p): Accept symbol references as addresses.
	(s390_expand_insv): Use rotate and insert selected bits
	instruction for insv when building for z10.
	(print_operand_address): Handle symbol ref addresses.
	(print_operand): Output modifier 'c' added for signed byte
	values.
	(s390_encode_section_info): Mark symbol refs with
	SYMBOL_FLAG_NOT_NATURALLY_ALIGNED if appropriate.

	* config/s390/s390.md (SIL,RRS,RIS): New instruction formats added.
	(length attribute): RRF, RRR have 4 byte length.
	(FPALL, INTALL): New mode iterators added.
	(*tstdi_sign, *cmpdi_ccs_sign, *cmpsi_ccs_sign,
	*cmp<mode>_ccs, *cmpdi_ccu_zero, *cmpdi_ccu, *cmpsi_ccu, *cmphi_ccu,
	*movdi_64, *movsi_zarch, *movhi, movmem<mode>, *movmem_short,
	*extendsidi2, *extendhidi2_extimm, *extendhisi2_extimm,
	*zero_extendsidi2, adddi3, *adddi3_31z, *adddi3_31, addsi3,
	*add<mode>3, *add<mode>3_carry1_cc, *add<mode>3_carry2_cc,
	*add<mode>3_cc, *add<mode>3_imm_cc, *muldi3_sign, muldi3,
	*mulsi3_sign, mulsi3, mulsidi3): Patterns enhanced with z10
	instructions.
	(*cmphi_ccs_z10, *cmpdi_ccs_signhi_rl, *cmpsi_ccu_zerohi_rlsi,
	*cmp<GPR:mode>_ccu_zerohi_rldi, *cmp_and_br_signed_<mode>,
	*cmp_and_br_unsigned_<mode>, reload<INTALL:mode><P:mode>_tomem_z10,
	reload<INTALL:mode><P:mode>_toreg_z10,
	reload<FPALL:mode><P:mode>_tomem_z10,
	reload<FPALL:mode><P:mode>_toreg_z10,
	reload<P:mode>_larl_odd_addend_z10, *execute_rl, *insv<mode>_z10,
	*insv<mode>_z10_noshift, *insv<mode>_or_z10_noshift,
	*zero_extendhi<mode>2_z10, *cmp_and_trap_signed_int<mode>,
	*cmp_and_trap_unsigned_int<mode>, prefetch): New pattern or expander
	definition.
	(movmem, clrmem, cmpmem): New splitters added.

	* config/s390/predicates.md (larl_operand): Use
	SYMBOL_REF_FLAGS (op) & SYMBOL_FLAG_ALIGN1 replaced with
	SYMBOL_REF_ALIGN1_P.
	(s390_signed_integer_comparison,
	s390_unsigned_integer_comparison): New predicates.

	* config/s390/s390-protos.h (s390_check_symref_alignment,
	s390_contiguous_bitmask_p, s390_reload_larl_operand,
	s390_reload_symref_address,
	s390_compare_and_branch_condition_mask): Prototypes added.

	* config/s390/s390.h (TARGET_MEM_CONSTRAINT,
	SYMBOL_REF_ALIGN1_P, SYMBOL_FLAG_NOT_NATURALLY_ALIGNED,
	SYMBOL_REF_NOT_NATURALLY_ALIGNED_P): Macro definition added.

From-SVN: r136098
2008-05-28 14:11:19 +00:00
Andreas Krebbel
93538e8eda s390.c (z10_cost): New cost function for z10.
2008-05-28  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (z10_cost): New cost function for z10.
	(s390_handle_arch_option, override_options): Support
	-march=z10 switch.
	(s390_issue_rate): Adjust issue rate for z10.
	* config/s390/s390.h (processor_type): Add PROCESSOR_2097_Z10.
	(processor_flags): Add PF_Z10.
	(TARGET_CPU_Z10, TARGET_Z10): New macro definitions.
	* config/s390/s390.md (cpu, cpu_facility attributes): Add z10.
	* gcc/config.gcc: Add z10.

From-SVN: r136097
2008-05-28 14:09:51 +00:00