Benjamin Kramer
411a71a68d
ArrayRefize memory operand folding. NFC.
...
llvm-svn: 230846
2015-02-28 12:04:00 +00:00
Eric Christopher
454cbc40f6
getRegForInlineAsmConstraint wants to use TargetRegisterInfo for
...
a lookup, pass that in rather than use a naked call to getSubtargetImpl.
This involved passing down and around either a TargetMachine or
TargetRegisterInfo. Update all callers/definitions around the targets
and SelectionDAG.
llvm-svn: 230699
2015-02-26 22:38:43 +00:00
Eric Christopher
2a41cb1089
Remove an argument-less call to getSubtargetImpl from TargetLoweringBase.
...
This required plumbing a TargetRegisterInfo through computeRegisterProperties
and into findRepresentativeClass which uses it for register class
iteration. This required passing a subtarget into a few target specific
initializations of TargetLowering.
llvm-svn: 230583
2015-02-26 00:00:24 +00:00
NAKAMURA Takumi
9728985228
Fix a warning on HexagonMCCodeEmitter::MCII. [-Wunused-private-field]
...
llvm-svn: 230170
2015-02-22 09:58:29 +00:00
Tim Northover
a640d920b4
CodeGen: convert CCState interface to using ArrayRefs
...
Everyone except R600 was manually passing the length of a static array
at each callsite, calculated in a variety of interesting ways. Far
easier to let ArrayRef handle that.
There should be no functional change, but out of tree targets may have
to tweak their calls as with these examples.
llvm-svn: 230118
2015-02-21 02:11:17 +00:00
Colin LeMahieu
2397babc56
[Hexagon] Moving remaining methods off of HexagonMCInst in to HexagonMCInstrInfo and eliminating HexagonMCInst class.
...
llvm-svn: 229914
2015-02-19 21:10:50 +00:00
Colin LeMahieu
a77fe00425
[Hexagon] Moving more functions off of HexagonMCInst and in to HexagonMCInstrInfo.
...
llvm-svn: 229903
2015-02-19 19:49:27 +00:00
Colin LeMahieu
d00cd8e1d1
[Hexagon] Creating HexagonMCInstrInfo namespace as landing zone for static functions detached from HexagonMCInst.
...
llvm-svn: 229885
2015-02-19 19:00:00 +00:00
Colin LeMahieu
08deae36a2
[Hexagon] Removing static variable holding MCInstrInfo.
...
llvm-svn: 229872
2015-02-19 17:38:39 +00:00
Aaron Ballman
0b45511a2e
Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition.
...
llvm-svn: 229340
2015-02-15 22:54:22 +00:00
Chandler Carruth
18e8c62883
[PM] Remove the old 'PassManager.h' header file at the top level of
...
LLVM's include tree and the use of using declarations to hide the
'legacy' namespace for the old pass manager.
This undoes the primary modules-hostile change I made to keep
out-of-tree targets building. I sent an email inquiring about whether
this would be reasonable to do at this phase and people seemed fine with
it, so making it a reality. This should allow us to start bootstrapping
with modules to a certain extent along with making it easier to mix and
match headers in general.
The updates to any code for users of LLVM are very mechanical. Switch
from including "llvm/PassManager.h" to "llvm/IR/LegacyPassManager.h".
Qualify the types which now produce compile errors with "legacy::". The
most common ones are "PassManager", "PassManagerBase", and
"FunctionPassManager".
llvm-svn: 229094
2015-02-13 10:01:29 +00:00
Benjamin Kramer
4b76aa3d46
MathExtras: Bring Count(Trailing|Leading)Ones and CountPopulation in line with countTrailingZeros
...
Update all callers.
llvm-svn: 228930
2015-02-12 15:35:40 +00:00
Colin LeMahieu
350f7188f4
[Hexagon] Adding vector load with post-increment instructions. Adding decoder function for 64bit control register class.
...
llvm-svn: 228708
2015-02-10 16:59:36 +00:00
David Blaikie
9259521220
Fix the clang -Werror build (-Wunused-variable)
...
llvm-svn: 228635
2015-02-10 00:16:36 +00:00
Colin LeMahieu
b510c4f45f
[Hexagon] Adding missing load instructions and removing an unused multiclass parameter.
...
llvm-svn: 228630
2015-02-09 23:45:24 +00:00
Colin LeMahieu
8681a8bec5
[Hexagon] Factoring classes out of some load patterns and deleting some unused ones.
...
llvm-svn: 228627
2015-02-09 23:05:44 +00:00
Colin LeMahieu
6ba6e9c428
[Hexagon] Removing more V4 predicates since V4 is the required minimum.
...
llvm-svn: 228614
2015-02-09 21:56:37 +00:00
Colin LeMahieu
4b4e923d37
[Hexagon] Removing v2-4 flags. V4 is the minimum supported version.
...
llvm-svn: 228605
2015-02-09 21:07:35 +00:00
Colin LeMahieu
e3a71bb727
[Hexagon] Factoring classes out of store patterns.
...
llvm-svn: 228602
2015-02-09 20:33:46 +00:00
Colin LeMahieu
8be848654f
[Hexagon] Formatting v5 TD file. Removing commented defs.
...
llvm-svn: 228598
2015-02-09 20:03:42 +00:00
Colin LeMahieu
8bf75e2b96
[Hexagon] Cleaning up definition formatting.
...
llvm-svn: 228593
2015-02-09 19:24:44 +00:00
Colin LeMahieu
4a4a7fcd0d
[Hexagon] Renaming v4 compare-and-jump instructions.
...
llvm-svn: 228349
2015-02-05 22:03:32 +00:00
Colin LeMahieu
76508657b3
[Hexagon] Deleting unused patterns.
...
llvm-svn: 228348
2015-02-05 21:43:56 +00:00
Colin LeMahieu
77a7515601
[Hexagon] Simplifying and formatting several patterns. Changing a pattern multiply to be expanded.
...
llvm-svn: 228347
2015-02-05 21:13:25 +00:00
Colin LeMahieu
c801034ec8
[Hexagon] Factoring a class out of some store patterns, deleting unused definitions and reformatting some patterns.
...
llvm-svn: 228345
2015-02-05 20:38:58 +00:00
Colin LeMahieu
1b98c6df7b
[Hexagon] Factoring out a class for immediate transfers and cleaning up formatting.
...
llvm-svn: 228343
2015-02-05 20:08:52 +00:00
Colin LeMahieu
3ca6d76c86
[Hexagon] Renaming Y2_barrier. Fixing issues where doubleword variants of instructions can't be newvalue producers.
...
llvm-svn: 228330
2015-02-05 18:56:28 +00:00
Colin LeMahieu
a65b414ebc
[Hexagon] Renaming A2_subri, A2_andir, A2_orir. Fixing formatting.
...
llvm-svn: 228326
2015-02-05 18:38:08 +00:00
Colin LeMahieu
db2545bd9b
[Hexagon] Renaming A2_addi and formatting.
...
llvm-svn: 228318
2015-02-05 17:49:13 +00:00
Colin LeMahieu
3bdebacdf5
[Hexagon] Since decoding conflicts have been resolved, isCodeGenOnly = 0 by default and remove explicitly setting it.
...
llvm-svn: 228316
2015-02-05 17:32:17 +00:00
Colin LeMahieu
59e60a7508
[Hexagon] Deleting unused instructions and adding isCodeGenOnly to some defs.
...
llvm-svn: 228238
2015-02-05 00:10:16 +00:00
Colin LeMahieu
a5cba70965
[Hexagon] Updating load extend to i64 patterns.
...
llvm-svn: 228237
2015-02-04 23:55:16 +00:00
Colin LeMahieu
b25dd0b3f6
[Hexagon] Cleaning up i1 load and extension patterns.
...
llvm-svn: 228232
2015-02-04 23:27:48 +00:00
Colin LeMahieu
a83c8f413e
[Hexagon] Simplifying more load and store patterns and using new addressing patterns.
...
llvm-svn: 228231
2015-02-04 23:23:16 +00:00
Colin LeMahieu
1968c41c8d
[Hexagon] Simplifying some load and store patterns.
...
llvm-svn: 228227
2015-02-04 23:10:21 +00:00
Colin LeMahieu
0d1a9ddbbe
[Hexagon] Converting absolute-address load patterns to use AddrGP.
...
llvm-svn: 228225
2015-02-04 22:54:51 +00:00
Colin LeMahieu
528f1fe83c
[Hexagon] Converting atomic store/load to use AddrGP addressing.
...
llvm-svn: 228223
2015-02-04 22:40:36 +00:00
Colin LeMahieu
90f37476de
[Hexagon] Simplifying some store patterns. Adding AddrGP addressing forms.
...
llvm-svn: 228220
2015-02-04 22:36:28 +00:00
Colin LeMahieu
6a07b73882
[Hexagon] Adding selection for GlobalAddress and converting [z/i]ext load patterns to make use of them.
...
llvm-svn: 228184
2015-02-04 20:38:01 +00:00
Colin LeMahieu
7672352f54
[Hexagon] Replacing some load patterns with cleaner versions.
...
llvm-svn: 228169
2015-02-04 19:05:32 +00:00
Colin LeMahieu
a49ad7fb58
[Hexagon] Adding missing isCodeGenOnly = 0
...
llvm-svn: 228160
2015-02-04 18:11:32 +00:00
Colin LeMahieu
ac8c4238a0
[Hexagon] Adding encoding information for absolute-reg mode stores. Xfailing a test until constant extenders are correctly put in the same packet.
...
llvm-svn: 228158
2015-02-04 17:52:06 +00:00
Colin LeMahieu
5f7b883547
[Hexagon] Adding encoding information for absolute-set stores.
...
llvm-svn: 228154
2015-02-04 17:24:04 +00:00
Colin LeMahieu
06a21a79f1
[Hexagon] Adding encoding bits for indirect long load instructions.
...
llvm-svn: 228152
2015-02-04 16:56:46 +00:00
Colin LeMahieu
1666e591a9
[Hexagon] Revert change to isCodeGenOnly = 1 in r228080
...
llvm-svn: 228082
2015-02-04 00:09:23 +00:00
Colin LeMahieu
02270757b3
[Hexagon] Changing some isCodeGenOnly to isAsmParserOnly since we want them to asm parse but not cause decode conflicts.
...
llvm-svn: 228080
2015-02-04 00:07:26 +00:00
Colin LeMahieu
737967641b
[Hexagon] Marking a bunch of non-encoded instructions with isCodeGenOnly = 1.
...
llvm-svn: 228050
2015-02-03 22:09:51 +00:00
Colin LeMahieu
3534179cf0
[Hexagon] Converting XTYPE/SHIFT intrinsics. Cleaning out old intrinsic patterns and updating tests.
...
llvm-svn: 228026
2015-02-03 20:40:52 +00:00
Colin LeMahieu
22fa1ee703
[Hexagon] Updating XTYPE/PRED intrinsics.
...
llvm-svn: 228019
2015-02-03 19:43:59 +00:00
Colin LeMahieu
dc6eea20d4
[Hexagon] Updating XTYPE/PERM intrinsics.
...
llvm-svn: 228015
2015-02-03 19:36:59 +00:00