]> git.lizzy.rs Git - rust.git/log
rust.git
2 years agoRemove unnecessary bailout in clif_pair_type_from_ty
bjorn3 [Fri, 20 Aug 2021 17:30:16 +0000 (19:30 +0200)]
Remove unnecessary bailout in clif_pair_type_from_ty

2 years agoRustup to rustc 1.56.0-nightly (6d64f7f69 2021-08-19)
bjorn3 [Fri, 20 Aug 2021 14:15:52 +0000 (16:15 +0200)]
Rustup to rustc 1.56.0-nightly (6d64f7f69 2021-08-19)

2 years agoSync from rust 9ccf661694423895b02e513c69e6ad263b2f3d8e
bjorn3 [Fri, 20 Aug 2021 13:06:07 +0000 (15:06 +0200)]
Sync from rust 9ccf661694423895b02e513c69e6ad263b2f3d8e

2 years agoremove box_syntax uses from cranelift and tools
Marcel Hellwig [Fri, 6 Aug 2021 15:14:27 +0000 (17:14 +0200)]
remove box_syntax uses from cranelift and tools

2 years agoUpdate rustc_codegen_cratelift for working_dir change
Aaron Hill [Thu, 12 Aug 2021 21:46:58 +0000 (16:46 -0500)]
Update rustc_codegen_cratelift for working_dir change

2 years agoImplement `black_box` using intrinsic
Gary Guo [Tue, 10 Aug 2021 10:50:33 +0000 (11:50 +0100)]
Implement `black_box` using intrinsic

The new implementation allows some `memcpy`s to be optimized away,
so the uninit value in ui/sanitize/memory.rs is constructed directly
onto the return place. Therefore the sanitizer now says that the
value is allocated by `main` rather than `random`.

2 years agoAvoid an unnecessary allocation
bjorn3 [Sat, 7 Aug 2021 12:28:28 +0000 (14:28 +0200)]
Avoid an unnecessary allocation

2 years agoAvoid converting filenames into strings where possible
bjorn3 [Sat, 7 Aug 2021 12:28:07 +0000 (14:28 +0200)]
Avoid converting filenames into strings where possible

2 years agoUse the object crate for archive reading during archive building
bjorn3 [Sat, 7 Aug 2021 12:11:54 +0000 (14:11 +0200)]
Use the object crate for archive reading during archive building

2 years agoAdd warning to the jit mode section of the usage docs
bjorn3 [Mon, 9 Aug 2021 10:30:40 +0000 (12:30 +0200)]
Add warning to the jit mode section of the usage docs

Closes #1192

2 years agoUpdate Cranelift
bjorn3 [Sat, 7 Aug 2021 09:09:03 +0000 (11:09 +0200)]
Update Cranelift

2 years agoRustup to rustc 1.56.0-nightly (5ad7389bd 2021-08-06)
bjorn3 [Sat, 7 Aug 2021 08:33:14 +0000 (10:33 +0200)]
Rustup to rustc 1.56.0-nightly (5ad7389bd 2021-08-06)

2 years agoMerge branch 'sync_from_rust'
bjorn3 [Fri, 6 Aug 2021 14:28:07 +0000 (16:28 +0200)]
Merge branch 'sync_from_rust'

2 years agoMerge commit '05677b6bd6c938ed760835d9b1f6514992654ae3' into sync_cg_clif-2021-08-06
bjorn3 [Fri, 6 Aug 2021 14:26:56 +0000 (16:26 +0200)]
Merge commit '05677b6bd6c938ed760835d9b1f6514992654ae3' into sync_cg_clif-2021-08-06

2 years agoRustup to rustc 1.56.0-nightly (25b764849 2021-08-04)
bjorn3 [Thu, 5 Aug 2021 13:32:02 +0000 (15:32 +0200)]
Rustup to rustc 1.56.0-nightly (25b764849 2021-08-04)

2 years agoSync from rust 2ddb65c32253872c0e7a02e43ec520877900370e
bjorn3 [Thu, 5 Aug 2021 12:39:37 +0000 (14:39 +0200)]
Sync from rust 2ddb65c32253872c0e7a02e43ec520877900370e

