* sched-deps.c (sched_analyze_2) <case TRAP_IF>: Also
force pending loads from memory.
From-SVN: r236518
+2016-05-20 Uros Bizjak <ubizjak@gmail.com>
+
+ * sched-deps.c (sched_analyze_2) <case TRAP_IF>: Also
+ force pending loads from memory.
+
2016-05-20 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Backport from mainline
return;
}
- /* Force pending stores to memory in case a trap handler needs them. */
+ /* Force pending stores to memory in case a trap handler needs them.
+ Also force pending loads from memory; loads and stores can segfault
+ and the signal handler won't be triggered if the trap insn was moved
+ above load or store insn. */
case TRAP_IF:
- flush_pending_lists (deps, insn, true, false);
+ flush_pending_lists (deps, insn, true, true);
break;
case PREFETCH: