Andrew Kelley
5467582444
saturating arithmetic modifications
...
* Remove the builtins `@addWithSaturation`, `@subWithSaturation`,
`@mulWithSaturation`, and `@shlWithSaturation` now that we have
first-class syntax for saturating arithmetic.
* langref: Clarify the behavior of `@shlExact`.
* Ast: rename `bit_shift_left` to `shl` and `bit_shift_right` to `shr`
for consistency.
* Air: rename to include underscore separator with consistency with
the rest of the ops.
* Air: add shl_exact instruction
* Use non-extended tags for saturating arithmetic, to keep it
simple so that all the arithmetic operations can be done the same
way.
- Sema: unify analyzeArithmetic with analyzeSatArithmetic
- implement comptime `+|`, `-|`, and `*|`
- allow float operands to saturating arithmetic
* `<<|` allows any integer type for the RHS.
* C backend: fix rebase conflicts
* LLVM backend: reduce the amount of branching for arithmetic ops
* zig.h: fix magic number not matching actual size of C integer types
2021-09-28 19:19:28 -07:00
..
2021-09-24 13:39:20 -04:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-04-29 15:54:04 -07:00
2021-09-01 17:54:07 -07:00
2021-06-21 17:03:03 -07:00
2021-05-08 14:45:21 -07:00
2021-09-24 13:39:20 -04:00
2021-09-13 21:37:11 -07:00
2021-08-29 11:57:32 +02:00
2021-06-21 17:03:03 -07:00
2021-09-20 16:48:42 -07:00
2021-06-21 17:03:03 -07:00
2021-09-24 17:33:06 -07:00
2021-06-21 17:03:03 -07:00
2021-06-14 00:16:40 +03:00
2021-05-08 14:45:21 -07:00
2021-08-01 12:36:04 -07:00
2021-06-05 22:08:36 -04:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-08-12 10:48:54 -07:00
2021-08-12 10:48:54 -07:00
2021-08-30 18:50:07 -04:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-06-10 08:33:42 +03:00
2021-08-23 15:30:57 -07:00
2021-08-24 22:35:37 -07:00
2021-09-28 12:00:35 -05:00
2021-09-28 12:00:35 -05:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-06-21 17:03:03 -07:00
2021-09-28 12:00:35 -05:00
2021-09-28 12:00:35 -05:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-08-07 20:34:28 -07:00
2021-08-07 20:34:28 -07:00
2021-06-21 17:03:03 -07:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-06-21 17:03:03 -07:00
2021-09-28 16:12:24 -07:00
2021-09-28 16:12:24 -07:00
2021-07-26 20:41:00 -04:00
2021-09-28 12:00:35 -05:00
2021-04-29 15:54:04 -07:00
2021-09-24 17:33:06 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-06-21 17:03:03 -07:00
2021-08-07 15:46:53 -07:00
2021-08-07 15:46:53 -07:00
2021-07-25 20:35:55 -04:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-09-28 19:19:28 -07:00
2021-07-26 20:05:48 -04:00
2021-06-09 23:54:23 -04:00
2021-09-20 20:51:31 -07:00
2021-09-20 20:51:31 -07:00
2021-06-21 17:03:03 -07:00
2021-06-21 17:03:03 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-09-25 22:18:43 -07:00
2021-09-25 22:18:43 -07:00
2021-05-08 14:45:21 -07:00
2021-05-08 14:45:21 -07:00
2021-09-24 13:39:20 -04:00
2021-09-23 13:17:06 -04:00
2021-09-20 20:51:31 -07:00
2021-08-06 09:10:50 +03:00
2021-09-20 20:51:31 -07:00
2021-07-06 12:42:18 +03:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-06-21 17:03:03 -07:00
2021-09-20 02:29:04 +02:00
2021-07-28 18:17:11 -04:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-09-27 23:11:00 -07:00
2021-09-27 23:11:00 -07:00
2021-09-01 17:54:07 -07:00
2021-09-01 17:54:06 -07:00
2021-06-21 17:03:03 -07:00
2021-09-24 13:39:20 -04:00
2021-06-21 17:03:03 -07:00
2021-05-08 14:45:21 -07:00
2021-06-21 17:03:03 -07:00
2021-09-21 23:21:07 -07:00