* [PR PATCH] [RFC] add sse flags to i686 profile
@ 2024-07-18 19:35 Calandracas606
2024-07-18 19:39 ` [PR REVIEW] " Calandracas606
` (14 more replies)
0 siblings, 15 replies; 16+ messages in thread
From: Calandracas606 @ 2024-07-18 19:35 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 1696 bytes --]
There is a new pull request by Calandracas606 against master on the void-packages repository
https://github.com/Calandracas606/void-packages i686-sse2
https://github.com/void-linux/void-packages/pull/51333
[RFC] add sse flags to i686 profile
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **NO**
I don't actually have any i686 hardware to test with, but I've built a few packages without issues.
<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->
<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64-musl
- armv7l
- armv6l-musl
-->
There are several packages which require sse2 and fpmath flags to be added manually.
The void documentation quite clearly states that pentium 4 (sse2) is the base system requirements: https://docs.voidlinux.org/installation/index.html#base-system-requirements
If the base requirements are pentium4, we could alternately set gcc's `-march=pentium4` flag
A patch file from https://github.com/void-linux/void-packages/pull/51333.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-i686-sse2-51333.patch --]
[-- Type: text/x-diff, Size: 2392 bytes --]
From 050c4c8f57bf18f98d9351c8da6f491fc789426d Mon Sep 17 00:00:00 2001
From: Daniel Martinez <danielmartinez@cock.li>
Date: Thu, 18 Jul 2024 15:30:15 -0400
Subject: [PATCH] add sse flags to i686 profile
---
common/build-profiles/i686-musl.sh | 2 +-
common/build-profiles/i686.sh | 2 +-
common/cross-profiles/i686-musl.sh | 2 +-
common/cross-profiles/i686.sh | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/common/build-profiles/i686-musl.sh b/common/build-profiles/i686-musl.sh
index a607ef619e7915..824ff11631f110 100644
--- a/common/build-profiles/i686-musl.sh
+++ b/common/build-profiles/i686-musl.sh
@@ -1,4 +1,4 @@
-XBPS_TARGET_CFLAGS="-mtune=i686"
+XBPS_TARGET_CFLAGS="-mtune=i686 -msse -msse2 -mfpmath=sse"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="i686-linux-musl"
diff --git a/common/build-profiles/i686.sh b/common/build-profiles/i686.sh
index ac69fb0c519d38..8b974fd9f79e86 100644
--- a/common/build-profiles/i686.sh
+++ b/common/build-profiles/i686.sh
@@ -1,4 +1,4 @@
-XBPS_TARGET_CFLAGS="-mtune=i686"
+XBPS_TARGET_CFLAGS="-mtune=i686 -msse -msse2 -mfpmath=sse"
XBPS_TARGET_CXXFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TARGET_FFLAGS="$XBPS_TARGET_CFLAGS"
XBPS_TRIPLET="i686-pc-linux-gnu"
diff --git a/common/cross-profiles/i686-musl.sh b/common/cross-profiles/i686-musl.sh
index c1cdf60f5ebb8e..185065dd87d23a 100644
--- a/common/cross-profiles/i686-musl.sh
+++ b/common/cross-profiles/i686-musl.sh
@@ -3,7 +3,7 @@
XBPS_TARGET_MACHINE="i686-musl"
XBPS_TARGET_QEMU_MACHINE="i386"
XBPS_CROSS_TRIPLET="i686-linux-musl"
-XBPS_CROSS_CFLAGS="-march=i686"
+XBPS_CROSS_CFLAGS="-march=i686 -msse -msse2 -mfpmath=sse"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
diff --git a/common/cross-profiles/i686.sh b/common/cross-profiles/i686.sh
index 16f44013ab7610..5313d260b11f62 100644
--- a/common/cross-profiles/i686.sh
+++ b/common/cross-profiles/i686.sh
@@ -3,7 +3,7 @@
XBPS_TARGET_MACHINE="i686"
XBPS_TARGET_QEMU_MACHINE="i386"
XBPS_CROSS_TRIPLET="i686-pc-linux-gnu"
-XBPS_CROSS_CFLAGS="-march=i686"
+XBPS_CROSS_CFLAGS="-march=i686 -msse -msse2 -mfpmath=sse"
XBPS_CROSS_CXXFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_FFLAGS="$XBPS_CROSS_CFLAGS"
XBPS_CROSS_RUSTFLAGS="--sysroot=${XBPS_CROSS_BASE}/usr"
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PR REVIEW] [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
2024-07-18 19:39 ` [PR REVIEW] " Calandracas606
@ 2024-07-18 19:39 ` Calandracas606
2024-07-20 4:31 ` classabbyamp
` (12 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Calandracas606 @ 2024-07-18 19:39 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 192 bytes --]
New review comment by Calandracas606 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#discussion_r1683384939
Comment:
build profile uses `-mtune=i686` here
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PR REVIEW] [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
@ 2024-07-18 19:39 ` Calandracas606
2024-07-18 19:39 ` Calandracas606
` (13 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: Calandracas606 @ 2024-07-18 19:39 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 206 bytes --]
New review comment by Calandracas606 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#discussion_r1683385813
Comment:
but in cross-profiles `-march=i686` is used instead
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
2024-07-18 19:39 ` [PR REVIEW] " Calandracas606
2024-07-18 19:39 ` Calandracas606
@ 2024-07-20 4:31 ` classabbyamp
2024-07-20 23:01 ` tornaria
` (11 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: classabbyamp @ 2024-07-20 4:31 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 177 bytes --]
New comment by classabbyamp on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2240911445
Comment:
cc @void-linux/pkg-committers
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (2 preceding siblings ...)
2024-07-20 4:31 ` classabbyamp
@ 2024-07-20 23:01 ` tornaria
2024-07-21 1:46 ` sgn
` (10 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: tornaria @ 2024-07-20 23:01 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 571 bytes --]
New comment by tornaria on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2241325675
Comment:
Should i686-musl profile be modified similarly?
Using `-fmpmath=sse` could save some pain with floats on i686. Some packages set `-ffloat-store` instead, it may be possible to remove that as well.
OTOH, it seems packages using sse on i686 are not that many, and afaik no core package uses sse on i686. This means void linux possibly works just fine without sse, besides a few specific (non-essential) packages needing sse.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (3 preceding siblings ...)
2024-07-20 23:01 ` tornaria
@ 2024-07-21 1:46 ` sgn
2024-07-21 1:54 ` classabbyamp
` (9 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: sgn @ 2024-07-21 1:46 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 203 bytes --]
New comment by sgn on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2241376416
Comment:
Nah, I would like to have the base system that works without SSE.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (4 preceding siblings ...)
2024-07-21 1:46 ` sgn
@ 2024-07-21 1:54 ` classabbyamp
2024-07-22 9:28 ` jhe2
` (8 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: classabbyamp @ 2024-07-21 1:54 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 269 bytes --]
New comment by classabbyamp on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2241379232
Comment:
> afaik no core package uses sse on i686
probably correct, most of the failures to boot i686 live images i see are OOMs
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (5 preceding siblings ...)
2024-07-21 1:54 ` classabbyamp
@ 2024-07-22 9:28 ` jhe2
2024-07-22 11:01 ` leahneukirchen
` (7 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: jhe2 @ 2024-07-22 9:28 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 652 bytes --]
New comment by jhe2 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2242504190
Comment:
I understand that the documentation states the minimum requirement is a SSE2 capable CPU, but I wonder, what is the point of having i686 at all then? With that requirement you eliminate most i686 CPUs (pretty much all i686 CPUs except those Pentium 4's are out with that requirement). Later Pentium 4's even support x86_64 so they wouldn't need the i686 version anyway.
If it were for me to decide, I would stick to `-march=i686` only and explicitly set the additional flags for those packages that require it.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (6 preceding siblings ...)
2024-07-22 9:28 ` jhe2
@ 2024-07-22 11:01 ` leahneukirchen
2024-07-22 12:21 ` jhe2
` (6 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: leahneukirchen @ 2024-07-22 11:01 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 278 bytes --]
New comment by leahneukirchen on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2242682473
Comment:
> most of the failures to boot i686 live images i see are OOMs
How many people are actually booting Void on pre-2001 hardware?
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (7 preceding siblings ...)
2024-07-22 11:01 ` leahneukirchen
@ 2024-07-22 12:21 ` jhe2
2024-07-22 12:41 ` leahneukirchen
` (5 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: jhe2 @ 2024-07-22 12:21 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 835 bytes --]
New comment by jhe2 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2242824863
Comment:
> > most of the failures to boot i686 live images i see are OOMs
>
> How many people are actually booting Void on pre-2001 hardware?
I can't tell you that, but AMD has built CPUs based on the Athlon XP (which is a 32-bit CPU with SSE1, but without SSE2) until 2006. The latest of those CPUs were sold under their budget Sempron brand.
Sometimes I run Void on vintage hardware (e.g. on Pentium III machines), not out of necessity, but more because it is fun and can be helpful to get data onto/off of the machine.
If you don't want to support such old machines, that is understandable, if a little bit unfortunate. When going that route though, I would probably drop i686 all together.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (8 preceding siblings ...)
2024-07-22 12:21 ` jhe2
@ 2024-07-22 12:41 ` leahneukirchen
2024-07-22 13:11 ` jhe2
` (4 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: leahneukirchen @ 2024-07-22 12:41 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 214 bytes --]
New comment by leahneukirchen on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2242863365
Comment:
We can't drop i686-glibc really as it's needed for lib32 support.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (9 preceding siblings ...)
2024-07-22 12:41 ` leahneukirchen
@ 2024-07-22 13:11 ` jhe2
2024-10-21 2:01 ` github-actions
` (3 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: jhe2 @ 2024-07-22 13:11 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 496 bytes --]
New comment by jhe2 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2242926885
Comment:
> We can't drop i686-glibc really as it's needed for lib32 support.
Sure, I was thinking more about the actual i686 installation media/live images and all the packages required by a complete i686 distro. I would imagine if it was only for lib32 support, you'd have to build a lot fewer packages for i686 than when building for a fully installable distro.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (10 preceding siblings ...)
2024-07-22 13:11 ` jhe2
@ 2024-10-21 2:01 ` github-actions
2024-10-21 12:37 ` Calandracas606
` (2 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: github-actions @ 2024-10-21 2:01 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 305 bytes --]
New comment by github-actions[bot] on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2425404648
Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that. If this pull request is still relevant bump it or assign it.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (11 preceding siblings ...)
2024-10-21 2:01 ` github-actions
@ 2024-10-21 12:37 ` Calandracas606
2025-01-21 1:57 ` github-actions
2025-02-04 1:57 ` [PR PATCH] [Closed]: " github-actions
14 siblings, 0 replies; 16+ messages in thread
From: Calandracas606 @ 2024-10-21 12:37 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 244 bytes --]
New comment by Calandracas606 on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2426553485
Comment:
any further thoughts?
feel free to close if this is a change that void does not want to make
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (12 preceding siblings ...)
2024-10-21 12:37 ` Calandracas606
@ 2025-01-21 1:57 ` github-actions
2025-02-04 1:57 ` [PR PATCH] [Closed]: " github-actions
14 siblings, 0 replies; 16+ messages in thread
From: github-actions @ 2025-01-21 1:57 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 305 bytes --]
New comment by github-actions[bot] on void-packages repository
https://github.com/void-linux/void-packages/pull/51333#issuecomment-2603471427
Comment:
Pull Requests become stale 90 days after last activity and are closed 14 days after that. If this pull request is still relevant bump it or assign it.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PR PATCH] [Closed]: [RFC] add sse flags to i686 profile
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
` (13 preceding siblings ...)
2025-01-21 1:57 ` github-actions
@ 2025-02-04 1:57 ` github-actions
14 siblings, 0 replies; 16+ messages in thread
From: github-actions @ 2025-02-04 1:57 UTC (permalink / raw)
To: ml
[-- Attachment #1: Type: text/plain, Size: 1529 bytes --]
There's a closed pull request on the void-packages repository
[RFC] add sse flags to i686 profile
https://github.com/void-linux/void-packages/pull/51333
Description:
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **NO**
I don't actually have any i686 hardware to test with, but I've built a few packages without issues.
<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->
<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- aarch64-musl
- armv7l
- armv6l-musl
-->
There are several packages which require sse2 and fpmath flags to be added manually.
The void documentation quite clearly states that pentium 4 (sse2) is the base system requirements: https://docs.voidlinux.org/installation/index.html#base-system-requirements
If the base requirements are pentium4, we could alternately set gcc's `-march=pentium4` flag
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2025-02-04 1:57 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-18 19:35 [PR PATCH] [RFC] add sse flags to i686 profile Calandracas606
2024-07-18 19:39 ` [PR REVIEW] " Calandracas606
2024-07-18 19:39 ` Calandracas606
2024-07-20 4:31 ` classabbyamp
2024-07-20 23:01 ` tornaria
2024-07-21 1:46 ` sgn
2024-07-21 1:54 ` classabbyamp
2024-07-22 9:28 ` jhe2
2024-07-22 11:01 ` leahneukirchen
2024-07-22 12:21 ` jhe2
2024-07-22 12:41 ` leahneukirchen
2024-07-22 13:11 ` jhe2
2024-10-21 2:01 ` github-actions
2024-10-21 12:37 ` Calandracas606
2025-01-21 1:57 ` github-actions
2025-02-04 1:57 ` [PR PATCH] [Closed]: " github-actions
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).