I don't see the code question, but I do see uses of the "inline" keyword in
ImageMagick. C99 inline does not mean what everyone seems to think it means,
and is not really a demand or even request to inline the function.
For example at -O1 on x86, this gives:
inline void bar(global int* arg) {
*arg = 0;
}
kernel void foo(global int* kernarg) {
bar(kernarg);
}
_foo: ## @foo
.cfi_startproc
## %bb.0:
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset %rbp, -16
movq %rsp, %rbp
.cfi_def_cfa_register %rbp
popq %rbp
jmp _bar ## TAILCALL
.cfi_endproc
With no definition for bar emitted. The definition is only emitted for extern
inline or static inline.
On 2019-06-03, 3:43 AM, "Dave Airlie" <[email protected]> wrote:
> > this is clearly inline not working, not relocs. We never get the
> > missing function to relocate it.
>
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev