| 18 | */ |
| 19 | |
| 20 | af_dtype implicit(const af_dtype lty, const af_dtype rty) { |
| 21 | if (lty == rty) { return lty; } |
| 22 | |
| 23 | if (lty == c64 || rty == c64) { return c64; } |
| 24 | |
| 25 | if (lty == c32 || rty == c32) { |
| 26 | if (lty == f64 || rty == f64) { return c64; } |
| 27 | return c32; |
| 28 | } |
| 29 | |
| 30 | if (lty == f64 || rty == f64) { return f64; } |
| 31 | if (lty == f32 || rty == f32) { return f32; } |
| 32 | if ((lty == f16) || (rty == f16)) { return f16; } |
| 33 | |
| 34 | if ((lty == u64) || (rty == u64)) { return u64; } |
| 35 | if ((lty == s64) || (rty == s64)) { return s64; } |
| 36 | if ((lty == u32) || (rty == u32)) { return u32; } |
| 37 | if ((lty == s32) || (rty == s32)) { return s32; } |
| 38 | if ((lty == u16) || (rty == u16)) { return u16; } |
| 39 | if ((lty == s16) || (rty == s16)) { return s16; } |
| 40 | if ((lty == u8) || (rty == u8)) { return u8; } |
| 41 | if ((lty == s8) || (rty == s8)) { return s8; } |
| 42 | if ((lty == b8) && (rty == b8)) { return b8; } |
| 43 | |
| 44 | return f32; |
| 45 | } |
| 46 | |
| 47 | af_dtype implicit(const af_array lhs, const af_array rhs) { |
| 48 | const ArrayInfo& lInfo = getInfo(lhs); |
no test coverage detected