Colin LeMahieu | bb71f7d | 2015-06-17 20:29:33 +0000 | [diff] [blame] | 1 | ; RUN: llc -march=hexagon < %s | FileCheck %s |
Krzysztof Parzyszek | c9f797f | 2018-03-06 19:07:21 +0000 | [diff] [blame] | 2 | ; CHECK: memub(r{{[0-9]+}}<<#1+##a) |
Colin LeMahieu | bb71f7d | 2015-06-17 20:29:33 +0000 | [diff] [blame] | 3 | |
| 4 | @a = external global [5 x [2 x i8]] |
| 5 | |
| 6 | define zeroext i8 @foo(i8 zeroext %l) nounwind readonly { |
| 7 | for.end: |
| 8 | %idxprom = zext i8 %l to i32 |
| 9 | %arrayidx1 = getelementptr inbounds [5 x [2 x i8]], [5 x [2 x i8]]* @a, i32 0, i32 %idxprom, i32 0 |
| 10 | %0 = load i8, i8* %arrayidx1, align 1 |
| 11 | %conv = zext i8 %0 to i32 |
| 12 | %mul = mul nsw i32 %conv, 20 |
| 13 | %conv2 = trunc i32 %mul to i8 |
| 14 | ret i8 %conv2 |
| 15 | } |
| 16 | |