aboutsummaryrefslogtreecommitdiff
path: root/src/ir_print.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2019-05-30 23:25:37 -0400
committerAndrew Kelley <andrew@ziglang.org>2019-05-30 23:25:37 -0400
commit95d9835898052835ce767be2fcc0e4344a704b96 (patch)
tree6ae7dde24db25b797aac4e7ec18ddca4d1c6c713 /src/ir_print.cpp
parenta4aca787229e3b0b3dc992b747cc72a561c2078c (diff)
downloadzig-95d9835898052835ce767be2fcc0e4344a704b96.tar.gz
zig-95d9835898052835ce767be2fcc0e4344a704b96.zip
no-copy semantics for nested if
```zig export fn entry() void { var c = true; var x = if (c) u8(4) else if (c) u16(100) else u32(10); } ``` ```llvm define void @entry() #2 !dbg !35 { Entry: %c = alloca i1, align 1 %x = alloca i32, align 4 store i1 true, i1* %c, align 1, !dbg !44 call void @llvm.dbg.declare(metadata i1* %c, metadata !39, metadata !DIExpression()), !dbg !45 %0 = load i1, i1* %c, align 1, !dbg !46 br i1 %0, label %Then2, label %Else, !dbg !46 Else: ; preds = %Entry %1 = load i1, i1* %c, align 1, !dbg !47 br i1 %1, label %Then, label %Else1, !dbg !47 Then: ; preds = %Else br label %EndIf, !dbg !48 Else1: ; preds = %Else br label %EndIf, !dbg !48 Then2: ; preds = %Entry br label %EndIf3, !dbg !49 EndIf: ; preds = %Else1, %Then %2 = phi i32 [ 100, %Then ], [ 10, %Else1 ], !dbg !48 br label %EndIf3, !dbg !49 EndIf3: ; preds = %EndIf, %Then2 %3 = phi i32 [ 4, %Then2 ], [ %2, %EndIf ], !dbg !49 store i32 %3, i32* %x, align 4, !dbg !49 call void @llvm.dbg.declare(metadata i32* %x, metadata !42, metadata !DIExpression()), !dbg !50 ret void, !dbg !51 } ```
Diffstat (limited to 'src/ir_print.cpp')
0 files changed, 0 insertions, 0 deletions