import binutils-2.30-116.el8
This commit is contained in:
parent
19c4644e0b
commit
ccf8b7b136
82
SOURCES/binutils-aarch64-rng.patch
Normal file
82
SOURCES/binutils-aarch64-rng.patch
Normal file
@ -0,0 +1,82 @@
|
||||
diff -rup binutils.orig/gas/config/tc-aarch64.c binutils-2.30/gas/config/tc-aarch64.c
|
||||
--- binutils.orig/gas/config/tc-aarch64.c 2022-04-05 10:30:32.735881142 +0100
|
||||
+++ binutils-2.30/gas/config/tc-aarch64.c 2022-04-05 10:31:28.198694747 +0100
|
||||
@@ -8553,6 +8553,8 @@ static const struct aarch64_option_cpu_v
|
||||
{"sha3", AARCH64_FEATURE (AARCH64_FEATURE_SHA2
|
||||
| AARCH64_FEATURE_SHA3, 0),
|
||||
AARCH64_ARCH_NONE},
|
||||
+ {"rng", AARCH64_FEATURE (AARCH64_FEATURE_RNG, 0),
|
||||
+ AARCH64_ARCH_NONE},
|
||||
{NULL, AARCH64_ARCH_NONE, AARCH64_ARCH_NONE},
|
||||
};
|
||||
|
||||
diff -rup binutils.orig/gas/doc/c-aarch64.texi binutils-2.30/gas/doc/c-aarch64.texi
|
||||
--- binutils.orig/gas/doc/c-aarch64.texi 2022-04-05 10:30:32.735881142 +0100
|
||||
+++ binutils-2.30/gas/doc/c-aarch64.texi 2022-04-05 10:32:35.814423321 +0100
|
||||
@@ -179,6 +179,8 @@ automatically cause those extensions to
|
||||
@item @code{fp16fml} @tab ARMv8.2-A @tab ARMv8.4-A or later
|
||||
@tab Enable ARMv8.2 16-bit floating-point multiplication variant support.
|
||||
This implies @code{fp16}.
|
||||
+@item @code{rng} @tab ARMv8.5-A @tab No
|
||||
+ @tab Enable ARMv8.5-A random number instructions.
|
||||
@end multitable
|
||||
|
||||
@node AArch64 Syntax
|
||||
Only in binutils-2.30/gas/testsuite/gas/aarch64: rng-1.d
|
||||
Only in binutils-2.30/gas/testsuite/gas/aarch64: rng-1.s
|
||||
diff -rup binutils.orig/include/opcode/aarch64.h binutils-2.30/include/opcode/aarch64.h
|
||||
--- binutils.orig/include/opcode/aarch64.h 2022-04-05 10:30:33.256879707 +0100
|
||||
+++ binutils-2.30/include/opcode/aarch64.h 2022-04-05 10:42:30.241087320 +0100
|
||||
@@ -62,6 +62,7 @@ typedef uint32_t aarch64_insn;
|
||||
#define AARCH64_FEATURE_COMPNUM 0x40000000 /* Complex # instructions. */
|
||||
#define AARCH64_FEATURE_DOTPROD 0x080000000 /* Dot Product instructions. */
|
||||
#define AARCH64_FEATURE_F16_FML 0x1000000000ULL /* v8.2 FP16FML ins. */
|
||||
+#define AARCH64_FEATURE_RNG 0x80000000000ULL /* Random Number instructions. */
|
||||
|
||||
/* Architectures are the sum of the base and extensions. */
|
||||
#define AARCH64_ARCH_V8 AARCH64_FEATURE (AARCH64_FEATURE_V8, \
|
||||
diff -rup binutils.orig/opcodes/aarch64-opc.c binutils-2.30/opcodes/aarch64-opc.c
|
||||
--- binutils.orig/opcodes/aarch64-opc.c 2022-04-05 10:30:33.019880360 +0100
|
||||
+++ binutils-2.30/opcodes/aarch64-opc.c 2022-04-05 10:58:07.179526356 +0100
|
||||
@@ -3823,6 +3823,8 @@ const aarch64_sys_reg aarch64_sys_regs [
|
||||
{ "contextidr_el1", CPENC(3,0,C13,C0,1), 0 },
|
||||
{ "contextidr_el2", CPENC (3, 4, C13, C0, 1), F_ARCHEXT },
|
||||
{ "contextidr_el12", CPENC (3, 5, C13, C0, 1), F_ARCHEXT },
|
||||
+ { "rndr", CPENC(3,3,C2,C4,0), F_ARCHEXT }, /* RO */
|
||||
+ { "rndrrs", CPENC(3,3,C2,C4,1), F_ARCHEXT }, /* RO */
|
||||
{ "tpidr_el0", CPENC(3,3,C13,C0,2), 0 },
|
||||
{ "tpidrro_el0", CPENC(3,3,C13,C0,3), 0 }, /* RO */
|
||||
{ "tpidr_el1", CPENC(3,0,C13,C0,4), 0 },
|
||||
@@ -4254,6 +4256,13 @@ aarch64_sys_reg_supported_p (const aarch
|
||||
&& !AARCH64_CPU_HAS_FEATURE (features, AARCH64_FEATURE_V8_4))
|
||||
return FALSE;
|
||||
|
||||
+ /* Random Number Instructions. For now they are available
|
||||
+ (and optional) only with ARMv8.5-A. */
|
||||
+ if (( reg->value == CPENC (3, 3, C2, C4, 0)
|
||||
+ || reg->value == CPENC (3, 3, C2, C4, 1))
|
||||
+ && !(AARCH64_CPU_HAS_FEATURE (features, AARCH64_FEATURE_RNG)))
|
||||
+ return FALSE;
|
||||
+
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
--- /dev/null 2022-04-05 09:32:54.900867346 +0100
|
||||
+++ binutils-2.30/gas/testsuite/gas/aarch64/rng-1.s 2022-04-05 10:36:04.921589937 +0100
|
||||
@@ -0,0 +1,3 @@
|
||||
+ .arch armv8.4-a+rng
|
||||
+ mrs x5, rndr
|
||||
+ mrs x6, rndrrs
|
||||
--- /dev/null 2022-04-05 09:32:54.900867346 +0100
|
||||
+++ binutils-2.30/gas/testsuite/gas/aarch64/rng-1.d 2022-04-05 10:35:48.937653638 +0100
|
||||
@@ -0,0 +1,10 @@
|
||||
+#source: rng-1.s
|
||||
+#objdump: -dr
|
||||
+
|
||||
+.*: file format .*
|
||||
+
|
||||
+Disassembly of section \.text:
|
||||
+
|
||||
+0+ <.*>:
|
||||
+.*: d53b2405 mrs x5, rndr
|
||||
+.*: d53b2426 mrs x6, rndrrs
|
53
SOURCES/binutils-s390-z16.patch
Normal file
53
SOURCES/binutils-s390-z16.patch
Normal file
@ -0,0 +1,53 @@
|
||||
diff -rup binutils.orig/gas/config/tc-s390.c binutils-2.30/gas/config/tc-s390.c
|
||||
--- binutils.orig/gas/config/tc-s390.c 2022-04-11 09:54:43.234516094 +0100
|
||||
+++ binutils-2.30/gas/config/tc-s390.c 2022-04-11 09:55:31.670168952 +0100
|
||||
@@ -292,9 +292,9 @@ s390_parse_cpu (const char * arg
|
||||
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
|
||||
{ STRING_COMMA_LEN ("z14"), STRING_COMMA_LEN ("arch12"),
|
||||
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
|
||||
- { STRING_COMMA_LEN (""), STRING_COMMA_LEN ("arch13"),
|
||||
+ { STRING_COMMA_LEN ("z15"), STRING_COMMA_LEN ("arch13"),
|
||||
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX },
|
||||
- { STRING_COMMA_LEN (""), STRING_COMMA_LEN ("arch14"),
|
||||
+ { STRING_COMMA_LEN ("z16"), STRING_COMMA_LEN ("arch14"),
|
||||
S390_INSTR_FLAG_HTM | S390_INSTR_FLAG_VX }
|
||||
};
|
||||
static struct
|
||||
diff -rup binutils.orig/gas/doc/c-s390.texi binutils-2.30/gas/doc/c-s390.texi
|
||||
--- binutils.orig/gas/doc/c-s390.texi 2022-04-11 09:54:43.236516079 +0100
|
||||
+++ binutils-2.30/gas/doc/c-s390.texi 2022-04-11 09:56:40.709674135 +0100
|
||||
@@ -18,7 +18,7 @@ and eleven chip levels. The architecture
|
||||
Architecture (ESA) and the newer z/Architecture mode. The chip levels
|
||||
are g5 (or arch3), g6, z900 (or arch5), z990 (or arch6), z9-109, z9-ec
|
||||
(or arch7), z10 (or arch8), z196 (or arch9), zEC12 (or arch10), z13
|
||||
-(or arch11), z14 (or arch12), z15 (or arch13), or arch14.
|
||||
+(or arch11), z14 (or arch12), z15 (or arch13), or z16 (or arch14).
|
||||
|
||||
@menu
|
||||
* s390 Options:: Command-line Options.
|
||||
@@ -72,7 +72,7 @@ are recognized:
|
||||
@code{z13} (or @code{arch11}),
|
||||
@code{z14} (or @code{arch12}),
|
||||
@code{z15} (or @code{arch13}), and
|
||||
-@code{arch14}.
|
||||
+@code{z16} (or @code{arch14}).
|
||||
|
||||
Assembling an instruction that is not supported on the target
|
||||
processor results in an error message.
|
||||
diff -rup binutils.orig/opcodes/s390-mkopc.c binutils-2.30/opcodes/s390-mkopc.c
|
||||
--- binutils.orig/opcodes/s390-mkopc.c 2022-04-11 09:54:43.491514252 +0100
|
||||
+++ binutils-2.30/opcodes/s390-mkopc.c 2022-04-11 09:58:24.228932192 +0100
|
||||
@@ -377,9 +377,11 @@ main (void)
|
||||
else if (strcmp (cpu_string, "z14") == 0
|
||||
|| strcmp (cpu_string, "arch12") == 0)
|
||||
min_cpu = S390_OPCODE_ARCH12;
|
||||
- else if (strcmp (cpu_string, "arch13") == 0)
|
||||
+ else if ((strcmp (cpu_string, "z15") == 0
|
||||
+ || strcmp (cpu_string, "arch13") == 0))
|
||||
min_cpu = S390_OPCODE_ARCH13;
|
||||
- else if (strcmp (cpu_string, "arch14") == 0)
|
||||
+ else if ((strcmp (cpu_string, "z16") == 0
|
||||
+ || strcmp (cpu_string, "arch14") == 0))
|
||||
min_cpu = S390_OPCODE_ARCH14;
|
||||
else {
|
||||
fprintf (stderr, "Couldn't parse cpu string %s\n", cpu_string);
|
@ -43,7 +43,7 @@
|
||||
Summary: A GNU collection of binary utilities
|
||||
Name: binutils%{?name_cross}%{?_with_debug:-debug}
|
||||
Version: 2.30
|
||||
Release: 114%{?dist}
|
||||
Release: 116%{?dist}
|
||||
License: GPLv3+
|
||||
URL: https://sourceware.org/binutils
|
||||
|
||||
@ -615,6 +615,14 @@ Patch97: binutils-plugin-error.patch
|
||||
# Lifetime: Fixed in 2.37
|
||||
Patch98: binutils-verdef.patch
|
||||
|
||||
# Purpose: Allow the AArch64 RNG extension to be used, and do not require v8.5 support.
|
||||
# Lifetime: Fixed in 2.39
|
||||
Patch99: binutils-aarch64-rng.patch
|
||||
|
||||
# Purpose: Allow z16 to be used as an alias for the arch14 extenstions to the s390 architecture.
|
||||
# Lifetime: Fixed in 2.39
|
||||
Patch100: binutils-s390-z16.patch
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
Provides: bundled(libiberty)
|
||||
@ -850,6 +858,8 @@ using libelf instead of BFD.
|
||||
%patch96 -p1
|
||||
%patch97 -p1
|
||||
%patch98 -p1
|
||||
%patch99 -p1
|
||||
%patch100 -p1
|
||||
|
||||
# We cannot run autotools as there is an exact requirement of autoconf-2.59.
|
||||
# FIXME - this is no longer true. Maybe try reinstating autotool use ?
|
||||
@ -1299,8 +1309,14 @@ exit 0
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
%changelog
|
||||
* Mon Apr 11 2022 Nick Clifton <nickc@redhat.com> - 2.30-116
|
||||
- Allow z16 to be used as an alias for the s390 architecture's arch14 extensions. (#2073384)
|
||||
|
||||
* Tue Apr 05 2022 Nick Clifton <nickc@redhat.com> - 2.30-115
|
||||
- Add support for the AArch64 architecture's RNG extension. (#2056691)
|
||||
|
||||
* Mon Mar 07 2022 Nick Clifton <nickc@redhat.com> - 2.30-114
|
||||
- DO not set version info on unversion symbols. (#2055179)
|
||||
- Do not set version info on unversion symbols. (#2055179)
|
||||
|
||||
* Wed Jan 19 2022 Nick Clifton <nickc@redhat.com> - 2.30-113
|
||||
- When searching for plugins, do not complain if incompatible ones are found. (#2039117)
|
||||
|
Loading…
Reference in New Issue
Block a user