Currenlty mimics AArch64's implementation. Assume x18 is used as pointer to
shadow call stack. User shall pass flags:
Runtime supported is needed to setup x18.
There's no particular reason that we must use x18 as SCS pointer. Any
callee-saved register can be used. Using x18 let us piggy-back on the
frontend check that "-fsanitize=shadow-call-stack" is always accompanied
with "-ffixed-x18". Using another register requires new code to check.