Krzysztof Parzyszek | 6bfc657 | 2018-10-19 17:31:11 +0000 | [diff] [blame] | 1 | ; RUN: llc -march=hexagon < %s | FileCheck %s |
Krzysztof Parzyszek | a72fad9 | 2017-02-10 15:33:13 +0000 | [diff] [blame] | 2 | ; CHECK: vaddh(r{{[0-9]+}},r{{[0-9]+}}) |
Tony Linthicum | 1213a7a | 2011-12-12 21:14:40 +0000 | [diff] [blame] | 3 | |
Krzysztof Parzyszek | 6bfc657 | 2018-10-19 17:31:11 +0000 | [diff] [blame] | 4 | @g0 = external global i32 |
| 5 | @g1 = external global i32 |
Tony Linthicum | 1213a7a | 2011-12-12 21:14:40 +0000 | [diff] [blame] | 6 | |
Krzysztof Parzyszek | 6bfc657 | 2018-10-19 17:31:11 +0000 | [diff] [blame] | 7 | define void @f0() #0 { |
| 8 | b0: |
| 9 | %v0 = load i32, i32* @g0, align 4 |
| 10 | %v1 = load i32, i32* @g1, align 4 |
| 11 | %v2 = call i32 @llvm.hexagon.A2.svaddh(i32 %v0, i32 %v1) |
| 12 | store i32 %v2, i32* @g1, align 4 |
Tony Linthicum | 1213a7a | 2011-12-12 21:14:40 +0000 | [diff] [blame] | 13 | ret void |
| 14 | } |
| 15 | |
Krzysztof Parzyszek | 6bfc657 | 2018-10-19 17:31:11 +0000 | [diff] [blame] | 16 | declare i32 @llvm.hexagon.A2.svaddh(i32, i32) #1 |
| 17 | |
| 18 | attributes #0 = { nounwind "target-cpu"="hexagonv5" } |
| 19 | attributes #1 = { nounwind readnone "target-cpu"="hexagonv5" } |