[Hexagon] Rewrite non-HVX unaligned loads as pairs of aligned ones
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 7 Mar 2018 17:27:18 +0000 (17:27 +0000)
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>
Wed, 7 Mar 2018 17:27:18 +0000 (17:27 +0000)
commit2c3edf05679e3c8cf341b2d1b2f517533cdae6e3
tree4e14a8b018884f4da92a33f09b8fdf6875fae9a9
parentb0084a0eee27527981130bdc85d1810082fabf00
[Hexagon] Rewrite non-HVX unaligned loads as pairs of aligned ones

This is a follow-up to r325169, this time for all types, not just HVX
vector types.

Disable this by default, since it's not always safe.

llvm-svn: 326915
14 files changed:
llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.h
llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
llvm/lib/Target/Hexagon/HexagonISelLowering.h
llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
llvm/lib/Target/Hexagon/HexagonPatterns.td
llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
llvm/lib/Target/Hexagon/HexagonSubtarget.h
llvm/test/CodeGen/Hexagon/autohvx/isel-expand-unaligned-loads.ll
llvm/test/CodeGen/Hexagon/select-instr-align.ll
llvm/test/CodeGen/Hexagon/vect/vect-load-v4i16.ll
llvm/test/CodeGen/Hexagon/vect/vect-v4i16.ll