Jeroen van Rijn
f34ba44bf8
big: Add shl, shr and shrmod.
2021-08-11 20:59:51 +02:00
Jeroen van Rijn
d4d863c4db
big: Add mod_power_of_two.
2021-08-11 20:59:51 +02:00
Jeroen van Rijn
78c0877994
big: Add get(a, type) and get_float.
2021-08-11 20:59:51 +02:00
Jeroen van Rijn
1d0b37c1d8
big: add shl1, shr1.
2021-08-11 20:59:51 +02:00
Jeroen van Rijn
7648f2e655
big: Finish big ZII refactor.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
d9efa6c8b5
big: More ZII refactoring.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
2e372b33a3
big: More ZII refactoring.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
687c211a58
big: ZII.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
4eadd0867d
big: Continuing to refactor.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
9dba17cf87
bigint: refactor to big.Int instead of bigint.Int.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
baef0c291d
bigint: Added some more helpers.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
cccd290834
bigint: Add is_power_of_two helper.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
5af85aed3d
bigint: itoa support for arbitrary precision if is_power_of_two(radix)
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
e600e5947b
bigint: remove unnecessary boundary checks.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
d7ae611f76
bigint: itoa now writes backwards directly, no need to reverse after.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
04a83eb9f7
bigint: pass size to itoa_raw.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
341e8a3c99
bigint: itoa works for numbers <= 120 bits.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
e3d8ac559d
bigint: Fast paths for radix code.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
767948ab46
bigint: log_n for bases that fit within one DIGIT or are a power of two.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
dbcd8da733
bigint: Working on itoa and logn.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
905d5459a9
bigint: Add count_bits and more prep.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
dfd5a993a2
bigint: Prepare for multiplication.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
daceaa65f5
bigint: Add substractin with immediate.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
c2c07f07db
Add single DIGIT addition.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
c5cbd3260a
bigint: Add prototypes for immediate add+sub.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
d57e1be89f
bigint: Improve add.
2021-08-11 20:59:50 +02:00
Jeroen van Rijn
18dda6ff9d
Start of core:math/bigint
...
We have:
- `init` to create a new `Int`
- `init(from_integer)` to create a new `Int` and set it to `from_integer`.
- `set(Int, from_integer)` to set an `Int` to `from_integer`
- `add(dest, a, b)` to add `a` and `b` into `dest`.
- `sub(dest, a, b)` to subtract `b` from `a` and put the result in `dest`.
And a few helper functions, like:
- `is_zero`, `is_negative`, ...
- `grow`, `shrink`, `clear`, `zero`
2021-08-11 20:59:50 +02:00
gingerBill
7afc367275
Update examples/all/all_main.odin
2021-08-11 19:11:00 +01:00
gingerBill
c465171b45
Fix #1061
2021-08-09 21:41:19 +01:00
gingerBill
02f22a0b3f
Correct DllMain behaviour
2021-08-09 21:23:24 +01:00
gingerBill
193fd0eecb
Correct and improve type inference for swizzling expressions
2021-08-09 20:13:58 +01:00
gingerBill
01f431b01f
Unify semantics of the built-in swizzle procedure with the selector expression semantics e.g. .xyz
2021-08-09 19:37:58 +01:00
gingerBill
aebfa4b28e
Allow len and cap to return a uint if a type hint is uint to aid people wanting to use unsigned integers
2021-08-09 17:39:38 +01:00
gingerBill
a3abe991a4
Add package core:encoding/hxa
2021-08-09 16:26:51 +01:00
gingerBill
e793f92e67
Improve parsing handling for the { return } cases
2021-08-09 13:01:47 +01:00
gingerBill
042f376626
Minor code changes to Map/StringMap
2021-08-09 13:01:26 +01:00
gingerBill
d99ed692ba
Add utility procedures: io.read_ptr; io.write_ptr; io.read_ptr_at; io.write_ptr_at
2021-08-09 12:33:21 +01:00
gingerBill
4d00c2b800
Allocator_Error.Mode_Not_Implemented; Minor improvement to map runtime procedures
2021-08-08 14:29:45 +01:00
gingerBill
a5605e94b1
Simplify Map and StringMap in the compiler to reuse the hashes' array data if possible.
2021-08-08 13:56:40 +01:00
gingerBill
9cfe20cfb4
Correct error message for add_import_dependency_node
2021-08-08 13:13:31 +01:00
gingerBill
db3501f61b
[Breaking] Change the layout json.Value to be a union rather than a struct of a json.Pos and the union
2021-08-08 12:59:35 +01:00
gingerBill
48538aa792
Remove package core:encoding/cel
2021-08-08 12:50:38 +01:00
gingerBill
5fd64f48ee
Minor procedure rename
2021-08-08 12:48:44 +01:00
gingerBill
a3b7126875
Simplify init_tokenizer_with_data
2021-08-08 12:47:45 +01:00
gingerBill
5756c8a7c6
Merge branch 'master' of https://github.com/odin-lang/Odin
2021-08-08 12:45:33 +01:00
gingerBill
cdd0061869
Prefer ..= over ..
2021-08-08 12:45:27 +01:00
Mikkel Hjortshøj
e6adfd8054
Update create_nightly_json.py
2021-08-08 11:29:56 +02:00
Jeroen van Rijn
6d59223efd
Merge pull request #1072 from Kelimion/cel_fix_ise
...
CEL: Fix by changing `using enum` to ISE.
2021-08-08 02:21:04 +02:00
Jeroen van Rijn
ebd034fff9
CEL: Fix ISE.
2021-08-08 02:19:32 +02:00
gingerBill
000bda8419
Reduce superfluous error messages for return statements expecting not-1 return values
2021-08-07 16:29:00 +01:00