Andrew Kelley a71d00a4d5 std.crypto.25519.field: avoid excessive inlining
This valid zig code produces reasonable LLVM IR, however, on the
wasm32-wasi target, when using the wasmtime runtime, the number of
locals of the `isSquare` function exceeds 50000, causing wasmtime
to refuse to execute the binary.

The `inline` keyword in Zig is intended to be used only where it is
semantically necessary; not as an optimization hint. Otherwise, this may
produce unwanted binary bloat for the -OReleaseSmall use case.

In the future, it is possible that we may end up with both `inline`
keyword, which operates as it does in status quo, and additionally
`callconv(.inline_hint)` which has no semantic impact, but may be
observed by optimization passes.

In this commit, I also cleaned up `isSquare` by eliminating an
unnecessary mutable variable, replacing it with several local constants.

Closes #11947.
2022-06-27 19:11:55 -07:00
..
2022-04-24 23:01:06 -04:00
2022-06-12 19:17:41 +03:00
2022-06-07 21:27:07 +03:00
2022-05-24 22:48:51 -04:00
2022-05-13 16:43:59 -04:00
2022-03-08 20:38:12 +02:00
2022-04-20 17:18:06 -07:00
2022-01-07 00:06:06 -05:00
2022-06-03 20:21:20 +03:00
2022-04-14 10:12:45 -07:00
2022-06-12 19:17:41 +03:00
2022-06-03 20:21:20 +03:00
2022-06-07 21:27:07 +03:00
2022-06-21 11:21:45 +02:00
2022-05-26 21:58:19 -07:00
2022-05-24 22:48:51 -04:00
2022-06-07 21:27:07 +03:00
2022-05-13 16:43:59 -04:00
2022-04-15 17:01:01 -05:00
2022-01-07 00:06:06 -05:00