On 11/02/13 09:50, Jakub Jelinek wrote:
On Sat, Nov 02, 2013 at 08:25:28AM -0500, Aldy Hernandez wrote:
Your patch mangling negative linear steps caused a regression in
simd-clones-2.c.  Well, it already had a failure, but now it has two
:).

The problem is that AFAIU, a linear step of 1, is mangled with just
'l', not 'l1'.

I am not completely sure of this, and was hoping Balaji could clear
this up, but on page 7 of the Intel vector ABI document, the example
for:

__declspec(vector(uniform(a), aligned(a:32), linear(k:1)))
extern float setArray(float *a, float x, int k)

...is mangled as _ZGVxN4ua32vl_setArray, and in the subsequent
explanatory paragraph, the document specifically says:

        ā€œlā€ indicates linear(k:1) – k is a linear variable whose stride is 1.

However, since the spec itself says nothing about a default linear
stride 1, I don't know whether this is an oversight in the BNF
grammar or a typo in the example.  Balaji?

Ah, I was reading just the grammar and it didn't look like the number was
optional.

Balaji has confirmed that a linear step of 1 is mangled as just 'l'. He has also confirmed that icc mangles it this way.

I have committed the patch to the branch.

Aldy

Reply via email to