Eugene Zelenko
52889219ef
[Hexagon] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC).
...
llvm-svn: 309746
2017-08-01 21:20:10 +00:00
Krzysztof Parzyszek
32e20b80c6
[Hexagon] Formatting changes, NFC
...
llvm-svn: 301953
2017-05-02 18:09:07 +00:00
Krzysztof Parzyszek
49f7e0a98b
[Hexagon] Move checking AXOK to checker
...
Patch by Colin LeMahieu.
llvm-svn: 301949
2017-05-02 18:00:37 +00:00
Krzysztof Parzyszek
c15f8d2a08
[Hexagon] Extract function that checks endloops with other branches
...
Change location number to point to conflicting branch instruction.
Patch by Colin LeMahieu.
llvm-svn: 301946
2017-05-02 17:56:11 +00:00
Krzysztof Parzyszek
1cc6bfbc83
[Hexagon] Add new packet iterator which will iterate through duplexes
...
Patch by Colin LeMahieu.
llvm-svn: 301945
2017-05-02 17:53:51 +00:00
Krzysztof Parzyszek
107f82d128
[Hexagon] Check for .cur def without use without using a map data structure
...
Patch by Colin LeMahieu.
llvm-svn: 301943
2017-05-02 17:51:14 +00:00
Krzysztof Parzyszek
4a1c3f0aaa
[Hexagon] Replace CVI_VM_CUR_LD type with CVI_VM_LD
...
A .cur instruction can be identified by checking isCVINew() && mayLoad().
Patch by Colin LeMahieu.
llvm-svn: 301829
2017-05-01 20:16:35 +00:00
Krzysztof Parzyszek
55db483a46
[Hexagon] Improving error reporting for writing to read only registers
...
Patch by Colin LeMahieu.
llvm-svn: 301828
2017-05-01 20:10:41 +00:00
Krzysztof Parzyszek
e96d27a997
[Hexagon] Give better error messages for solo instruction errors
...
Patch by Colin LeMahieu.
llvm-svn: 301827
2017-05-01 20:06:01 +00:00
Krzysztof Parzyszek
e12d1e70cb
[Hexagon] Improve shuffle error reporting
...
Patch by Colin LeMahieu.
llvm-svn: 301823
2017-05-01 19:41:43 +00:00
Krzysztof Parzyszek
d04c9b999c
[Hexagon] Remove unused variables
...
Found by PVS-Studio. Fixes llvm.org/PR31676.
llvm-svn: 299262
2017-03-31 21:03:59 +00:00
Krzysztof Parzyszek
8cdfe8ecf3
[Hexagon] Update MCTargetDesc
...
Changes include:
- Updates to the instruction descriptor flags.
- Improvements to the packet shuffler and checker.
- Updates to the handling of certain relocations.
- Better handling of duplex instructions.
llvm-svn: 294226
2017-02-06 19:35:46 +00:00
Krzysztof Parzyszek
96bb4fe539
[Hexagon] Separate C8 and USR to avoid unwanted subregister composition
...
Composing subreg_loreg with subreg_oveflow leads to strange results with
lane masks for register classes with subreg_loreg. In particular, dead
lane detection generates incorrect code.
llvm-svn: 271087
2016-05-28 01:51:16 +00:00
Mehdi Amini
b550cb1750
[NFC] Header cleanup
...
Removed some unused headers, replaced some headers with forward class declarations.
Found using simple scripts like this one:
clear && ack --cpp -l '#include "llvm/ADT/IndexedMap.h"' | xargs grep -L 'IndexedMap[<]' | xargs grep -n --color=auto 'IndexedMap'
Patch by Eugene Kosov <claprix@yandex.ru>
Differential Revision: http://reviews.llvm.org/D19219
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 266595
2016-04-18 09:17:29 +00:00
Craig Topper
5c32279bee
[Hexagon] Don't call getNumImplicitDefs and then iterate over the count. getNumImplicitDefs contains a loop so its better to just loop over the null terminated implicit def list. NFC
...
llvm-svn: 254852
2015-12-05 17:34:07 +00:00
Craig Topper
e5e035a3a8
Replace uint16_t with the MCPhysReg typedef in many places. A lot of physical register arrays already use this typedef.
...
llvm-svn: 254843
2015-12-05 07:13:35 +00:00
Colin LeMahieu
7cd0892729
[Hexagon] Enabling ASM parsing on Hexagon backend and adding instruction parsing tests. General updating of the code emission.
...
llvm-svn: 252443
2015-11-09 04:07:48 +00:00