diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2019-05-31 00:54:10 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2019-05-31 00:54:10 -0400 |
| commit | 8aba0643a55e4a67c0e7e01c1946900164514f4c (patch) | |
| tree | 9ab67676f7a30de7e1bef97ebbca7c3031b52a96 /src/codegen.cpp | |
| parent | 3702c278e3b2073bdf7aadb8bcdf1cd4156bec28 (diff) | |
| download | zig-8aba0643a55e4a67c0e7e01c1946900164514f4c.tar.gz zig-8aba0643a55e4a67c0e7e01c1946900164514f4c.zip | |
peer result locations with mixed runtime/comptime
```zig
export fn entry() void {
var c = true;
var a = u8(4);
const x = if (c) a else u32(8);
}
```
```llvm
define void @entry() #2 !dbg !35 {
Entry:
%c = alloca i1, align 1
%a = alloca i8, align 1
%x = alloca i32, align 4
store i1 true, i1* %c, align 1, !dbg !45
call void @llvm.dbg.declare(metadata i1* %c, metadata !39, metadata !DIExpression()), !dbg !46
store i8 4, i8* %a, align 1, !dbg !47
call void @llvm.dbg.declare(metadata i8* %a, metadata !42, metadata !DIExpression()), !dbg !48
%0 = load i1, i1* %c, align 1, !dbg !49
br i1 %0, label %Then, label %Else, !dbg !49
Then: ; preds = %Entry
%1 = load i8, i8* %a, align 1, !dbg !50
%2 = zext i8 %1 to i32, !dbg !50
br label %EndIf, !dbg !51
Else: ; preds = %Entry
br label %EndIf, !dbg !51
EndIf: ; preds = %Else, %Then
%3 = phi i32 [ %2, %Then ], [ 8, %Else ], !dbg !51
store i32 %3, i32* %x, align 4, !dbg !51
call void @llvm.dbg.declare(metadata i32* %x, metadata !43, metadata !DIExpression()), !dbg !52
ret void, !dbg !53
}
```
Diffstat (limited to 'src/codegen.cpp')
0 files changed, 0 insertions, 0 deletions
