blob: 353c7bafb712928fcd312057d77c488374d31208 [file] [log] [blame]
Krzysztof Parzyszek046090d2018-03-12 14:01:28 +00001; RUN: llc -march=hexagon < %s | FileCheck %s
Krzysztof Parzyszek3d671242018-06-12 12:49:36 +00002; CHECK: rol
Krzysztof Parzyszek046090d2018-03-12 14:01:28 +00003
4; Function Attrs: nounwind
Krzysztof Parzyszekd91a9e22018-08-02 22:17:53 +00005define fastcc void @f0(i64* %a0) #0 {
6b0: ; preds = %b3, %b2
7 %v0 = load i64, i64* %a0, align 8, !tbaa !0
Krzysztof Parzyszek046090d2018-03-12 14:01:28 +00008 %v1 = lshr i64 %v0, 8
9 %v2 = shl i64 %v0, 56
10 %v3 = or i64 %v2, %v1
11 %v4 = xor i64 %v3, 0
12 %v5 = xor i64 %v4, 0
13 %v6 = add i64 0, %v5
Krzysztof Parzyszekd91a9e22018-08-02 22:17:53 +000014 store i64 %v6, i64* %a0, align 8, !tbaa !0
15 ret void
Krzysztof Parzyszek046090d2018-03-12 14:01:28 +000016}
17
Krzysztof Parzyszek3d671242018-06-12 12:49:36 +000018attributes #0 = { nounwind "target-cpu"="hexagonv60" }
Krzysztof Parzyszek046090d2018-03-12 14:01:28 +000019
20!0 = !{!1, !1, i64 0}
21!1 = !{!"long long", !2}
22!2 = !{!"omnipotent char", !3}
23!3 = !{!"Simple C/C++ TBAA"}