Przemyslaw, compiled cleanly on OS/2 with gcc, I attach speedtst output as a test to dlmalloc.
Best regards and thanks. Maurilio. Przemysław Czerpak wrote: > On Thu, 25 Mar 2010, Szak�ts Viktor wrote: > > Hi, > >> msvc 2008, msvc 2008 64-bit, old msvcarm (1201), darwin clang >> and darwin gcc build cleanly. > > Thank you very much. > > BTW do you know _MSC_VER we can use to chose between __forceinline > and __inline? > > WINE uses this: > > #ifndef FORCEINLINE > # if defined(_MSC_VER) && (_MSC_VER >= 1200) > # define FORCEINLINE __forceinline > # elif defined(__GNUC__) && ((__GNUC__ > 3) || \ > ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 2))) > # define FORCEINLINE __attribute__((always_inline)) > # else > # define FORCEINLINE inline > # endif > #endif > > so I'll probably use the same condition. > It does not use always_inline in GCC 3.1 maybe due some problems with > this GCC version so I'll also replicate it. > > best regards, > Przemek > _______________________________________________ > Harbour mailing list (attachment size limit: 40KB) > Harbour@harbour-project.org > http://lists.harbour-project.org/mailman/listinfo/harbour > -- __________ | | | |__| Maurilio Longo |_|_|_|____| farmaconsult s.r.l.
2010.03.25 11:40:48 OS/2 4.50 Harbour 2.1.0dev (Rev. 14225) (MT)+ EMX GNU C 3.3.5 (32-bit) x86 THREADS: 2 N_LOOPS: 1000000 [ T000: empty loop overhead ]...................................0.03 ==================================================================== [ T001: x := L_C ]..............................................0.52 [ T002: x := L_N ]..............................................0.42 [ T003: x := L_D ]..............................................0.42 [ T004: x := S_C ]..............................................0.55 [ T005: x := S_N ]..............................................0.42 [ T006: x := S_D ]..............................................0.39 [ T007: x := M->M_C ]...........................................0.55 [ T008: x := M->M_N ]...........................................0.45 [ T009: x := M->M_D ]...........................................0.45 [ T010: x := M->P_C ]...........................................0.55 [ T011: x := M->P_N ]...........................................0.45 [ T012: x := M->P_D ]...........................................0.42 [ T013: x := F_C ]..............................................0.87 [ T014: x := F_N ]..............................................0.65 [ T015: x := F_D ]..............................................0.55 [ T016: x := o:Args ]...........................................0.90 [ T017: x := o[2] ].............................................0.74 [ T018: round( i / 1000, 2 ) ]..................................0.90 [ T019: str( i / 1000 ) ].......................................3.84 [ T020: val( s ) ]..............................................0.94 [ T021: val( a [ i % 16 + 1 ] ) ]...............................1.61 [ T022: dtos( d - i % 10000 ) ].................................1.58 [ T023: eval( { || i % 16 } ) ].................................2.19 [ T024: eval( bc := { || i % 16 } ) ]...........................1.16 [ T025: eval( { |x| x % 16 }, i ) ].............................1.87 [ T026: eval( bc := { |x| x % 16 }, i ) ].......................1.32 [ T027: eval( { |x| f1( x ) }, i ) ]............................2.32 [ T028: eval( bc := { |x| f1( x ) }, i ) ]......................1.65 [ T029: eval( bc := &("{ |x| f1( x ) }"), i ) ].................1.03 [ T030: x := &( "f1(" + str(i) + ")" ) ].......................14.03 [ T031: bc := &( "{|x|f1(x)}" ), eval( bc, i ) ]...............14.10 [ T032: x := valtype( x ) + valtype( i ) ].....................1.42 [ T033: x := strzero( i % 100, 2 ) $ a[ i % 16 + 1 ] ]..........4.26 [ T034: x := a[ i % 16 + 1 ] == s ].............................1.32 [ T035: x := a[ i % 16 + 1 ] = s ]..............................1.45 [ T036: x := a[ i % 16 + 1 ] >= s ].............................1.55 [ T037: x := a[ i % 16 + 1 ] <= s ].............................1.65 [ T038: x := a[ i % 16 + 1 ] < s ]..............................1.61 [ T039: x := a[ i % 16 + 1 ] > s ]..............................1.61 [ T040: ascan( a, i % 16 ) ]....................................1.29 [ T041: ascan( a, { |x| x == i % 16 } ) ]......................11.35 [ T042: iif( i%1000==0, a:={}, ) , aadd(a,{i,1,.T.,s,s2,a2 ]....3.68 [ T043: x := a ]................................................0.52 [ T044: x := {} ]...............................................0.90 [ T045: f0() ]..................................................0.61 [ T046: f1( i ) ]...............................................0.77 [ T047: f2( c[1...8] ) ]........................................0.84 [ T048: f2( c[1...40000] ) ]....................................0.81 [ T049: f2( @c[1...40000] ) ]...................................0.77 [ T050: f2( @c[1...40000] ), c2 := c ]..........................1.03 [ T051: f3( a, a2, s, i, s2, bc, i, n, x ) ]....................2.03 [ T052: f2( a ) ]...............................................0.90 [ T053: x := f4() ].............................................2.71 [ T054: x := f5() ].............................................1.06 [ T055: x := space(16) ]........................................0.81 [ T056: f_prv( c ) ]............................................0.00 ==================================================================== [ total application time: ].....................................0.00 [ total real time: ]...........................................53.31
_______________________________________________ Harbour mailing list (attachment size limit: 40KB) Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour