[Intel-gfx] xf86-video-intel (git-13461a1): BROKEN with clang-3.2 due to __cpuid() not available?

Sedat Dilek sedat.dilek at gmail.com
Tue Feb 26 15:11:50 CET 2013


On Tue, Feb 26, 2013 at 2:50 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> On Tue, Feb 26, 2013 at 02:38:14PM +0100, Sedat Dilek wrote:
>> On Tue, Feb 26, 2013 at 2:33 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
>> > On Tue, Feb 26, 2013 at 02:20:26PM +0100, Sedat Dilek wrote:
>> >> On Tue, Feb 26, 2013 at 1:58 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
>> >> > On Tue, Feb 26, 2013 at 01:35:51PM +0100, Sedat Dilek wrote:
>> >> >> With xf86-video-intel-git13461a1 [1] I see this:
>> >> >>
>> >> >> [ build-log ]
>> >> >> ...
>> >> >>   CC     sna_cpu.lo
>> >> >> 8 warnings generated.
>> >> >>   CC     sna_damage.lo
>> >> >>   CC     sna_display.lo
>> >> >> sna_cpu.c:47:2: error: implicit declaration of function '__cpuid' is
>> >> >> invalid in C99 [-Werror,-Wimplicit-function-declaration]
>> >> >>         __cpuid(1, eax, ebx, ecx, edx);
>> >> >>         ^
>> >> > [snip]
>> >> >
>> >> >> So, clang should be treated differently?
>> >> >
>> >> > It doesn't use cpuid.h unless the compiler claims to be gcc >= 4. It
>> >> > would appear once again that clang is broken.
>> >>
>> >> Can you explain why clang is BROKEN in your eyes?
>> >
>> > Because it claims to be gcc 4, yet fails to provide a function/macro
>> > provided by gcc 4.
>>
>> Even clang latest-git has same file [1].
>> Any workaround you can imagine?
>
> && !defined(__clang__)
>
> Based on the bug reports I have, I would strongly recommend not to use
> clang as it is known to miscompile the ddx. My outlook is jaundiced
> though as people report the failures but not if it ever then succeeds in
> not exploding during use.

Can you explain what you mean with "miscompilation"?

Attached patch lets me compile intel-ddx with clang-3.2.

- Sedat -

> -Chris
>
> --
> Chris Wilson, Intel Open Source Technology Centre
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-sna-Workaround-clang-not-providing-__cpuid-function-.patch
Type: application/octet-stream
Size: 1031 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20130226/ed457364/attachment.obj>


More information about the Intel-gfx mailing list