]>
git.lizzy.rs Git - rust.git/log
bjorn3 [Sat, 7 Aug 2021 09:09:03 +0000 (11:09 +0200)]
Update Cranelift
bjorn3 [Sat, 7 Aug 2021 08:33:14 +0000 (10:33 +0200)]
Rustup to rustc 1.56.0-nightly (
5ad7389bd 2021-08-06)
bjorn3 [Fri, 6 Aug 2021 14:28:07 +0000 (16:28 +0200)]
Merge branch 'sync_from_rust'
bjorn3 [Fri, 6 Aug 2021 14:26:56 +0000 (16:26 +0200)]
Merge commit '
05677b6bd6c938ed760835d9b1f6514992654ae3 ' into sync_cg_clif-2021-08-06
bjorn3 [Thu, 5 Aug 2021 13:32:02 +0000 (15:32 +0200)]
Rustup to rustc 1.56.0-nightly (
25b764849 2021-08-04)
bjorn3 [Thu, 5 Aug 2021 12:39:37 +0000 (14:39 +0200)]
Gheorghe Anghelescu [Wed, 4 Aug 2021 07:23:27 +0000 (10:23 +0300)]
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`.
bors [Tue, 3 Aug 2021 16:58:56 +0000 (16:58 +0000)]
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`
Charles Lew [Sat, 31 Jul 2021 14:46:23 +0000 (22:46 +0800)]
Implement pointer casting.
Jade [Tue, 27 Jul 2021 23:38:13 +0000 (16:38 -0700)]
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.
bjorn3 [Thu, 29 Jul 2021 17:46:31 +0000 (19:46 +0200)]
Re-enable a fixed rustc tests
bjorn3 [Thu, 29 Jul 2021 13:20:37 +0000 (15:20 +0200)]
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
bjorn3 [Wed, 28 Jul 2021 16:54:21 +0000 (18:54 +0200)]
Support storing return values in register places for all pass modes
bjorn3 [Wed, 28 Jul 2021 16:31:27 +0000 (18:31 +0200)]
Remove CPlace::no_place
It is never the right function
bjorn3 [Wed, 28 Jul 2021 16:27:06 +0000 (18:27 +0200)]
Allow returning PassMode::Cast directly to an ssa var
bjorn3 [Wed, 28 Jul 2021 16:26:03 +0000 (18:26 +0200)]
Remove outdated FIXME
bjorn3 [Wed, 28 Jul 2021 15:30:39 +0000 (17:30 +0200)]
Remove workarounds for things unimplemented in Cranelift
Many are now implemented, so it is much nicer to directly use the
respective Cranelift instructions
bjorn3 [Wed, 28 Jul 2021 12:54:05 +0000 (14:54 +0200)]
Use __muloti4 instead of __rust_i128_mulo
Fixes #1126
bjorn3 [Tue, 27 Jul 2021 13:22:50 +0000 (15:22 +0200)]
Rustup to rustc 1.56.0-nightly (
08095fc1f 2021-07-26)
bjorn3 [Tue, 27 Jul 2021 10:54:58 +0000 (12:54 +0200)]
Update dependencies
bjorn3 [Tue, 27 Jul 2021 10:42:16 +0000 (12:42 +0200)]
Update Cranelift, gimli and object
bjorn3 [Mon, 26 Jul 2021 17:34:23 +0000 (19:34 +0200)]
Enable a working libcore test
bjorn3 [Mon, 26 Jul 2021 17:21:45 +0000 (19:21 +0200)]
Replace pointer_ty() with fx.pointer_type where possible
bjorn3 [Mon, 26 Jul 2021 17:19:57 +0000 (19:19 +0200)]
Update compiler_builtins version in setup_rust_fork.sh
bjorn3 [Mon, 26 Jul 2021 16:17:22 +0000 (18:17 +0200)]
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
bjorn3 [Mon, 26 Jul 2021 14:11:24 +0000 (16:11 +0200)]
Fix y.rs build --sysroot llvm
bjorn3 [Mon, 26 Jul 2021 13:01:50 +0000 (15:01 +0200)]
Handle the extra argument for #[track_caller] earlier
bjorn3 [Mon, 26 Jul 2021 12:55:13 +0000 (14:55 +0200)]
Don't return anything from codegen_with_call_return_arg
bjorn3 [Mon, 26 Jul 2021 12:49:17 +0000 (14:49 +0200)]
Simplify logic around first_arg
bjorn3 [Mon, 26 Jul 2021 12:40:27 +0000 (14:40 +0200)]
Introduce the CallTarget enum
bjorn3 [Mon, 26 Jul 2021 12:13:05 +0000 (14:13 +0200)]
Add stdsimd to .gitignore and clean_all.sh
bjorn3 [Mon, 26 Jul 2021 12:11:19 +0000 (14:11 +0200)]
Implement "default_alloc_error_handler" feature
Fixes #1182
bjorn3 [Mon, 26 Jul 2021 09:09:13 +0000 (11:09 +0200)]
Merge pull request #1189 from bjorn3/stdsimd_fixes
Improve stdsimd support
bjorn3 [Sun, 25 Jul 2021 16:46:10 +0000 (18:46 +0200)]
Add fixme
bjorn3 [Sun, 25 Jul 2021 16:45:56 +0000 (18:45 +0200)]
Run stdsimd test suite
bjorn3 [Sun, 25 Jul 2021 16:44:42 +0000 (18:44 +0200)]
Fix simd_round implementation
bjorn3 [Sat, 24 Jul 2021 13:25:32 +0000 (15:25 +0200)]
Implement more simd intrinsics
bjorn3 [Sat, 24 Jul 2021 13:24:06 +0000 (15:24 +0200)]
Fix simd_reduce_* intrinsics
bjorn3 [Fri, 23 Jul 2021 16:29:47 +0000 (18:29 +0200)]
Fix two type mismatch bugs
bjorn3 [Fri, 23 Jul 2021 16:23:13 +0000 (18:23 +0200)]
Support repr(simd) on ADTs containing a single array field
This is the cg_clif half of rust PR 78863
bjorn3 [Mon, 19 Jul 2021 13:34:33 +0000 (15:34 +0200)]
Avoid call to pointer_ty
bjorn3 [Mon, 19 Jul 2021 13:32:22 +0000 (15:32 +0200)]
Rustup to rustc 1.55.0-nightly (
59216858a 2021-07-18)
bjorn3 [Mon, 19 Jul 2021 13:23:20 +0000 (15:23 +0200)]
Yuki Okushi [Sun, 18 Jul 2021 05:21:56 +0000 (14:21 +0900)]
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.
bjorn3 [Sat, 17 Jul 2021 15:55:57 +0000 (17:55 +0200)]
Merge pull request #1187 from bjorn3/feature_gating
Preparations for building as part of rustc
bjorn3 [Sat, 17 Jul 2021 14:40:54 +0000 (16:40 +0200)]
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.
bjorn3 [Sat, 17 Jul 2021 14:32:55 +0000 (16:32 +0200)]
Put all cg_clif specific options behind -Zunstable-features
bjorn3 [Sat, 17 Jul 2021 14:07:27 +0000 (16:07 +0200)]
Don't panic when the target is not supported by Cranelift
bjorn3 [Sat, 17 Jul 2021 13:03:18 +0000 (15:03 +0200)]
[CI] Update package list before installing packages
bjorn3 [Mon, 5 Jul 2021 16:04:52 +0000 (18:04 +0200)]
Don't truncate the shift amount
It isn't actually necessary
bjorn3 [Mon, 5 Jul 2021 16:02:12 +0000 (18:02 +0200)]
Remove shl/shr special handling for 128bit ints
Cranelift now natively supports 128bit int shifting
bjorn3 [Sat, 17 Jul 2021 12:34:40 +0000 (14:34 +0200)]
Update Cranelift
Richard Cobbe [Mon, 12 Jul 2021 19:46:27 +0000 (12:46 -0700)]
Consider all fields when comparing DllImports, to remove nondetermininsm in multiple-definitions test
Ralf Jung [Mon, 12 Jul 2021 22:41:10 +0000 (00:41 +0200)]
fix cranelift
bjorn3 [Tue, 13 Jul 2021 19:32:23 +0000 (21:32 +0200)]
Remove explicit branch="main" form Cargo.toml
Scott McMurray [Tue, 1 Jun 2021 13:19:49 +0000 (06:19 -0700)]
Use cranelift's `Type::int` instead of doing the match myself
<https://docs.rs/cranelift-codegen/0.74.0/cranelift_codegen/ir/types/struct.Type.html#method.int>
Scott McMurray [Mon, 31 May 2021 17:26:08 +0000 (10:26 -0700)]
PR Feedback: Don't put SSA-only types in `CValue`s
Scott McMurray [Mon, 31 May 2021 01:04:07 +0000 (18:04 -0700)]
Implement the raw_eq intrinsic in codegen_cranelift
bjorn3 [Thu, 8 Jul 2021 16:03:50 +0000 (18:03 +0200)]
Rustup to rustc 1.55.0-nightly (
d2b04f075 2021-07-07)
bjorn3 [Thu, 8 Jul 2021 16:03:33 +0000 (18:03 +0200)]
bjorn3 [Wed, 7 Jul 2021 09:14:20 +0000 (11:14 +0200)]
Merge commit '
3a31c6d8272c14388a34622193baf553636fe470 ' into sync_cg_clif-2021-07-07
bjorn3 [Wed, 7 Jul 2021 09:08:52 +0000 (11:08 +0200)]
Rustup to rustc 1.55.0-nightly (
885399992 2021-07-06)
bjorn3 [Tue, 6 Jul 2021 16:59:42 +0000 (18:59 +0200)]
bjorn3 [Tue, 6 Jul 2021 15:49:23 +0000 (17:49 +0200)]
Don't pass local_crate_name to link_binary separately
It is already part of CodegenResults
bjorn3 [Tue, 6 Jul 2021 13:31:38 +0000 (15:31 +0200)]
Move LinkerInfo into CrateInfo
bjorn3 [Mon, 5 Jul 2021 16:46:13 +0000 (18:46 +0200)]
Pass CrateInfo instead of TyCtxt to load_imported_symbols_for_jit
bjorn3 [Mon, 5 Jul 2021 16:44:37 +0000 (18:44 +0200)]
Rustfmt
bjorn3 [Mon, 7 Jun 2021 10:18:28 +0000 (12:18 +0200)]
Remove LibSource
The information is stored in used_crate_source too anyway
bjorn3 [Sun, 4 Jul 2021 16:17:26 +0000 (18:17 +0200)]
Don't overwrite LD_LIBRARY_PATH in config.sh
bjorn3 [Sun, 4 Jul 2021 16:15:13 +0000 (18:15 +0200)]
Refactor cg_clif building
bjorn3 [Sun, 4 Jul 2021 13:10:06 +0000 (15:10 +0200)]
Better config parsing and allow specifying host and target triple in config
bjorn3 [Sun, 4 Jul 2021 10:39:22 +0000 (12:39 +0200)]
Write better clif ir header
bjorn3 [Sun, 4 Jul 2021 10:37:00 +0000 (12:37 +0200)]
Update Cranelift
This has a fix for a miscompilation on AArch64
cc #1184
Smitty [Sat, 3 Jul 2021 15:14:19 +0000 (11:14 -0400)]
Make vtable_allocation always succeed
bjorn3 [Sat, 3 Jul 2021 12:41:33 +0000 (14:41 +0200)]
Update Cranelift
bjorn3 [Sat, 3 Jul 2021 12:28:53 +0000 (14:28 +0200)]
Misc target related improvements
bjorn3 [Fri, 2 Jul 2021 17:14:02 +0000 (19:14 +0200)]
Check if the patched sysroot source is up to date before using it
Fixes #1181
bjorn3 [Fri, 2 Jul 2021 13:03:16 +0000 (15:03 +0200)]
Merge pull request #1183 from bjorn3/full_aarch64_support
AArch64 support on Linux
bjorn3 [Fri, 2 Jul 2021 12:43:01 +0000 (14:43 +0200)]
[CI] Cross compile to aarch64-unknown-linux-gnu
bjorn3 [Fri, 2 Jul 2021 10:54:09 +0000 (12:54 +0200)]
[CI] Split build and test steps
bjorn3 [Fri, 2 Jul 2021 10:39:34 +0000 (12:39 +0200)]
Fix rust-analyzer setting
bjorn3 [Tue, 29 Jun 2021 18:37:06 +0000 (20:37 +0200)]
Fix compilation for AArch64
bjorn3 [Fri, 25 Jun 2021 17:18:53 +0000 (19:18 +0200)]
Only test global_asm on x86_64
bjorn3 [Fri, 25 Jun 2021 17:18:17 +0000 (19:18 +0200)]
Update Cranelift and object
This adds AArch64 support for unixes using ELF object files like Linux
bjorn3 [Fri, 2 Jul 2021 10:07:08 +0000 (12:07 +0200)]
Don't use data object for non-primitive scalars
Fixes #1041
bjorn3 [Fri, 2 Jul 2021 09:32:27 +0000 (11:32 +0200)]
Disable new rustc test requiring unwinding support
bjorn3 [Thu, 1 Jul 2021 10:05:10 +0000 (12:05 +0200)]
Reduce duplication of vtables
bjorn3 [Wed, 30 Jun 2021 19:21:06 +0000 (21:21 +0200)]
Rustup to rustc 1.55.0-nightly (
6d820866a 2021-06-29)
Smitty [Tue, 29 Jun 2021 23:17:14 +0000 (19:17 -0400)]
fix sess error
This passed x.py check locally, not sure why it wasn't rebased right...
Smitty [Sat, 12 Jun 2021 23:49:48 +0000 (19:49 -0400)]
Support allocation failures when interperting MIR
Note that this breaks Miri.
Closes #79601
bjorn3 [Tue, 29 Jun 2021 18:38:04 +0000 (20:38 +0200)]
bors [Tue, 29 Jun 2021 15:52:21 +0000 (15:52 +0000)]
Auto merge of #86475 - crlf0710:miri_vtable_refactor, r=bjorn3
Change vtable memory representation to use tcx allocated allocations.
This fixes https://github.com/rust-lang/rust/issues/86324. However i suspect there's more to change before it can land.
r? `@bjorn3`
cc `@rust-lang/miri`
Charles Lew [Sun, 20 Jun 2021 09:43:25 +0000 (17:43 +0800)]
Update other codegens to use tcx managed vtable allocations.
bors [Mon, 28 Jun 2021 01:20:01 +0000 (01:20 +0000)]
Auto merge of #85909 - cjgillot:alloc-kind-query, r=Aaron1011
Make allocator_kind a query.
Part of #85153
r? `@Aaron1011`
bjorn3 [Fri, 25 Jun 2021 16:33:00 +0000 (18:33 +0200)]
Merge pull request #1166 from eggyal/lazy-jit-multithreaded
Multithreading support for lazy-jit
bjorn3 [Fri, 25 Jun 2021 15:49:43 +0000 (17:49 +0200)]
Test multithreading support in lazy-jit
bors [Fri, 25 Jun 2021 04:06:32 +0000 (04:06 +0000)]
Auto merge of #85640 - bjorn3:custom_ice_hook, r=jackh726
Allow changing the bug report url for the ice hook
cc https://github.com/bjorn3/rustc_codegen_cranelift/issues/1174
bjorn3 [Sun, 20 Jun 2021 16:26:17 +0000 (18:26 +0200)]
Remove unused variable
bjorn3 [Sun, 20 Jun 2021 12:55:36 +0000 (14:55 +0200)]
Merge pull request #1180 from bjorn3/rust_build_system
Rewrite part of the build system in rust
bjorn3 [Sun, 20 Jun 2021 12:40:49 +0000 (14:40 +0200)]
Remove unnecessary LD_LIBRARY_PATH parts