B3 should support UDiv/UMod
Created attachment 294915 [details] Patch
This patch modifies one of the wasm.json files. Please ensure that any changes in one have been mirrored to the other. You can find the wasm.json files at "Source/JavaScriptCore/wasm/wasm.json" and "JSTests/wasm/wasm.json".
Comment on attachment 294915 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=294915&action=review r=me with comments > Source/JavaScriptCore/b3/B3Common.h:152 > + > + So blank, much space. > Source/JavaScriptCore/b3/B3LowerToAir.cpp:2830 > + void lowerX86UDiv() > + { The way I would have done this, and in hindsight the code above for signed div, is that the #if's should be inside the body, like: #if CPU(blah) your code #else UNREACHABLE_FOR_PLATFORM(); #endif This would get rid of a lot of #if gunk above. You could then just use if (isX86()). > Source/JavaScriptCore/b3/air/AirOpcode.opcodes:313 > +Tmp*, Tmp*, Tmp Indent!
Created attachment 294916 [details] Patch for landing
Comment on attachment 294916 [details] Patch for landing Clearing flags on attachment: 294916 Committed r208781: <http://trac.webkit.org/changeset/208781>
All reviewed patches have been landed. Closing bug.
(In reply to comment #5) > Comment on attachment 294916 [details] > Patch for landing > > Clearing flags on attachment: 294916 > > Committed r208781: <http://trac.webkit.org/changeset/208781> It broke the iOS build: https://build.webkit.org/builders/Apple%20iOS%2010%20Release%20%28Build%29/builds/1378 /Volumes/Data/slave/ios-10-release/build/Source/JavaScriptCore/b3/B3LowerToAir.cpp:2100:34: error: use of undeclared identifier 'X86Registers' append(Move, Tmp(X86Registers::eax), tmp(m_value)); ^ /Volumes/Data/slave/ios-10-release/build/Source/JavaScriptCore/b3/B3LowerToAir.cpp:2112:34: error: use of undeclared identifier 'X86Registers' append(Move, Tmp(X86Registers::eax), tmp(m_value)); ^ 2 errors generated.
(In reply to comment #7) > (In reply to comment #5) > > Comment on attachment 294916 [details] > > Patch for landing > > > > Clearing flags on attachment: 294916 > > > > Committed r208781: <http://trac.webkit.org/changeset/208781> > > It broke the iOS build: > https://build.webkit.org/builders/Apple%20iOS%2010%20Release%20%28Build%29/ > builds/1378 > > > /Volumes/Data/slave/ios-10-release/build/Source/JavaScriptCore/b3/ > B3LowerToAir.cpp:2100:34: error: use of undeclared identifier 'X86Registers' > append(Move, Tmp(X86Registers::eax), tmp(m_value)); > ^ > /Volumes/Data/slave/ios-10-release/build/Source/JavaScriptCore/b3/ > B3LowerToAir.cpp:2112:34: error: use of undeclared identifier 'X86Registers' > append(Move, Tmp(X86Registers::eax), tmp(m_value)); > ^ > 2 errors generated. Should hopefully be fixed by: http://trac.webkit.org/changeset/208791