Displaying 5 results from an estimated 5 matches for "vbroadcastsd".
Did you mean:
vbroadcastss
2012 Nov 07
1
[LLVMdev] AVX broadcast Vs. vector constant pool load
...nt pool and not to broadcast it from a scalar.
Would anyone be able to explain why it is better to load a vector from the
constant pool rather than broadcast a scalar?
I checked out Agner Fog's tables, but it wasn't so obvious to me...
vmovaps y, m256:
Uops: 1
Lat: 4
Throughput: 1
vbroadcastsd y, m64:
Uops: 2
Lat: [Not or cannot be measured]
Throughput: 1
Thanks in advance,
Cameron
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121106/cd47780e/attachment.html>
2013 Jun 25
2
[LLVMdev] Contants generation
Hi again,
Actually, I've just been looking at the existing code and the ARM
solution may be over-complicated for this situation.
You should be able to override EmitConstantPool directly, or possibly
even just override getSectionForConstantKind in
X86LinuxTargetObjectFile (and perhaps others) to return .text.
Tim.
2013 Jun 25
0
[LLVMdev] Contants generation
....9
.LCPI0_1:
.quad 4631147119616759172 # double 42.2794408
.LCPI0_2:
.long 1065353216 # float 1
.zero 4
...
movabsq $.LCPI0_1, %rax # encoding: [0x48,0xb8,A,A,A,A,A,A,A,A]
# fixup A - offset: 2, value: .LCPI0_1, kind: FK_Data_8
vbroadcastsd (%rax), %ymm0 # encoding: [0xc4,0xe2,0x7d,0x19,0x00]
Actually, I'm looking for a flag that can say that the whole constants pool is in code section.
- Elena
-----Original Message-----
From: Tim Northover [mailto:t.p.northover at gmail.com]
Sent: Tuesday, June 25, 2013 15:08
To: Demikh...
2013 Aug 28
3
[PATCH] x86: AVX instruction emulation fixes
..."skipped\n");
+ printf("%-40s", "Testing vmovsd %xmm5,(%ecx)...");
+ memset(res, 0x88, 64);
+ memset(res + 10, 0x77, 8);
+ if ( stack_exec && cpu_has_avx )
+ {
+ extern const unsigned char vmovsd_to_mem[];
+
+ asm volatile ( "vbroadcastsd %0, %%ymm5\n"
+ ".pushsection .test, \"a\", @progbits\n"
+ "vmovsd_to_mem: vmovsd %%xmm5, (%1)\n"
+ ".popsection" :: "m" (res[10]), "c" (NULL) );
+
+ memcpy(inst...
2015 May 04
2
[LLVMdev] Load value and broadcast in LLVM
Hi Shahid,
Thank you so much for your response. You suggested approach is what I am
right now using. However, it seems that the overhead is a little bit high
because we are introducing two more instructions. I was wondering if there
was a cheaper way to do it.
Best,
Zhi
On Mon, May 4, 2015 at 2:12 AM, Shahid, Asghar-ahmad <
Asghar-ahmad.Shahid at amd.com> wrote:
> Hi Zhi,
>
>