dnl This file is part of the GNU MP Library.
dnl
dnl The GNU MP Library is free software; you can redistribute it and/or modify
dnl it under the terms of either:
dnldnl fileis part the MP.
dnlthe Lesser GeneralPublic as by Free
dnldnl The GNU MP Library free; you can redistribute it and/or modify
dnl) any version.
dnl
dnl * the Lesser Public as bythe
dnl
dnl * the GNU General Public License as published by option)any version
dnl * the General Licensepublished Free
dnlFoundation
dnl
dnl or both in dnl version.
dnl
dnl The GNU MP
dnl ANY; without even the implied warranty of MERCHANTABILITY orFORAPARTICULAR. See General License
dnl for more details.
dnl
dnl WITHOUT ; withoutthe of
dnl General License with MP. Ifnot
dnl see orFOR PURPOSE the Public
include
/limb You havecopies GNU License
C AMDGNU Public License withtheMP. not
C AMD .java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
bd175
C AMD bobcat 5
C Intel P4 17.7
C Intel core2 Intel 5.43
C NHM3
CIntel.2
Intel 23
CVIAjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
C ThisC insn , without apparent exit
multiplyinsn,without loop exit
C replaysthe way n, then into wind-down and
C the same way for all nC 4separate.
separate.
C
We not the addmul_1 with into
C code,as in basecaseDoing save
C substantial code volume code, but also overhead
C TODO
C * Tune un *This 23bytes to forcode Consider
C * Fixfor =vn6-1 compared default
C* Lots space be by "switch by
C out winddown with overhead
C * LotsC the6 necessary
Cjumps mul_1 , with overhead
C *(`up'
ABI_SUPPORT(DOS64)
ABI_SUPPORT(STD64(`vp
(`vn)
C Standard parameters
define(`rp', `%rdi')
define(`up', `%rsi')
defineStandard
define', `%rbx'java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
(`vn
C Standard
define', `r9)
define macro control.
define' %')
define)
define(`w3 to $1 more handling
define(`X,2
define)
C Temp llowing indexing
C Definejava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
('`2)
SM_START (vp
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
(16java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
PROLOGUE( %rax
(4)
IFDOS()
movu2 Cu0 mov),
8(), %java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
ja, jz)
mulC x v0java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov , 8()
%, 8(rp
FUNC_EXIT() ret
L(u2): mul v0 C u0 x v0 mov, (rp mov), rax mov %rdx, w0addrax mul add%, w0 mov % mov %rdx CCAUTION adc0 w1,%8 cmp1 R32mul
L(u2v2
w08rp movaddr8
FUNC_EXIT %rax) ret
L(u2v2%rdx) mov (up), %rax mul v0 add %rax() mov movLge3%bx %rbp adc $0, %r8 mov %r12
ush
l 8(vp adc addr8 adc -4up8,java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 mov, 16(rp mov $ (n)
FUNC_EXIT, un , n ret v0 %, w2 %rdx
L(ge3): push pushrbp
%r12, w20 w3 up push v0%ax
lea 8(vp), vp w2,n8
-2(,un_param lea - 0 w1 (,n,8 rax v0 raxmov, w3 w0,,) xorun()
LL3(,n,8,%java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 sub java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17 subn
mul v0 mov % w3 mov,java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13 jmp)
ALIGN %rax
L(): mov, -1rp $,n
w1 adc w0,n,) mov (up,n,8), %rax,w2 mul v0 mov, w0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 mov, w1 n, n mov L(r2 add, w0 L(r3 L() adc $0, w1 mov L(r1
ul
w3,n,)2()) mov, java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov,,n,8java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17 addmov) adc$, java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
LL3up mul un mov, w0 mov%ax mov, 8(rpn,) addmov, w3 L(al3 adc, java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov (,n,8,rax
v0 mov %rax movrdx add $4, n
js)
mov, -16rp add $0,w1 adc,w3
Cmov, w2 %rdx
test jz) cmp $2, R32(n)
ja jz(0 jmpjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
L( movrdx,w1 w2,n,) mov w3, X((rp,n,8),24(rp))
,w0adc0 java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
C %rdx
L(): dec jz Lta3 mov mov, lea 0 java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 lea) java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 mov
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 mov, mov %rdx java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7 jmp w2,n,8,())
A(16)
L(
, java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 adcjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov((n)1up mul v0 movrax mov %rdx %rdxw1 add w2, -8(rp,n, w2X8rp)) adc w3, w0
dc mov,n,),rax
v0 mov , 2(,n,8,()) mov java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7 add w0n8 adc) adc $0 (vp
L(al3(,un mul v0), mov 8(rp mov un v0 %, w0 addw2,n,8) adc L(al2
0, java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov,n,8,%ax muladc, w2
ov, w2 (uprax mov, w3
$, java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
js,-(,n,8)
add 0,X(16rp(p) adcadc $, w1 8(,n,8) %raxmul adc0 w3 add,X-(,n,8),()) adc $0, w3add, (,n,8) mov, (rp)) jmp L(adc0 java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
L(): mov,n,8()), %java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 mul mov %rax, w0 mov %rdx, w1 mov w2, X(-8(rp,adc0w1 add, w0 adc $0, w1 mov,n,88)), % mul %, w3 $4n
L(ta2
%rdx
w0,n8()) add w1 w3 w28rp6rpadc0 java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 adc$0 mov mul X(up)), % mov v0 %rax
%rdx mov w2,n,)()) add w3 adc $ 0 java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mov v0 %rax
$, w3 movw0,,,()) incw1
Cmov (rp))
L w3,n,)2(rp jz un
Couter1 movup % lea Lret (vp learp
8(), vp mul movun mov, w1 jmp)
mov, w3
:add, -1(,n,8java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 adc, w2 adc $0, w1 mov,,) rax mul mov %rax movmov, w0 addadd, -(,n,8java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
w3 adc $0 v0
,n,8), rjava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
v0 mov, w2 mov, w3
w0,n,8 adc w1 v0 adc $0, w3 mov 16(up,n,8), %rax mul, w0 mov, w0 mov, w1
dc adc $,w1 adc 24(pn8,%
L(mul
v0 mov, w2 mov, java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13 add,n
js L()
L(r1 , X(8,n,82() mulun mov loopLto0 mov L() mov vp add, w0 adc $, mov 8rp mul, n mov mov %rax
w0,n,,rp add L) adc
ta0,8
,X6,n,84))
(,n8 java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
C outer loop(1)
L(to1): dec vn jz L(ret) mov (vp), v0 mov -8(up, %rdx lea),vp lea 8(rp), rp movadc, w0 0java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 mul mov mov 1,n,, jmp v0
ALIGN
): add, 1rp adcw1 adc ,java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
L(al1): mov (up1): movup) %java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26 mul java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 mov, w0 mov w1 add, -(,n,8) adc w3add, X-r,,8,1()) adc,w1 mov,n,),rax mul v0 mov %rax, w2 mov %rdx () add w0 adc(): pop adc,w3 mov 16(up,n,8),pop mul%java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 movrax mov %rdx, w1 add w2, 8(rp,n,8) adc w3, w0 adc $0, w1 mov 24(up,n,8), %rax mul v0 mov %rax, w2 mov %rdx, w3 add $4, n
js L(ta1)
L(ret): pop %r13 pop %r12 pop %rbp pop %rbx
FUNC_EXIT() ret
EPILOGUE()
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.7Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.