S390: Increase function alignment to 16 bytes.

Message ID df4b46f9-3e30-a77a-83d5-c90f1d1054db@linux.ibm.com
State Committed
Headers

Commit Message

Stefan Liebler March 1, 2019, 3:37 p.m. UTC
  Hi,

this patch sets the default function alignment to 16 bytes in order to
get rid of some unwanted performance effects.

Please see also GCC commit "S/390: Set default function
alignment to 16."

Bye,
Stefan

ChangeLog:

	* sysdeps/s390/s390-64/sysdep.h(ENTRY): Use alignment of 16byte.
	* sysdeps/s390/s390-32/sysdep.h: Likewise.
  

Comments

Florian Weimer March 1, 2019, 3:47 p.m. UTC | #1
* Stefan Liebler:

> commit 3ca7542058593c6870ca10d0eed801ccc4326a4c
> Author: Stefan Liebler <stli@linux.ibm.com>
> Date:   Wed Feb 20 09:02:56 2019 +0100
>
>     S390: Increase function alignment to 16 bytes.
>     
>     Set the default function alignment to 16 bytes in order to
>     get rid of some unwanted performance effects.
>     
>     Please see also GCC commit "S/390: Set default function
>     alignment to 16."
>     
>     ChangeLog:
>     
>             * sysdeps/s390/s390-64/sysdep.h(ENTRY): Use alignment of
>             16byte.

“16 bytes”?  Maybe also reference Subversion revision (rXXX) in the
commit message if it's already committed to GCC.

The actual change looks fine to me (though I can't comment on the
performance implications 8-).

Thanks,
Florian
  
Stefan Liebler March 4, 2019, 9:52 a.m. UTC | #2
On 3/1/19 4:47 PM, Florian Weimer wrote:
> * Stefan Liebler:
> 
>> commit 3ca7542058593c6870ca10d0eed801ccc4326a4c
>> Author: Stefan Liebler <stli@linux.ibm.com>
>> Date:   Wed Feb 20 09:02:56 2019 +0100
>>
>>      S390: Increase function alignment to 16 bytes.
>>      
>>      Set the default function alignment to 16 bytes in order to
>>      get rid of some unwanted performance effects.
>>      
>>      Please see also GCC commit "S/390: Set default function
>>      alignment to 16."
>>      
>>      ChangeLog:
>>      
>>              * sysdeps/s390/s390-64/sysdep.h(ENTRY): Use alignment of
>>              16byte.
> 
> “16 bytes”?  Maybe also reference Subversion revision (rXXX) in the
> commit message if it's already committed to GCC.
> 
> The actual change looks fine to me (though I can't comment on the
> performance implications 8-).
> 
> Thanks,
> Florian
> 

Committed with the additional information of the gcc commit:
Subversion revision 262817

Thanks,
Stefan
  

Patch

commit 3ca7542058593c6870ca10d0eed801ccc4326a4c
Author: Stefan Liebler <stli@linux.ibm.com>
Date:   Wed Feb 20 09:02:56 2019 +0100

    S390: Increase function alignment to 16 bytes.
    
    Set the default function alignment to 16 bytes in order to
    get rid of some unwanted performance effects.
    
    Please see also GCC commit "S/390: Set default function
    alignment to 16."
    
    ChangeLog:
    
            * sysdeps/s390/s390-64/sysdep.h(ENTRY): Use alignment of 16byte.
            * sysdeps/s390/s390-32/sysdep.h: Likewise.

diff --git a/sysdeps/s390/s390-32/sysdep.h b/sysdeps/s390/s390-32/sysdep.h
index 6605dde237..4a441e1204 100644
--- a/sysdeps/s390/s390-32/sysdep.h
+++ b/sysdeps/s390/s390-32/sysdep.h
@@ -32,7 +32,7 @@ 
 #define	ENTRY(name)							      \
   .globl C_SYMBOL_NAME(name);						      \
   .type C_SYMBOL_NAME(name),@function;					      \
-  .align ALIGNARG(2);							      \
+  .align ALIGNARG(4);							      \
   C_LABEL(name)								      \
   cfi_startproc;							      \
   CALL_MCOUNT
diff --git a/sysdeps/s390/s390-64/sysdep.h b/sysdeps/s390/s390-64/sysdep.h
index 99dbf3f444..0531fa5823 100644
--- a/sysdeps/s390/s390-64/sysdep.h
+++ b/sysdeps/s390/s390-64/sysdep.h
@@ -32,7 +32,7 @@ 
 #define	ENTRY(name)							      \
   .globl C_SYMBOL_NAME(name);						      \
   .type C_SYMBOL_NAME(name),@function;					      \
-  .align ALIGNARG(2);							      \
+  .align ALIGNARG(4);							      \
   C_LABEL(name)								      \
   cfi_startproc;							      \
   CALL_MCOUNT