Saleem Abdulrasool
6c2be4ff95
ARM: try harder to detect non-IT eligible instructions
...
For many Thumb-1 register register instructions, setting the CPSR is not
permitted inside an IT block. We would not correctly flag those instructions.
The previous change to identify this scenario was insufficient as it did not
actually catch all the instances. The current list is formed by manual
inspection of the ARMv6M ARM.
The change to the Thumb2 IT block test is due to the fact that the new more
stringent checking of the MIs results in the If Conversion pass being prevented
from executing (since not all the instructions in the BB are predicable). This
results in code gen changes.
Thanks to Tim Northover for pointing out that the previous patch was
insufficient and hinting that the use of the v6M ARM would be much easier to use
than the v7 or v8!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215382 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-11 20:13:25 +00:00
..
2014-07-19 01:29:51 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-14 16:53:50 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-02 21:22:03 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 08:59:55 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-03-13 16:23:00 +00:00
2014-08-06 00:21:25 +00:00
2014-05-30 10:09:59 +00:00
2014-03-12 11:29:23 +00:00
2014-08-05 16:20:25 +00:00
2014-05-30 10:09:59 +00:00
2014-05-30 08:59:55 +00:00
2014-03-13 23:18:37 +00:00
2014-03-11 15:09:49 +00:00
2014-03-11 15:09:49 +00:00
2014-08-05 23:57:31 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-03-05 15:25:27 +00:00
2014-03-11 15:09:44 +00:00
2014-03-05 15:25:27 +00:00
2014-05-30 08:59:55 +00:00
2014-04-03 23:47:24 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-03-11 15:09:44 +00:00
2014-05-14 11:13:31 +00:00
2014-07-23 08:39:50 +00:00
2014-08-10 22:20:37 +00:00
2014-04-03 16:01:44 +00:00
2014-03-20 05:36:59 +00:00
2014-04-03 16:01:44 +00:00
2014-07-24 22:15:28 +00:00
2014-05-09 16:20:53 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-30 22:51:54 +00:00
2014-04-03 17:35:22 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-06-13 16:45:52 +00:00
2014-06-13 14:24:07 +00:00
2014-07-21 17:33:44 +00:00
2014-05-30 14:41:51 +00:00
2014-08-06 11:13:14 +00:00
2014-06-13 14:24:07 +00:00
2014-04-03 16:01:44 +00:00
2014-04-29 10:13:10 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-13 16:44:30 +00:00
2014-05-12 11:19:20 +00:00
2014-06-23 18:05:53 +00:00
2014-06-16 09:17:30 +00:00
2014-06-01 09:30:52 +00:00
2014-05-14 16:59:44 +00:00
2014-05-14 16:59:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-12 22:13:07 +00:00
2014-07-25 14:03:14 +00:00
2014-03-26 12:52:28 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-06-13 14:24:07 +00:00
2014-06-13 16:45:52 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-12 11:19:20 +00:00
2014-08-06 11:13:14 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-03-13 15:56:41 +00:00
2014-05-06 20:43:01 +00:00
2014-05-06 20:43:01 +00:00
2014-08-06 00:21:25 +00:00
2014-08-06 00:21:25 +00:00
2014-08-06 00:21:25 +00:00
2014-08-06 00:21:25 +00:00
2014-08-06 00:21:25 +00:00
2014-08-06 00:21:25 +00:00
2014-08-07 23:04:07 +00:00
2014-04-10 22:58:43 +00:00
2014-05-07 07:49:34 +00:00
2014-04-03 16:01:44 +00:00
2014-05-14 16:38:30 +00:00
2014-05-14 16:37:32 +00:00
2014-05-07 07:49:34 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-08-05 20:16:35 +00:00
2014-04-03 16:01:44 +00:00
2014-08-01 18:04:14 +00:00
2014-07-16 22:20:51 +00:00
2014-03-11 15:09:49 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-08-11 19:04:28 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-23 07:08:53 +00:00
2014-04-03 16:01:44 +00:00
2014-08-11 09:12:32 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-05-18 04:12:52 +00:00
2014-04-03 16:01:44 +00:00
2014-05-08 22:45:07 +00:00
2014-06-11 06:44:53 +00:00
2014-07-18 13:01:19 +00:00
2014-04-03 16:01:44 +00:00
2014-05-09 14:01:47 +00:00
2014-04-25 17:24:24 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-04-14 16:56:19 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-29 10:06:05 +00:00
2014-04-03 16:01:44 +00:00
2014-03-07 06:08:31 +00:00
2014-05-30 10:09:59 +00:00
2014-03-07 06:08:31 +00:00
2014-03-21 07:20:29 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-25 09:55:01 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-08-06 11:13:14 +00:00
2014-07-03 16:00:41 +00:00
2014-05-09 21:52:48 +00:00
2014-04-25 17:51:25 +00:00
2014-04-03 16:01:44 +00:00
2014-06-05 21:40:13 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 15:10:35 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-02-16 13:28:15 +00:00
2014-06-16 18:49:36 +00:00
2014-04-03 15:10:35 +00:00
2014-06-09 22:42:55 +00:00
2014-04-03 16:01:44 +00:00
2014-05-08 14:06:24 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-08 14:06:24 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-05-16 14:24:22 +00:00
2014-06-20 10:08:11 +00:00
2014-06-20 10:08:11 +00:00
2014-06-20 10:08:11 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 16:01:44 +00:00
2014-04-12 04:47:04 +00:00
2014-05-06 16:51:25 +00:00
2014-05-06 16:51:25 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-08-06 11:13:06 +00:00
2014-08-06 11:13:14 +00:00
2014-02-25 16:57:28 +00:00
2014-06-20 15:30:38 +00:00
2014-04-02 09:03:43 +00:00
2014-04-03 16:01:44 +00:00
2014-07-15 17:18:41 +00:00
2014-04-03 16:01:44 +00:00
2014-04-12 00:59:48 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-03-11 15:09:49 +00:00
2014-03-11 15:09:49 +00:00
2014-04-03 16:01:44 +00:00
2014-07-23 13:59:12 +00:00
2014-05-06 20:43:01 +00:00
2014-05-22 13:03:43 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-14 18:21:11 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-08-02 05:40:40 +00:00
2014-04-23 01:09:29 +00:00
2014-05-06 16:51:25 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-05-08 14:06:24 +00:00
2014-07-23 07:08:53 +00:00
2014-04-03 23:47:24 +00:00
2014-03-25 03:39:39 +00:00
2014-08-07 19:30:13 +00:00
2014-04-03 16:01:44 +00:00
2014-03-11 15:09:49 +00:00
2014-08-05 21:32:21 +00:00
2014-08-11 20:13:25 +00:00
2014-04-15 21:30:06 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 10:09:59 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-22 04:46:46 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-03-11 15:09:44 +00:00
2014-05-30 08:59:55 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-02-16 18:59:48 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-12 11:19:20 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-15 17:18:41 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-22 10:10:09 +00:00
2014-03-12 11:29:23 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-07-15 17:18:41 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-19 13:12:38 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-04-03 16:01:44 +00:00
2014-05-30 08:59:55 +00:00
2014-04-01 13:22:02 +00:00
2014-05-14 21:14:37 +00:00