LDC 0.16.0 alpha3 is out! Get it, test it, give feedback!
Marco Leise via digitalmars-d-ldc
digitalmars-d-ldc at puremagic.com
Sat Sep 19 11:09:52 PDT 2015
What can I say, it works nicely for me. I just see issues in
arcane fields of SIMD, but could work around it with inline
assembly that compiles to a lot shorter instructions than the
corresponding sequence of intrinsics:
m_sse = __asm!(const(ubyte16)*)("
sub $2, $1
1:
add $2, $1
vpcmpistri $3, ($1), $4
cmp $2, %ecx
je 1b
add %rcx, $1
", "=r,0,I,K,x,~{ecx}", m_sse, 16, mode, SIMDFromString!cs);
It is just not very intelligible nor portable. Is there a way
to turn the %rcx into a wild card or %rcx/%ecx depending on
pointer width?
--
Marco
More information about the digitalmars-d-ldc
mailing list