Commit 9c6d6a36 authored by fischer1's avatar fischer1 Committed by GitHub

Merge pull request #83 from Nek5000/release/v16.0.0

Continuous merge of bugfixes in release/v16.0.0
parents 1986adde f16881bf
echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
rm -f ioinfo
mv -f $1.log $1.log1
mv -f $1.sch $1.sch1
mv -f $1.log $1.log1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
touch $1.rea
time ./nek5000
rm -f SESSION.NAME
......@@ -3,8 +3,8 @@ echo `pwd`'/' >> SESSION.NAME
rm -f ioinfo
echo -1000 >ioinfo
rm -f logfile
mv -f $1.log.1 $1.log1.1
mv -f $1.sch $1.sch1
mv -f $1.log.1 $1.log1.1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
touch $1.rea
time ./nek5000 > $1.log.1
ln $1.log.1 logfile
......
......@@ -3,8 +3,8 @@ echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f ioinfo logfile
echo -1000 > ioinfo
mv -f $1.log.$2 $1.log1.$2
mv -f $1.sch $1.sch1
mv -f $1.log.$2 $1.log1.$2 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
mpiexec -np $2 ./nek5000 > $1.log.$2
ln $1.log.$2 logfile
rm -f SESSION.NAME
......@@ -3,8 +3,8 @@ echo `pwd`'/' >> SESSION.NAME
rm -f ioinfo
echo -10 >ioinfo
rm -f logfile
mv -f $1.log.1 $1.log1.1
mv -f $1.sch $1.sch1
mv -f $1.log.1 $1.log1.1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
touch $1.rea
time ./nek5000 > $1.log.1
ln $1.log.1 logfile
......
......@@ -3,8 +3,8 @@ echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f ioinfo logfile
echo -10 > ioinfo
mv -f $1.log.$2 $1.log1.$2
mv -f $1.sch $1.sch1
mv -f $1.log.$2 $1.log1.$2 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
mpiexec -np $2 ./nek5000 > $1.log.$2
ln $1.log.$2 logfile
rm -f SESSION.NAME
......@@ -2,8 +2,8 @@ echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
rm -f ioinfo
rm -f logfile
mv -f $1.log $1.log1
mv -f $1.sch $1.sch1
mv -f $1.log $1.log1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
touch $1.rea
nohup time ./nek5000 > $1.log &
sleep 2
......
......@@ -3,8 +3,8 @@ echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f logfile
rm -f ioinfo
mv $1.log.$2 $1.log1.$2
mv $1.sch $1.sch1
mv $1.log.$2 $1.log1.$2 2>/dev/null
mv $1.sch $1.sch1 2>/dev/null
mpiexec -np $2 ./nek5000 > $1.log.$2 &
sleep 2
ln $1.log.$2 logfile
echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
rm -f ioinfo
mv -f $1.log $1.log1
mv -f $1.sch $1.sch1
mv -f $1.log $1.log1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
touch $1.rea
gdb ./nek5000
......@@ -2,13 +2,13 @@ echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm ioinfo
mv $1.log $1.log1
mv $1.fld $1.fld1
mv $1.his $1.his1
mv $1.sch $1.sch1
mv $1.out $1.out1
mv $1.ore $1.ore1
mv $1.nre $1.nre1
mv $1.log $1.log1 2>/dev/null
mv $1.fld $1.fld1 2>/dev/null
mv $1.his $1.his1 2>/dev/null
mv $1.sch $1.sch1 2>/dev/null
mv $1.out $1.out1 2>/dev/null
mv $1.ore $1.ore1 2>/dev/null
mv $1.nre $1.nre1 2>/dev/null
time nek5000 > $1.log
sleep 1
rm logfile
......
......@@ -2,8 +2,8 @@ echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f ioinfo logfile
mv -f $1.log.$2 $1.log1.$2
mv -f $1.sch $1.sch1
mv -f $1.log.$2 $1.log1.$2 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
mpiexec -np $2 ./nek5000 > $1.log.$2
ln $1.log.$2 logfile
rm -f SESSION.NAME
......@@ -3,7 +3,7 @@ echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f logfile
rm -f ioinfo
mv $1.log.$2 $1.log1.$2
mv $1.sch $1.sch1
mv $1.log.$2 $1.log1.$2 2>/dev/null
mv $1.sch $1.sch1 2>/dev/null
mpiexec -np $2 ./nek5000
rm -f SESSION.NAME
mv SESSION.NAME SESSION.NAME.1
mv SESSION.NAME SESSION.NAME.1 2>/dev/null
echo 2 >> SESSION.NAME
echo $1 >> SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
......@@ -8,12 +8,12 @@ echo `pwd`'/' >> SESSION.NAME
echo $4 >> SESSION.NAME
touch $1.rea
rm ioinfo
mv $1.log $1.log1
mv $1.his $1.his1
mv $1.sch $1.sch1
mv $2.log $2.log1
mv $2.his $2.his1
mv $2.sch $2.sch1
mv $1.log $1.log1 2>/dev/null
mv $1.his $1.his1 2>/dev/null
mv $1.sch $1.sch1 2>/dev/null
mv $2.log $2.log1 2>/dev/null
mv $2.his $2.his1 2>/dev/null
mv $2.sch $2.sch1 2>/dev/null
NP1=$3
NP2=$4
NP=$(($NP1+$NP2))
......
mv SESSION.NAME SESSION.NAME.1
echo 2 >> SESSION.NAME
echo $1 >> SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
echo $3 >> SESSION.NAME
echo $2 >> SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
echo $4 >> SESSION.NAME
mv SESSION.NAME SESSION.NAME.1 2>/dev/null
echo 2 >> SESSION.NAME 2>/dev/null
echo $1 >> SESSION.NAME 2>/dev/null
echo `pwd`'/' >> SESSION.NAME 2>/dev/null
echo $3 >> SESSION.NAME 2>/dev/null
echo $2 >> SESSION.NAME 2>/dev/null
echo `pwd`'/' >> SESSION.NAME 2>/dev/null
echo $4 >> SESSION.NAME 2>/dev/null
touch $1.rea
rm ioinfo
mv $1.log $1.log1
mv $1.his $1.his1
mv $1.sch $1.sch1
mv $2.log $2.log1
mv $2.his $2.his1
mv $2.sch $2.sch1
mv $1.log $1.log1 2>/dev/null
mv $1.his $1.his1 2>/dev/null
mv $1.sch $1.sch1 2>/dev/null
mv $2.log $2.log1 2>/dev/null
mv $2.his $2.his1 2>/dev/null
mv $2.sch $2.sch1 2>/dev/null
NP1=$3
NP2=$4
NP=$(($NP1+$NP2))
......
......@@ -8,9 +8,9 @@ echo "echo \`pwd\`'/' >> SESSION.NAME" >> $1.batch
echo rm -f $1.his1 >> $1.batch
echo rm -f $1.sch1 >> $1.batch
echo rm -f $1.log1 >> $1.batch
echo mv $1.log $1.log1 >> $1.batch
echo mv $1.his $1.his1 >> $1.batch
echo mv $1.sch $1.sch1 >> $1.batch
echo mv $1.log $1.log1 2>/dev/null >> $1.batch
echo mv $1.his $1.his1 2>/dev/null >> $1.batch
echo mv $1.sch $1.sch1 2>/dev/null >> $1.batch
echo rm -f logfile >> $1.batch
echo rm -f ioinfo >> $1.batch
echo sleep 5 >> $1.batch
......
......@@ -2,9 +2,9 @@ echo $1 > SESSION.NAME
echo `pwd`'/' >> SESSION.NAME
touch $1.rea
rm -f ioinfo
mv -f $1.log.$2 $1.log1.$2
mv -f $1.his $1.his1
mv -f $1.sch $1.sch1
mv -f $1.log.$2 $1.log1.$2 2>/dev/null
mv -f $1.his $1.his1 2>/dev/null
mv -f $1.sch $1.sch1 2>/dev/null
rm -f $1.output
rm -f *.output
rm -f *.error
......
......@@ -197,13 +197,8 @@ void iniparser_dump(const dictionary * d, FILE * f)
if (d==NULL || f==NULL) return ;
for (i=0 ; i<d->size ; i++) {
if (d->key[i]==NULL)
continue ;
if (d->val[i]!=NULL) {
fprintf(f, "%s = [%s]\n", d->key[i], d->val[i]);
} else {
/*fprintf(f, "[%s]=UNDEF\n", d->key[i]);*/
}
if (d->key[i]==NULL) continue ;
fprintf(f, "%s = [%s]\n", d->key[i], d->val[i]);
}
return ;
}
......@@ -579,7 +574,8 @@ static line_status iniparser_line(
} else if (line[0]=='#' || line[0]==';') {
/* Comment line */
sta = LINE_COMMENT ;
} else if (line[0]=='[' && line[len-1]==']') {
/* } else if (line[0]=='[' && line[len-1]==']') { */
} else if (line[0]=='[') {
/* Section name */
sscanf(line, "[%[^]]", section);
strstrip(section);
......
integer cv_lysize
parameter (cv_lysize=lx1*ly1*lz1*lelt*ldimt+1)
integer cv_ystart, cv_1fld, cv_lfld
COMMON /ICVODE/ cv_ystart, cv_1fld, cv_lfld
integer cv_nfld, cv_nadd_usr
COMMON /ICVODE/ cv_nfld, cv_nadd_usr
integer*8 cv_nglobal
COMMON /ILCVODE/ cv_nglobal
......@@ -11,16 +11,16 @@
COMMON /LCVODE/ ifcvodeinit
real cv_atol,cv_rtol
real cv_dtlag,cv_abmsh,cv_ab,cv_dtnek
real cv_dtlag,cv_abmsh,cv_ab
real cv_time,cv_timel,cv_dtnek
COMMON /RCVODE/ cv_atol,cv_rtol,
& cv_dtlag(3),cv_abmsh(3),cv_ab(3),cv_dtnek
& cv_dtlag(3),cv_abmsh(3),cv_ab(3),
& cv_time,cv_timel,cv_dtnek
INTEGER IGSTYPE,METH,ITMETH,IATOL,ITASK
INTEGER IGSTYPE,ITMETH,IATOL,ITASK
PARAMETER(
& METH = 2, ! BDF
& ITMETH = 2, ! Newton iter
& IATOL = 1, ! 1: CV_SS / 2: CV_SV)
& IGSTYPE = 1, ! GS 1: modified 2: classical
& ITASK = 1 ! overshoot + interpolate in time
& IGSTYPE = 1 ! GS 1: modified 2: classical
& )
write(6,'(20(A,/))')
& '/----------------------------------------------------------\\'
&,'| _ __ ______ __ __ ______ ____ ____ ____ |'
&,'| / | / // ____// //_/ / ____/ / __ \\ / __ \\ / __ \\ |'
&,'| / |/ // __/ / ,< /___ \\ / / / // / / // / / / |'
&,'| _ __ ______ __ __ ______ ____ ____ ____ |'
&,'| / | / // ____// //_/ / ____/ / __ \\/ __ \\/ __ \\ |'
&,'| / |/ // __/ / ,< /___ \\ / / / // / / // / / / |'
&,'| / /| // /___ / /| | ____/ / / /_/ // /_/ // /_/ / |'
&,'| /_/ |_//_____//_/ |_|/_____/ \\____/ \\____/ \\____/ |'
&,'| /_/ |_//_____//_/ |_|/_____/ \\___/ \\___/ \\___/ |'
&,'| |'
&,'|----------------------------------------------------------|'
&,'| |'
&,'| NEK5000: Open Source Spectral Element Solver |'
&,'| COPYRIGHT (c) 2008-2010 UCHICAGO ARGONNE, LLC |'
&,'| Version: 1.0rc1 / SVN r1115 |'
&,'| COPYRIGHT (c) 2008-2016 UCHICAGO ARGONNE, LLC |'
&,'| Version: 16.0.0 |'
&,'| Web: http://nek5000.mcs.anl.gov |'
&,'| |'
&,'\\----------------------------------------------------------/'
......
......@@ -22,7 +22,7 @@ C
$ ,NKTONV,NHIS,LOCHIS(4,lhis+maxobj)
$ ,IPSCAL,NPSCAL,IPSCO, ifldmhd
$ ,IRSTV,IRSTT,IRSTIM,NMEMBER(MAXOBJ),NOBJ
$ ,NGEOM
$ ,NGEOM,IDPSS(LDIMT)
C
COMMON /INPUT3/ IF3D,IFFLOW,IFHEAT,IFTRAN,IFAXIS,IFSTRS,IFSPLIT
$ ,IFMGRID,IFADVC(LDIMT1),IFTMSH(0:LDIMT1)
......@@ -34,6 +34,7 @@ C
$ ,IFCVODE,IFLOMACH,IFEXPLVIS,IFSCHCLOB,IFUSERVP
$ ,IFCYCLIC,IFMOAB,IFCOUP, IFVCOUP, IFUSERMV,IFREGUO
$ ,IFXYO_,ifaziv,IFNEKNEK,IFNEKNEKM,ifdg
$ ,IFCVFLD(LDIMT1),IFDP0DT
c
LOGICAL IF3D,IFFLOW,IFHEAT,IFTRAN,IFAXIS,IFSTRS,IFSPLIT
$ ,IFMGRID,IFADVC ,IFTMSH
......@@ -45,6 +46,7 @@ c
$ ,IFCVODE,IFLOMACH,IFEXPLVIS,IFSCHCLOB,IFUSERVP
$ ,IFCYCLIC,IFMOAB,IFCOUP, IFVCOUP, IFUSERMV,IFREGUO
$ ,IFXYO_,ifaziv,IFNEKNEK,IFNEKNEKM,ifdg
$ ,IFCVFLD,IFDP0DT
LOGICAL IFNAV
EQUIVALENCE (IFNAV, IFADVC(1))
......
......@@ -3,7 +3,7 @@ c Define all valid keys for .par file here
c Note: Keys have to be in captial letters
c
integer PARDICT_NKEYS
parameter(PARDICT_NKEYS = 68)
parameter(PARDICT_NKEYS = 75)
character*132 pardictkey(PARDICT_NKEYS)
data
......@@ -68,10 +68,17 @@ c
& pardictkey(59) / 'GENERAL:USERPARAM09' /
& pardictkey(60) / 'GENERAL:USERPARAM10' /
& pardictkey(61) / 'SCALAR%%' /
& pardictkey(62) / 'SCALAR%%:RHOCP' /
& pardictkey(63) / 'SCALAR%%:CONDUCTIVITY' /
& pardictkey(64) / 'SCALAR%%:WRITETOFIELDFILE' /
& pardictkey(65) / 'TEMPERATURE:SOLVER' /
& pardictkey(66) / 'TEMPERATURE:ABSOLUTETOL' /
& pardictkey(67) / 'TEMPERATURE:RELATIVETOL' /
& pardictkey(62) / 'SCALAR%%:SOLVER' /
& pardictkey(63) / 'SCALAR%%:RESIDUALTOL' /
& pardictkey(64) / 'SCALAR%%:RHO' /
& pardictkey(65) / 'SCALAR%%:DIFFUSIVITY' /
& pardictkey(66) / 'SCALAR%%:WRITETOFIELDFILE' /
& pardictkey(67) / 'TEMPERATURE:SOLVER' /
& pardictkey(68) / 'TEMPERATURE:RESIDUALTOL' /
& pardictkey(69) / 'PROBLEMTYPE:DP0DT' /
& pardictkey(70) / 'CVODE' /
& pardictkey(71) / 'CVODE:ABSOLUTETOL' /
& pardictkey(72) / 'CVODE:RELATIVETOL' /
& pardictkey(73) / 'CVODE:STIFF' /
& pardictkey(74) / 'CVODE:MODE' /
& pardictkey(75) / 'CVODE:PRECONDITIONER' /
.set r0,0; .set r1,1; .set r2,2; .set r3,3; .set r4,4
.set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9
.set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14
.set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19
.set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24
.set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29
.set r30,30; .set r31,31
.set f0,0; .set f1,1; .set f2,2; .set f3,3; .set f4,4
.set f5,5; .set f6,6; .set f7,7; .set f8,8; .set f9,9
.set f10,10; .set f11,11; .set f12,12; .set f13,13; .set f14,14
.set f15,15; .set f16,16; .set f17,17; .set f18,18; .set f19,19
.set f20,20; .set f21,21; .set f22,22; .set f23,23; .set f24,24
.set f25,25; .set f26,26; .set f27,27; .set f28,28; .set f29,29
.set f30,30; .set f31,31
.file "bg_aligned3.s"
.globl bg_aligned3
.type bg_aligned3, @function
.size bg_aligned3, 48
.section ".text"
.align 2
bg_aligned3:
andi. r0,r3,15
clrlwi r9,r4,28
cmpwi cr7,r9,0
li r3,0
li r0,0
bne- .L.das_label.58
andi. r9,r5,15
bne- cr7,.L.das_label.58
bne- .L.das_label.58
li r0,1
.L.das_label.58:
stw r0,0(r6)
blr
.ident "GCC: (GNU) 3.2"
.set r0,0; .set r1,1; .set r2,2; .set r3,3; .set r4,4
.set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9
.set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14
.set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19
.set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24
.set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29
.set r30,30; .set r31,31
.set f0,0; .set f1,1; .set f2,2; .set f3,3; .set f4,4
.set f5,5; .set f6,6; .set f7,7; .set f8,8; .set f9,9
.set f10,10; .set f11,11; .set f12,12; .set f13,13; .set f14,14
.set f15,15; .set f16,16; .set f17,17; .set f18,18; .set f19,19
.set f20,20; .set f21,21; .set f22,22; .set f23,23; .set f24,24
.set f25,25; .set f26,26; .set f27,27; .set f28,28; .set f29,29
.set f30,30; .set f31,31
.file "bg_mxm3.s"
.globl bg_mxm3
.type bg_mxm3, @function
.size bg_mxm3, 1412
.section ".text"
.align 2
bg_mxm3:
stwu r1,-96(r1)
mflr r0
stw r0,100(r1)
andi. r0,r7,15
stw r15,28(r1)
mr r15,r8
stw r16,32(r1)
mr r16,r6
stw r25,68(r1)
mr r25,r5
stw r28,80(r1)
mr r28,r4
stw r30,88(r1)
mr r30,r7
stw r31,92(r1)
mr r31,r3
stw r14,24(r1)
stw r17,36(r1)
stw r18,40(r1)
stw r19,44(r1)
stw r20,48(r1)
stw r21,52(r1)
stw r22,56(r1)
stw r23,60(r1)
stw r26,72(r1)
stw r27,76(r1)
stw r29,84(r1)
bne- .L.das_label.15
.L.das_label.3:
lis r23,dummy@ha
li r12,0
addi r23,r23,dummy@l
li r13,0
li r27,16
addi r23,r23,-16
stfpdux f13,r23,r27
stfpdux f14,r23,r27
stfpdux f15,r23,r27
stfpdux f16,r23,r27
stfpdux f17,r23,r27
stfpdux f18,r23,r27
stfpdux f19,r23,r27
stfpdux f20,r23,r27
stfpdux f21,r23,r27
stfpdux f22,r23,r27
stfpdux f23,r23,r27
stfpdux f24,r23,r27
stfpdux f25,r23,r27
stfpdux f26,r23,r27
stfpdux f27,r23,r27
stfpdux f28,r23,r27
stfpdux f29,r23,r27
stfpdux f30,r23,r27
stfpdux f31,r23,r27
lis r9,10922
lwz r4,0(r28)
ori r9,r9,43691
lwz r15,0(r15)
lwz r6,0(r16)
mulhw r14,r4,r9
srawi r11,r15,31
srawi r16,r6,1
addze r16,r16
srawi r0,r4,31
mulhw r15,r15,r9
subf r14,r0,r14
rlwinm r26,r16,4,0,27
mulli r22,r16,80
subf r15,r11,r15
subfic r22,r22,16
mfctr r29
li r18,0
rlwinm r28,r4,3,0,28
cmpw r18,r15
addi r28,r28,-32
addi r19,r16,-2
cmpwi cr7,r12,0
bge- .L.das_label.10
.L.das_label.4:
mullw r23,r4,r18
li r17,0
cmpw r17,r14
mulli r23,r23,48
add r23,r30,r23
addi r23,r23,-16
bge- .L.das_label.9
mullw r9,r16,r18
cmpwi cr6,r19,0
mulli r9,r9,96
mulli r0,r6,40
add r9,r9,r0
add r9,r9,r25
addi r11,r9,-16
.L.das_label.5:
mulli r20,r17,48
rlwinm r0,r4,3,0,28
add r20,r31,r20
subf r20,r0,r20
addi r20,r20,32
lfpdux f1,r20,r28
mr r21,r11
lfpdux f7,r21,r22
lfpdux f2,r20,r27
lfpdux f3,r20,r27
lfpdux f8,r21,r26
lfpdux f9,r21,r26
lfpdux f4,r20,r28
lfpdux f10,r21,r26
lfpdux f5,r20,r27
lfpdux f11,r21,r26
lfpdux f12,r21,r26
fxpmul f13,f7,f1
fxpmul f16,f8,f1
lfpdux f6,r20,r27
fxpmul f19,f9,f1
fxpmul f22,f10,f1
fxpmul f25,f11,f1
fxpmul f28,f12,f1
fxpmul f14,f7,f2
lfpdux f1,r20,r28
fxpmul f17,f8,f2
fxpmul f20,f9,f2
fxpmul f23,f10,f2
fxpmul f26,f11,f2
fxpmul f29,f12,f2
fxpmul f15,f7,f3
lfpdux f2,r20,r27
fxpmul f18,f8,f3
fxpmul f21,f9,f3
fxpmul f24,f10,f3
fxpmul f27,f11,f3
fxpmul f30,f12,f3
fxcsmadd f13,f7,f4,f13
lfpdux f3,r20,r27
fxcsmadd f16,f8,f4,f16
fxcsmadd f14,f7,f5,f14
fxcsmadd f17,f8,f5,f17
fxcsmadd f19,f9,f4,f19
fxcsmadd f22,f10,f4,f22
fxcsmadd f25,f11,f4,f25
fxcsmadd f28,f12,f4,f28
fxcsmadd f20,f9,f5,f20
fxcsmadd f15,f7,f6,f15
lfpdux f4,r20,r28
fxcsmadd f18,f8,f6,f18
lfpdux f7,r21,r22
fxcsmadd f23,f10,f5,f23
fxcsmadd f26,f11,f5,f26
fxcsmadd f29,f12,f5,f29
lfpdux f8,r21,r26
fxcsmadd f21,f9,f6,f21
fxcsmadd f24,f10,f6,f24
lfpdux f5,r20,r27
lfpdux f9,r21,r26
lfpdux f10,r21,r26
fxcsmadd f27,f11,f6,f27
fxcsmadd f30,f12,f6,f30
lfpdux f11,r21,r26
beq- cr6,.L.das_label.6
mtctr r19
.__loopk:
lfpdux f12,r21,r26
fxcpmadd f13,f7,f1,f13
fxcpmadd f16,f8,f1,f16
lfpdux f6,r20,r27
fxcpmadd f19,f9,f1,f19
fxcpmadd f22,f10,f1,f22
fxcpmadd f25,f11,f1,f25
fxcpmadd f28,f12,f1,f28
fxcpmadd f14,f7,f2,f14
lfpdux f1,r20,r28
fxcpmadd f17,f8,f2,f17
fxcpmadd f20,f9,f2,f20
fxcpmadd f23,f10,f2,f23
fxcpmadd f26,f11,f2,f26
fxcpmadd f29,f12,f2,f29
fxcpmadd f15,f7,f3,f15
lfpdux f2,r20,r27
fxcpmadd f18,f8,f3,f18
fxcpmadd f21,f9,f3,f21
fxcpmadd f24,f10,f3,f24
fxcpmadd f27,f11,f3,f27
fxcpmadd f30,f12,f3,f30
fxcsmadd f13,f7,f4,f13
lfpdux f3,r20,r27
fxcsmadd f16,f8,f4,f16
fxcsmadd f14,f7,f5,f14
fxcsmadd f17,f8,f5,f17
fxcsmadd f19,f9,f4,f19
fxcsmadd f22,f10,f4,f22
fxcsmadd f25,f11,f4,f25
fxcsmadd f28,f12,f4,f28
fxcsmadd f20,f9,f5,f20
fxcsmadd f15,f7,f6,f15
lfpdux f4,r20,r28
fxcsmadd f18,f8,f6,f18
lfpdux f7,r21,r22
fxcsmadd f23,f10,f5,f23
fxcsmadd f26,f11,f5,f26
fxcsmadd f29,f12,f5,f29
lfpdux f8,r21,r26
fxcsmadd f21,f9,f6,f21
fxcsmadd f24,f10,f6,f24
lfpdux f5,r20,r27
lfpdux f9,r21,r26
lfpdux f10,r21,r26
fxcsmadd f27,f11,f6,f27
fxcsmadd f30,f12,f6,f30
lfpdux f11,r21,r26
bdnz+ .__loopk
.L.das_label.6:
lfpdux f12,r21,r26
fxcpmadd f13,f7,f1,f13
fxcpmadd f14,f7,f2,f14
fxcpmadd f15,f7,f3,f15
lfpdux f6,r20,r27
fxcpmadd f16,f8,f1,f16
fxcpmadd f17,f8,f2,f17
fxcpmadd f18,f8,f3,f18
fxcsmadd f13,f7,f4,f13
fxcsmadd f14,f7,f5,f14
fxcsmadd f15,f7,f6,f15
fxcsmadd f16,f8,f4,f16
fxcsmadd f17,f8,f5,f17
fxcsmadd f18,f8,f6,f18
stfpdux f13,r23,r27
fxcpmadd f19,f9,f1,f19
fxcpmadd f20,f9,f2,f20
stfpdux f14,r23,r27
fxcpmadd f21,f9,f3,f21
fxcpmadd f22,f10,f1,f22
stfpdux f15,r23,r27
fxcpmadd f23,f10,f2,f23
fxcpmadd f24,f10,f3,f24
stfpdux f16,r23,r28
fxcsmadd f19,f9,f4,f19
fxcsmadd f20,f9,f5,f20
stfpdux f17,r23,r27
fxcsmadd f21,f9,f6,f21
fxcsmadd f22,f10,f4,f22
stfpdux f18,r23,r27
fxcsmadd f23,f10,f5,f23
fxcsmadd f24,f10,f6,f24
stfpdux f19,r23,r28
fxcpmadd f25,f11,f1,f25
fxcpmadd f26,f11,f2,f26
stfpdux f20,r23,r27
fxcpmadd f27,f11,f3,f27
fxcpmadd f28,f12,f1,f28
stfpdux f21,r23,r27
fxcpmadd f29,f12,f2,f29
fxcpmadd f30,f12,f3,f30
stfpdux f22,r23,r28
clrlwi r0,r23,28
subfic r10,r13,0
adde r9,r10,r13
neg r0,r0
rlwinm r0,r0,1,31,31
and. r10,r0,r9
beq- .L.das_label.7
mr r13,r23
.L.das_label.7:
fxcsmadd f25,f11,f4,f25
fxcsmadd f26,f11,f5,f26
stfpdux f23,r23,r27
clrlwi r0,r23,28
mfcr r9
rlwinm r9,r9,31,31,31
neg r0,r0
rlwinm r0,r0,1,31,31
and. r10,r0,r9
beq- .L.das_label.8
mr r12,r23
cmpwi cr7,r23,0
.L.das_label.8:
fxcsmadd f27,f11,f6,f27
fxcsmadd f28,f12,f4,f28
stfpdux f24,r23,r27
fxcsmadd f29,f12,f5,f29
fxcsmadd f30,f12,f6,f30
stfpdux f25,r23,r28
stfpdux f26,r23,r27
stfpdux f27,r23,r27
stfpdux f28,r23,r28
stfpdux f29,r23,r27
stfpdux f30,r23,r27
addi r17,r17,1
mulli r0,r4,40
cmpw r17,r14
subf r23,r0,r23
blt+ .L.das_label.5