android_kernel_samsung_sm8650/arch
David Gow 37edfbc5c4 UPSTREAM: um: Only disable SSE on clang to work around old GCC bugs
As part of the Rust support for UML, we disable SSE (and similar flags)
to match the normal x86 builds. This both makes sense (we ideally want a
similar configuration to x86), and works around a crash bug with SSE
generation under Rust with LLVM.

However, this breaks compiling stdlib.h under gcc < 11, as the x86_64
ABI requires floating-point return values be stored in an SSE register.
gcc 11 fixes this by only doing register allocation when a function is
actually used, and since we never use atof(), it shouldn't be a problem:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99652

Nevertheless, only disable SSE on clang setups, as that's a simple way
of working around everyone's bugs.

Fixes: 884981867947 ("rust: arch/um: Disable FP/SIMD instruction to match x86")
Reported-by: Roberto Sassu <roberto.sassu@huaweicloud.com>
Link: https://lore.kernel.org/linux-um/6df2ecef9011d85654a82acd607fdcbc93ad593c.camel@huaweicloud.com/
Tested-by: Roberto Sassu <roberto.sassu@huaweicloud.com>
Tested-by: SeongJae Park <sj@kernel.org>
Signed-off-by: David Gow <davidgow@google.com>
Reviewed-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
Tested-by: Arthur Grillo <arthurgrillo@riseup.net>
Signed-off-by: Richard Weinberger <richard@nod.at>

Bug: 296671039
Change-Id: Ie71e5c59ca9fb6a480895af233fae9a15f5c5ddc
(cherry picked from commit a3046a618a284579d1189af8711765f553eed707)
Signed-off-by: Dongseok Yi <dseok.yi@samsung.com>
2023-08-30 12:58:15 +00:00
..
alpha UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
arc UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
arm UPSTREAM: arm/mm: Convert to using lock_mm_and_find_vma() 2023-07-27 05:04:33 +00:00
arm64 ANDROID: virt: geniezone: Enable as GKI module for arm64 2023-08-29 18:02:40 +00:00
csky UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
hexagon UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
ia64 BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
loongarch UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
m68k BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
microblaze BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
mips UPSTREAM: mips/mm: Convert to using lock_mm_and_find_vma() 2023-07-27 05:03:08 +00:00
nios2 UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
openrisc BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
parisc BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
powerpc FROMGIT: mm: remove CONFIG_PER_VMA_LOCK ifdefs 2023-08-16 09:59:44 -07:00
riscv FROMGIT: mm: remove CONFIG_PER_VMA_LOCK ifdefs 2023-08-16 09:59:44 -07:00
s390 FROMGIT: mm: remove CONFIG_PER_VMA_LOCK ifdefs 2023-08-16 09:59:44 -07:00
sh UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
sparc BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
um BACKPORT: mm: always expand the stack with the mmap write lock held 2023-07-27 11:47:21 +00:00
x86 UPSTREAM: um: Only disable SSE on clang to work around old GCC bugs 2023-08-30 12:58:15 +00:00
xtensa UPSTREAM: mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-07-27 05:04:57 +00:00
.gitignore
Kconfig UPSTREAM: scs: add support for dynamic shadow call stacks 2023-05-25 15:37:14 -07:00