Andrew Kelley
a4aca78722
no-copy semantics for if expr
```zig
export fn entry() void {
var c = true;
var x = if (c) u8(4) 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 %Then, label %Else, !dbg !46
Then: ; preds = %Entry
br label %EndIf, !dbg !47
Else: ; preds = %Entry
br label %EndIf, !dbg !47
EndIf: ; preds = %Else, %Then
%1 = phi i32 [ 4, %Then ], [ 10, %Else ], !dbg !47
store i32 %1, i32* %x, align 4, !dbg !47
call void @llvm.dbg.declare(metadata i32* %x, metadata !42, metadata !DIExpression()), !dbg !48
ret void, !dbg !49
}
```
2019-05-30 23:16:11 -04:00
..
2019-05-30 23:16:11 -04:00
2019-05-30 15:46:11 -04:00
2019-05-30 15:46:11 -04:00
2019-04-25 00:06:54 -04:00
2019-04-25 00:06:54 -04:00
2019-04-04 22:07:15 -04:00
2019-04-04 22:07:15 -04:00
2019-04-26 14:24:35 -04:00
2018-07-07 00:25:32 -04:00
2018-09-05 23:23:11 -04:00
2018-09-11 17:29:18 -04:00
2018-01-11 21:02:30 -05:00
2019-04-17 15:58:20 -04:00
2019-05-09 20:11:56 -04:00
2019-05-09 12:48:38 -04:00
2019-05-29 14:39:13 -04:00
2019-03-11 10:26:08 -04:00
2019-05-30 23:16:11 -04:00
2019-05-29 16:55:02 -04:00
2019-04-16 19:12:20 -04:00
2019-04-16 19:12:20 -04:00
2019-03-12 18:09:40 -04:00
2017-12-04 19:22:34 +09:00
2016-09-19 11:54:01 -04:00
2019-05-15 21:50:56 -04:00
2019-04-25 00:06:54 -04:00
2016-12-01 21:08:12 -05:00
2019-05-30 23:16:11 -04:00
2019-05-19 15:53:32 -04:00
2019-05-30 23:16:11 -04:00
2019-04-13 16:55:59 -04:00
2019-05-15 21:50:56 -04:00
2019-04-27 16:17:07 -05:00
2019-05-29 16:55:02 -04:00
2019-04-17 15:58:20 -04:00
2019-05-29 18:18:18 -04:00
2019-05-20 23:14:49 +02:00
2019-04-24 23:34:19 -04:00
2019-03-23 13:46:50 -04:00
2019-03-22 16:08:19 -04:00
2019-05-29 19:09:58 -04:00
2019-02-28 10:11:32 -05:00
2017-07-08 17:59:10 -04:00
2017-07-08 17:59:10 -04:00
2017-09-14 01:46:47 -04:00
2019-05-27 20:59:19 -04:00
2019-05-29 16:55:02 -04:00
2019-05-29 19:09:58 -04:00
2019-05-29 19:09:58 -04:00
2019-05-16 12:55:45 -04:00
2019-04-25 00:06:57 -04:00
2019-05-27 19:47:10 -04:00
2019-05-29 14:39:13 -04:00
2019-04-17 15:58:20 -04:00
2019-04-17 15:58:20 -04:00
2018-09-18 00:13:17 -04:00
2018-10-27 11:35:01 -04:00
2018-07-23 00:35:53 -04:00
2019-02-28 09:27:07 -05:00
2019-02-28 09:27:07 -05:00
2019-02-28 09:27:07 -05:00
2019-05-16 12:55:45 -04:00
2019-05-16 12:55:45 -04:00
2019-05-20 17:04:00 +02:00
2019-02-28 09:19:18 -05:00