| Thread overview | ||||||||
|---|---|---|---|---|---|---|---|---|
|
March 15, 2012 Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Hey, Whats the word on this issue: http://d.puremagic.com/issues/show_bug.cgi?id=5689 Its kinda killing my ability to profile my code here, since the program is no longer valid when compiled with -profile. -- James Miller | ||||
March 15, 2012 Re: Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Posted in reply to James Miller | "James Miller" <james@aatch.net> wrote in message news:mailman.693.1331810915.4860.digitalmars-d@puremagic.com... > Hey, > > Whats the word on this issue: > > http://d.puremagic.com/issues/show_bug.cgi?id=5689 > > Its kinda killing my ability to profile my code here, since the program is no longer valid when compiled with -profile. > > -- > James Miller Yum, looks like another xmm codegen bug. I'll add it to my todo list. | |||
March 15, 2012 Re: Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Daniel Murphy | On 16 March 2012 03:00, Daniel Murphy <yebblies@nospamgmail.com> wrote:
> "James Miller" <james@aatch.net> wrote in message news:mailman.693.1331810915.4860.digitalmars-d@puremagic.com...
>> Hey,
>>
>> Whats the word on this issue:
>>
>> http://d.puremagic.com/issues/show_bug.cgi?id=5689
>>
>> Its kinda killing my ability to profile my code here, since the program is no longer valid when compiled with -profile.
>>
>> --
>> James Miller
>
> Yum, looks like another xmm codegen bug. I'll add it to my todo list.
>
>
Out of curiosity, what does -profile do that could cause this bug? Seems like an odd cause, since in my specific case, I don't even get an error, just crazy values, -2^31 to ~10^38, in later calculations
--
James Miller
| |||
March 16, 2012 Re: Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Posted in reply to James Miller | "James Miller" <james@aatch.net> wrote in message news:mailman.707.1331841671.4860.digitalmars-d@puremagic.com... > Out of curiosity, what does -profile do that could cause this bug? Seems like an odd cause, since in my specific case, I don't even get an error, just crazy values, -2^31 to ~10^38, in later calculations > > -- > James Miller IIRC the code that actually does -profile is in the backend, and is done with very low-level calls. Inserting calls can change the register usage patterns, interfere with cse elimination, etc. I assume this is what is happening, and with x64 and doubles that mean xmm codegen, which is still relatively new and buggy. Could you post the disassembly? (with intel syntax please) It might be possible to work around it by changing the calling convention of uniform and/or the functions it calls. | |||
March 16, 2012 Re: Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Daniel Murphy | On 16 March 2012 14:36, Daniel Murphy <yebblies@nospamgmail.com> wrote:
> "James Miller" <james@aatch.net> wrote in message news:mailman.707.1331841671.4860.digitalmars-d@puremagic.com...
>> Out of curiosity, what does -profile do that could cause this bug? Seems like an odd cause, since in my specific case, I don't even get an error, just crazy values, -2^31 to ~10^38, in later calculations
>>
>> --
>> James Miller
>
> IIRC the code that actually does -profile is in the backend, and is done with very low-level calls. Inserting calls can change the register usage patterns, interfere with cse elimination, etc. I assume this is what is happening, and with x64 and doubles that mean xmm codegen, which is still relatively new and buggy.
>
> Could you post the disassembly? (with intel syntax please)
>
> It might be possible to work around it by changing the calling convention of uniform and/or the functions it calls.
My code uses floats, so I just tested using floats instead of doubles and while I don't get the error, I do get incorrect values. I'll post the code I used and the disassembly to bugzilla.
--
James Miller
| |||
March 16, 2012 Re: Issue 5689 | ||||
|---|---|---|---|---|
| ||||
Posted in reply to James Miller | "James Miller" <james@aatch.net> wrote in message news:mailman.744.1331866908.4860.digitalmars-d@puremagic.com... > My code uses floats, so I just tested using floats instead of doubles and while I don't get the error, I do get incorrect values. I'll post the code I used and the disassembly to bugzilla. > > -- > James Miller It might be worth trying it against this patch: https://github.com/D-Programming-Language/dmd/pull/769 On the off chance that I've already fixed it. | |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply