[PATCH] aarch64: Add support for FEAT_SVE2p2 and FEAT_SME2p2

Jan Beulich jbeulich@suse.com
Sun Jul 6 14:19:39 GMT 2025


On 06.07.2025 11:52, Jan Beulich wrote:
> On 04.07.2025 20:56, Alice Carlotti wrote:
>> I'll push this next week if there are no issues raised.  (For reference, I
>> wrote the tests by hand to verify the implementation.)
>>
>>
>> diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
>> index 13649e8f3d508f61145f3d855af377a2d95e2168..29a81d17112b15a09301a9cb518265e08a316c27 100644
>> --- a/gas/config/tc-aarch64.c
>> +++ b/gas/config/tc-aarch64.c
>> @@ -10797,6 +10797,8 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = {
>>    {"sme-b16b16",	AARCH64_FEATURE (SME_B16B16),
>>  			AARCH64_FEATURES (2, SVE_B16B16, SME2)},
>>    {"pops",		AARCH64_FEATURE (PoPS), AARCH64_NO_FEATURES},
>> +  {"sve2p2",		AARCH64_FEATURE (SVE2p2), AARCH64_FEATURE (SVE2)},
>> +  {"sme2p2",		AARCH64_FEATURE (SME2p2), AARCH64_FEATURE (SME2)},
>>    {NULL,		AARCH64_NO_FEATURES, AARCH64_NO_FEATURES},
>>  };
>>  
>> @@ -10817,13 +10819,15 @@ static const struct aarch64_virtual_dependency_table aarch64_dependencies[] = {
>>    {AARCH64_FEATURE (SSVE_FP8DOT2), AARCH64_FEATURE (FP8DOT2_SVE)},
>>    {AARCH64_FEATURE (SME_F16F16), AARCH64_FEATURE (SME_F16F16_F8F16)},
>>    {AARCH64_FEATURE (SME_F8F16), AARCH64_FEATURE (SME_F16F16_F8F16)},
>> -  {AARCH64_FEATURE (SVE2p1), AARCH64_FEATURES (3, SVE2p1_SME, SVE2p1_SME2,
>> -					       SVE2p1_SME2p1)},
> 
> Hmm, I may not be understanding the purpose of this table correctly, even
> if the comment ahead of it looks to be pretty clear. While the above was
> there before, ...
> 
>> +  {AARCH64_FEATURE (SVE), AARCH64_FEATURE (SVE_SME2p2)},
> 
> ... this strikes me as particularly odd: Why would enabling SVE imply
> anything SME-ish?

Hmm, I think I follow now - there is a previously SVE-only insn which now
becomes "SVE || SME2p2". I'm sorry for the noise here.

Jan


More information about the Binutils mailing list