On Mon, 20 Mar 2017, Arnd Bergmann arnd@arndb.de wrote:
I don't know how to generate a URL for it, but after adding this to the command line for gcc-7,
-fsanitize=kernel-address -fasan-shadow-offset=0xdfff900000000000 --param asan-stack=1 --param asan-globals=1 --param asan-instrumentation-with-call-threshold=10000 -fsanitize-address-use-after-scope
the code turned from really nice into the log series of checks below. Without -fsanitize-address-use-after-scope (which didn't exist before gcc-7), it's less bad but still exceeds the (arbitrary) 1536 byte limit.
It seems to be the combination of --param asan-stack=1 and -fsanitize-address-use-after-scope that really blows up the code [1]. I filed a GCC bug on it, mostly to see what they say [2]. I don't know, maybe they think it's expected. *shrug*.
BR, Jani.
[1] https://godbolt.org/g/hgS817 [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80114