x86: whitespace in {}-enclosed syntax elements

Cui, Lili lili.cui@intel.com
Thu Jul 11 10:18:03 GMT 2024


> Hello,
> 
> in the context of my scrubber rework and further emphasized by Lili's
> processing of {dfv=...} for CCMPcc/CTESTcc (permitting whitespace everywhere
> it makes sense) I came to notice that for pseudo prefixes as well as AVX512
> syntax elements (broadcast, static rounding, SAE) we presently don't permit
> whitespace inside the figure braces. With [1] making comments work as
> intended, sensible things like
> 
> 	{/*e*/vex} vmaxps ymm0, ymm1, ymm2
> 	{vex/*2*/} vmaxps ymm0, ymm1, ymm2
> 	vmaxps	zmm0, zmm1, zmm2{/*rn-*/sae}
> 
> are going to break, simply because right now
> 
> 	{ vex} vmaxps ymm0, ymm1, ymm2
> 	{vex } vmaxps ymm0, ymm1, ymm2
> 	vmaxps	zmm0, zmm1, zmm2{ sae}
> 
> don't work. Question therefore is: Was there any particular reason to not
> permit whitespace there? If there was, and if there is a reason to stick to that,
> what's the suggestion for the examples above? Otherwise my plan would be
> to make an up-front patch permitting whitespace immediately inside figure
> braces, yet perhaps not around the '-' in e.g. {rn-sae}.
> 
I think this patch is good, llvm also supports whitespace inside the figure braces. 

Thanks,
Lili.

> 
> [1] https://sourceware.org/pipermail/binutils/2024-June/135212.html


More information about the Binutils mailing list