[PATCH v5 12/20] objcopy tests for Object Attributes v2
Richard Earnshaw (lists)
Richard.Earnshaw@arm.com
Wed Jul 9 14:11:05 GMT 2025
On 07/07/2025 17:49, Matthieu Longo wrote:
> ---
> .../binutils-all/aarch64/build-attributes.d | 52 +++++++++++++++++++
> .../binutils-all/aarch64/build-attributes.s | 31 +++++++++++
> 2 files changed, 83 insertions(+)
> create mode 100644 binutils/testsuite/binutils-all/aarch64/build-attributes.d
> create mode 100644 binutils/testsuite/binutils-all/aarch64/build-attributes.s
>
> diff --git a/binutils/testsuite/binutils-all/aarch64/build-attributes.d b/binutils/testsuite/binutils-all/aarch64/build-attributes.d
> new file mode 100644
> index 00000000000..90e69d5d4b8
> --- /dev/null
> +++ b/binutils/testsuite/binutils-all/aarch64/build-attributes.d
> @@ -0,0 +1,52 @@
> +#name: Copy AEABI build attributes from an object to another.
> +#PROG: objcopy
> +#source: build-attributes.s
> +#readelf: -A
> +
> +Subsections:
> + - Name: aeabi_feature_and_bits
> + Scope: public
> + Length: 35
> + Comprehension: optional
> + Encoding: ULEB128
> + Values:
> + Tag_Feature_BTI: 1 \(0x1\)
> + Tag_Feature_PAC: 0 \(0x0\)
> + Tag_Feature_GCS: 1 \(0x1\)
> +
> + - Name: aeabi_pauthabi
> + Scope: public
> + Length: 23
> + Comprehension: required
> + Encoding: ULEB128
> + Values:
> + Tag_PAuth_Schema: 1 \(0x1\)
> +
> + - Name: foo_1
> + Scope: private
> + Length: 20
> + Comprehension: optional
> + Encoding: ULEB128
> + Values:
> + Tag_unknown_1: 1 \(0x1\)
> + Tag_unknown_2: 0 \(0x0\)
> + Tag_unknown_3: 0 \(0x0\)
> + Tag_unknown_4: 0 \(0x0\)
> +
> + - Name: foo_2
> + Scope: private
> + Length: 16
> + Comprehension: optional
> + Encoding: ULEB128
> + Values:
> + Tag_unknown_0: 1 \(0x1\)
> + Tag_unknown_1: 1 \(0x1\)
> +
> + - Name: foo_3
> + Scope: private
> + Length: 26
> + Comprehension: optional
> + Encoding: NTBS
> + Values:
> + Tag_unknown_0: "hello"
> + Tag_unknown_1: "world"
> diff --git a/binutils/testsuite/binutils-all/aarch64/build-attributes.s b/binutils/testsuite/binutils-all/aarch64/build-attributes.s
> new file mode 100644
> index 00000000000..bd9665f9f6d
> --- /dev/null
> +++ b/binutils/testsuite/binutils-all/aarch64/build-attributes.s
> @@ -0,0 +1,31 @@
> +.aeabi_subsection aeabi_pauthabi, required, uleb128
> +.aeabi_attribute Tag_PAuth_Schema, 1
> +
> +.aeabi_subsection aeabi_feature_and_bits, optional, uleb128
> +.aeabi_attribute Tag_Feature_BTI, 1
> +.aeabi_attribute Tag_Feature_PAC, 0
> +.aeabi_attribute Tag_Feature_GCS, 1
> +
> +.aeabi_subsection foo_1, optional, uleb128
> +.aeabi_attribute 1, 1
> +
> +.aeabi_subsection foo_2, optional, uleb128
> +.aeabi_attribute 0, 1
> +.aeabi_attribute 1, 1
> +
> +.aeabi_subsection foo_1, optional, uleb128
> +.aeabi_attribute 2, 0
> +
> +.aeabi_subsection foo_2, optional, uleb128
> +.aeabi_attribute 1, 1
> +
> +.aeabi_subsection foo_1, optional, uleb128
> +.aeabi_attribute 2, 0
> +
> +.aeabi_subsection foo_1, optional, uleb128
> +.aeabi_attribute 3, 0
> +.aeabi_attribute 4, 0
> +
> +.aeabi_subsection foo_3, optional, ntbs
> +.aeabi_attribute 0, "hello"
> +.aeabi_attribute 1, "world"
OK.
R.
More information about the Binutils
mailing list