#
60aac65c |
|
05-Mar-2018 |
Sebastian Holzapfel <seb.holzapfel@data61.csiro.au> |
ARM/v7-a: Force -O2 compilation of idle thread This fixes a problem with -O0 SMP builds on ARM visible as kernel data aborts whenever the idle thread executes. The idle thread receives no stack pointer. At -O2, this is fine as the wfi() call is inlined and stack operations in idle_thread are optimized out. At -O0, the stack operations remain and wfi() is not inlined, resulting in stack accesses in the idle thread that cause data aborts. Forcing -O2 behaviour was deemed the simplest solution for now. Giving the idle thread a stack would have had larger verification ramifications for what is now a fairly uncommon use case.
|
#
45f20d56 |
|
06-Feb-2017 |
Anna Lyons <Anna.Lyons@nicta.com.au> |
trivial: print kernel entry reason on halt It is generally useful to know what operation was occuring when the kernel halted, as this is usually called from assert.
|
#
11778548 |
|
08-Dec-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Mark halt as no-inline and no-return. This actually leads to better code. Copies of the halt loop inlined in various places will instead be single instructions 'bl halt'. It's also important for the translation validation to avoid having pointless loops everywhere, especially inside the bodies of other loops.
|
#
f658276a |
|
03-Aug-2016 |
Thomas Sewell <Thomas.Sewell@nicta.com.au> |
Remove many DONT_TRANSLATE markers. The vast majority of the DONT_TRANSLATE markers in the kernel are used to hide __asm__ statements and builtin functions (e.g. __builtin_unreachable ()) from the C-to-Isabelle parser. The parser now supports underscore identifiers and many __asm__ statements, and the builtin functions are prototyped, meaning the vast majority of the DONT_TRANSLATE markers can be dropped. The remaining markers cover functions that must be treated specially.
|
#
f4188c6c |
|
30-Aug-2016 |
Bamboo <bamboo@keg.ertos.in.nicta.com.au> |
[STYLE_FIX]
|
#
57f1352f |
|
21-Aug-2016 |
amrzar <azarrabi@nicta.com.au> |
SELFOUR-614: calling halt() on the hikey platform results in infinite data abort SELFOUR-408: halt does not halt Remove assembly files for halt and idle thread and add wfi in armv.
|