• Stefan Agner's avatar
    ARM: 8800/1: use choice for kernel unwinders · f9b58e8c
    Stefan Agner authored
    While in theory multiple unwinders could be compiled in, it does
    not make sense in practise. Use a choice to make the unwinder
    selection mutually exclusive and mandatory.
    
    Already before this commit it has not been possible to deselect
    FRAME_POINTER. Remove the obsolete comment.
    
    Furthermore, to produce a meaningful backtrace with FRAME_POINTER
    enabled the kernel needs a specific function prologue:
        mov    ip, sp
        stmfd    sp!, {fp, ip, lr, pc}
        sub    fp, ip, #4
    
    To get to the required prologue gcc uses apcs and no-sched-prolog.
    This compiler options are not available on clang, and clang is not
    able to generate the required prologue. Make the FRAME_POINTER
    config symbol depending on !clang.
    Suggested-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarStefan Agner <stefan@agner.ch>
    Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
    f9b58e8c
Kconfig.debug 68.1 KB