build-many-glibcs.py: Add s390 --disable-multi-arch / multi-arch configurations.

Message ID 20240131120257.1862186-1-stli@linux.ibm.com
State Committed
Commit 2938846accff13087d520cc29c17b857337ae927
Headers
Series build-many-glibcs.py: Add s390 --disable-multi-arch / multi-arch configurations. |

Checks

Context Check Description
redhat-pt-bot/TryBot-apply_patch success Patch applied to master at the time it was sent
redhat-pt-bot/TryBot-32bit success Build for i686
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_glibc_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_glibc_check--master-arm success Testing passed

Commit Message

Stefan Liebler Jan. 31, 2024, 12:02 p.m. UTC
  This patch adds some --disable-multi-arch variants for s390x.

As the used IFUNC variants and __GI symbols depend on the used
gcc -march=cpu-level, there are multiple new configurations.
---
 scripts/build-many-glibcs.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)
  

Comments

Stefan Liebler Feb. 19, 2024, 1:34 p.m. UTC | #1
ping
On 31.01.24 13:02, Stefan Liebler wrote:
> This patch adds some --disable-multi-arch variants for s390x.
> 
> As the used IFUNC variants and __GI symbols depend on the used
> gcc -march=cpu-level, there are multiple new configurations.
> ---
>  scripts/build-many-glibcs.py | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
> index d142684fdf..1cc9847815 100755
> --- a/scripts/build-many-glibcs.py
> +++ b/scripts/build-many-glibcs.py
> @@ -417,7 +417,22 @@ class Context(object):
>                          glibcs=[{},
>                                  {'arch': 's390', 'ccopts': '-m31'}],
>                          extra_glibcs=[{'variant': 'O3',
> -                                       'cflags': '-O3'}])
> +                                       'cflags': '-O3'},
> +                                      {'variant': 'zEC12',
> +                                       'ccopts': '-march=zEC12'},
> +                                      {'variant': 'z13',
> +                                       'ccopts': '-march=z13'},
> +                                      {'variant': 'z15',
> +                                       'ccopts': '-march=z15'},
> +                                      {'variant': 'zEC12-disable-multi-arch',
> +                                       'ccopts': '-march=zEC12',
> +                                       'cfg': ['--disable-multi-arch']},
> +                                      {'variant': 'z13-disable-multi-arch',
> +                                       'ccopts': '-march=z13',
> +                                       'cfg': ['--disable-multi-arch']},
> +                                      {'variant': 'z15-disable-multi-arch',
> +                                       'ccopts': '-march=z15',
> +                                       'cfg': ['--disable-multi-arch']}])
>          self.add_config(arch='sh3',
>                          os_name='linux-gnu')
>          self.add_config(arch='sh3eb',
  
Adhemerval Zanella Netto Feb. 20, 2024, 2:48 p.m. UTC | #2
On 31/01/24 09:02, Stefan Liebler wrote:
> This patch adds some --disable-multi-arch variants for s390x.
> 
> As the used IFUNC variants and __GI symbols depend on the used
> gcc -march=cpu-level, there are multiple new configurations.

Not really sure if this optimization to avoid building/providing ifunc
variants for zseries really pays off the extra burden to check if 
all possible permutations build fine.

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> ---
>  scripts/build-many-glibcs.py | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
> index d142684fdf..1cc9847815 100755
> --- a/scripts/build-many-glibcs.py
> +++ b/scripts/build-many-glibcs.py
> @@ -417,7 +417,22 @@ class Context(object):
>                          glibcs=[{},
>                                  {'arch': 's390', 'ccopts': '-m31'}],
>                          extra_glibcs=[{'variant': 'O3',
> -                                       'cflags': '-O3'}])
> +                                       'cflags': '-O3'},
> +                                      {'variant': 'zEC12',
> +                                       'ccopts': '-march=zEC12'},
> +                                      {'variant': 'z13',
> +                                       'ccopts': '-march=z13'},
> +                                      {'variant': 'z15',
> +                                       'ccopts': '-march=z15'},
> +                                      {'variant': 'zEC12-disable-multi-arch',
> +                                       'ccopts': '-march=zEC12',
> +                                       'cfg': ['--disable-multi-arch']},
> +                                      {'variant': 'z13-disable-multi-arch',
> +                                       'ccopts': '-march=z13',
> +                                       'cfg': ['--disable-multi-arch']},
> +                                      {'variant': 'z15-disable-multi-arch',
> +                                       'ccopts': '-march=z15',
> +                                       'cfg': ['--disable-multi-arch']}])
>          self.add_config(arch='sh3',
>                          os_name='linux-gnu')
>          self.add_config(arch='sh3eb',
  
Stefan Liebler Feb. 21, 2024, 7:53 a.m. UTC | #3
On 20.02.24 15:48, Adhemerval Zanella Netto wrote:
> 
> 
> On 31/01/24 09:02, Stefan Liebler wrote:
>> This patch adds some --disable-multi-arch variants for s390x.
>>
>> As the used IFUNC variants and __GI symbols depend on the used
>> gcc -march=cpu-level, there are multiple new configurations.
> 
> Not really sure if this optimization to avoid building/providing ifunc
> variants for zseries really pays off the extra burden to check if 
> all possible permutations build fine.
> 
> LGTM, thanks.
> 
> Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
> 
Thanks. I've committed the patch.
>> ---
>>  scripts/build-many-glibcs.py | 17 ++++++++++++++++-
>>  1 file changed, 16 insertions(+), 1 deletion(-)
>>
>> diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
>> index d142684fdf..1cc9847815 100755
>> --- a/scripts/build-many-glibcs.py
>> +++ b/scripts/build-many-glibcs.py
>> @@ -417,7 +417,22 @@ class Context(object):
>>                          glibcs=[{},
>>                                  {'arch': 's390', 'ccopts': '-m31'}],
>>                          extra_glibcs=[{'variant': 'O3',
>> -                                       'cflags': '-O3'}])
>> +                                       'cflags': '-O3'},
>> +                                      {'variant': 'zEC12',
>> +                                       'ccopts': '-march=zEC12'},
>> +                                      {'variant': 'z13',
>> +                                       'ccopts': '-march=z13'},
>> +                                      {'variant': 'z15',
>> +                                       'ccopts': '-march=z15'},
>> +                                      {'variant': 'zEC12-disable-multi-arch',
>> +                                       'ccopts': '-march=zEC12',
>> +                                       'cfg': ['--disable-multi-arch']},
>> +                                      {'variant': 'z13-disable-multi-arch',
>> +                                       'ccopts': '-march=z13',
>> +                                       'cfg': ['--disable-multi-arch']},
>> +                                      {'variant': 'z15-disable-multi-arch',
>> +                                       'ccopts': '-march=z15',
>> +                                       'cfg': ['--disable-multi-arch']}])
>>          self.add_config(arch='sh3',
>>                          os_name='linux-gnu')
>>          self.add_config(arch='sh3eb',
  

Patch

diff --git a/scripts/build-many-glibcs.py b/scripts/build-many-glibcs.py
index d142684fdf..1cc9847815 100755
--- a/scripts/build-many-glibcs.py
+++ b/scripts/build-many-glibcs.py
@@ -417,7 +417,22 @@  class Context(object):
                         glibcs=[{},
                                 {'arch': 's390', 'ccopts': '-m31'}],
                         extra_glibcs=[{'variant': 'O3',
-                                       'cflags': '-O3'}])
+                                       'cflags': '-O3'},
+                                      {'variant': 'zEC12',
+                                       'ccopts': '-march=zEC12'},
+                                      {'variant': 'z13',
+                                       'ccopts': '-march=z13'},
+                                      {'variant': 'z15',
+                                       'ccopts': '-march=z15'},
+                                      {'variant': 'zEC12-disable-multi-arch',
+                                       'ccopts': '-march=zEC12',
+                                       'cfg': ['--disable-multi-arch']},
+                                      {'variant': 'z13-disable-multi-arch',
+                                       'ccopts': '-march=z13',
+                                       'cfg': ['--disable-multi-arch']},
+                                      {'variant': 'z15-disable-multi-arch',
+                                       'ccopts': '-march=z15',
+                                       'cfg': ['--disable-multi-arch']}])
         self.add_config(arch='sh3',
                         os_name='linux-gnu')
         self.add_config(arch='sh3eb',