[Bug 92214] Flightgear crashes during splashboot with R600 driver, LLVM 3.7.0 and mesa 11.0.2

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Oct 22 14:54:39 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=92214

--- Comment #34 from Barto <mister.freeman at laposte.net> ---
Craig Tooper has made a suggestion who solves the problem :

the idea is to "remove" the unsupported CPU features, by adding "-sse4.1" in
MAttrs object when "util_cpu_caps.has_sse4_1 == false",

so if I add this to Jose's patch the bug is solved :

+   if (!util_cpu_caps.has_sse4_1) {
+#if HAVE_LLVM >= 0x0304
+      MAttrs.push_back("-sse4.1");
+#else
+      MAttrs.push_back("-sse41");
+#endif
+   }

this logic is not really natural for a developper who wants to use llvm lib,
this developper would think that llvm will never use an unsupported cpu feature
if this developper only passes good cpu features to the compiler,

it seems that llvm will try to use by himself SSE4.1 even if the developper
didn't add explicitely "+sse4.1" in his source code,

we have this problem because llvm 3.7.0 treats pentium dual core cpu as
"penryn" cpu, "penryn" supports SSE4 but not pentium dual core, 

in my logic llvm should be more stric, rigorous when he tries to associate a
cpu with a cpu name, a cpu name should reflect exactly the cpu features,

maybe a better solution would be to create a new cpu name in llvm source code,
a cpu name who targets only cpu family 6 model 23 : "dualcore" in order to
avoid this SSE4 problem,

but I am not a llvm specialist

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20151022/05c22ce0/attachment.html>


More information about the dri-devel mailing list