Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b0bf5bc7500a53126e9c9fb1f9ee1d978db07c7c https://github.com/WebKit/WebKit/commit/b0bf5bc7500a53126e9c9fb1f9ee1d978db07c7c Author: Keith Miller <keith_mil...@apple.com> Date: 2023-10-11 (Wed, 11 Oct 2023)
Changed paths: A JSTests/wasm/stress/multi-tuple.js M Source/JavaScriptCore/b3/B3Type.h M Source/JavaScriptCore/b3/B3Validate.cpp M Source/JavaScriptCore/b3/air/AirCustom.cpp Log Message: ----------- B3 should use isTuple rather than `== Tuple` https://bugs.webkit.org/show_bug.cgi?id=261467 rdar://115283700 Reviewed by Yusuke Suzuki. Recently we switched to using the default operator== for many JSC classes (https://commits.webkit.org/267645@main). This however revealed a subtle inconsistency where we would allow Tuple TypeKinds to be compared to Types but didn't check the tuple index. Now that we use the default operator== we started checking the tuple index, which causes assertion failures in validation. To fix this validation should use `isTuple()` rather than `== Tuple`. Also, to prevent others from making the same mistake, we now `ASSERT` the implicit `Type` constructor isn't receiving a `Tuple`. * JSTests/wasm/stress/multi-tuple.js: Added. (type.1.call.1.call.0.return.export.string_appeared_here.func.2.async test): * Source/JavaScriptCore/b3/B3Type.h: (JSC::B3::Type::Type): * Source/JavaScriptCore/b3/B3Validate.cpp: * Source/JavaScriptCore/b3/air/AirCustom.cpp: (JSC::B3::Air::CCallCustom::isValidForm): Canonical link: https://commits.webkit.org/269216@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes