Sam Elliott
b3213c121e
[RISCV] Add RISCV-specific TargetTransformInfo
...
Summary:
LLVM Allows Targets to provide information that guides optimisations
made to LLVM IR. This is done with callbacks on a TargetTransformInfo object.
This patch adds a TargetTransformInfo class for RISC-V. This will allow us to
implement RISC-V specific callbacks as they become necessary.
This commit also adds the getIntImmCost callbacks, and tests them with a simple
constant hoisting test. Our immediate costs are on the conservative side, for
the moment, but we prevent hoisting in most circumstances anyway.
Previous review was on D63007
Reviewers: asb, luismarques
Reviewed By: asb
Subscribers: ributzka, MaskRay, llvm-commits, Jim, benna, psnobl, jocewei, PkmX, rkruppe, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, shiva0217, kito-cheng, niosHD, sabuasal, apazos, simoncook, johnrusso, rbar, hiraditya, mgorny
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63433
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364046 91177308-0d34-0410-b5e6-96231b3b80d8
2019-06-21 13:36:09 +00:00
..
2019-06-18 20:38:08 +00:00
2019-05-23 12:43:13 +00:00
2019-05-23 12:43:13 +00:00
2018-04-12 11:30:59 +00:00
2018-04-25 14:19:12 +00:00
2018-11-30 09:38:44 +00:00
2018-11-30 09:38:44 +00:00
2019-01-12 07:32:31 +00:00
2019-05-23 12:43:13 +00:00
2018-04-25 14:19:12 +00:00
2018-06-19 06:45:47 +00:00
2019-05-23 12:43:13 +00:00
2019-05-16 13:56:23 +00:00
2019-01-11 19:46:48 +00:00
2019-01-17 10:04:39 +00:00
2019-06-15 07:49:14 +00:00
2019-05-23 12:43:13 +00:00
2018-03-19 11:54:28 +00:00
2019-05-23 12:43:13 +00:00
2019-05-23 12:43:13 +00:00
2019-03-13 16:33:45 +00:00
2018-05-17 18:14:53 +00:00
2019-05-16 13:56:23 +00:00
2019-05-16 13:56:23 +00:00
2019-05-16 13:56:23 +00:00
2019-03-30 17:59:30 +00:00
2019-03-30 17:59:30 +00:00
2019-03-13 16:33:45 +00:00
2019-03-30 17:59:30 +00:00
2019-03-30 17:59:30 +00:00
2019-03-30 17:59:30 +00:00
2019-03-30 17:59:30 +00:00
2019-03-13 16:33:45 +00:00
2019-01-25 20:22:49 +00:00
2018-04-25 14:19:12 +00:00
2019-06-18 14:29:45 +00:00
2019-04-05 08:40:57 +00:00
2018-04-06 21:07:05 +00:00
2018-04-18 20:36:12 +00:00
2018-05-23 22:44:08 +00:00
2019-01-12 07:43:06 +00:00
2019-02-01 03:53:30 +00:00
2019-02-01 03:53:30 +00:00
2019-04-01 09:54:14 +00:00
2019-03-30 09:15:47 +00:00
2019-02-01 03:53:30 +00:00
2019-04-01 09:54:14 +00:00
2018-11-15 14:46:11 +00:00
2019-03-30 09:15:47 +00:00
2019-03-13 16:33:45 +00:00
2019-03-13 16:33:45 +00:00
2019-03-30 09:15:47 +00:00
2019-04-01 09:54:14 +00:00
2019-02-01 03:53:30 +00:00
2018-08-16 11:26:37 +00:00
2019-05-16 13:56:23 +00:00
2019-01-31 22:48:38 +00:00
2019-06-07 12:20:14 +00:00
2019-01-31 22:48:38 +00:00
2019-04-01 09:54:14 +00:00
2019-01-31 22:48:38 +00:00
2019-04-01 09:54:14 +00:00
2018-11-15 14:46:11 +00:00
2019-01-31 22:48:38 +00:00
2019-03-13 16:33:45 +00:00
2019-03-13 16:33:45 +00:00
2019-04-01 09:54:14 +00:00
2018-11-30 13:18:33 +00:00
2018-11-09 14:47:36 +00:00
2019-06-12 03:04:22 +00:00
2019-01-14 10:55:55 +00:00
2018-11-30 10:02:06 +00:00
2019-05-23 12:43:13 +00:00
2019-05-23 12:43:13 +00:00
2019-03-26 12:55:00 +00:00
2019-06-21 13:36:09 +00:00
2019-01-25 20:22:49 +00:00
2018-06-21 05:42:05 +00:00
2019-05-15 02:35:32 +00:00
2019-05-22 16:16:15 +00:00
2019-06-11 12:52:05 +00:00
2019-06-12 05:32:30 +00:00
2018-07-26 17:49:43 +00:00
2018-07-26 17:49:43 +00:00
2019-05-16 13:56:23 +00:00
2018-07-26 17:49:43 +00:00
2019-05-16 13:56:23 +00:00
2019-05-23 12:43:13 +00:00
2019-03-13 16:33:45 +00:00
2019-05-23 12:43:13 +00:00
2018-04-26 13:00:37 +00:00
2019-03-22 11:21:40 +00:00
2018-11-30 09:38:44 +00:00
2018-05-17 18:14:53 +00:00
2019-01-12 07:43:06 +00:00
2018-05-23 22:44:08 +00:00
2018-11-12 14:25:07 +00:00
2018-05-11 17:30:28 +00:00
2018-11-12 14:25:07 +00:00
2018-05-11 17:30:28 +00:00
2019-06-11 12:57:47 +00:00
2019-01-25 05:04:00 +00:00
2018-11-30 10:06:31 +00:00
2019-01-12 07:43:06 +00:00
2019-06-15 07:49:14 +00:00
2019-05-23 12:43:13 +00:00
2019-03-22 11:21:40 +00:00
2019-03-13 16:33:45 +00:00
2019-02-01 03:53:30 +00:00
2019-01-31 22:48:38 +00:00
2019-01-12 07:32:31 +00:00
2019-05-23 12:43:13 +00:00
2019-01-25 05:11:34 +00:00
2019-04-11 04:59:13 +00:00
2019-04-11 04:59:13 +00:00
2019-04-11 04:59:13 +00:00
2019-04-11 04:59:13 +00:00
2019-05-23 12:43:13 +00:00
2019-03-22 10:45:03 +00:00
2019-06-19 03:18:48 +00:00
2019-03-26 15:41:45 +00:00
2019-05-23 12:43:13 +00:00
2018-10-12 23:18:52 +00:00
2019-04-16 14:38:32 +00:00
2019-06-17 10:54:12 +00:00
2019-05-23 12:43:13 +00:00
2019-03-09 09:28:06 +00:00
2019-03-30 17:59:30 +00:00
2019-06-19 08:40:59 +00:00
2019-05-16 13:56:23 +00:00
2019-03-30 17:59:30 +00:00
2018-05-17 18:14:53 +00:00
2019-05-23 12:43:13 +00:00