From f9d01a12d182dbc35ee96c48deb9512d2f2cd49e Mon Sep 17 00:00:00 2001 From: Krzysztof Parzyszek Date: Fri, 5 Jan 2018 20:48:03 +0000 Subject: [Hexagon] Add patterns for truncating HVX vector types Only non-bool vectors. llvm-svn: 321895 --- llvm/lib/Target/Hexagon/HexagonPatterns.td | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'llvm/lib/Target') diff --git a/llvm/lib/Target/Hexagon/HexagonPatterns.td b/llvm/lib/Target/Hexagon/HexagonPatterns.td index d749e42649d..eb8ffd6c312 100644 --- a/llvm/lib/Target/Hexagon/HexagonPatterns.td +++ b/llvm/lib/Target/Hexagon/HexagonPatterns.td @@ -3019,4 +3019,9 @@ let Predicates = [UseHVX] in { def: Pat<(VecI32 (sext_inreg HVI32:$Vs, v32i16)), (V6_vasrh (V6_vaslh HVI32:$Vs, (A2_tfrsi 16)), (A2_tfrsi 16))>; } + + def: Pat<(VecI8 (trunc HWI16:$Vss)), + (V6_vpackeb (HiVec $Vss), (LoVec $Vss))>; + def: Pat<(VecI16 (trunc HWI32:$Vss)), + (V6_vpackeh (HiVec $Vss), (LoVec $Vss))>; } -- cgit v1.2.3