It looks like with the latest version of the toolchain, the compiler chooses to inline function [AfterMapExecutableViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) in `patched_NtMapViewOfSection` despite `MOZ_NEVER_INLINE`. We should fix this as it implies the crashes from bug 1733532 would be back.
Bug 1819064 Comment 6 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
It looks like with your versions of the toolchain, the compiler chooses to inline function [AfterMapExecutableViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) in `patched_NtMapViewOfSection` despite `MOZ_NEVER_INLINE`. We should fix this as it implies the crashes from bug 1733532 would be back.
It looks like you are obtaining a much less-optimized variation of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. I'll try to reproduce the problem using that option. Thanks!
It looks like you are obtaining a much less-optimized variant of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. I'll try to reproduce the problem using that option. Thanks!
It looks like you are obtaining a much less-optimized variant of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. That would explain why you get the stack cookie check and I don't. I'll try to reproduce the problem using that option, if that works I'll see how I can work around it. Thanks!
It looks like you are obtaining a much less-optimized variant of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. That would explain why you get the stack cookie check (and thus the failed assertion) and I don't. I'll try to reproduce the problem using that option, if that works I'll see how I can work around it. Thanks!
It looks like you are obtaining a much less-optimized variant of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. That would explain why you get the stack cookie check (and thus the failed assertion) and I don't. I'll try to reproduce the problem using that option, if that works I'll see how I can work around it. Thanks! Edit: Indeed I can reproduce with `ac_add_options --disable-optimize`!
It looks like you are obtaining a much less-optimized variant of the code for [patched_NtMapViewOfSection](https://searchfox.org/mozilla-central/source/browser/app/winlauncher/freestanding/DllBlocklist.cpp#371-544) compared to what I get. That's probably the result of `ac_add_options --disable-optimize` which I don't use. In addition to being less optimized, your code also a stack cookie check while mine doesn't, so maybe *detecting that the stack cookie check is useless and removing it* is itself an optimization. That would explain why you get the stack cookie check (and thus the failed assertion) and I don't. I'll try to reproduce the problem using that option, if that works I'll see how I can work around it. Thanks! Edit: Indeed I can reproduce with `ac_add_options --disable-optimize`! I'll see if I can wrap the assert in a `#ifdef MOZ_OPTIMIZE` tomorrow.