rust/compiler/rustc_mir/src/interpret
bors 2336406b38 Auto merge of #86291 - crlf0710:trait_vtbl_refactor, r=bjorn3
Refactor vtable codegen

This refactor the codegen of vtables of miri interpreter, llvm, cranelift codegen backends.

This is preparation for the implementation of trait upcasting feature. cc #65991

Note that aside from code reorganization, there's an internal behavior change here that now InstanceDef::Virtual's index now include the three metadata slots, and now the first method is with index 3.

cc  `@RalfJung` `@bjorn3`
2021-06-16 07:20:27 +00:00
..
intrinsics Rollup merge of #85963 - m-ou-se:constructor-type-name, r=yaahc 2021-06-04 13:43:02 +09:00
cast.rs entirely remove rustc_args_required_const attribute 2021-05-12 16:15:27 +02:00
eval_context.rs Rewrite to a match 2021-05-28 09:20:43 +08:00
intern.rs entirely remove rustc_args_required_const attribute 2021-05-12 16:15:27 +02:00
intrinsics.rs Explain that ensure_monomorphic_enough omission is intentional 2021-06-05 18:28:25 +02:00
machine.rs Pass StackPopUnwind to eval_fn_call() and some other functions that are called by eval_fn_call() 2021-05-23 22:10:23 +08:00
memory.rs support creating mutable allocations from byte slices 2021-05-23 12:37:16 +02:00
mod.rs const-eval: disallow unwinding across functions that !fn_can_unwind() 2021-05-23 04:20:53 +08:00
operand.rs CTFE core engine allocation & memory API improvemenets 2021-05-18 19:33:55 +02:00
operator.rs Pass PlaceTy by reference not value 2021-02-16 23:52:05 +01:00
place.rs Remove unneeded workaround 2021-05-26 13:16:26 -04:00
step.rs CTFE core engine allocation & memory API improvemenets 2021-05-18 19:33:55 +02:00
terminator.rs Use match instead of .map_or(StackPopUnwind::Skip, StackPopUnwind::Cleanup) 2021-05-26 00:51:51 +08:00
traits.rs Refactor to make interpreter and codegen backend neutral to vtable internal representation. 2021-06-15 01:59:00 +08:00
util.rs Use Option::map_or instead of .map(..).unwrap_or(..) 2021-01-14 19:23:59 +01:00
validity.rs Adjust throw_validation_failure macro to shorten the use of with_no_trimmed_paths 2021-06-14 18:57:53 +02:00
visitor.rs ./x.py fmt 2021-02-16 23:52:05 +01:00