2 years agochange instructions for manually compiling y.rs (#1191)
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`.

2 years agoAuto merge of #87515 - crlf0710:trait_upcasting_part2, r=bjorn3
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`

2 years agoImplement pointer casting.
Charles Lew [Sat, 31 Jul 2021 14:46:23 +0000 (22:46 +0800)]
Implement pointer casting.

2 years agorfc3052: Remove authors field from Cargo manifests
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.

2 years agoRe-enable a fixed rustc tests
bjorn3 [Thu, 29 Jul 2021 17:46:31 +0000 (19:46 +0200)]
Re-enable a fixed rustc tests

2 years agoFix float min and max operations in presence of NaN
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

2 years agoSupport storing return values in register places for all pass modes
bjorn3 [Wed, 28 Jul 2021 16:54:21 +0000 (18:54 +0200)]
Support storing return values in register places for all pass modes

2 years agoRemove CPlace::no_place
bjorn3 [Wed, 28 Jul 2021 16:31:27 +0000 (18:31 +0200)]
Remove CPlace::no_place

It is never the right function

2 years agoAllow returning PassMode::Cast directly to an ssa var
bjorn3 [Wed, 28 Jul 2021 16:27:06 +0000 (18:27 +0200)]
Allow returning PassMode::Cast directly to an ssa var

2 years agoRemove outdated FIXME
bjorn3 [Wed, 28 Jul 2021 16:26:03 +0000 (18:26 +0200)]
Remove outdated FIXME

2 years agoRemove workarounds for things unimplemented in Cranelift
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

2 years agoUse __muloti4 instead of __rust_i128_mulo
bjorn3 [Wed, 28 Jul 2021 12:54:05 +0000 (14:54 +0200)]
Use __muloti4 instead of __rust_i128_mulo

Fixes #1126

2 years agoRustup to rustc 1.56.0-nightly (08095fc1f 2021-07-26)
bjorn3 [Tue, 27 Jul 2021 13:22:50 +0000 (15:22 +0200)]
Rustup to rustc 1.56.0-nightly (08095fc1f 2021-07-26)

2 years agoUpdate dependencies
bjorn3 [Tue, 27 Jul 2021 10:54:58 +0000 (12:54 +0200)]
Update dependencies

2 years agoUpdate Cranelift, gimli and object
bjorn3 [Tue, 27 Jul 2021 10:42:16 +0000 (12:42 +0200)]
Update Cranelift, gimli and object

2 years agoEnable a working libcore test
bjorn3 [Mon, 26 Jul 2021 17:34:23 +0000 (19:34 +0200)]
Enable a working libcore test

2 years agoReplace pointer_ty() with fx.pointer_type where possible
bjorn3 [Mon, 26 Jul 2021 17:21:45 +0000 (19:21 +0200)]
Replace pointer_ty() with fx.pointer_type where possible

2 years agoUpdate compiler_builtins version in setup_rust_fork.sh
bjorn3 [Mon, 26 Jul 2021 17:19:57 +0000 (19:19 +0200)]
Update compiler_builtins version in setup_rust_fork.sh

2 years agoFix ABI for Indirect arguments
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

2 years agoFix y.rs build --sysroot llvm
bjorn3 [Mon, 26 Jul 2021 14:11:24 +0000 (16:11 +0200)]
Fix y.rs build --sysroot llvm

2 years agoHandle the extra argument for #[track_caller] earlier
bjorn3 [Mon, 26 Jul 2021 13:01:50 +0000 (15:01 +0200)]
Handle the extra argument for #[track_caller] earlier

2 years agoDon't return anything from codegen_with_call_return_arg
bjorn3 [Mon, 26 Jul 2021 12:55:13 +0000 (14:55 +0200)]
Don't return anything from codegen_with_call_return_arg

2 years agoSimplify logic around first_arg
bjorn3 [Mon, 26 Jul 2021 12:49:17 +0000 (14:49 +0200)]
Simplify logic around first_arg

2 years agoIntroduce the CallTarget enum
bjorn3 [Mon, 26 Jul 2021 12:40:27 +0000 (14:40 +0200)]
Introduce the CallTarget enum

2 years agoAdd stdsimd to .gitignore and clean_all.sh
bjorn3 [Mon, 26 Jul 2021 12:13:05 +0000 (14:13 +0200)]
Add stdsimd to .gitignore and clean_all.sh

2 years agoImplement "default_alloc_error_handler" feature
bjorn3 [Mon, 26 Jul 2021 12:11:19 +0000 (14:11 +0200)]
Implement "default_alloc_error_handler" feature

Fixes #1182

2 years agoMerge pull request #1189 from bjorn3/stdsimd_fixes
bjorn3 [Mon, 26 Jul 2021 09:09:13 +0000 (11:09 +0200)]
Merge pull request #1189 from bjorn3/stdsimd_fixes

Improve stdsimd support

2 years agoAdd fixme
bjorn3 [Sun, 25 Jul 2021 16:46:10 +0000 (18:46 +0200)]
Add fixme

2 years agoRun stdsimd test suite
bjorn3 [Sun, 25 Jul 2021 16:45:56 +0000 (18:45 +0200)]
Run stdsimd test suite

2 years agoFix simd_round implementation
bjorn3 [Sun, 25 Jul 2021 16:44:42 +0000 (18:44 +0200)]
Fix simd_round implementation

2 years agoImplement more simd intrinsics
bjorn3 [Sat, 24 Jul 2021 13:25:32 +0000 (15:25 +0200)]
Implement more simd intrinsics

2 years agoFix simd_reduce_* intrinsics
bjorn3 [Sat, 24 Jul 2021 13:24:06 +0000 (15:24 +0200)]
Fix simd_reduce_* intrinsics

2 years agoFix two type mismatch bugs
bjorn3 [Fri, 23 Jul 2021 16:29:47 +0000 (18:29 +0200)]
Fix two type mismatch bugs

2 years agoSupport repr(simd) on ADTs containing a single array field
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

2 years agoAvoid call to pointer_ty
bjorn3 [Mon, 19 Jul 2021 13:34:33 +0000 (15:34 +0200)]
Avoid call to pointer_ty

2 years agoRustup to rustc 1.55.0-nightly (59216858a 2021-07-18)
bjorn3 [Mon, 19 Jul 2021 13:32:22 +0000 (15:32 +0200)]
Rustup to rustc 1.55.0-nightly (59216858a 2021-07-18)

2 years agoSync from rust 8df945c4717ffaf923b57bf30c473df6fc98bc85
bjorn3 [Mon, 19 Jul 2021 13:23:20 +0000 (15:23 +0200)]
Sync from rust 8df945c4717ffaf923b57bf30c473df6fc98bc85

2 years agoRollup merge of #87092 - ricobbe:fix-raw-dylib-multiple-definitions, r=petrochenkov
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.

2 years agoMerge pull request #1187 from bjorn3/feature_gating
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

2 years agoDisable jit and inline-asm when 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.

2 years agoPut all cg_clif specific options behind -Zunstable-features
bjorn3 [Sat, 17 Jul 2021 14:32:55 +0000 (16:32 +0200)]
Put all cg_clif specific options behind -Zunstable-features

2 years agoDon't panic when the target is not supported by Cranelift
bjorn3 [Sat, 17 Jul 2021 14:07:27 +0000 (16:07 +0200)]
Don't panic when the target is not supported by Cranelift

2 years ago[CI] Update package list before installing packages
bjorn3 [Sat, 17 Jul 2021 13:03:18 +0000 (15:03 +0200)]
[CI] Update package list before installing packages

2 years agoDon't truncate the shift amount
bjorn3 [Mon, 5 Jul 2021 16:04:52 +0000 (18:04 +0200)]
Don't truncate the shift amount

It isn't actually necessary

2 years agoRemove shl/shr special handling for 128bit ints
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

2 years agoUpdate Cranelift
bjorn3 [Sat, 17 Jul 2021 12:34:40 +0000 (14:34 +0200)]
Update Cranelift

2 years agoConsider all fields when comparing DllImports, to remove nondetermininsm in multiple...
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

2 years agofix cranelift
Ralf Jung [Mon, 12 Jul 2021 22:41:10 +0000 (00:41 +0200)]
fix cranelift

2 years agoRemove explicit branch="main" form Cargo.toml
bjorn3 [Tue, 13 Jul 2021 19:32:23 +0000 (21:32 +0200)]
Remove explicit branch="main" form Cargo.toml

3 years agoUse cranelift's `Type::int` instead of doing the match myself
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>

3 years agoPR Feedback: Don't put SSA-only types in `CValue`s
Scott McMurray [Mon, 31 May 2021 17:26:08 +0000 (10:26 -0700)]
PR Feedback: Don't put SSA-only types in `CValue`s

3 years agoImplement the raw_eq intrinsic in codegen_cranelift
Scott McMurray [Mon, 31 May 2021 01:04:07 +0000 (18:04 -0700)]
Implement the raw_eq intrinsic in codegen_cranelift

3 years agoRustup to rustc 1.55.0-nightly (d2b04f075 2021-07-07)
bjorn3 [Thu, 8 Jul 2021 16:03:50 +0000 (18:03 +0200)]
Rustup to rustc 1.55.0-nightly (d2b04f075 2021-07-07)

3 years agoSync from rust 0deb536ff987d7200f5ea35634781e9df9d5b666
bjorn3 [Thu, 8 Jul 2021 16:03:33 +0000 (18:03 +0200)]
Sync from rust 0deb536ff987d7200f5ea35634781e9df9d5b666

3 years agoMerge commit '3a31c6d8272c14388a34622193baf553636fe470' into sync_cg_clif-2021-07-07
bjorn3 [Wed, 7 Jul 2021 09:14:20 +0000 (11:14 +0200)]
Merge commit '3a31c6d8272c14388a34622193baf553636fe470' into sync_cg_clif-2021-07-07

3 years agoRustup to rustc 1.55.0-nightly (885399992 2021-07-06)
bjorn3 [Wed, 7 Jul 2021 09:08:52 +0000 (11:08 +0200)]
Rustup to rustc 1.55.0-nightly (885399992 2021-07-06)

3 years agoSync from rust b09dad3eddfc46c55e45f6c1a00bab09401684b4
bjorn3 [Tue, 6 Jul 2021 16:59:42 +0000 (18:59 +0200)]
Sync from rust b09dad3eddfc46c55e45f6c1a00bab09401684b4

3 years agoDon't pass local_crate_name to link_binary separately
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

3 years agoMove LinkerInfo into CrateInfo
bjorn3 [Tue, 6 Jul 2021 13:31:38 +0000 (15:31 +0200)]
Move LinkerInfo into CrateInfo

3 years agoPass CrateInfo instead of TyCtxt to load_imported_symbols_for_jit
bjorn3 [Mon, 5 Jul 2021 16:46:13 +0000 (18:46 +0200)]
Pass CrateInfo instead of TyCtxt to load_imported_symbols_for_jit

3 years agoRustfmt
bjorn3 [Mon, 5 Jul 2021 16:44:37 +0000 (18:44 +0200)]
Rustfmt

3 years agoRemove LibSource
bjorn3 [Mon, 7 Jun 2021 10:18:28 +0000 (12:18 +0200)]
Remove LibSource

The information is stored in used_crate_source too anyway

3 years agoDon't overwrite LD_LIBRARY_PATH in config.sh
bjorn3 [Sun, 4 Jul 2021 16:17:26 +0000 (18:17 +0200)]
Don't overwrite LD_LIBRARY_PATH in config.sh

3 years agoRefactor cg_clif building
bjorn3 [Sun, 4 Jul 2021 16:15:13 +0000 (18:15 +0200)]
Refactor cg_clif building

3 years agoBetter config parsing and allow specifying host and target triple in config
bjorn3 [Sun, 4 Jul 2021 13:10:06 +0000 (15:10 +0200)]
Better config parsing and allow specifying host and target triple in config

3 years agoWrite better clif ir header
bjorn3 [Sun, 4 Jul 2021 10:39:22 +0000 (12:39 +0200)]
Write better clif ir header

3 years agoUpdate Cranelift
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

3 years agoMake vtable_allocation always succeed
Smitty [Sat, 3 Jul 2021 15:14:19 +0000 (11:14 -0400)]
Make vtable_allocation always succeed

3 years agoUpdate Cranelift
bjorn3 [Sat, 3 Jul 2021 12:41:33 +0000 (14:41 +0200)]
Update Cranelift

3 years agoMisc target related improvements
bjorn3 [Sat, 3 Jul 2021 12:28:53 +0000 (14:28 +0200)]
Misc target related improvements

3 years agoCheck if the patched sysroot source is up to date before using it
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

3 years agoMerge pull request #1183 from bjorn3/full_aarch64_support
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

3 years ago[CI] Cross compile to aarch64-unknown-linux-gnu
bjorn3 [Fri, 2 Jul 2021 12:43:01 +0000 (14:43 +0200)]
[CI] Cross compile to aarch64-unknown-linux-gnu

3 years ago[CI] Split build and test steps
bjorn3 [Fri, 2 Jul 2021 10:54:09 +0000 (12:54 +0200)]
[CI] Split build and test steps

3 years agoFix rust-analyzer setting
bjorn3 [Fri, 2 Jul 2021 10:39:34 +0000 (12:39 +0200)]
Fix rust-analyzer setting

3 years agoFix compilation for AArch64
bjorn3 [Tue, 29 Jun 2021 18:37:06 +0000 (20:37 +0200)]
Fix compilation for AArch64

3 years agoOnly test global_asm on x86_64
bjorn3 [Fri, 25 Jun 2021 17:18:53 +0000 (19:18 +0200)]
Only test global_asm on x86_64

3 years agoUpdate Cranelift and object
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

3 years agoDon't use data object for non-primitive scalars
bjorn3 [Fri, 2 Jul 2021 10:07:08 +0000 (12:07 +0200)]
Don't use data object for non-primitive scalars

Fixes #1041

3 years agoDisable new rustc test requiring unwinding support
bjorn3 [Fri, 2 Jul 2021 09:32:27 +0000 (11:32 +0200)]
Disable new rustc test requiring unwinding support

3 years agoReduce duplication of vtables
bjorn3 [Thu, 1 Jul 2021 10:05:10 +0000 (12:05 +0200)]
Reduce duplication of vtables

3 years agoRustup to rustc 1.55.0-nightly (6d820866a 2021-06-29)
bjorn3 [Wed, 30 Jun 2021 19:21:06 +0000 (21:21 +0200)]
Rustup to rustc 1.55.0-nightly (6d820866a 2021-06-29)

3 years agofix sess error
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...

3 years agoSupport allocation failures when interperting MIR
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