[Hexagon] Properly scale bit index when extracting elements from vNi1
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 25 Jul 2018 16:20:59 +0000 (16:20 +0000)
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 25 Jul 2018 16:20:59 +0000 (16:20 +0000)
commit4e07509d18f17b5ea387d2ddc16381ccb316927b
treee8bf8f00a2764c8f56965f5cd056b50f4d3de78b
parent78ab659bb41296a47f8793614e9ac44cfe55aaa6
[Hexagon] Properly scale bit index when extracting elements from vNi1

For example v = <2 x i1> is represented as bbbbaaaa in a predicate register,
where b = v[1], a = v[0]. Extracting v[1] is equivalent to extracting bit 4
from the predicate register.

llvm-svn: 337934
llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
llvm/test/CodeGen/Hexagon/vect/extract-elt-vNi1.ll [new file with mode: 0644]