diff options
author | Pekka Enberg <penberg@kernel.org> | 2011-08-29 19:26:17 +0300 |
---|---|---|
committer | Pekka Enberg <penberg@kernel.org> | 2011-08-29 19:34:21 +0300 |
commit | 70b2c17c095d393a7313c0681e3d6cc58bb01147 (patch) | |
tree | 10d7a6b2dc0a1f1836f36d2564c72a445a66a38c | |
parent | deb11bd4ee6ed46bce6a5e35a69ada519d81a0a8 (diff) | |
download | sparse-70b2c17c095d393a7313c0681e3d6cc58bb01147.tar.gz |
sparse, llvm: Cleanup output_data()
Signed-off-by: Pekka Enberg <penberg@kernel.org>
-rw-r--r-- | sparse-llvm.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sparse-llvm.c b/sparse-llvm.c index f5771ba1..f89f7a73 100644 --- a/sparse-llvm.c +++ b/sparse-llvm.c @@ -808,15 +808,17 @@ static void output_fn(LLVMModuleRef module, struct entrypoint *ep) static int output_data(LLVMModuleRef module, struct symbol *sym) { struct expression *initializer = sym->initializer; - unsigned long long initial_value = 0; + LLVMValueRef initial_value; LLVMValueRef data; const char *name; if (initializer) { if (initializer->type == EXPR_VALUE) - initial_value = initializer->value; + initial_value = LLVMConstInt(symbol_type(sym), initializer->value, 1); else assert(0); + } else { + initial_value = LLVMConstInt(symbol_type(sym), 0, 1); } name = show_ident(sym->ident); @@ -825,7 +827,7 @@ static int output_data(LLVMModuleRef module, struct symbol *sym) LLVMSetLinkage(data, data_linkage(sym)); - LLVMSetInitializer(data, LLVMConstInt(symbol_type(sym), initial_value, 1)); + LLVMSetInitializer(data, initial_value); return 0; } |