[Mesa-dev] Debugging crashes in llvm
Jose Fonseca
jfonseca at vmware.com
Tue May 10 07:42:30 PDT 2011
It could be related with, https://bugs.freedesktop.org/show_bug.cgi?id=36738 , which I don't have much clue about ,given I wasn't able to reproduce locally so far.
It would be really useful if you could tell me the nature of the crash. Is it because
- memory pointed by (esi+ebx) is undefined;
- memory pointed by (esi+ebx) is not 4-byte aligned
And then go up in the stack frame and inspect the pointers given in draw->pt.user and see which pointer (if any) is related with (esi+ebx).
Jose
----- Original Message -----
> Hi,
>
> I recently stumbled over regular crashes with llvmpipe on llvm-2.9 in
> windows:
>
> 0261908D mov ebx,dword ptr [esp+33Ch]
> 02619094 lea ebx,[ebx+3]
> 02619097 imul ebx,edx
> 0261909A add ebx,ecx
> 0261909C insertps xmm0,dword ptr [esi+ebx],30h <--
> 026190A3 mov ecx,dword ptr [ebp+8]
> 026190A6 mov edx,dword ptr [ecx]
> 026190A8 movss xmm2,dword ptr [edx+100h]
>
> > libEGL.dll!llvm_pipeline_generic(draw_pt_middle_end *
> > middle=0x00000000, const draw_fetch_info * fetch_info=0x0006e828,
> > const draw_prim_info * prim_info=0x0006e838) Line 262 + 0x12
> > bytes C
> libEGL.dll!llvm_middle_end_linear_run(draw_pt_middle_end * middle=,
> unsigned int start=, unsigned int count=, unsigned int prim_flags=)
> Line 364 + 0x13 bytes C
> libEGL.dll!vsplit_run_linear(draw_pt_front_end *
> frontend=0x000003ff, unsigned int start=0, unsigned int count=150)
> Line 61 + 0x11 bytes C
> libEGL.dll!draw_pt_arrays(draw_context * draw=0x00000000, unsigned
> int prim=4, unsigned int start=0, unsigned int count=3) Line 115 C
> libEGL.dll!draw_vbo(draw_context * draw=0x00000000, const
> pipe_draw_info * info=0x00000000) Line 491 + 0x13 bytes C
> libEGL.dll!llvmpipe_draw_vbo(pipe_context * pipe=0x021dc790, const
> pipe_draw_info * info=0x0006e918) Line 86 C
> libEGL.dll!st_draw_vbo(gl_context * ctx=0x025a14b0, const
> gl_client_array * * arrays=0x02661810, const _mesa_prim *
> prims=0x0006e97c, unsigned int nr_prims=1, const _mesa_index_buffer *
> ib=0x00000000, unsigned char index_bounds_valid='', unsigned int
> min_index=0, unsigned int max_index=149) Line 750 + 0xf bytes C
> libEGL.dll!vbo_draw_arrays(gl_context * ctx=0x00000000, unsigned
> int
> mode=4, int start=0, int count=150, unsigned int numInstances=1)
> Line
> 645 + 0x28 bytes C
> libEGL.dll!vbo_exec_DrawArrays(unsigned int mode=4, int start=0,
> int
> count=150) Line 675 + 0x11 bytes C
> [...]
>
> What Information can I gather to find the cause for the crash?
>
>
>
> Regards
> Andreas Pokorny
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
More information about the mesa-dev
mailing list