On 05/03/2016 08:10 PM, Steve Fink wrote:
On 05/03/2016 11:11 AM, Jakob Stoklund Olesen wrote:
LLVM had an EXPENSIVE_CHECKS macro for that kind of assertion, but I don’t
think they use it any more. People would rarely enable it, so the
expensive assertions had a tendency to bit rot. I think if they had been
enabled by default, they might have stayed in.

Yes, this would be worth doing, but would require some effort. I think we
can keep them from bitrotting by running with them on in automation. I would
say that a debug build should always have them compiled in, but the
expensive asserts could do a dynamic check before executing.


I do not recall who suggested that, but one idea was to run nightly build with the MOZ_ASSERT compiled in, but with the addition of way to skip it in order to throttle down the assertion overhead.

While I think this is a good idea, I see some pitfalls, such that we don't want to introduce opt-only bugs that are not caught by the nightly population. And, also we do not want to use an opt-build with all MOZ_ASSERT enabled, as this would cause issues with variables which only exists in debug builds.

--
Nicolas B. Pierron
_______________________________________________
dev-tech-js-engine-internals mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals

Reply via email to