Ilya Leoshkevich d58f112ce0 Prevent FENTRY_CALL reordering
FEntryInserter prepends FENTRY_CALL to the first basic block. In case
there are other instructions, PostRA Machine Instruction Scheduler can
move FENTRY_CALL call around. This actually occurs on SystemZ (see the
testcase). This is bad for the following reasons:

* FENTRY_CALL clobbers registers.
* Linux Kernel depends on whatever FENTRY_CALL expands to to be the very
  first instruction in the function.

Fix by adding isCall attribute to FENTRY_CALL, which prevents reordering
by making it a scheduling boundary for PostRA Machine Instruction
Scheduler.

Reviewed By: niravd

Differential Revision: https://reviews.llvm.org/D91218
2020-12-09 00:59:01 +01:00
..
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2017-10-06 13:59:28 +00:00
2020-02-04 10:32:45 -05:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2018-10-27 15:00:38 +00:00
2018-10-27 15:00:38 +00:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2020-04-28 09:43:03 +02:00
2019-09-25 14:00:33 +00:00
2020-06-30 12:44:45 +02:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2017-10-06 13:59:28 +00:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2020-02-04 10:32:45 -05:00
2020-02-04 10:32:45 -05:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2019-11-20 19:08:27 +01:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00
2018-07-20 12:12:10 +00:00