linux/arch/x86/include
David Laight f65d38155a x86/div64: Fix addition of large constants in mul_u64_add_u64_div_u64()
Adding constants over 2^31 fails to compile because the ADD instruction only
supports 32bit signed immediates.

Replace the "irm" constraint with "erm" so that the compiler loads large
constants into a register.

Found by a patch to drivers/iio/frequency/ad9910.c

  [ bp: Massage commit message. ]

Fixes: 6480241f31 ("lib: add mul_u64_add_u64_div_u64() and mul_u64_u64_div_u64_roundup()")
Signed-off-by: David Laight <david.laight.linux@gmail.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: H. Peter Anvin <hpa@zytor.com>
Link: https://patch.msgid.link/20260803094702.3852-2-david.laight.linux@gmail.com
2026-09-10 10:40:22 -07:00
..
asm x86/div64: Fix addition of large constants in mul_u64_add_u64_div_u64() 2026-09-10 10:40:22 -07:00
uapi/asm platform/x86/amd/hsmp: Add IOCTL_GET_TELEMETRY_DATA for metric table reads 2026-07-28 21:09:17 +03:00