Skip to content
  • Roland Scheidegger's avatar
    draw: always call util_cpu_detect() in draw context creation. · 1e003b44
    Roland Scheidegger authored
    Since disabling denorms in draw_vbo() we require the util_cpu_caps to be
    initialized there. Hence add another util_cpu_detect() call in
    draw_create_context() which should ensure this.
    (There is another call in draw_get_option_use_llvm() which only gets called
    with x86 (not x86_64) but calling it always there wouldn't help since it most
    likely wouldn't get called when compiling without llvm, so leave it alone
    there.)
    This fixes https://bugs.freedesktop.org/show_bug.cgi?id=66806
    
    .
    (Because util_cpu_caps wasn't initialized when first calling util_fpstate_get()
    hence it returning zero, but it would later get initialized by rtasm translate
    code hence when draw call returned it unmasked all exceptions by calling
    util_fpstate_set(). This was happening only with DRAW_USE_LLVM=0 or not
    compiling with llvm, otherwise the llvm init code was calling it on time too.)
    
    Reviewed-by: default avatarJose Fonseca <jfonseca@vmware.com>
    Reviewed-by: default avatarZack Rusin <zackr@vmware.com>
    Tested-by: default avatarVinson Lee <vlee@freedesktop.org>
    1e003b44