aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2020-07-28 21:57:13 -0700
committerAndrew Kelley <andrew@ziglang.org>2020-07-29 02:29:37 -0700
commit4beff80b2f30ad85f2127b1281053b8b25b0cc33 (patch)
tree9937e9ee95d3060afa021449439caefd6476b5c2 /src/ir.cpp
parent2b8e7deeda5d4d0d74f42265a4ddf466f91c8fc2 (diff)
downloadzig-4beff80b2f30ad85f2127b1281053b8b25b0cc33.tar.gz
zig-4beff80b2f30ad85f2127b1281053b8b25b0cc33.zip
stage2: codegen handles undefined values
* `optimize_mode` is passed to `link.File` and stored there * improve the debugging function `Module.dumpInst` * get rid of `Value.the_one_possible_value` in favor of a few more specific values for different types. This is less buggy, one less footgun. * `Type.onePossibleValue` now returns a `?Value` instead of `bool`. * codegen handles undefined values. `undef` is a new `MCValue` tag. It uses 0xaa values depending on optimization mode. However optimization mode does not yet support scope overrides. * link.zig: move the `Options` field from `File.Elf` and `File.C` to the base struct. - fix the Tag enum to adhere to style conventions * ZIR now supports emitting undefined values. * Fix the logic of comptime math to properly compare against zero using the `compareWithZero` function.
Diffstat (limited to 'src/ir.cpp')
0 files changed, 0 insertions, 0 deletions