[llvm-commits] [PATCH] Adding the Linpack test to the test suite
Duncan Sands
baldrick at free.fr
Mon Nov 26 05:37:17 PST 2012
Hi Renato,
> I believe some of the array variables are uninitialized (ex. z[]). Can
> you initialize z[] together with y[] (around line 334, with i or
> i*fuzz, doesn't matter) and test with and without LTO/interalize? I
> believe that all other problems have a similar nature, but I need to
> be sure before attempting a fix.
>
> Initializing z[] should fix kernels 1, 3, 5, 7, 13, and 20.
it looks to me like z is initialized (to all zero bits). That's because z is
actually as1.Z, which as a C global variable is default initialized to zero.
In the IR you can see:
@as1 = common global %struct.Arrays zeroinitializer, align 32
Also, valgrind's memcheck and exp-sgcheck tools don't complain about any uses
of uninitialized variables.
But perhaps you mean that initializing to zero is wrong and it should be set to
something else?
Ciao, Duncan.
>
> cheers,
> --renato
>
> On 26 November 2012 13:21, Duncan Sands <baldrick at free.fr> wrote:
>> Hi Renato,
>>
>>
>> On 26/11/12 14:12, Renato Golin wrote:
>>>
>>> On 26 November 2012 05:29, Duncan Sands <baldrick at free.fr> wrote:
>>>>
>>>> LivermoreLoops is more interesting. With dragonegg it works fine as long
>>>> as
>>>> you don't do link-time optimization (which the testsuite does by
>>>> default). In
>>>> fact to get the failures it is enough to run "internalize" and then some
>>>> standard
>>>> set of optimization passes. I didn't get to the bottom of this yet.
>>>
>>>
>>> Hi Duncan,
>>>
>>> This makes a lot more sense than my previous assumption they had to do
>>> with random numbers (since if they did, it wouldn't pass every single
>>> time on my machine).
>>>
>>> I'll dig the failing tests for more info and try to reproduce this
>>> behaviour on my machine. Is there a way of getting the configuration
>>> used for that test-suite run?
>>
>>
>> I've attached the dragonegg generated IR file. Here's what happens on my
>> machine:
>>
>> $ lli kernel01.ll
>> 114.305175
>>
>> Which is correct.
>>
>> $ opt -std-link-opts kernel01.ll -o - | lli
>> -520779438942085797417621673404093110237783362328307722282109763584.000000
>>
>> Some kind of random number.
>>
>> Ciao, Duncan.
>
>
>
More information about the llvm-commits
mailing list