[LLVMdev] Execution domain for VEXTRACTF128/VINSERTF128
Craig Topper
craig.topper at gmail.com
Wed Jan 4 23:54:32 PST 2012
At least in AVX2 mode we should prefer VEXTRACTI128 for integer and
VEXTRACTF128 for fp. So I think should have a domain.
Do you have a testcase for the assertion?
On Wed, Jan 4, 2012 at 11:25 PM, Demikhovsky, Elena <
elena.demikhovsky at intel.com> wrote:
> I think that it should not belong to any domain.****
>
> And I see a problem with this table. If you run in AVX mode and call
> lookup with VEXTRACTF128rr you fail with assertion.****
>
> ** **
>
> *- Elena*****
>
> *From:* Craig Topper [mailto:craig.topper at gmail.com]
> *Sent:* Wednesday, January 04, 2012 19:32
> *To:* Demikhovsky, Elena
> *Cc:* llvmdev at cs.uiuc.edu
> *Subject:* Re: [LLVMdev] Execution domain for VEXTRACTF128/VINSERTF128****
>
> ** **
>
> What domain do you think they should have? They are floating point, but
> not technically double or single. The domain fix pass will treat them as
> either anyway as I've put them in the table for both single and double.
>
> From X86InstrInfo.cpp****
>
> { X86::VEXTRACTF128mr, X86::VEXTRACTF128mr, X86::VEXTRACTI128mr },****
>
> { X86::VEXTRACTF128rr, X86::VEXTRACTF128rr, X86::VEXTRACTI128rr },****
>
> { X86::VINSERTF128rm, X86::VINSERTF128rm, X86::VINSERTI128rm },****
>
> { X86::VINSERTF128rr, X86::VINSERTF128rr, X86::VINSERTI128rr },****
>
> { X86::VPERM2F128rm, X86::VPERM2F128rm, X86::VPERM2I128rm },****
>
> { X86::VPERM2F128rr, X86::VPERM2F128rr, X86::VPERM2I128rr }****
>
> ** **
>
> On Wed, Jan 4, 2012 at 4:32 AM, Demikhovsky, Elena <
> elena.demikhovsky at intel.com> wrote:****
>
> Hi,
>
> I noticed, that execution domain is set to SSEPackedSingle for these
> instructions.
> Looks like a bug.
>
> let neverHasSideEffects = 1, ExeDomain = SSEPackedSingle in {
> def VEXTRACTF128rr : AVXAIi8<0x19, MRMDestReg, (outs VR128:$dst),
>
> - Elena
>
>
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev****
>
>
>
>
> --
> ~Craig****
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
--
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120104/1d2be1ae/attachment.html>
More information about the llvm-dev
mailing list