[LLVMdev] Why extra 4 bytes on stack ???
Umesh Kalappa
umesh.kalappa0 at gmail.com
Thu Feb 2 00:25:51 PST 2012
Hi There ,
Again ,I'm newbie to LLVM and please pardon me ..if you guys feel that
,the below question is very basic :)
Here i go ,compiled the below sample with clang i.e *clang enum.c -S
-emit-llvm* and there respective file are
$ cat enum.c
int main()
{
enum type{one=1,two,three} s;
s = one;
return s;
}
$ cat enum.s
; ModuleID = 'enum.c'
target datalayout =
"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32-n8:16:32-S32"
target triple = "i386-pc-cygwin"
define i32 @main() nounwind {
%1 = alloca i32, align 4
%s = alloca i32, align 4
store i32 0, i32* %1
store i32 1, i32* %s, align 4
%2 = load i32* %s, align 4
ret i32 %2
}
*Question :* Why there is extra 4 bytes on stack i.e *"%1 = alloca i32,
align 4"* ???
Thanks
Umesh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120202/3906bed1/attachment.html>
More information about the llvm-dev
mailing list