unsafe-libopus 0.2.0

libopus transpiled to rust by c2rust
Documentation
static mut sigm_LUT_slope_Q10: [i32; 6] = [237, 153, 73, 30, 12, 7];
static mut sigm_LUT_pos_Q15: [i32; 6] = [16384, 23955, 28861, 31213, 32178, 32548];
static mut sigm_LUT_neg_Q15: [i32; 6] = [16384, 8812, 3906, 1554, 589, 219];
pub unsafe fn silk_sigm_Q15(mut in_Q5: i32) -> i32 {
    let mut ind: i32 = 0;
    if in_Q5 < 0 {
        in_Q5 = -in_Q5;
        if in_Q5 >= 6 * 32 {
            return 0;
        } else {
            ind = in_Q5 >> 5;
            return sigm_LUT_neg_Q15[ind as usize]
                - sigm_LUT_slope_Q10[ind as usize] as i16 as i32 * (in_Q5 & 0x1f) as i16 as i32;
        }
    } else if in_Q5 >= 6 * 32 {
        return 32767;
    } else {
        ind = in_Q5 >> 5;
        return sigm_LUT_pos_Q15[ind as usize]
            + sigm_LUT_slope_Q10[ind as usize] as i16 as i32 * (in_Q5 & 0x1f) as i16 as i32;
    };
}