symbian-qemu-0.9.1-12/python-2.6.1/Tools/pybench/Constructs.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 from pybench import Test
       
     2 
       
     3 class IfThenElse(Test):
       
     4 
       
     5     version = 2.0
       
     6     operations = 30*3 # hard to say...
       
     7     rounds = 150000
       
     8 
       
     9     def test(self):
       
    10 
       
    11         a,b,c = 1,2,3
       
    12         for i in xrange(self.rounds):
       
    13 
       
    14             if a == 1:
       
    15                 if b == 2:
       
    16                     if c != 3:
       
    17                         c = 3
       
    18                         b = 3
       
    19                     else:
       
    20                         c = 2
       
    21                 elif b == 3:
       
    22                     b = 2
       
    23                     a = 2
       
    24             elif a == 2:
       
    25                 a = 3
       
    26             else:
       
    27                 a = 1
       
    28 
       
    29             if a == 1:
       
    30                 if b == 2:
       
    31                     if c != 3:
       
    32                         c = 3
       
    33                         b = 3
       
    34                     else:
       
    35                         c = 2
       
    36                 elif b == 3:
       
    37                     b = 2
       
    38                     a = 2
       
    39             elif a == 2:
       
    40                 a = 3
       
    41             else:
       
    42                 a = 1
       
    43 
       
    44             if a == 1:
       
    45                 if b == 2:
       
    46                     if c != 3:
       
    47                         c = 3
       
    48                         b = 3
       
    49                     else:
       
    50                         c = 2
       
    51                 elif b == 3:
       
    52                     b = 2
       
    53                     a = 2
       
    54             elif a == 2:
       
    55                 a = 3
       
    56             else:
       
    57                 a = 1
       
    58 
       
    59             if a == 1:
       
    60                 if b == 2:
       
    61                     if c != 3:
       
    62                         c = 3
       
    63                         b = 3
       
    64                     else:
       
    65                         c = 2
       
    66                 elif b == 3:
       
    67                     b = 2
       
    68                     a = 2
       
    69             elif a == 2:
       
    70                 a = 3
       
    71             else:
       
    72                 a = 1
       
    73 
       
    74             if a == 1:
       
    75                 if b == 2:
       
    76                     if c != 3:
       
    77                         c = 3
       
    78                         b = 3
       
    79                     else:
       
    80                         c = 2
       
    81                 elif b == 3:
       
    82                     b = 2
       
    83                     a = 2
       
    84             elif a == 2:
       
    85                 a = 3
       
    86             else:
       
    87                 a = 1
       
    88 
       
    89             if a == 1:
       
    90                 if b == 2:
       
    91                     if c != 3:
       
    92                         c = 3
       
    93                         b = 3
       
    94                     else:
       
    95                         c = 2
       
    96                 elif b == 3:
       
    97                     b = 2
       
    98                     a = 2
       
    99             elif a == 2:
       
   100                 a = 3
       
   101             else:
       
   102                 a = 1
       
   103 
       
   104             if a == 1:
       
   105                 if b == 2:
       
   106                     if c != 3:
       
   107                         c = 3
       
   108                         b = 3
       
   109                     else:
       
   110                         c = 2
       
   111                 elif b == 3:
       
   112                     b = 2
       
   113                     a = 2
       
   114             elif a == 2:
       
   115                 a = 3
       
   116             else:
       
   117                 a = 1
       
   118 
       
   119             if a == 1:
       
   120                 if b == 2:
       
   121                     if c != 3:
       
   122                         c = 3
       
   123                         b = 3
       
   124                     else:
       
   125                         c = 2
       
   126                 elif b == 3:
       
   127                     b = 2
       
   128                     a = 2
       
   129             elif a == 2:
       
   130                 a = 3
       
   131             else:
       
   132                 a = 1
       
   133 
       
   134             if a == 1:
       
   135                 if b == 2:
       
   136                     if c != 3:
       
   137                         c = 3
       
   138                         b = 3
       
   139                     else:
       
   140                         c = 2
       
   141                 elif b == 3:
       
   142                     b = 2
       
   143                     a = 2
       
   144             elif a == 2:
       
   145                 a = 3
       
   146             else:
       
   147                 a = 1
       
   148 
       
   149             if a == 1:
       
   150                 if b == 2:
       
   151                     if c != 3:
       
   152                         c = 3
       
   153                         b = 3
       
   154                     else:
       
   155                         c = 2
       
   156                 elif b == 3:
       
   157                     b = 2
       
   158                     a = 2
       
   159             elif a == 2:
       
   160                 a = 3
       
   161             else:
       
   162                 a = 1
       
   163 
       
   164             if a == 1:
       
   165                 if b == 2:
       
   166                     if c != 3:
       
   167                         c = 3
       
   168                         b = 3
       
   169                     else:
       
   170                         c = 2
       
   171                 elif b == 3:
       
   172                     b = 2
       
   173                     a = 2
       
   174             elif a == 2:
       
   175                 a = 3
       
   176             else:
       
   177                 a = 1
       
   178 
       
   179             if a == 1:
       
   180                 if b == 2:
       
   181                     if c != 3:
       
   182                         c = 3
       
   183                         b = 3
       
   184                     else:
       
   185                         c = 2
       
   186                 elif b == 3:
       
   187                     b = 2
       
   188                     a = 2
       
   189             elif a == 2:
       
   190                 a = 3
       
   191             else:
       
   192                 a = 1
       
   193 
       
   194             if a == 1:
       
   195                 if b == 2:
       
   196                     if c != 3:
       
   197                         c = 3
       
   198                         b = 3
       
   199                     else:
       
   200                         c = 2
       
   201                 elif b == 3:
       
   202                     b = 2
       
   203                     a = 2
       
   204             elif a == 2:
       
   205                 a = 3
       
   206             else:
       
   207                 a = 1
       
   208 
       
   209             if a == 1:
       
   210                 if b == 2:
       
   211                     if c != 3:
       
   212                         c = 3
       
   213                         b = 3
       
   214                     else:
       
   215                         c = 2
       
   216                 elif b == 3:
       
   217                     b = 2
       
   218                     a = 2
       
   219             elif a == 2:
       
   220                 a = 3
       
   221             else:
       
   222                 a = 1
       
   223 
       
   224             if a == 1:
       
   225                 if b == 2:
       
   226                     if c != 3:
       
   227                         c = 3
       
   228                         b = 3
       
   229                     else:
       
   230                         c = 2
       
   231                 elif b == 3:
       
   232                     b = 2
       
   233                     a = 2
       
   234             elif a == 2:
       
   235                 a = 3
       
   236             else:
       
   237                 a = 1
       
   238 
       
   239             if a == 1:
       
   240                 if b == 2:
       
   241                     if c != 3:
       
   242                         c = 3
       
   243                         b = 3
       
   244                     else:
       
   245                         c = 2
       
   246                 elif b == 3:
       
   247                     b = 2
       
   248                     a = 2
       
   249             elif a == 2:
       
   250                 a = 3
       
   251             else:
       
   252                 a = 1
       
   253 
       
   254             if a == 1:
       
   255                 if b == 2:
       
   256                     if c != 3:
       
   257                         c = 3
       
   258                         b = 3
       
   259                     else:
       
   260                         c = 2
       
   261                 elif b == 3:
       
   262                     b = 2
       
   263                     a = 2
       
   264             elif a == 2:
       
   265                 a = 3
       
   266             else:
       
   267                 a = 1
       
   268 
       
   269             if a == 1:
       
   270                 if b == 2:
       
   271                     if c != 3:
       
   272                         c = 3
       
   273                         b = 3
       
   274                     else:
       
   275                         c = 2
       
   276                 elif b == 3:
       
   277                     b = 2
       
   278                     a = 2
       
   279             elif a == 2:
       
   280                 a = 3
       
   281             else:
       
   282                 a = 1
       
   283 
       
   284             if a == 1:
       
   285                 if b == 2:
       
   286                     if c != 3:
       
   287                         c = 3
       
   288                         b = 3
       
   289                     else:
       
   290                         c = 2
       
   291                 elif b == 3:
       
   292                     b = 2
       
   293                     a = 2
       
   294             elif a == 2:
       
   295                 a = 3
       
   296             else:
       
   297                 a = 1
       
   298 
       
   299             if a == 1:
       
   300                 if b == 2:
       
   301                     if c != 3:
       
   302                         c = 3
       
   303                         b = 3
       
   304                     else:
       
   305                         c = 2
       
   306                 elif b == 3:
       
   307                     b = 2
       
   308                     a = 2
       
   309             elif a == 2:
       
   310                 a = 3
       
   311             else:
       
   312                 a = 1
       
   313 
       
   314             if a == 1:
       
   315                 if b == 2:
       
   316                     if c != 3:
       
   317                         c = 3
       
   318                         b = 3
       
   319                     else:
       
   320                         c = 2
       
   321                 elif b == 3:
       
   322                     b = 2
       
   323                     a = 2
       
   324             elif a == 2:
       
   325                 a = 3
       
   326             else:
       
   327                 a = 1
       
   328 
       
   329             if a == 1:
       
   330                 if b == 2:
       
   331                     if c != 3:
       
   332                         c = 3
       
   333                         b = 3
       
   334                     else:
       
   335                         c = 2
       
   336                 elif b == 3:
       
   337                     b = 2
       
   338                     a = 2
       
   339             elif a == 2:
       
   340                 a = 3
       
   341             else:
       
   342                 a = 1
       
   343 
       
   344             if a == 1:
       
   345                 if b == 2:
       
   346                     if c != 3:
       
   347                         c = 3
       
   348                         b = 3
       
   349                     else:
       
   350                         c = 2
       
   351                 elif b == 3:
       
   352                     b = 2
       
   353                     a = 2
       
   354             elif a == 2:
       
   355                 a = 3
       
   356             else:
       
   357                 a = 1
       
   358 
       
   359             if a == 1:
       
   360                 if b == 2:
       
   361                     if c != 3:
       
   362                         c = 3
       
   363                         b = 3
       
   364                     else:
       
   365                         c = 2
       
   366                 elif b == 3:
       
   367                     b = 2
       
   368                     a = 2
       
   369             elif a == 2:
       
   370                 a = 3
       
   371             else:
       
   372                 a = 1
       
   373 
       
   374             if a == 1:
       
   375                 if b == 2:
       
   376                     if c != 3:
       
   377                         c = 3
       
   378                         b = 3
       
   379                     else:
       
   380                         c = 2
       
   381                 elif b == 3:
       
   382                     b = 2
       
   383                     a = 2
       
   384             elif a == 2:
       
   385                 a = 3
       
   386             else:
       
   387                 a = 1
       
   388 
       
   389             if a == 1:
       
   390                 if b == 2:
       
   391                     if c != 3:
       
   392                         c = 3
       
   393                         b = 3
       
   394                     else:
       
   395                         c = 2
       
   396                 elif b == 3:
       
   397                     b = 2
       
   398                     a = 2
       
   399             elif a == 2:
       
   400                 a = 3
       
   401             else:
       
   402                 a = 1
       
   403 
       
   404             if a == 1:
       
   405                 if b == 2:
       
   406                     if c != 3:
       
   407                         c = 3
       
   408                         b = 3
       
   409                     else:
       
   410                         c = 2
       
   411                 elif b == 3:
       
   412                     b = 2
       
   413                     a = 2
       
   414             elif a == 2:
       
   415                 a = 3
       
   416             else:
       
   417                 a = 1
       
   418 
       
   419             if a == 1:
       
   420                 if b == 2:
       
   421                     if c != 3:
       
   422                         c = 3
       
   423                         b = 3
       
   424                     else:
       
   425                         c = 2
       
   426                 elif b == 3:
       
   427                     b = 2
       
   428                     a = 2
       
   429             elif a == 2:
       
   430                 a = 3
       
   431             else:
       
   432                 a = 1
       
   433 
       
   434             if a == 1:
       
   435                 if b == 2:
       
   436                     if c != 3:
       
   437                         c = 3
       
   438                         b = 3
       
   439                     else:
       
   440                         c = 2
       
   441                 elif b == 3:
       
   442                     b = 2
       
   443                     a = 2
       
   444             elif a == 2:
       
   445                 a = 3
       
   446             else:
       
   447                 a = 1
       
   448 
       
   449             if a == 1:
       
   450                 if b == 2:
       
   451                     if c != 3:
       
   452                         c = 3
       
   453                         b = 3
       
   454                     else:
       
   455                         c = 2
       
   456                 elif b == 3:
       
   457                     b = 2
       
   458                     a = 2
       
   459             elif a == 2:
       
   460                 a = 3
       
   461             else:
       
   462                 a = 1
       
   463 
       
   464     def calibrate(self):
       
   465 
       
   466         a,b,c = 1,2,3
       
   467         for i in xrange(self.rounds):
       
   468             pass
       
   469 
       
   470 class NestedForLoops(Test):
       
   471 
       
   472     version = 2.0
       
   473     operations = 1000*10*5
       
   474     rounds = 300
       
   475 
       
   476     def test(self):
       
   477 
       
   478         l1 = range(1000)
       
   479         l2 = range(10)
       
   480         l3 = range(5)
       
   481         for i in xrange(self.rounds):
       
   482             for i in l1:
       
   483                 for j in l2:
       
   484                     for k in l3:
       
   485                         pass
       
   486 
       
   487     def calibrate(self):
       
   488 
       
   489         l1 = range(1000)
       
   490         l2 = range(10)
       
   491         l3 = range(5)
       
   492         for i in xrange(self.rounds):
       
   493             pass
       
   494 
       
   495 class ForLoops(Test):
       
   496 
       
   497     version = 2.0
       
   498     operations = 5 * 5
       
   499     rounds = 10000
       
   500 
       
   501     def test(self):
       
   502 
       
   503         l1 = range(100)
       
   504         for i in xrange(self.rounds):
       
   505             for i in l1:
       
   506                 pass
       
   507             for i in l1:
       
   508                 pass
       
   509             for i in l1:
       
   510                 pass
       
   511             for i in l1:
       
   512                 pass
       
   513             for i in l1:
       
   514                 pass
       
   515 
       
   516             for i in l1:
       
   517                 pass
       
   518             for i in l1:
       
   519                 pass
       
   520             for i in l1:
       
   521                 pass
       
   522             for i in l1:
       
   523                 pass
       
   524             for i in l1:
       
   525                 pass
       
   526 
       
   527             for i in l1:
       
   528                 pass
       
   529             for i in l1:
       
   530                 pass
       
   531             for i in l1:
       
   532                 pass
       
   533             for i in l1:
       
   534                 pass
       
   535             for i in l1:
       
   536                 pass
       
   537 
       
   538             for i in l1:
       
   539                 pass
       
   540             for i in l1:
       
   541                 pass
       
   542             for i in l1:
       
   543                 pass
       
   544             for i in l1:
       
   545                 pass
       
   546             for i in l1:
       
   547                 pass
       
   548 
       
   549             for i in l1:
       
   550                 pass
       
   551             for i in l1:
       
   552                 pass
       
   553             for i in l1:
       
   554                 pass
       
   555             for i in l1:
       
   556                 pass
       
   557             for i in l1:
       
   558                 pass
       
   559 
       
   560     def calibrate(self):
       
   561 
       
   562         l1 = range(1000)
       
   563         for i in xrange(self.rounds):
       
   564             pass