Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[stdlib] Update stdlib corresponding to 2024-05-09 nightly/mojo #2605

Merged
merged 22 commits into from
May 10, 2024

Conversation

JoeLoser
Copy link
Collaborator

This updates the stdlib with the internal commits corresponding to today's nightly release: mojo 2024.5.1002.

laszlokindrat and others added 22 commits May 10, 2024 02:45
conversions

So that it doesn't cause problems when the implicit `String` conversion
from `Stringable` is removed. See
modularml#2563 for more context.

MODULAR_ORIG_COMMIT_REV_ID: ee9667a448d32bbffa340e6eaf1bce3adad9364c
This moves this struct off of deprecated syntax.

MODULAR_ORIG_COMMIT_REV_ID: 3244a8cafa777f40f6080af252a9312f5f0f2330
Migrating all callsites in coroutine.mojo from Pointer to UnsafePointer.

MODULAR_ORIG_COMMIT_REV_ID: 212b889334309c64899e16761edd314178d75d24
`sys.info`

This way it can be used in arbitrary precision parameter computations.

MODULAR_ORIG_COMMIT_REV_ID: 462d05fc26b7c9b22deb033b8696e269c7290a09
Because it moved.

MODULAR_ORIG_COMMIT_REV_ID: 9deb59c34fd4f0f9a3590975e62580885f78dbfb
conversions

So that it doesn't cause problems when the implicit `String` conversion
from `Stringable` is removed. See
modularml#2564 for more context.

MODULAR_ORIG_COMMIT_REV_ID: 12e7ad4a474d9b180135ccc459b5207aef75e986
- Custom Matrix for speedup
- Deduplicate code
- Remove non-functional custom `Runtime`
- Other cleanup like removing unused imports
- Save time by reusing benchmark results from previous cells

MODULAR_ORIG_COMMIT_REV_ID: 495e3c6a8b072cbe3e4b37e2c9012bcb57f55ae5
Move to `Buffer` instead of `Tensor` to avoid conversion

MODULAR_ORIG_COMMIT_REV_ID: 5a69d2eebf4c7b56ba01d09c8ee6f4bdfb43f3c1
This PR changes the `Bool` builtin type to be backed by an `i1` instead
of a `!pop.scalar<bool>`. The main benefit of this is that it makes the
`__mlir_i1__` implementation trivial, which significantly reduces IR
bloat
and the amount of back-and-forth casting to `!pop.scalar<bool>`.

MODULAR_ORIG_COMMIT_REV_ID: 4ab8172a81c6f185059b5573d5518f02db2466fc
[External] [docs] `entr` and pre commit issue

Warn about the use of `entr` and `pre-commit`.

ORIGINAL_AUTHOR=artemiogr97
<57588855+artemiogr97@users.noreply.github.com>
PUBLIC_PR_LINK=modularml#2531

Co-authored-by: artemiogr97 <57588855+artemiogr97@users.noreply.github.com>
Closes modularml#2531
MODULAR_ORIG_COMMIT_REV_ID: b8239da7fd2e1b1bb48d5b7848ee246f73eeca8e
…#39641)

[External] [stdlib] Modify SIMD's tests to directly invoke __rmod__

The unit tests for the SIMD's ` __rmod__` have been modified to directly
invoke the dunder function. This change ensures that the tests invoke
the magic function, and prevents any interference from conversion rules.
Additionally, a new test has been introduced for a SIMD of
floating-point type, and all `__rmod__` tests have been consolidated
into their own test function for better organization.

Co-authored-by: Peyman Barazandeh <peymanb@gmail.com>
Closes modularml#2588
MODULAR_ORIG_COMMIT_REV_ID: 083adad7cd9cc82d24bd1813ecb2083ce780d53d
[External] [stdlib] Add or operator support to Dict

Add `__or__` and `__ior__` functions to `Dict.

Fixes modularml#2545

Co-authored-by: bgreni <42788181+bgreni@users.noreply.github.com>
Closes modularml#2551
MODULAR_ORIG_COMMIT_REV_ID: 52270a9c37f9018e03c83e23dfbee2578861062f
[External] [stdlib] handle escape characters with `repr()`

guarantees a printable representation of the string when using `repr()`

Closes modularml#2493

MODULAR_ORIG_COMMIT_REV_ID: 57bdf9ec42cfcfa0b976b481019a70f5e6f34d2e
Using `__refitem__` allows cleaner syntax: `v[T]` rather than
`v.get[T]()` from before.

MODULAR_ORIG_COMMIT_REV_ID: 1410ca0a5f5f038cf50dd97bf32c631aa3b39b67
MODULAR_ORIG_COMMIT_REV_ID: 9833d9796b11c01f24832c5b06b6ecf7611edc4c
`Arc` should be register-passable because it's 8 bytes (pointer width)
in size and has no requirement to have a fixed address.

MODULAR_ORIG_COMMIT_REV_ID: 12faddba10ab50c907167c68d468c35b731e38ec
Move various functions from `algorithm` module to be builtin,
such as `sort`.  This will allow others to improve the `sort`
algorithm without breaking our internal uses.

Note:
- There is *a lot* of room for improvement on the existing
sorting algorithm and its tests.
MODULAR_ORIG_COMMIT_REV_ID: cfb7a4fceaa7b478129c40d7cf21b42a83324c81
callsites

Debugger users can now set breakpoints on function calls in O0 builds
even if the call has been inlined by the compiler.

MODULAR_ORIG_COMMIT_REV_ID: 8ef63292c0bc12067d81fac0a1fe353fa7019321
These include: `sizeof`, `alignof`, `bitwidthof`, and `simdwidthof`.
This way these can be used in arbitrary precision parameter
computations.

MODULAR_ORIG_COMMIT_REV_ID: 9170da35c5da41190bef2a939a92776d6067be52
Our website parses HTML-looking things (actually MDX/JSX), so things
like this must be put in code font.

MODULAR_ORIG_COMMIT_REV_ID: af37bfd42eeb45f17187b49026c0439fb64527dd
… `OptionalReg` (#39456)

[External] [stdlib] Remove `__and__`/`__or__`/... from `Optional` and
`OptionalReg`

We now have guaranteed implicit conversion from `Boolable` to `Bool`
which renders them useless.

Closes modularml#2491

MODULAR_ORIG_COMMIT_REV_ID: ebaa59d6caf8e05dff3bec3e0ad428a46cd24344
@JoeLoser JoeLoser requested review from jackos and a team as code owners May 10, 2024 03:08
@JoeLoser JoeLoser merged commit 6056fd4 into modularml:nightly May 10, 2024
5 checks passed
@JoeLoser JoeLoser deleted the 9026467335-1-nightly branch May 10, 2024 03:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet