Afonso Bordado
ae4fe1d57d
Use get_file_name in tests
2022-07-30 14:07:02 +01:00
Afonso Bordado
437b441ff5
Use get_file_name everywhere for better cross compilation support
2022-07-30 13:06:37 +01:00
Afonso Bordado
d0599350a7
Misc cleanups to the test runner
2022-07-30 12:50:05 +01:00
Afonso Bordado
c115933fb7
Run tests on windows CI
2022-07-30 12:48:46 +01:00
Afonso Bordado
3ce83dc469
Move test.sh to y.rs test
2022-07-30 11:15:51 +01:00
Afonso Bordado
6fd1660650
Add Windows build artifacts to .gitignore
2022-07-29 08:39:18 +01:00
Afonso Bordado
49e773183e
Update to cranelift 0.86 ( #1250 )
2022-07-28 21:08:05 +02:00
bjorn3
e34bb03197
Rustup to rustc 1.64.0-nightly ( 4d6d601c8
2022-07-26)
2022-07-27 17:41:41 +02:00
bjorn3
72c69a829f
Merge branch 'sync_from_rust'
2022-07-26 18:54:54 +02:00
bjorn3
a6260ecd81
Merge commit 'd3a2366ee877075c59b38bd8ced55f224fc7ef51' into sync_cg_clif-2022-07-26
2022-07-26 18:53:46 +02:00
bjorn3
d3a2366ee8
Implement some more llvm float compare intrinsic options
2022-07-26 16:27:14 +00:00
bjorn3
d3099a40c7
Outline a bug! invocation
...
This reduces the amount of llvm ir lines for intrinsic related code from
23801 to 20478.
2022-07-26 16:26:35 +00:00
bjorn3
54eb0d992a
Fully remove the intrinsic_match macro
2022-07-26 16:09:41 +00:00
bjorn3
e151964a70
Start moving away from the intrinsic_match macro
...
It isn't clear most people other than me and it blocks formatting by
rustfmt.
2022-07-26 15:17:34 +00:00
bors
1fb02e0409
Auto merge of #99745 - JohnTitor:rollup-lvrie64, r=JohnTitor
...
Rollup of 7 pull requests
Successful merges:
- #98211 (Implement `fs::get_path` for FreeBSD.)
- #99353 (Slightly improve mismatched GAT where clause error)
- #99593 (Suggest removing the tuple struct field for the unwrapped value)
- #99615 (Remove some explicit `self.infcx` for `FnCtxt`, which already derefs into `InferCtxt`)
- #99711 (Remove reachable coverage without counters)
- #99718 (Avoid `&str`/`Symbol` to `String` conversions)
- #99720 (Sync rustc_codegen_cranelift)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2022-07-26 04:28:41 +00:00
bors
42dd106b67
Auto merge of #98989 - dpaoliello:rawdylibbin, r=michaelwoerister
...
Enable raw-dylib for bin crates
Fixes #93842
When `raw-dylib` is used in a `bin` crate, we need to collect all of the `raw-dylib` functions, generate the import library and add that to the linker command line.
I also changed the tests so that 1) the C++ dlls are created after the Rust dlls, thus there is no chance of accidentally using them in the Rust linking process and 2) disabled generating import libraries when building with MSVC.
2022-07-26 01:47:34 +00:00
bjorn3
3deceedbc3
Merge branch 'sync_from_rust'
2022-07-25 16:28:35 +02:00
bjorn3
640c3f730a
Merge commit 'c19edfd71a1d0ddef86c2c67fdb40718d40a72b4' into sync_cg_clif-2022-07-25
2022-07-25 16:07:57 +02:00
bjorn3
c19edfd71a
Rustup to rustc 1.64.0-nightly ( 7fe022f5a
2022-07-24)
2022-07-25 16:06:39 +02:00
bjorn3
4e1155fbf1
Sync from rust 2f320a224e
2022-07-25 16:00:44 +02:00
bjorn3
d7fc56323e
Update Cranelift to 0.85.3
...
This fixes a couple of potential miscompilations. None affect cg_clif on
x86_64, but one may affect cg_clif on AArch64.
2022-07-25 13:50:43 +00:00
bjorn3
722733c0c6
Merge pull request #1247 from bjorn3/melt_some_ice
...
Melt some ICE
2022-07-25 15:46:04 +02:00
bjorn3
fd2669d1e9
Fix -Zpolymorphize
2022-07-25 13:17:53 +00:00
bjorn3
7ef2ba8f7b
Fix size_of_val and min_align_of_val for truly unsized types
2022-07-25 12:47:49 +00:00
bjorn3
39ee14d253
Error when trying to define variadic functions
...
They aren't yet supported by Cranelift
2022-07-25 11:18:34 +00:00
bors
745193d197
Auto merge of #99251 - cuviper:hashbrown-0.12, r=Mark-Simulacrum
...
Upgrade indexmap and thorin-dwp to use hashbrown 0.12
This removes the last dependencies on hashbrown 0.11.
This also upgrades to hashbrown 0.12.3 to fix a double-free (#99372 ).
2022-07-24 04:03:29 +00:00
bjorn3
3207c9faec
Report an error on incompatible symbol definitions
2022-07-22 19:03:06 +00:00
bjorn3
a6b602dc32
Fix inline asm codegen for empty template
2022-07-22 18:59:16 +00:00
bjorn3
cd96988436
Don't crash when local variables are too big to store on the stack
2022-07-22 18:03:24 +00:00
Daniel Paoliello
0fed1a5f57
Enable raw-dylib for binaries
2022-07-22 09:55:14 -07:00
Ralf Jung
d07ed02783
various nits from review
2022-07-20 17:12:08 -04:00
bjorn3
f8feed7d27
Implement vtable_size and vtable_align intrinsics for cg_clif
2022-07-20 17:12:07 -04:00
Ralf Jung
6c9abfa0f3
slightly cleaner, if more verbose, vtable handling in codegen backends
2022-07-20 17:12:07 -04:00
Ralf Jung
a1b172224c
consistently use VTable over Vtable (matching stable stdlib API RawWakerVTable)
2022-07-20 17:12:07 -04:00
Ralf Jung
b5cce74278
rename get_global_alloc to try_get_global_alloc
2022-07-20 17:09:22 -04:00
Ralf Jung
1c77e2b922
add a Vtable kind of symbolic allocations
2022-07-20 16:57:31 -04:00
Oli Scherer
22a0a2eac2
Revert "Rollup merge of #98582 - oli-obk:unconstrained_opaque_type, r=estebank"
...
This reverts commit 6f8fb911ad
, reversing
changes made to 7210e46dc6
.
2022-07-20 07:55:58 +00:00
bjorn3
5fcedf62df
Update for changes to the rustc test suite
2022-07-18 11:57:22 +00:00
bjorn3
bc061fa319
Rustup to rustc 1.64.0-nightly ( 263edd43c
2022-07-17)
2022-07-18 12:59:55 +02:00
bjorn3
cff5eed8ef
Sync from rust 880416180b
2022-07-18 12:10:52 +02:00
bors
33b297a525
Auto merge of #99033 - 5225225:interpreter-validity-checks, r=oli-obk
...
Use constant eval to do strict mem::uninit/zeroed validity checks
I'm not sure about the code organisation here, I just dumped the check in rustc_const_eval at the root. Not hard to move it elsewhere, in any case.
Also, this means cranelift codegen intrinsics lose the strict checks, since they don't seem to depend on rustc_const_eval, and I didn't see a point in keeping around two copies.
I also left comments in the is_zero_valid methods about "uhhh help how do i do this", those apply to both methods equally.
Also rustc_codegen_ssa now depends on rustc_const_eval... is this okay?
Pinging `@RalfJung` since you were the one who mentioned this to me, so I'm assuming you're interested.
Haven't had a chance to run full tests on this since it's really warm, and it's 1AM, I'll check out any failures/comments in the morning :)
2022-07-17 19:28:01 +00:00
Amanieu d'Antras
ec469526fd
Upgrade hashbrown to 0.12.3
...
This fixes a double-free in the `clone_from` function if dropping an
existing element in the table panics. See
https://github.com/rust-lang/hashbrown/pull/348 for more details.
2022-07-17 07:05:58 -07:00
Josh Stone
f750d8ba56
Upgrade indexmap and thorin-dwp to use hashbrown 0.12
...
This removes the last dependencies on hashbrown 0.11.
2022-07-17 07:05:58 -07:00
Oli Scherer
9ea9c093e5
Introduce opaque type to hidden type projection
2022-07-15 15:49:22 +00:00
5225225
5a81bf7ad2
Use constant eval to do strict validity checks
2022-07-14 22:55:17 +01:00
Joshua Nelson
b2ae24e6a1
Rename debugging_opts
to unstable_opts
...
This is no longer used only for debugging options (e.g. `-Zoutput-width`, `-Zallow-features`).
Rename it to be more clear.
2022-07-13 17:47:06 -05:00
bors
43388812a6
Auto merge of #99210 - Dylan-DPC:rollup-879cp1t, r=Dylan-DPC
...
Rollup of 5 pull requests
Successful merges:
- #98574 (Lower let-else in MIR)
- #99011 (`UnsafeCell` blocks niches inside its nested type from being available outside)
- #99030 (diagnostics: error messages when struct literals fail to parse)
- #99155 (Keep unstable target features for asm feature checking)
- #99199 (Refactor: remove an unnecessary `span_to_snippet`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2022-07-13 17:13:27 +00:00
Dylan DPC
38c321a6f0
Rollup merge of #99155 - Amanieu:unstable-target-features, r=davidtwco
...
Keep unstable target features for asm feature checking
Inline assembly uses the target features to determine which registers
are available on the current target. However it needs to be able to
access unstable target features for this.
Fixes #99071
2022-07-13 19:32:36 +05:30
ouz-a
9efccc97e2
add new rval, pull deref early
2022-07-12 14:26:41 +03:00
Amanieu d'Antras
a7347a941b
Keep unstable target features for asm feature checking
...
Inline assembly uses the target features to determine which registers
are available on the current target. However it needs to be able to
access unstable target features for this.
Fixes #99071
2022-07-11 14:26:58 +01:00