| ... | @@ -233,30 +233,6 @@ pub fn addCases(ctx: *TestContext) !void { | ... | @@ -233,30 +233,6 @@ pub fn addCases(ctx: *TestContext) !void { |
| 233 | \\} | 233 | \\} |
| 234 | , ""); | 234 | , ""); |
| 235 | } | 235 | } |
| 236 | // This will make a pretty deep call stack, so this test can only be enabled | | |
| 237 | // on hosts where Zig's linking strategy can honor the 16 MiB (default) we | | |
| 238 | // link the self-hosted compiler with. | | |
| 239 | const host_supports_custom_stack_size = @import("builtin").target.os.tag == .linux; | | |
| 240 | if (host_supports_custom_stack_size) { | | |
| 241 | var case = ctx.exeFromCompiledC("@setEvalBranchQuota", .{}); | | |
| 242 | | | |
| 243 | // TODO when adding result location support to function calls, revisit this test | | |
| 244 | // case. It can go back to what it was before, with `y` being comptime known. | | |
| 245 | // Because the ret_ptr will passed in with the inline fn call, and there will | | |
| 246 | // only be 1 store to it, and it will be comptime known. | | |
| 247 | case.addCompareOutput( | | |
| 248 | \\pub export fn main() i32 { | | |
| 249 | \\ @setEvalBranchQuota(1001); | | |
| 250 | \\ const y = rec(1001); | | |
| 251 | \\ return y - 1; | | |
| 252 | \\} | | |
| 253 | \\ | | |
| 254 | \\inline fn rec(n: i32) i32 { | | |
| 255 | \\ if (n <= 1) return n; | | |
| 256 | \\ return rec(n - 1); | | |
| 257 | \\} | | |
| 258 | , ""); | | |
| 259 | } | | |
| 260 | { | 236 | { |
| 261 | var case = ctx.exeFromCompiledC("control flow", .{}); | 237 | var case = ctx.exeFromCompiledC("control flow", .{}); |
| 262 | | 238 | |