From: Bernhard Urban Date: Tue, 2 Mar 2010 21:13:04 +0000 (+0100) Subject: asmb: ein wenig anderer init... im endeffekt der gleiche ^^ X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=uebersetzerbau-ss10.git;a=commitdiff_plain;h=0544c83e1154e430241f8328d3c67a811af75208 asmb: ein wenig anderer init... im endeffekt der gleiche ^^ --- diff --git a/asmb/asmb.s b/asmb/asmb.s index 91cc957..9d08b64 100644 --- a/asmb/asmb.s +++ b/asmb/asmb.s @@ -15,23 +15,19 @@ asmb: * ~102 = 10011001 * (~102)+1 = 10011010 = 0x9A */ mov $0x9a9a9a9a9a9a9a9a, %rax - movq %rax, %xmm15 - movddup %xmm15, %xmm8 + movq %rax, %xmm8 + punpcklbw %xmm8, %xmm8 //init %xmm9 mit "'a'-'A'= 97-65 = 32 = 0x20 mov $0x2020202020202020, %rax - movq %rax, %xmm15 - movddup %xmm15, %xmm9 - - //speicheradresse des pointers zeigt auf 16*8 feld = 128bit - movdqu (%rdi, %rdx, 8), %xmm11 - movdqu (%rdi, %rdx, 8), %xmm12 + movq %rax, %xmm9 + punpcklbw %xmm9, %xmm9 /*addiere in %xmm11 "min_t-'A'" * = -128 - 65 = 63 = 0x3f */ mov $0x3f3f3f3f3f3f3f3f, %rax - movq %rax, %xmm15 - movddup %xmm15, %xmm10 + movq %rax, %xmm10 + punpcklbw %xmm10, %xmm10 .nextround: //speicheradresse des pointers zeigt auf 16*8 feld = 128bit