Summary: | Add wasm int to floating point opcodes | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Keith Miller <keith_miller> | ||||||||||
Component: | New Bugs | Assignee: | Keith Miller <keith_miller> | ||||||||||
Status: | RESOLVED FIXED | ||||||||||||
Severity: | Normal | CC: | commit-queue, ggaren, mark.lam, msaboff, saam | ||||||||||
Priority: | P2 | ||||||||||||
Version: | WebKit Nightly Build | ||||||||||||
Hardware: | Unspecified | ||||||||||||
OS: | Unspecified | ||||||||||||
Attachments: |
|
Description
Keith Miller
2016-12-01 05:28:06 PST
Created attachment 295846 [details]
Patch
Created attachment 295859 [details]
Patch
Comment on attachment 295859 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=295859&action=review r=me > Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h:1314 > + AssemblerLabel signedBitSet = m_assembler.jCC(x86Condition(Signed)); It's "sign bit" not "signed bit". > Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h:1334 > + AssemblerLabel signedBitSet = m_assembler.jCC(x86Condition(Signed)); Ditto. The clang code for this looks slightly better, and would eliminate the need for a scratch register API difference between platforms: 0000000100000f69 punpckldq 0x1f(%rip), %xmm0 0000000100000f71 subpd 0x27(%rip), %xmm0 0000000100000f79 haddpd %xmm0, %xmm0 I think this is a 128bit "subtract 1 and then double". We can mimic the same with constant operands, since we prefer to avoid introducing globals in the macro assembler. Created attachment 295866 [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". Created attachment 295885 [details]
Patch for landing
Comment on attachment 295885 [details] Patch for landing Clearing flags on attachment: 295885 Committed r209204: <http://trac.webkit.org/changeset/209204> All reviewed patches have been landed. Closing bug. |