Displaying 2 results from an estimated 2 matches for "global_array_char".
2011 Jan 28
3
[LLVMdev] Call to non-constant memset() being generated where libc is not available
...ng without standard libraries, including no libc.
Somehow, this bitcode is being generated by plain array manipulation code:
%12 = add i8 %11, -19
%tmp35 = icmp sgt i32 %9, 1
%smax36 = select i1 %tmp35, i32 %9, i32 1
call void @llvm.memset.p0i8.i32(i8* getelementptr inbounds ([100 x i8]*
@global_array_char, i32 0, i32 0), i8 %12, i32 %smax36, i32 1, i1 false)
(global_array_char is an array of length 100, which only partially gets
used.)
This gets lowered by LLC to a library call to memset(), which cannot be
satisfied.
Any advice?
Thanks,
David Meyer
-------------- next part --------------
An HTML...
2011 Jan 31
0
[LLVMdev] Call to non-constant memset() being generated where libc is not available
...o libc.
>
> Somehow, this bitcode is being generated by plain array manipulation code:
>
> %12 = add i8 %11, -19
> %tmp35 = icmp sgt i32 %9, 1
> %smax36 = select i1 %tmp35, i32 %9, i32 1
> call void @llvm.memset.p0i8.i32(i8* getelementptr inbounds ([100 x
> i8]* @global_array_char, i32 0, i32 0), i8 %12, i32 %smax36, i32 1, i1
> false)
>
> (global_array_char is an array of length 100, which only partially gets
> used.)
That's not quite enough to go on. What's the original code, and what is
this? Are we looking at an array initialization here?
> This...