bors
e3d2831ff4
Auto merge of #118534 - RalfJung:extern-type-size-of-val, r=WaffleLapkin
...
codegen: panic when trying to compute size/align of extern type
The alignment is also computed when accessing a field of extern type at non-zero offset, so we also panic in that case.
Previously `size_of_val` worked because the code path there assumed that "thin pointer" means "sized". But that's not true any more with extern types. The returned size and align are just blatantly wrong, so it seems better to panic than returning wrong results. We use a non-unwinding panic since code probably does not expect size_of_val to panic.
2023-12-13 08:33:05 +00:00
Ralf Jung
aa3dc4c225
remove a cranelift test that doesn't make sense any more
2023-12-12 08:15:17 +01:00
Urgau
9d9459a6f9
Adjust tests for newly added ambiguous_wide_pointer_comparisons lint
2023-12-06 09:03:48 +01:00
bjorn3
1988cf4a18
Merge commit '710c67909d034e1c663174a016ca82b95c2d6c12' into sync_cg_clif-2023-11-25
2023-11-25 10:05:52 +00:00
bjorn3
4ae658683f
Fix fn_sig_for_fn_abi and the coroutine transform for generators
...
There were three issues previously:
* The self argument was pinned, despite Iterator::next taking an
unpinned mutable reference.
* A resume argument was passed, despite Iterator::next not having one.
* The return value was CoroutineState<Item, ()> rather than Option<Item>
While these things just so happened to work with the LLVM backend,
cg_clif does much stricter checks when trying to assign a value to a
place. In addition it can't handle the mismatch between the amount of
arguments specified by the FnAbi and the FnSig.
2023-11-23 20:17:19 +00:00
bjorn3
d49fd9f877
Merge commit 'c84d1871dc4456539b7b578830268ab3539915d0' into sync_cg_clif-2023-11-10
2023-11-10 11:30:51 +00:00
bjorn3
a302610016
Merge commit '93a5433f17ab5ed48cc88f1e69b0713b16183373' into sync_cg_clif-2023-10-24
2023-10-24 12:22:23 +00:00
Oli Scherer
4519e68957
s/generator/coroutine/
2023-10-20 21:14:01 +00:00
Oli Scherer
8e264ab07a
s/Generator/Coroutine/
2023-10-20 21:10:38 +00:00
bjorn3
5d85a24442
Merge commit '81dc066758ec150b43822d4a0c84aae20fe10f40' into sync_cg_clif-2023-10-09
2023-10-09 08:52:46 +00:00
bjorn3
59cabd7032
Merge commit '8f9ac9c22d6594cf059d8e6c71d414cc5ccd7975' into sync_cg_clif-2023-08-09
2023-08-09 18:20:12 +00:00
bjorn3
e8168ce8a3
Merge commit '1eded3619d0e55d57521a259bf27a03906fdfad0' into sync_cg_clif-2023-07-22
2023-07-22 13:32:34 +00:00
chenx97
648f5e4208
support for mips64r6 as a target_arch value
2023-07-18 18:58:18 +08:00
DrMeepster
f429b3e67f
remove box_free and replace with drop impl
2023-06-16 13:41:06 -07:00
bjorn3
81ea0b29ea
Merge commit '8830dccd1d4c74f1f69b0d3bd982a3f1fcde5807' into sync_cg_clif-2023-06-15
2023-06-15 17:56:01 +00:00
bjorn3
8bf550e616
Merge commit 'ef07e8e60f994ec014d049a95591426fb92ebb79' into sync_cg_clif-2023-04-29
2023-04-29 12:00:43 +00:00
Matthias Krüger
b908472a93
Revert "Remove #[alloc_error_handler] from the compiler and library"
...
This reverts commit abc0660118
.
2023-04-25 00:08:35 +02:00
Amanieu d'Antras
2ead2f56c0
Remove #[alloc_error_handler] from the compiler and library
2023-04-16 08:35:50 -07:00
bjorn3
7b3bd56ed9
Merge commit 'dec0daa8f6d0a0e1c702f169abb6bf3eee198c67' into sync_cg_clif-2023-03-15
2023-03-15 14:41:48 +00:00
clubby789
2c122a8926
Remove uses of box_syntax
in rustc and tools
2023-03-12 13:19:46 +00:00
Pietro Albini
0738ffe419
replace legacy copyright annotations in submodules
2023-03-09 12:24:47 +01:00
bjorn3
98a276b589
Merge commit '2bb3996244cf1b89878da9e39841e9f6bf061602' into sync_cg_clif-2022-12-14
2022-12-14 19:30:46 +01:00
bjorn3
9950bd1dc5
Merge commit '266e96785ab71834b917bf474f130a6d8fdecd4b' into sync_cg_clif-2022-10-23
2022-10-23 16:22:55 +02:00
Urgau
102a577bb3
Stabilize bench_black_box
2022-09-27 17:38:51 +02:00
bjorn3
cfef0a4f8d
Merge commit 'e9d1a0a7b0b28dd422f1a790ccde532acafbf193' into sync_cg_clif-2022-08-24
2022-08-24 18:40:58 +02:00
Maybe Waffle
bd1ab72406
Replace most uses of pointer::offset
with add
and sub
2022-08-21 02:21:41 +04:00
bjorn3
640c3f730a
Merge commit 'c19edfd71a1d0ddef86c2c67fdb40718d40a72b4' into sync_cg_clif-2022-07-25
2022-07-25 16:07:57 +02:00
Konrad Borowski
743cee6ca9
Partially stabilize const_slice_from_raw_parts
...
This doesn't stabilize methods working on mutable pointers.
2022-07-09 23:20:02 +02:00
Nikolai Vazquez
eb5f23737b
Fix unsized field order
2022-06-03 12:58:36 -04:00
Nikolai Vazquez
7a8b96f89d
Make std::mem::needs_drop
accept ?Sized
2022-06-03 03:28:19 -04:00
bjorn3
32202f20cd
Merge commit 'f2cdd4a78d89c009342197cf5844a21f8aa813df' into sync_cg_clif-2022-04-22
2022-04-22 21:11:38 +02:00
Yuri Astrakhan
93aedb67df
Spellchecking some comments
...
This PR attempts to clean up some minor spelling mistakes in comments
2022-03-30 01:39:38 -04:00
bjorn3
d1904e5855
Merge commit '370c397ec9169809e5ad270079712e0043514240' into sync_cg_clif-2022-03-20
2022-03-20 16:55:21 +01:00
bjorn3
a5a14258e5
Merge commit '40b00f4200fbdeefd11815398cb46394b8cb0a5e' into sync_cg_clif-2021-12-30
2021-12-30 14:53:41 +01:00
bjorn3
799e067912
Merge commit '97e504549371d7640cf011d266e3c17394fdddac' into sync_cg_clif-2021-12-20
2021-12-20 18:56:35 +01:00
Amanieu d'Antras
44cce7a4c8
Remove alloc::prelude
...
As per the libs team decision in #58935 .
Closes #58935
2021-10-15 01:41:31 +02:00
bjorn3
5d3b8e7c1b
Merge commit '61667dedf55e3e5aa584f7ae2bd0471336b92ce9' into sync_cg_clif-2021-09-19
2021-09-19 13:56:58 +02:00
Marcel Hellwig
8b8ab5f599
remove box_syntax uses from cranelift and tools
2021-08-18 09:31:51 +02:00
bjorn3
fb92375755
Merge commit '3a31c6d8272c14388a34622193baf553636fe470' into sync_cg_clif-2021-07-07
2021-07-07 11:14:20 +02:00
bjorn3
d6b03451e6
Merge commit '40dd3e2b7089b5e96714e064b731f6dbf17c61a9' into sync_cg_clif-2021-05-27
2021-05-27 13:08:14 +02:00
Erin Power
ee570b1302
Sync rustc_codegen_cranelift 'ddd4ce25535cf71203ba3700896131ce55fde795'
2021-04-30 14:49:58 +02:00
bjorn3
07968a001d
Merge commit '0969bc6dde001e01e7e1f58c8ccd7750f8a49ae1' into sync_cg_clif-2021-03-29
2021-03-29 10:45:09 +02:00
bjorn3
27886cd6b6
Merge commit '9a0c32934ebe376128230aa8da3275697b2053e7' into sync_cg_clif-2021-03-05
2021-03-05 19:12:59 +01:00
bjorn3
a75f9bc3be
Merge commit 'd556c56f792756dd7cfec742b9f2e07612dc10f4' into sync_cg_clif-2021-02-01
2021-02-01 10:11:46 +01:00
bjorn3
77f74ed070
Merge commit 'dbee13661efa269cb4cd57bb4c6b99a19732b484' into sync_cg_clif-2020-12-27
2020-12-27 10:30:38 +01:00
bjorn3
d404840788
Merge commit '5988bbd24aa87732bfa1d111ba00bcdaa22c481a' into sync_cg_clif-2020-11-27
2020-11-27 20:48:53 +01:00
Camelid
57739b54cb
Rename optin_builtin_traits
to auto_traits
...
They were originally called "opt-in, built-in traits" (OIBITs), but
people realized that the name was too confusing and a mouthful, and so
they were renamed to just "auto traits". The feature flag's name wasn't
updated, though, so that's what this PR does.
There are some other spots in the compiler that still refer to OIBITs,
but I don't think changing those now is worth it since they are internal
and not particularly relevant to this PR.
Also see <https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/opt-in.2C.20built-in.20traits.20(auto.20traits).20feature.20name >.
2020-11-23 14:14:06 -08:00
bjorn3
285c7c66dc
Merge commit '03f01bbe901d60b71cf2c5ec766aef5e532ab79d' into update_cg_clif-2020-11-01
2020-11-03 11:00:04 +01:00
bjorn3
e5b2b1ba81
Misc changes
2020-09-22 13:06:14 +02:00
bjorn3
2cd8ccbea1
Don't benchmark mod_bench anymore
2020-09-18 14:45:52 +02:00