bjorn3
9089c305da
Remove TyCtxt dependency from UnwindContext
2021-12-27 17:54:06 +01:00
bjorn3
97e5045493
Fix taking address of truly unsized type field of unsized adt
2021-12-20 18:49:43 +01:00
bjorn3
bb6d83dac9
Sync from rust 84f962a89b
2021-12-20 18:12:18 +01:00
bors
c3a9a9b424
Auto merge of #91957 - nnethercote:rm-SymbolStr, r=oli-obk
...
Remove `SymbolStr`
This was originally proposed in https://github.com/rust-lang/rust/pull/74554#discussion_r466203544 . As well as removing the icky `SymbolStr` type, it allows the removal of a lot of `&` and `*` occurrences.
Best reviewed one commit at a time.
r? `@oli-obk`
2021-12-19 09:31:37 +00:00
bjorn3
a795a0384b
Remove triple method from FunctionCx
...
Instead use the default_call_conv field on TargetFrontendConfig to get
the default CallConv.
2021-12-18 15:46:30 +01:00
bjorn3
fdd0f8a3b5
Slightly reduce the amount of fx.module references
2021-12-18 15:33:31 +01:00
bjorn3
d0f97fc039
Rustup to rustc 1.59.0-nightly ( c5ecc1570
2021-12-15)
2021-12-16 14:11:04 +01:00
bjorn3
d084fca557
Sync from rust a090c8659c
2021-12-16 13:52:12 +01:00
bjorn3
2cb4fe711e
Fix unused crate warning
2021-12-16 13:51:18 +01:00
bjorn3
f74cf39a74
Fix crash when struct argument size is not a multiple of the pointer size
...
Fixes #1200
2021-12-15 16:53:35 +01:00
Nicholas Nethercote
93511d926f
Remove unnecessary sigils around Symbol::as_str()
calls.
2021-12-15 17:32:14 +11:00
Nicholas Nethercote
75f6118ad1
Remove SymbolStr
.
...
By changing `as_str()` to take `&self` instead of `self`, we can just
return `&str`. We're still lying about lifetimes, but it's a smaller lie
than before, where `SymbolStr` contained a (fake) `&'static str`!
2021-12-15 13:30:26 +11:00
Matthias Krüger
c57bcb8fcb
Rollup merge of #91868 - tmiasko:llvm-time-trace-out, r=oli-obk
...
Use `OutputFilenames` to generate output file for `-Zllvm-time-trace`
The resulting profile will include the crate name and will be stored in
the `--out-dir` directory.
This implementation makes it convenient to use LLVM time trace together
with cargo, in the contrast to the previous implementation which would
overwrite profiles or store them in `.cargo/registry/..`.
2021-12-15 01:28:06 +01:00
Amanieu d'Antras
edeb3891e9
Remove invalid doc links.
2021-12-13 20:40:17 +00:00
Tomasz Miąsko
a4bf9fbdbf
Use OutputFilenames
to generate output file for -Zllvm-time-trace
...
The resulting profile will include the crate name and will be stored in
the `--out-dir` directory.
This implementation makes it convenient to use LLVM time trace together
with cargo, in the contrast to the previous implementation which would
overwrite profiles or store them in `.cargo/registry/..`.
2021-12-13 00:00:00 +00:00
bjorn3
057635b9da
Rustfmt
2021-12-09 13:43:32 +01:00
bjorn3
47962076a1
Use cg_ssa for creating the dylib metadata file
...
The new api was introduced in rust-lang/rust#91604
2021-12-09 13:36:33 +01:00
bjorn3
aaf508cab3
Use const thread_local!
2021-12-07 18:25:27 +01:00
bjorn3
7d34d3ad78
Sync from rust c5c9494509
2021-12-07 17:57:58 +01:00
bjorn3
df7f02072b
Remove black box inline asm fallback
...
It isn't used anymore since the introduction of the black_box intrinsic
2021-12-04 15:03:50 +01:00
cynecx
dd3cb0cd75
cg_cranelift: check may_unwind flag instead of cleanup
2021-12-03 23:51:49 +01:00
cynecx
5728c165fa
LLVM codgen support for unwinding inline assembly
2021-12-03 23:51:49 +01:00
bjorn3
dd288d27de
Fix vector types containing an array field with mir opts enabled
2021-12-03 12:13:41 +01:00
Petr Sumbera
948d0243de
fix sparc64 ABI for aggregates with floating point members
2021-12-01 10:03:45 +01:00
bjorn3
c989324672
Fix warning
2021-11-26 16:21:19 +01:00
bjorn3
efdbd88a74
Ensure inline asm wrapper name never starts with a digit
...
This could previously happen if the cgu name starts with a digit
2021-11-25 11:43:18 +01:00
bjorn3
8714be0ad3
Include NOTYPE symbols in the archive symbol table
...
This is necessary for blog os
2021-11-24 20:35:57 +01:00
bjorn3
1222192374
Use cgu name instead of function name as base for inline asm wrapper name
...
This fixes using #[inline] functions containing inline assembly from multiple cgus
2021-11-24 19:18:22 +01:00
Gary Guo
5f0c6e5539
Fix allocated reg in AT&T style asm
2021-11-22 17:01:43 +00:00
Gary Guo
f9534a9bc9
Add RISC-V inline asm support
2021-11-22 16:28:14 +00:00
Gary Guo
31e7fa54a0
Dispatch inline asm to the correct arch
2021-11-22 16:28:14 +00:00
Gary Guo
cfdf10b259
x86 inline asm support
2021-11-22 16:28:14 +00:00
Gary Guo
eaf88c5b52
Skeleton for multiple arch support
2021-11-22 13:45:18 +00:00
Gary Guo
fe3ba31860
Overlap input and output stack slots
2021-11-22 13:45:18 +00:00
Gary Guo
14aa039d30
Skip registers saved by calling convention
2021-11-22 13:45:17 +00:00
Gary Guo
703027f0fc
Code cleanup as a follow up to the previous commit
2021-11-22 03:15:12 +00:00
Gary Guo
894468a537
Move stack slot allocation to a new fn
2021-11-22 03:15:12 +00:00
Gary Guo
f16d27aca4
Remove expect_reg
2021-11-22 01:48:22 +00:00
Gary Guo
042eb37837
Implement register allocation for inline assembly
2021-11-22 01:45:58 +00:00
bjorn3
d288c6924d
Implement simd_reduce_{min,max} for floats
2021-11-18 19:27:49 +01:00
bjorn3
a8be7ea503
Implement new simd_shuffle signature
2021-11-18 19:27:32 +01:00
bjorn3
bf907a3de1
Sync from rust 47aeac648e
2021-10-27 14:05:12 +02:00
bjorn3
1ceda5bb7e
Remove unncesessary TryFrom and TryInto impls
2021-10-21 20:18:01 +02:00
Camille GILLOT
7879119e6a
Make hash_result an Option.
2021-10-20 18:29:18 +02:00
bjorn3
8ed0d0d980
Remove unnecessary Lazy
...
Found by m-ou-se in https://github.com/bjorn3/rustc_codegen_cranelift/pull/1166#discussion_r730468919
2021-10-17 22:44:08 +02:00
bjorn3
b2fed29e1a
Update Cranelift
2021-10-12 14:47:57 +02:00
Deadbeef
0134088cd2
Add const_eval_select intrinsic
2021-10-12 05:42:23 +00:00
bjorn3
376dd765d4
Sync from rust bb918d0a5b
2021-10-09 15:02:14 +02:00
bors
2228c49544
Auto merge of #89619 - michaelwoerister:incr-vtables, r=nagisa
...
Turn vtable_allocation() into a query
This PR removes the untracked vtable-const-allocation cache from the `tcx` and turns the `vtable_allocation()` method into a query.
The change is pretty straightforward and should be backportable without too much effort.
Fixes https://github.com/rust-lang/rust/issues/89598 .
2021-10-08 09:04:06 +00:00
Michael Woerister
095064b996
Turn tcx.vtable_allocation() into a query.
2021-10-07 20:03:00 +02:00