tree a96f4a412fbaf733e77431f0263ce67be3a4e91f
parent d440aa021928b00b319ea11a7ddd2aa868d7fd84
author Geoffrey Martin-Noble <gcmn@google.com> 1678296727 -0800
committer GitHub <noreply@github.com> 1678296727 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJkCMaXCRBK7hj4Ov3rIwAA6SwIAB3sXYe1foCENwo+2YFiwuOG
 FspJBAQyjb3YJ6gjrjpIkIl+9/hSgD3lVn7DOvVnzHv4oz6pE7xovP3XA1FcjwEq
 8UZaxbxR49dfmKl8Zb8+lXYy1cUoxB4Jm6zyxvnGWiYSwbE6yO/6yCIo/KGn9wzc
 vZAIGdxBgy7B6kfmBqyl8Z+6VJgJWW5nvRkzOVMKBhEx+Na1w6kFZ5rWfQtC73TG
 HN5dgeZ26LckVLr3ekm2FV43bZXrtY/K5lKZIRnADm5MM7TYUDXUWOVVngwhpPUY
 jrFndVoRqS9qwsXBEh0P3/oh9fJOCh66Ztc0jWNFlo2kl6C4tDXsSnBvSMc5yXE=
 =K6nQ
 -----END PGP SIGNATURE-----
 

Add `-ftrivial-auto-var-init=pattern` to ASAN build (#12447)

This option initializes automatic variables with a recognizable pattern
likely to cause helpful crashes rather than silent undefined behavior.
See the extensive description of this option to the patch that first
introduced it to clang:
https://reviews.llvm.org/rG14daa20be1ad89639ec209d969232d19cf698845

This isn't technically asan, but it guards against the same type of
memory errors. It's also much lower overhead, so we could consider
enabling it in more builds. For release builds we might consider
`-ftrivial-auto-var-init=zero`, which is more likely to mask bugs but
less likely to access uninitialized memory at runtime, resulting in
security vulnerabilities.

For now, turning it on in one build is a good step.

Example failure (now fixed):
https://github.com/openxla/iree/actions/runs/4308619652/jobs/7515099139

Thanks to @Maximus- for introducing us to this option and flagging the
above failure.