AS
Size: a a a
AS
AS
AS
AS
MC
AS
MC
AS
MC
--release пишешь?AS
MC
AS
MC
MC
fn f() {
let mut adc_data: [u32;3] = [0;3];
//unsafe{HAL_ADC_Start_DMA(adc, &mut adc_data[0], adc_data.len() as u32)};
let Vref: i32 = 2800;
let v_level_mV: i32 = (adc_data[0] as i32);
let v_level_mV: i32 = v_level_mV * Vref;
let v_level_mV: i32 = v_level_mV / 4096;
let mut i_level_mA: i32 = ((adc_data[1] as i32) * Vref / 4096) / 1000;
}
fn main() {
f();
}MC
MC
MC
define internal void @_ZN10playground1f17hc844916d4c8e161fE() unnamed_addr #0 !dbg !5 {bb1: ; preds = %start
%2 = getelementptr inbounds [3 x i32], [3 x i32]* %adc_data, i64 0, i64 0, !dbg !24
%3 = load i32, i32* %2, !dbg !24
%4 = icmp ule i32 %3, -1, !dbg !24
call void @llvm.assume(i1 %4), !dbg !24
store i32 %3, i32* %v_level_mV, !dbg !24
%5 = load i32, i32* %v_level_mV, !dbg !27
%6 = load i32, i32* %Vref, !dbg !27
%7 = call { i32, i1 } @llvm.smul.with.overflow.i32(i32 %5, i32 %6), !dbg !27
%8 = extractvalue { i32, i1 } %7, 0, !dbg !27
%9 = extractvalue { i32, i1 } %7, 1, !dbg !27
%10 = call i1 @llvm.expect.i1(i1 %9, i1 false), !dbg !27
br i1 %10, label %panic, label %bb2, !dbg !27
AS
MC
v_level_mV на VrefMC