bjorn3
20491379c2
Sync from rust 2ddb65c322
2021-08-05 14:39:37 +02:00
Gheorghe Anghelescu
f9c5bbba6b
change instructions for manually compiling y.rs ( #1191 )
...
This prevents an error on windows where the `build_sysroot` function was trying to delete `y.exe`.
2021-08-04 09:23:27 +02:00
bors
0f83ac19f0
Auto merge of #87515 - crlf0710:trait_upcasting_part2, r=bjorn3
...
Trait upcasting coercion (part2)
This is the second part of trait upcasting coercion implementation.
Currently this is blocked on #86264 .
The third part might be implemented using unsafety checking
r? `@bjorn3`
2021-08-03 16:58:56 +00:00
Charles Lew
6f682236c9
Implement pointer casting.
2021-08-03 01:09:37 +08:00
Jade
966e54ee2e
rfc3052: Remove authors field from Cargo manifests
...
Since RFC 3052 soft deprecated the authors field anyway, hiding it from
crates.io, docs.rs, and making Cargo not add it by default, and it is
not generally up to date/useful information, we should remove it from
crates in this repo.
2021-07-29 14:56:05 -07:00
bjorn3
84961ef06a
Re-enable a fixed rustc tests
2021-07-29 19:46:31 +02:00
bjorn3
c6564f814e
Fix float min and max operations in presence of NaN
...
Cranelift's fmin and fmax instructions propagate NaN, while Rust's min
and max don't.
Fixes #1049
2021-07-29 15:21:14 +02:00
bjorn3
e0b9f3b3cc
Support storing return values in register places for all pass modes
2021-07-28 18:54:21 +02:00
bjorn3
b7881bb08d
Remove CPlace::no_place
...
It is never the right function
2021-07-28 18:31:27 +02:00
bjorn3
8704a66922
Allow returning PassMode::Cast directly to an ssa var
2021-07-28 18:27:06 +02:00
bjorn3
bab224d254
Remove outdated FIXME
2021-07-28 18:26:03 +02:00
bjorn3
2e62516496
Remove workarounds for things unimplemented in Cranelift
...
Many are now implemented, so it is much nicer to directly use the
respective Cranelift instructions
2021-07-28 17:30:39 +02:00
bjorn3
8a6ff90a3a
Use __muloti4 instead of __rust_i128_mulo
...
Fixes #1126
2021-07-28 14:54:31 +02:00
bjorn3
f4ba61eee5
Rustup to rustc 1.56.0-nightly ( 08095fc1f
2021-07-26)
2021-07-27 15:22:50 +02:00
bjorn3
bcf532ce1d
Update dependencies
2021-07-27 12:54:58 +02:00
bjorn3
c2464ebeb0
Update Cranelift, gimli and object
2021-07-27 12:42:16 +02:00
bjorn3
a2b17e4e4f
Enable a working libcore test
2021-07-26 19:34:23 +02:00
bjorn3
641e13e021
Replace pointer_ty() with fx.pointer_type where possible
2021-07-26 19:21:45 +02:00
bjorn3
472f9f9d62
Update compiler_builtins version in setup_rust_fork.sh
2021-07-26 19:19:57 +02:00
bjorn3
e387ec9cbf
Fix ABI for Indirect arguments
...
In case of PassMode::Indirect, the ownership of the backing storage is
transfered to the callee. This means that the caller must copy the
argument if it wants to use it again later.
Fixes #691
2021-07-26 18:57:48 +02:00
bjorn3
2abc12daad
Fix y.rs build --sysroot llvm
2021-07-26 16:11:24 +02:00
bjorn3
405642b853
Handle the extra argument for #[track_caller] earlier
2021-07-26 15:01:50 +02:00
bjorn3
3361e349fa
Don't return anything from codegen_with_call_return_arg
2021-07-26 14:55:13 +02:00
bjorn3
83da1e0d5a
Simplify logic around first_arg
2021-07-26 14:49:17 +02:00
bjorn3
050b417a74
Introduce the CallTarget enum
2021-07-26 14:40:27 +02:00
bjorn3
02db151b00
Add stdsimd to .gitignore and clean_all.sh
2021-07-26 14:13:05 +02:00
bjorn3
424a8c3a56
Implement "default_alloc_error_handler" feature
...
Fixes #1182
2021-07-26 14:11:19 +02:00
bjorn3
1f70802465
Merge pull request #1189 from bjorn3/stdsimd_fixes
...
Improve stdsimd support
2021-07-26 11:09:13 +02:00
bjorn3
581e38b97c
Add fixme
2021-07-25 19:12:31 +02:00
bjorn3
a0fb0facdc
Run stdsimd test suite
2021-07-25 18:45:56 +02:00
bjorn3
6d2221d1bb
Fix simd_round implementation
2021-07-25 18:44:42 +02:00
bjorn3
90e4493b98
Implement more simd intrinsics
2021-07-24 15:25:32 +02:00
bjorn3
344cbac150
Fix simd_reduce_* intrinsics
2021-07-24 15:24:06 +02:00
bjorn3
a7b06e81fc
Fix two type mismatch bugs
2021-07-23 18:29:47 +02:00
bjorn3
c42be7975f
Support repr(simd) on ADTs containing a single array field
...
This is the cg_clif half of rust PR 78863
2021-07-23 18:28:33 +02:00
bjorn3
356360836e
Avoid call to pointer_ty
2021-07-19 15:34:33 +02:00
bjorn3
0ebb4839f6
Rustup to rustc 1.55.0-nightly ( 59216858a
2021-07-18)
2021-07-19 15:32:22 +02:00
bjorn3
c151bb4ac5
Sync from rust 8df945c471
2021-07-19 15:23:20 +02:00
Yuki Okushi
d7c3c45d68
Rollup merge of #87092 - ricobbe:fix-raw-dylib-multiple-definitions, r=petrochenkov
...
Remove nondeterminism in multiple-definitions test
Compare all fields in `DllImport` when sorting to avoid nondeterminism in the error for multiple inconsistent definitions of an extern function. Restore the multiple-definitions test.
Resolves #87084 .
2021-07-18 14:21:56 +09:00
bjorn3
bd2f72f398
Merge pull request #1187 from bjorn3/feature_gating
...
Preparations for building as part of rustc
2021-07-17 17:55:57 +02:00
bjorn3
c2a9839686
Disable jit and inline-asm when building as part of rustc
...
Both features are not yet ready. Inline-asm is only supported on Linux
and requires explicitly specifying registers instead of register
classes. The jit has usability issues and may require the cg_clif
executable in the future.
2021-07-17 16:40:54 +02:00
bjorn3
80b9e36709
Put all cg_clif specific options behind -Zunstable-features
2021-07-17 16:32:55 +02:00
bjorn3
60340d44d8
Don't panic when the target is not supported by Cranelift
2021-07-17 16:07:27 +02:00
bjorn3
ede41d1b98
[CI] Update package list before installing packages
2021-07-17 15:03:18 +02:00
bjorn3
6dc386e192
Don't truncate the shift amount
...
It isn't actually necessary
2021-07-17 14:34:58 +02:00
bjorn3
f7cfb9d6d5
Remove shl/shr special handling for 128bit ints
...
Cranelift now natively supports 128bit int shifting
2021-07-17 14:34:58 +02:00
bjorn3
17eaf432b7
Update Cranelift
2021-07-17 14:34:58 +02:00
Richard Cobbe
b47198aaa1
Consider all fields when comparing DllImports, to remove nondetermininsm in multiple-definitions test
2021-07-16 11:10:31 -07:00
Ralf Jung
e643b8b561
fix cranelift
2021-07-14 18:17:49 +02:00
bjorn3
e7a4323674
Remove explicit branch="main" form Cargo.toml
2021-07-13 21:32:28 +02:00