ARC: handle gcc generated __builtin_trap()
authorVineet Gupta <vgupta@synopsys.com>
Wed, 20 Dec 2017 20:37:54 +0000 (12:37 -0800)
committerVineet Gupta <vgupta@synopsys.com>
Wed, 20 Dec 2017 23:16:18 +0000 (15:16 -0800)
commitf5a16b93e6291ba1f65f55647cb4cd8d75ed1b35
tree4c6243cc717af027d95dff55542b05b067ef16a8
parent79435ac78d160e4c245544d457850a56f805ac0d
ARC: handle gcc generated __builtin_trap()

gcc toggle -fisolate-erroneous-paths-dereference (default at -O2
onwards) isolates faulty code paths such as null pointer access, divide
by zero etc by emitting __builtin_trap()

Newer ARC gcc generates TRAP_S 5 instruction which needs to be handled
and treated like any other unexpected exception
  - user mode  : task terminated with a SEGV
  - kernel mode: die() called after register and stack dump

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/kernel/traps.c
arch/arc/kernel/troubleshoot.c