Path: utzoo!utgpu!watmath!att!dptg!rutgers!njin!princeton!udel!mmdf From: V61%DHDURZ1.BITNET@cunyvm.cuny.edu (Ronald Lamprecht) Newsgroups: comp.os.minix Subject: Performance increase for the ST ... Patch Message-ID: <21374@louie.udel.EDU> Date: 9 Aug 89 19:56:50 GMT Sender: mmdf@udel.EDU Lines: 198 Ok, nobody is perfect ! This is a set of patches (bug fixes and improvements) for my recent posting [1]. The changes: - copy68k.s: clr.lchanged to move.l #0, (= moveq.l). Those of you who translate the assembelr sources to MIT syntax (GCC) note that all move.l,sub.l,... with small constants should be translated to moveq,subq,addq,... - stmpx.s: If you push an additional argument on stack you should pop it afterwards, even if the stack is no longer used,... - _mli.s: I must have been very tiered when I programmed it -- but from the fact that only the 16bit x 16bit multiplication has been bug free and I did use this lib over a week I conclude that 32bit x 16(32)bit multiplications are very very seldom. The new version includes Klamer's bug fixes with a few reimprovements from me and a few comment fixes. Furthermore I have extracted the debugging stuff from the file and have put it into a cdiff. I think it's too dangerous to incorporate a DEBUG feature that requires different arguments,... in a standard lib file. I added a simple testprogram with a makefile. So you can check the new mli with arbitrary values by changing test_mli.c . Further comments are included in the makefile I have been told that the PM286 kernel of Bruce contains a similar solution to avoid unnecessary multiplications during processing the system calls. So these improvments will only be of interest for 68000 machines and not for PCs. MANIFEST: kernel/copy68k.s_cdif -- cdiff to [1] kernel/stmpx.s_cdiff -- cdiff to the original ST 1.1 version lib/_mli.s -- new substitution for [1] test/mli/_mli_d.s_cdiff -- see makefile test/mli/makefile test/mli/test_mli.c [1] huge preformance increase for ST and PC by Ronald Lamprecht from 19 Jul 89 Thanks for bug fixes and comments to Klamer, Jwahar and Bruce. As usual: the cdiffs and additional files are shared, compressed and uuencoded (Sorry, but I'm still on EBCDIC-Bitnet): Bitnet: V61@DHDURZ1 Ronald Lamprecht UUCP: ...!unido!DHDURZ1.bitnet!V61 Theoretische Physik ARPAnet: V61%DHDURZ1.BITNET@CUNYVM.CUNY.EDU (Heidelberg, West Germany) -------------------------------cut here------------------------------------ table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 fcopy2sh.Z M'YV-9<:@>0,"#X@6(*24"4.F31D9"N:4(0/BQ LO6%[,><'Q! @?"1 4,F#X@T F:J#,!:$8][ R6,#QQH7 "3.QW(@@Z!-N8+?,9Q @8+'B(!H&BA]S5<3ZG<#%TH$0034'D>5-Gv MY>;C=P:>EO-U#ANHA^F@.1QFCL0V8LIT5DI &"F61).#5>'s M3G7,@897;GA%!AD'IN'@@E[)<48=:3'5(X1CK"$<<1,29V%><-Q$QX>;A6&&r M?'+<$88<9,SQ4AEG]9B&4](=QJ231L4$ AL.+A97CA.QH*)C"'W1!AMIR A"q M$G+E"!1]9X&0W5T@G"6'37SQ9%IRB )*UAMG,->&0V$!U0)"5@%E1EEMG#8=p MEEF%,090TD$%G!ML,#H="#'8(,:!!<$J*ZUM5,@7''R. 960/=*7TZ$]6H75o MIV50!Q:I@ ))$9VB&L6G&, IZE6!R3H):&1NC,%&'63,I^H,,LP*E$&QHD!Nn M"N:2FBL;N_;ZJX-(U94H3S8I:I-$%K[1QHKW]7:8&V7<<:\< 2/%I;Q!$AF(\$9=3>'U%)@<<<$%W+1%%"%'%j M$5DM1$?-X@)55QQUI%$7R5@$[+5/=>'UY9$CVTE@7]=""-:7%$TK-6O,^ABNi MRDJ!//5I4]$Q::5AA*KQCDDIN$896DW-VQ0$V8C85XA-UZ2H99!*L,%[IE'@h M@:S+82YSBR:Z8!U=B6$3:4C[1?I>>O+IPA@@S%SSS2V/3.J7A\7=L&F41^TZg M[&E,[=A*.X=1*+%H3YDJJJ]"T80,.-@ PNMR$ Q:<$*00QV^TR#T] 4IH6M#f M^K[$G6_QQ4$KV9H=WI"&9[F!8-^QSI=L\JYXI<%7#WP0",A0LZ3II"P93)CTe MHC:'/.P%+;?+C\Q60CO>_09D9;'#R(;'( >URE"'"8[6'+67K, %!)6!@1+Ed M8JJB$ PI8('/E;#PEKA 80@S9!$6FA $)R3!"$68 A4:D[CC\,]_+XC,9"ISc MF3E\H6MG"MAF-H68Q:$-!(#I I;.J!V-T %&F'FC'>5X$,C8,3Q1@TL:HD
M33@C)R3DBY'=* =!>#E2'$!HQ+GG$DGSV\H+@a M83)X7R!#(.'8M(#142*'.5_L>E?)Z=&AE7QJ91A>MTM5E@Z8:7C!*NF0R>LYz M)H]5N\IAR ([N"BH6^'K5EVJ (I4,$Jy M!R!00H5 @(,<.(8H7UE#3KQIK(MQ!8H4B8S+U/(V@D L=3QYB1*\1)^XA!,$x M 1P@Y[08A)SDJ X+TDS4:&D&@'HN2.?<7+W4U- ZM8R:UC'-0^O O&[19"(Kw M00'MY+"HEW3J3R<(U2A[V*.\#8$(21A""X1P((+1(05D7 E1Z6!4S8# "C:(v M 1"(@ 0B5$$*6HAD)[?*52F 7#,/;6'1"Q00$.48)$_!PTQ$3&,1C&B$(RGY" B:F1.3H$0E6!C!F<+Er ME" ,80DK$0H*K+L$F"0K3#QRS71A!\0JSJ>;ABNB0),4E-QF5P7PC:]\YTO?q M^MKWOOC-+WZSF]V ?4$N;[I)]I32UP(;N)--^!,(G*!@+8:@O_<10G4^6*HBp M)NP,!*-(!]/ JP_.JT=E*65?>!D"_9KXQ"A.,7WYBX4'M[@',(ZQC&=,XQK;o M^,8XSC&.^UL$()FR*'N!2QY8+!37W(<(=CMP)X?@KQTJ68Y"&'*+"XF035G9n MRE2^LI:WS.4N>_G+5(8PK&!5 Q? X 8NJ"?:Z+"@'];E#G(XD'QZ].0Z2R$(m M3!"S#$ @ QN8& _+_-D5)=\YSRU^KXI'3>I2J\ Q7,7,3^[C OG\C%1R5/6I6 TJ6 =,UD Yk MC@O6QF9;LUHBL]:U&*RSOEX2$M>L=O44?:UKZHYXK<%S3(E-3>UJWY?(6^5-j MJ$"3!FQWT@C5 Y(F84QN&&[RG!3Y @ @Z8;@81@V;^KRM_[IQ./8?D(I[TT'IY(!!@-'2%'.L".XA"LNA]/5Q.5(g MAH;/\4UO,)C->0*"G,-KYXJ3 0O" )LP:!4AIPYUB^5-]6H[Q@7!(R-70S1Pf MVLP!#BE8P=)AP$FA+$9P@*U9CSKN&69OQEN>e MEQT$9X>XNM- =!0P_#T/7::5W&XH7LF18#_[PN,8'Q,Z='V$>RZP4.)(L#/\d MR@Z:";*]QLTCBG2>\F4XP^5[OA+(,_-Q6M\JWH^C=["+_>5_#[S!Y15%P\L c M\5%4_($8+P;'!VP.[OM"7 =7[Ub M,%@)\NV@_-2K-43_ !R=%R-R]W(KT8=VR$GH-W#R=WOLYWX!(Q2' !PO)X!<%8$T (B&'0Hu M" (JD(9#N!*F^"XR@(IR9(:!J(2O6'J;L84!9XNX6(NR"( 6(%"r MR(6,AX=(Z(-H:(Q[!F.,1GPS#;E!]Y\ 7ZJ(*L<8@NZ'[$5X]46$%7"'V3q M>!/AHA8>!AK5(1 ((8.(^JF'3Mp M&)!DYY!JR'#(:)'-^(P B(9U <[$1=W8'/ X10G.'0X-Q4 LU4GPG,E>9!;o M!7=F.96*DX#S>"*&R(HE*8R$)!1EN3H%T0+FTI5>N(8W5W13H7-O^2,\!XYHn MV4GC2)75B(9?R89A^1]'-X]J68YL^8W ,SP(@@=Z22O!T9A_m MZ88GF13'!UATF'TK,0)]>":$L5N]11"_M5RP)$MNQ%'#11'%E1$;T1'*E4FQl M-$MVY%P6 5WQ99O6,P<)0!0W$@060T]DI@.QH@,U $\QD /UU")T))RXV9QHk M\)S1B0/3&0,WH -]]D[;B04HMA+)B3\L, .Q*%_VP7AK!6RYME;*5I\*EVW.j MMI%8QR?\N1G35G4&JF+VX6)8!I\U0)Y7-J!]A6RZMI]EU%\1B#XSB#=ZPS?>i ME!1& )P:CHRB3Y ::X2L,LDS!@P(@8 )6808O\3@!6"1GL&>Y)11"\337h M,@0G1"F6L@,4:2 ,@B&4\Z); -=\!)^5Z1,DTI3)EUF !;DI:%[@W2Q]I]3g M&*#=]J3:(1%6NE98NEPJ*J!3UE_VQW;^UDF[!A5A$(NP8J;NXR@M]Z79PVMMf MNAGR*!3]]05CF@9IRDE3@YK'87\D-W9T^G^/R *B" ,WVDF!>GQQRG:&VI]We M5X .EZB+VJB<-&QQP6K11JE4:*F;<:9 ,ZG_5JG\H7ZPD:DK<*BB6HV*.HJMd M"JKW\7^$"EBFBI@ $C C$ -*]W5T^HF*F:G]Y9I@ 9L56D8%>J#,JE\)J@"Rc M*1"T27!J1!F609RPB8DH85R_F5RC(1G6VD:"%$?&F1+N"5\-LD;7ZD9E4 /@b M>2/R!!JQ BLS@)XU8)UDEYWKB675RD:8\:X@ )U8 0(WP&@TH ,T<+ R$(OZa M:D_L>6+G>HL!J#_T^1AT%( %^Z!E!*74)1=)I$3VP;'DQ5T)2AO @/QN6@:2Z#'L6B^^F>19B@6,VC$: ;;$[4-$BXW(5:7MFGA 0>&E9O@>A^?w M5K*;P; T +=J9@9\ @?>\D'ZQ )ZT#:/VR1B4JV5JT^>8QH&5KC*>APU0&:*v M"T]F$&[I2A?$X6[==$0.H4&+@10_,C0$ ;@N]$:#>QR>B[/'H3\P, -F!FEJu M!HRA$0:C01^ET2&I(:JO$1NS41NW<19/.W^$BV=>2Z!<>[WUQ9_M^;5(5 ,Lt M< /P5+&;$:69>Q^V04@P@ ?D66="X09(\EI\F;D%E16-FSUW *%?P+@<)K]_s MFI:= 7[V^;RL@82E2P9R$ />(HH6MY1UZ3F'DQ.11#GR&\!LX!R7-P(XT(X!r M_'\^.'9/9I<_\L!CQG8K 2(BO&<2q MW"OZ1,$6C(48K,'S6'"OVL%.]\$./!4YL6 T<^ SV\5& 5S 87K'17?M^UT@$(MP(AGSJ[]5PC4Z#,4Bo M,W!TUWXW\ )A( ,M$ 9C&W\RW)+V!YA(\T(( P+X=TKTRV' AS+BXA!+,#>.+XNm MC,!L4,4TW)(VC,1CEL.0VXE]-<87G,&L7& AS&'7DKETC!9VS,=DD,=[W,=_7,6"'*>$O(F'G,C>!,<1ZZS<&P,Qi MD,$Q, ,4&U_VH0?V;+Z 36Q9K=;_)NAE?T--O8,KMh M?!].[(,3_ 0_;^!Z)8F3$B1;8Z7_8N4[8 U,-F)e MS8HV -JK=P-+?8@!Z'2G#8U+1X31_,ZP&@9NB66^"ALK[:!6]M(Q? K&07.DIE;4IG_=4K>!QKK<-M_7>=W,_<;;ET719V7=%XK,=[b MO=&!_-<>'=C\A\B$31"&?=0@,L2K?,Y+V-@ SHF'/ C'>(0WG>FC=89OG2'2
(5?H"R7=)=z M>](WX+W96;8N749CL-N;@ ,=U3_=?=04#:K=4[_,T]?!\_',P7Y?!SE[6Y7_>7=#,K>3>;BO-I)R.)&3-9FK 3@>M_JE]?ZK=%]W=]XKA3_K8F"+>"FX4W52MJ!J.!HZ"9UH2!]<7,!+ 8Hv MR8=@(0,U4.*6U-"R;@,\R - 3HWHJ[Y%?M.>+-=)3A!+;K_X^^2['.55#MOQ/.=7GN51? KLU9W>?=+>8%#>C@_=IH/MYHO.[>T>;L_.8'+N[.K>+K_79U?N[4_7>&s MGMWNGA-@SLM9,_>-L+=5WSK;Q'=?SK;F2r M/AF4CM>_OM^9;G$=72@-'M+:*NJ3;N((WH$6WTGM2Q"I'@:K+G&M[.J">AQ]q M>.OVT<9P<.NYOMR[SJJ^?M&7'NSZ/.PQ4.R&D@?('JV^17"ZE#Z]HZV]>5S p M"1)=/SKE"ETC(![#A#ZCH\C+9$)1TP1]L14!>UW*J4F"=W!73;3M-F*MV9J$o M54IW/YRYN3@OL4S-- :'#V1,1$Q>CS9GA[=X&37,!?A\G[K/%AX8LDRFH6\>n M:C@_(60Q2IB(5#J)#[/+-/*(D_:9UF:;(0+GXTO!(P* K[/R,2-H\BIC4#.-m M Q3,-4)GPC@%E1H#M",Z.A>2I#"X$@8VD1V OQD8A,0;)"JJ8CO.R"NN,DU0l M(1!77S7AQ!N&L8:+9-6@\?N+X^#1=1RH0?S<[V(15#I9YTO-1!#>Z0)OL!()k M, ;8TP($T:?R'UST[S;9/_S7IQP#X@. &L7T!9 +3:0 'H5; !6A5#H)8!*]"6F"($J6>'O+)R*(V*\R, IW"='I#J\P+,?FPF>. !=P R(@!>C&S6 ;>T +B %*)#S"@.UX$V1 #Y !Z#$]YD;[s MT*>:-:\(TBH 2@M"EQB_1C#)@2MJ$$R(#_2!'H" DHr H 8^@$!(D#%.1U% 'Q\38J'3>41U@ A412%O(]OL; H!U70A]@C!'Hq p end ----------------------------------------end---------------------------------