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] S/390: Hardware transactional memory support


On 02/08/13 16:36, Peter Bergner wrote:
> On Fri, 2013-08-02 at 16:26 +0200, Andreas Krebbel wrote:
>> On 02/08/13 16:23, Peter Bergner wrote:
>> As long as libitm does not use FPRs itself this should be safe without
>> having tbegin clobbering FPRs.
> 
> Is it a given that s390 doesn't use FPRs without explicit use of
> floating point types?  I ask, because on POWER, we can and do 
> generate floating point code without explicit use of double,
> float, etc.  Maybe s390 is safe in that respect.

S/390 used to be on the safe side regarding this but with mainline we started using FPRs as GPR save
slots. As Richard suggested we should build libitm with -msoft-float in order to prevent this within
libitm. Unfortunately I forgot about this in my S/390 libitm patch. So I'll commit the following:


Index: libitm/configure.tgt
===================================================================
*** libitm/configure.tgt.orig   2013-07-30 07:42:29.000000000 +0000
--- libitm/configure.tgt        2013-08-02 14:43:18.641206151 +0000
*************** case "${target_cpu}" in
*** 109,115 ****
        ARCH=x86
        ;;
    s390|s390x)
!       XCFLAGS="${XCFLAGS} -mzarch -mhtm"
        ARCH=s390
        ;;

--- 109,115 ----
        ARCH=x86
        ;;
    s390|s390x)
!       XCFLAGS="${XCFLAGS} -mzarch -mhtm -msoft-float"
        ARCH=s390
        ;;


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