os-rust/compiler
Zalathar 35a8746832 coverage: Instrument the RHS value of lazy logical operators
When a lazy logical operator (`&&` or `||`) occurs outside of an `if`
condition, it normally doesn't have any associated control-flow branch, so we
don't have an existing way to track whether it was true or false.

This patch adds special code to handle this case, by inserting extra MIR blocks
in a diamond shape after evaluating the RHS. This gives us a place to insert
the appropriate marker statements, which can then be given their own counters.
2024-05-30 15:38:46 +10:00
..
rustc Change SIGPIPE ui from #[unix_sigpipe = "..."] to -Zon-broken-pipe=... 2024-05-02 19:48:29 +02:00
rustc_abi don't inhibit random field reordering on repr(packed(1)) 2024-05-21 19:22:04 +02:00
rustc_arena
rustc_ast ast: Revert a breaking attribute visiting order change 2024-05-29 21:55:24 +03:00
rustc_ast_ir Remove extern crate rustc_macros from numerous crates. 2024-04-29 10:21:54 +10:00
rustc_ast_lowering Cache whether a body has inline consts 2024-05-28 13:38:43 +00:00
rustc_ast_passes Rollup merge of #124048 - veera-sivarajan:bugfix-123773-c23-variadics, r=compiler-errors 2024-05-26 15:28:26 -07:00
rustc_ast_pretty Create const block DefIds in typeck instead of ast lowering 2024-05-28 13:38:43 +00:00
rustc_attr Rename buffer_lint_with_diagnostic to buffer_lint 2024-05-21 20:16:39 +00:00
rustc_baked_icu_data
rustc_borrowck Remove DefId from EarlyParamRegion (tedium/diagnostics) 2024-05-24 18:06:53 +01:00
rustc_builtin_macros Rollup merge of #125316 - nnethercote:tweak-Spacing, r=petrochenkov 2024-05-23 07:41:18 +02:00
rustc_codegen_cranelift Rollup merge of #124251 - scottmcm:unop-ptr-metadata, r=oli-obk 2024-05-29 03:25:07 +01:00
rustc_codegen_gcc Rollup merge of #125345 - durin42:thin-link-bitcode, r=bjorn3 2024-05-23 23:39:26 +02:00
rustc_codegen_llvm Rollup merge of #124655 - Darksonn:fixed-x18, r=lqd,estebank 2024-05-29 20:12:32 +02:00
rustc_codegen_ssa Rollup merge of #124251 - scottmcm:unop-ptr-metadata, r=oli-obk 2024-05-29 03:25:07 +01:00
rustc_const_eval Rollup merge of #125633 - RalfJung:miri-no-copy, r=saethlin 2024-05-29 03:25:09 +01:00
rustc_data_structures Rollup merge of #124818 - compiler-errors:ena, r=Mark-Simulacrum 2024-05-11 08:00:15 +02:00
rustc_driver
rustc_driver_impl Rollup merge of #124320 - Urgau:print-check-cfg, r=petrochenkov 2024-05-29 03:25:07 +01:00
rustc_error_codes Remove a stray backtick in an error explanation. 2024-05-13 07:53:38 +10:00
rustc_error_messages Auto merge of #125410 - fmease:adj-lint-diag-api, r=nnethercote 2024-05-27 08:44:12 +00:00
rustc_errors Auto merge of #125410 - fmease:adj-lint-diag-api, r=nnethercote 2024-05-27 08:44:12 +00:00
rustc_expand Rollup merge of #125530 - SparrowLii:expand2, r=petrochenkov 2024-05-27 13:10:35 +02:00
rustc_feature Auto merge of #125326 - weiznich:move/do_not_recommend_to_diganostic_namespace, r=compiler-errors 2024-05-22 04:14:08 +00:00
rustc_fluent_macro
rustc_fs_util
rustc_graphviz
rustc_hir Add lang item for AsyncFnKindHelper::Upvars 2024-05-29 14:28:53 -04:00
rustc_hir_analysis Add lang item for Future::Output 2024-05-29 14:22:56 -04:00
rustc_hir_pretty Create const block DefIds in typeck instead of ast lowering 2024-05-28 13:38:43 +00:00
rustc_hir_typeck Rollup merge of #125664 - compiler-errors:trace-tweaks, r=lcnr 2024-05-29 03:25:11 +01:00
rustc_incremental Run rustfmt on files that need it. 2024-05-24 15:17:21 +10:00
rustc_index
rustc_index_macros
rustc_infer Remove Trace 2024-05-28 11:58:38 -04:00
rustc_interface Rollup merge of #124655 - Darksonn:fixed-x18, r=lqd,estebank 2024-05-29 20:12:32 +02:00
rustc_lexer
rustc_lint Change lint_dropping_copy_types to use UseLetUnderscoreIgnoreSuggestion as suggestion. 2024-05-29 18:09:20 +08:00
rustc_lint_defs Rollup merge of #125522 - spastorino:fix-lint-docs-edition-handling, r=Urgau,michaelwoerister 2024-05-27 13:10:34 +02:00
rustc_llvm thinlto: only build summary file if needed 2024-05-23 14:58:30 -04:00
rustc_log Use Backtrace::force_capture instead of Backtrace::capture in rustc_log 2024-05-21 10:54:36 +02:00
rustc_macros Auto merge of #125410 - fmease:adj-lint-diag-api, r=nnethercote 2024-05-27 08:44:12 +00:00
rustc_metadata Give EarlyBinder a tcx parameter 2024-05-26 20:04:05 -04:00
rustc_middle Rollup merge of #125633 - RalfJung:miri-no-copy, r=saethlin 2024-05-29 03:25:09 +01:00
rustc_mir_build coverage: Instrument the RHS value of lazy logical operators 2024-05-30 15:38:46 +10:00
rustc_mir_dataflow Remove #[macro_use] extern crate tracing from rustc_mir_dataflow. 2024-05-23 18:02:40 +10:00
rustc_mir_transform Rollup merge of #124251 - scottmcm:unop-ptr-metadata, r=oli-obk 2024-05-29 03:25:07 +01:00
rustc_monomorphize Don't eagerly monomorphize drop for types that are impossible to instantiate 2024-05-24 21:53:39 -04:00
rustc_next_trait_solver Uplift binder 2024-05-21 17:00:45 -04:00
rustc_parse Create const block DefIds in typeck instead of ast lowering 2024-05-28 13:38:43 +00:00
rustc_parse_format
rustc_passes Create const block DefIds in typeck instead of ast lowering 2024-05-28 13:38:43 +00:00
rustc_pattern_analysis Remove LintDiagnostic::msg 2024-05-23 04:08:35 +02:00
rustc_privacy split out AliasTy -> AliasTerm 2024-05-13 11:59:42 -04:00
rustc_query_impl Remove extern crate rustc_middle from rustc_query_impl. 2024-05-13 08:20:18 +10:00
rustc_query_system Add a footer in FileEncoder and check for it in MemDecoder 2024-05-21 20:12:29 -04:00
rustc_resolve Rollup merge of #125705 - oli-obk:const_block_ice, r=compiler-errors 2024-05-29 20:12:34 +02:00
rustc_sanitizers Fix typos (taking into account review comments) 2024-05-18 18:12:18 +02:00
rustc_serialize PR feedback 2024-05-21 20:12:30 -04:00
rustc_session coverage: Add CLI support for -Zcoverage-options=condition 2024-05-30 15:38:46 +10:00
rustc_smir Add an intrinsic for ptr::metadata 2024-05-28 09:28:51 -07:00
rustc_span Add lang item for AsyncFnKindHelper::Upvars 2024-05-29 14:28:53 -04:00
rustc_symbol_mangling Rename Unsafe to Safety 2024-05-17 18:33:37 -03:00
rustc_target Rollup merge of #117671 - kjetilkjeka:nvptx_c_abi_avoid_direct, r=davidtwco 2024-05-28 18:04:31 +02:00
rustc_trait_selection Add lang item for AsyncFnKindHelper::Upvars 2024-05-29 14:28:53 -04:00
rustc_traits split out AliasTy -> AliasTerm 2024-05-13 11:59:42 -04:00
rustc_transmute Align: add bytes_usize and bits_usize 2024-05-01 15:57:33 +02:00
rustc_ty_utils Auto merge of #125695 - RalfJung:fn_arg_sanity_check, r=jieyouxu 2024-05-29 09:49:23 +00:00
rustc_type_ir Make ProofTreeBuilder actually generic over interner 2024-05-28 11:10:11 -04:00
rustc_type_ir_macros Uplift TraitPredicate 2024-05-11 18:20:00 -04:00
stable_mir Add an intrinsic for ptr::metadata 2024-05-28 09:28:51 -07:00