This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 1/2] s/390: Implement "target" attribute.


On Fri, Sep 25, 2015 at 02:59:41PM +0100, Dominik Vogt wrote:
> The following set of two patches implements the function
> __attribute__ ((target("..."))) and the corresponding #pragma GCC
> target("...") on S/390.  It comes with certain limitations:
> 
>  * It is not possible to change any options that affect the ABI or
>    the definition of target macros by using the attribute (vx,
>    htm, zarch and others).  Some of them are still supported but
>    unable to change the definition of the corresponding target macros.
>    In these cases, the pragma has to be used.  One reason for this
>    is that it is not possible to change the definition of the target
>    macros with the attribute, but the implementation of some features
>    relies on them.
> 
>  * Even with the pragma it is not possible to switch between zarch
>    and esa architecture because internal data typed would have to be
>    changed at Gcc run time.
> 
> The second patch contains a long term change in the interface with
> the assembler.  Currently, the compiler wrapper passes the same
> -march= and -mtune= options to the compiler and the assembler.
> The patch makes this obsolete by emitting ".machine" and
> ".machinemode" dirctives to the top of the assembly language file.
> The old way ist still supported but may be removed once the
> ".machine" feature is supported by all as versions in the field.
> 
> The second patch depends on the first one, and both require the
> (latest) change proposed in this thread:
> https://gcc.gnu.org/ml/gcc-patches/2015-09/msg01546.html

Version 3 of the patch:

 * Adapted to current HEAD.
 * Uses the B_VX and B_HTM flags in stead of the suggested B_GROUP.
 * Vector builtins depend on the VX flag instead of ZVECTOR.
 * Removed a dead error message in s390_expand_builtin.
 * Improved comment in s390.exp.

Ciao

Dominik ^_^  ^_^

-- 

Dominik Vogt
IBM Germany

Attachment: 0001-ChangeLog
Description: Text document

Attachment: 0001-S-390-Implement-attribute-target-and-pragma-GCC-targ.patch.gz
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]