From: Erik S. <esc...@pe...> - 2011-10-31 15:37:12
|
The aggressive inlining (without having to program compiler intrinsics or perform header file gymnastics) is one of the most compelling features of OpenCL (and an LLVM implementation). Yes, I'm using the "correct" clobber specifiers, as you suggest. -erik 2011/10/31 Pekka Jääskeläinen <pek...@tu...>: > On 10/31/2011 04:24 PM, Erik Schnetter wrote: >> >> However, I am quite certain (but can't guarantee it) that the other >> vector elements of the respective xmm register are unused. That is at >> least the calling convention for x86; of course, I don't know whether > > Yes, that might be true for calls. However, with OpenCL C kernels we want > to inline functions aggressively. In that case your asm clobber list has > to include the whole xmm register. This means that the code that preceeds > the call to the inline asm block has to save the XMM if it uses the other > elements before entering your inline asm block. > > -- > Pekka > -- Erik Schnetter <esc...@pe...> http://www.cct.lsu.edu/~eschnett/ AIM: eschnett247, Skype: eschnett, Google Talk: sch...@gm... |