aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/print_llvm.cpp
diff options
context:
space:
mode:
authorgingerBill <ginger.bill.22@gmail.com>2016-08-16 20:08:40 +0100
committergingerBill <ginger.bill.22@gmail.com>2016-08-16 20:08:40 +0100
commite8530ca883edd79c188443ced54cea2c5d3ad4ed (patch)
tree4e264d51cbbbe41f0dc7eed16bcdbb73f372c844 /src/codegen/print_llvm.cpp
parent2d49a615630eb27d95c7cde67722f419a1977996 (diff)
Win32 Demo: OpenGL Context
Diffstat (limited to 'src/codegen/print_llvm.cpp')
-rw-r--r--src/codegen/print_llvm.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/codegen/print_llvm.cpp b/src/codegen/print_llvm.cpp
index 36b9156de..4c358f31b 100644
--- a/src/codegen/print_llvm.cpp
+++ b/src/codegen/print_llvm.cpp
@@ -210,7 +210,15 @@ void ssa_print_exact_value(gbFile *f, ssaModule *m, ExactValue value, Type *type
ssa_fprintf(f, "\"");
} break;
case ExactValue_Integer: {
- ssa_fprintf(f, "%lld", value.value_integer);
+ if (is_type_pointer(get_base_type(type))) {
+ if (value.value_integer == 0) {
+ ssa_fprintf(f, "null");
+ } else {
+ GB_PANIC("TODO(bill): Pointer constant");
+ }
+ } else {
+ ssa_fprintf(f, "%lld", value.value_integer);
+ }
} break;
case ExactValue_Float: {
u64 u = *cast(u64*)&value.value_float;