TRACE32 Export

  1. Table of source files
  2. BookMarks
  3. COVerage.ListModule
  4. COVerage.ListFunc
  5. COVerage.ListLine
  6. COVerage.ListVar
  7. List

Table of source files

addresssource file
ST:00000400\\sieve\crt0\crt0.sx
SR:00000460\\sieve\isr\isr.c
ST:000004B0\\sieve\sieve\sieve.c

BookMarks

bookmarkaddresssymbolsource filelinecomment / justification
1C:000013D2\\sieve\sieve\main\47\\sieve\".\src\sieve.c"\sieve.c733j is never 0, seems to be useless code
nop1C:0000077Apadding NOP
bad1C:00001638\\sieve\sieve\background\\sieve\".\src\sieve.c"\sieve.c819never called => dead code
bad2C:00000ED8\\sieve\sieve\func27\\sieve\".\src\sieve.c"\sieve.c555never called => dead code

COVerage.ListModule

addresstreecoverageexecuted
0%50%100%
branchesoktakennot takennever bytes bytesok
P:0x400--0x45F\\sieve\crt0never0.000%
0.000%0004960
P:0x460--0x4AF\\sieve\isrnever0.000%
-000-800
P:0x4B0--0x167B\\sieve\sievepartial75.109%
78.125%47421145563422
P:0x400--0x167Btotalpartial72.316%
73.529%47421547323422

COVerage.ListFunc

addresstreecoverageexecuted
0%50%100%
branchesoktakennot takennever bytes bytesok
P:0x460--0x4AF\\sieve\isrnever0.000%
-000-800
P:0x460--0x487\\sieve\isr\exc_isrnever0.000%
-000-400
P:0x488--0x4AF\\sieve\isr\exc_snoopnever0.000%
-000-400
P:0x4B0--0x167B\\sieve\sievepartial75.109%
78.125%47421145563422
P:0x4B0--0x4BB\\sieve\sieve\func0never0.000%
-000-120
P:0x4BC--0x4D7\\sieve\sieve\func1ok100.000%
-000-2828
P:0x4D8--0x563\\sieve\sieve\func2partial88.571%
75.000%1100140124
P:0x564--0x5BF\\sieve\sieve\func2apartial97.826%
100.000%10009290
P:0x5C0--0x5FF\\sieve\sieve\func2bpartial96.875%
100.000%10006462
P:0x600--0x6BF\\sieve\sieve\func2cpartial96.875%
100.000%2000192186
P:0x6C0--0x71B\\sieve\sieve\func2dpartial97.826%
100.000%10009290
P:0x71C--0x72B\\sieve\sieve\func3ok100.000%
-000-1616
P:0x72C--0x779\\sieve\sieve\func4ok100.000%
-000-7878
P:0x77C--0x7A7\\sieve\sieve\func5ok100.000%
-000-4444
P:0x7A8--0x7F3\\sieve\sieve\func6partial100.000%
-000-7676
P:0x7F4--0x86B\\sieve\sieve\func7partial100.000%
-000-120120
P:0x86C--0xA2B\\sieve\sieve\func8partial99.553%
-000-448446
P:0xA2C--0xA87\\sieve\sieve\func9partial100.000%
100.000%20009292
P:0xA88--0xC27\\sieve\sieve\func10ok100.000%
100.000%33000416416
P:0xC28--0xC93\\sieve\sieve\func11partial40.740%
50.000%001010844
P:0xC94--0xCAB\\sieve\sieve\func12never0.000%
-000-240
P:0xCAC--0xD09\\sieve\sieve\func13ok100.000%
100.000%10009494
P:0xD0C--0xD29\\sieve\sieve\func14ok100.000%
-000-3030
P:0xD2C--0xD4B\\sieve\sieve\func15ok100.000%
-000-3232
P:0xD4C--0xD63\\sieve\sieve\func16ok100.000%
-000-2424
P:0xD64--0xD8F\\sieve\sieve\func17ok100.000%
-000-4444
P:0xD90--0xDB3\\sieve\sieve\func18ok100.000%
-000-3636
P:0xDB4--0xDD7\\sieve\sieve\func19ok100.000%
-000-3636
P:0xDD8--0xE0B\\sieve\sieve\func20ok100.000%
-000-5252
P:0xE0C--0xE39\\sieve\sieve\func21ok100.000%
-000-4646
P:0xE3C--0xE6B\\sieve\sieve\func22ok100.000%
-000-4848
P:0xE6C--0xE9D\\sieve\sieve\func23never0.000%
-000-500
P:0xEA0--0xEAF\\sieve\sieve\func24never0.000%
-000-160
P:0xEB0--0xEC3\\sieve\sieve\func25never0.000%
-000-200
P:0xEC4--0xED7\\sieve\sieve\func26never0.000%
-000-200
P:0xED8--0xF17\\sieve\sieve\func27never0.000%
-000-640
P:0xF18--0xF57\\sieve\sieve\test_cond_instrnever0.000%
0.000%0001640
P:0xF58--0x103B\\sieve\sieve\func_sinpartial97.368%
100.000%2000228222
P:0x103C--0x111F\\sieve\sieve\init_linked_listpartial100.000%
100.000%3000228228
P:0x1120--0x1167\\sieve\sieve\substnever0.000%
0.000%0001720
P:0x1168--0x120B\\sieve\sieve\encodenever0.000%
0.000%00031640
P:0x120C--0x126B\\sieve\sieve\func28never0.000%
-000-960
P:0x126C--0x15DF\\sieve\sieve\mainpartial69.909%
40.000%0311884618
P:0x15E0--0x1637\\sieve\sieve\sievenever0.000%
0.000%0004880
P:0x1638--0x167B\\sieve\sieve\backgroundnever0.000%
0.000%0001680
P:0x460--0x167Btotalpartial73.813%
78.125%47421146363422

COVerage.ListLine

addresstreecoverageexecuted
0%50%100%
branchesoktakennot takennever bytes bytesok
P:0x460--0x4AF\\sieve\isrnever0.000%
-000-800
P:0x460--0x487\\sieve\isr\exc_isrnever0.000%
-000-400
P:0x460--0x46Bisr.c \1--10never0.000%
-000-120
P:0x46C--0x46Fisr.c \11--11never0.000%
-000-40
P:0x470--0x47Bisr.c \12--12never0.000%
-000-120
P:0x47C--0x487isr.c \13--13never0.000%
-000-120
P:0x488--0x4AF\\sieve\isr\exc_snoopnever0.000%
-000-400
P:0x488--0x48Fisr.c \14--22never0.000%
-000-80
P:0x490--0x493isr.c \23--23never0.000%
-000-40
P:0x494--0x49Fisr.c \24--24never0.000%
-000-120
P:0x4A0--0x4AFisr.c \25--25never0.000%
-000-160
P:0x4B0--0x167B\\sieve\sievepartial75.109%
78.125%47421145563422
P:0x4B0--0x4BB\\sieve\sieve\func0never0.000%
-000-120
P:0x4B0--0x4B3sieve.c \1--144never0.000%
-000-40
P:0x4B4--0x4BBsieve.c \145--145never0.000%
-000-80
P:0x4BC--0x4D7\\sieve\sieve\func1ok100.000%
-000-2828
P:0x4BC--0x4C3sieve.c \146--148ok100.000%
-000-88
P:0x4C4--0x4CDsieve.c \149--149ok100.000%
-000-1010
P:0x4CE--0x4D7sieve.c \150--150ok100.000%
-000-1010
P:0x4D8--0x563\\sieve\sieve\func2partial88.571%
75.000%1100140124
P:0x4D8--0x4DDsieve.c \151--153ok100.000%
-000-66
P:0x4DE--0x4E3sieve.c \154--159ok100.000%
-000-66
P:0x4E4--0x4E9sieve.c \160--160ok100.000%
-000-66
P:0x4EA--0x4F1sieve.c \161--162ok100.000%
-000-88
P:0x4F2--0x4F9sieve.c \163--163ok100.000%
-000-88
P:0x4FA--0x4FDsieve.c \164--165ok100.000%
-000-44
P:0x4FE--0x50Dsieve.c \166--166ok100.000%
-000-1616
P:0x50E--0x513sieve.c \164--165ok100.000%
100.000%100066
P:0x514--0x521sieve.c \167--168ok100.000%
-000-1414
P:0x522--0x52Bsieve.c \169--169ok100.000%
-000-1010
P:0x52C--0x535sieve.c \170--171taken80.000%
50.000%0100108
P:0x536--0x53Dsieve.c \173--174never0.000%
-000-80
P:0x53E--0x541sieve.c \175--176never0.000%
-000-40
P:0x542--0x543sieve.c \172--172ok100.000%
-000-22
P:0x544--0x563sieve.c \177--177partial93.750%
-000-3230
P:0x564--0x5BF\\sieve\sieve\func2apartial97.826%
100.000%10009290
P:0x564--0x569sieve.c \178--180ok100.000%
-000-66
P:0x56A--0x577sieve.c \181--184ok100.000%
-000-1414
P:0x578--0x581sieve.c \185--185ok100.000%
-000-1010
P:0x582--0x585sieve.c \186--187ok100.000%
-000-44
P:0x586--0x5A1sieve.c \188--188ok100.000%
-000-2828
P:0x5A2--0x5ABsieve.c \186--187ok100.000%
100.000%10001010
P:0x5AC--0x5BFsieve.c \189--189partial90.000%
-000-2018
P:0x5C0--0x5FF\\sieve\sieve\func2bpartial96.875%
100.000%10006462
P:0x5C0--0x5C5sieve.c \190--192ok100.000%
-000-66
P:0x5C6--0x5CBsieve.c \193--196ok100.000%
-000-66
P:0x5CC--0x5D1sieve.c \197--197ok100.000%
-000-66
P:0x5D2--0x5D5sieve.c \198--199ok100.000%
-000-44
P:0x5D6--0x5E5sieve.c \200--200ok100.000%
-000-1616
P:0x5E6--0x5EBsieve.c \198--199ok100.000%
100.000%100066
P:0x5EC--0x5FFsieve.c \201--201partial90.000%
-000-2018
P:0x600--0x6BF\\sieve\sieve\func2cpartial96.875%
100.000%2000192186
P:0x600--0x605sieve.c \202--204ok100.000%
-000-66
P:0x606--0x61Bsieve.c \205--208ok100.000%
-000-2222
P:0x61C--0x62Fsieve.c \209--209ok100.000%
-000-2020
P:0x630--0x635sieve.c \210--211ok100.000%
-000-66
P:0x636--0x65Dsieve.c \212--212ok100.000%
-000-4040
P:0x65E--0x68Fsieve.c \210--211ok100.000%
100.000%20005050
P:0x690--0x6BFsieve.c \213--213partial87.500%
-000-4842
P:0x6C0--0x71B\\sieve\sieve\func2dpartial97.826%
100.000%10009290
P:0x6C0--0x6C5sieve.c \214--216ok100.000%
-000-66
P:0x6C6--0x6D3sieve.c \217--220ok100.000%
-000-1414
P:0x6D4--0x6DDsieve.c \221--221ok100.000%
-000-1010
P:0x6DE--0x6E1sieve.c \222--223ok100.000%
-000-44
P:0x6E2--0x6F7sieve.c \224--224ok100.000%
-000-2222
P:0x6F8--0x707sieve.c \222--223ok100.000%
100.000%10001616
P:0x708--0x71Bsieve.c \225--225partial90.000%
-000-2018
P:0x71C--0x72B\\sieve\sieve\func3ok100.000%
-000-1616
P:0x71C--0x71Fsieve.c \226--229ok100.000%
-000-44
P:0x720--0x721sieve.c \230--230ok100.000%
-000-22
P:0x722--0x72Bsieve.c \231--231ok100.000%
-000-1010
P:0x72C--0x779\\sieve\sieve\func4ok100.000%
-000-7878
P:0x72C--0x743sieve.c \232--234ok100.000%
-000-2424
P:0x744--0x759sieve.c \235--235ok100.000%
-000-2222
P:0x75A--0x76Bsieve.c \236--237ok100.000%
-000-1818
P:0x76C--0x77Bsieve.c \238--238partial87.500%
-000-1614
P:0x77C--0x7A7\\sieve\sieve\func5ok100.000%
-000-4444
P:0x77C--0x78Dsieve.c \239--241ok100.000%
-000-1818
P:0x78E--0x79Bsieve.c \242--242ok100.000%
-000-1414
P:0x79C--0x7A7sieve.c \243--243ok100.000%
-000-1212
P:0x7A8--0x7F3\\sieve\sieve\func6partial100.000%
-000-7676
P:0x7A8--0x7B1sieve.c \244--246ok100.000%
-000-1010
P:0x7B2--0x7B7sieve.c \247--247ok100.000%
-000-66
P:0x7B8--0x7BDsieve.c \248--248ok100.000%
-000-66
P:0x7BE--0x7C3sieve.c \249--249ok100.000%
-000-66
P:0x7C4--0x7C9sieve.c \250--250ok100.000%
-000-66
P:0x7CA--0x7D3sieve.c \251--252ok100.000%
-000-1010
P:0x7D4--0x7F3sieve.c \253--253partial100.000%
-000-3232
P:0x7F4--0x86B\\sieve\sieve\func7partial100.000%
-000-120120
P:0x7F4--0x801sieve.c \254--256ok100.000%
-000-1414
P:0x802--0x80Bsieve.c \257--257ok100.000%
-000-1010
P:0x80C--0x815sieve.c \258--258ok100.000%
-000-1010
P:0x816--0x81Fsieve.c \259--259ok100.000%
-000-1010
P:0x820--0x829sieve.c \260--260ok100.000%
-000-1010
P:0x82A--0x839sieve.c \261--262ok100.000%
-000-1616
P:0x83A--0x86Bsieve.c \263--263partial100.000%
-000-5050
P:0x86C--0xA2B\\sieve\sieve\func8partial99.553%
-000-448446
P:0x86C--0x86Fsieve.c \264--290ok100.000%
-000-44
P:0x870--0x879sieve.c \291--291ok100.000%
-000-1010
P:0x87A--0x887sieve.c \292--292ok100.000%
-000-1414
P:0x888--0x895sieve.c \293--293ok100.000%
-000-1414
P:0x896--0x8A3sieve.c \294--294ok100.000%
-000-1414
P:0x8A4--0x8B3sieve.c \295--295ok100.000%
-000-1616
P:0x8B4--0x8C1sieve.c \296--296ok100.000%
-000-1414
P:0x8C2--0x8CDsieve.c \297--297ok100.000%
-000-1212
P:0x8CE--0x8DBsieve.c \298--298ok100.000%
-000-1414
P:0x8DC--0x8E7sieve.c \299--299ok100.000%
-000-1212
P:0x8E8--0x8F5sieve.c \300--300ok100.000%
-000-1414
P:0x8F6--0x8FFsieve.c \301--301ok100.000%
-000-1010
P:0x900--0x90Dsieve.c \302--302ok100.000%
-000-1414
P:0x90E--0x91Bsieve.c \303--303ok100.000%
-000-1414
P:0x91C--0x921sieve.c \304--304ok100.000%
-000-66
P:0x922--0x927sieve.c \305--305ok100.000%
-000-66
P:0x928--0x937sieve.c \306--306ok100.000%
-000-1616
P:0x938--0x945sieve.c \307--307ok100.000%
-000-1414
P:0x946--0x94Fsieve.c \308--308ok100.000%
-000-1010
P:0x950--0x959sieve.c \309--310ok100.000%
-000-1010
P:0x95A--0x963sieve.c \311--311ok100.000%
-000-1010
P:0x964--0x96Dsieve.c \312--312ok100.000%
-000-1010
P:0x96E--0x979sieve.c \313--313ok100.000%
-000-1212
P:0x97A--0x985sieve.c \314--314ok100.000%
-000-1212
P:0x986--0x98Fsieve.c \315--315ok100.000%
-000-1010
P:0x990--0x99Bsieve.c \316--316ok100.000%
-000-1212
P:0x99C--0x9A5sieve.c \317--317ok100.000%
-000-1010
P:0x9A6--0x9B1sieve.c \318--318ok100.000%
-000-1212
P:0x9B2--0x9BDsieve.c \319--319ok100.000%
-000-1212
P:0x9BE--0x9C7sieve.c \320--320ok100.000%
-000-1010
P:0x9C8--0x9D1sieve.c \321--321ok100.000%
-000-1010
P:0x9D2--0x9DDsieve.c \322--322ok100.000%
-000-1212
P:0x9DE--0x9E5sieve.c \323--323ok100.000%
-000-88
P:0x9E6--0x9EBsieve.c \324--324ok100.000%
-000-66
P:0x9EC--0x9F5sieve.c \325--325ok100.000%
-000-1010
P:0x9F6--0x9FFsieve.c \326--326ok100.000%
-000-1010
P:0xA00--0xA09sieve.c \327--327ok100.000%
-000-1010
P:0xA0A--0xA2Bsieve.c \328--328partial94.117%
-000-3432
P:0xA2C--0xA87\\sieve\sieve\func9partial100.000%
100.000%20009292
P:0xA2C--0xA31sieve.c \329--331ok100.000%
-000-66
P:0xA32--0xA37sieve.c \332--336ok100.000%
-000-66
P:0xA38--0xA3Bsieve.c \337--338ok100.000%
-000-44
P:0xA3C--0xA41sieve.c \339--344ok100.000%
-000-66
P:0xA42--0xA45sieve.c \345--346ok100.000%
-000-44
P:0xA46--0xA4Dsieve.c \347--348ok100.000%
-000-88
P:0xA4E--0xA55sieve.c \349--349ok100.000%
-000-88
P:0xA56--0xA5Dsieve.c \350--350ok100.000%
-000-88
P:0xA5E--0xA65sieve.c \351--351ok100.000%
-000-88
P:0xA66--0xA6Bsieve.c \345--346ok100.000%
100.000%100066
P:0xA6C--0xA71sieve.c \337--338ok100.000%
100.000%100066
P:0xA72--0xA73sieve.c \352--355ok100.000%
-000-22
P:0xA74--0xA87sieve.c \356--356partial100.000%
-000-2020
P:0xA88--0xC27\\sieve\sieve\func10ok100.000%
100.000%33000416416
P:0xA88--0xA8Bsieve.c \357--359ok100.000%
-000-44
P:0xA8C--0xA8Dsieve.c \360--364ok100.000%
-000-22
P:0xA8E--0xA91sieve.c \365--365ok100.000%
-000-44
P:0xA92--0xA93sieve.c \366--366ok100.000%
-000-22
P:0xA94--0xA99sieve.c \365--365ok100.000%
100.000%100066
P:0xA9A--0xA9Dsieve.c \367--368ok100.000%
-000-44
P:0xA9E--0xA9Fsieve.c \369--369ok100.000%
-000-22
P:0xAA0--0xAA5sieve.c \367--368ok100.000%
100.000%100066
P:0xAA6--0xAA9sieve.c \370--370ok100.000%
-000-44
P:0xAAA--0xAABsieve.c \371--371ok100.000%
-000-22
P:0xAAC--0xAB1sieve.c \370--370ok100.000%
100.000%100066
P:0xAB2--0xAB5sieve.c \372--372ok100.000%
-000-44
P:0xAB6--0xAB7sieve.c \373--373ok100.000%
-000-22
P:0xAB8--0xABDsieve.c \372--372ok100.000%
100.000%100066
P:0xABE--0xAC1sieve.c \374--374ok100.000%
-000-44
P:0xAC2--0xAC3sieve.c \375--375ok100.000%
-000-22
P:0xAC4--0xAC9sieve.c \374--374ok100.000%
100.000%100066
P:0xACA--0xACDsieve.c \376--376ok100.000%
-000-44
P:0xACE--0xACFsieve.c \377--377ok100.000%
-000-22
P:0xAD0--0xAD5sieve.c \376--376ok100.000%
100.000%100066
P:0xAD6--0xAD9sieve.c \378--378ok100.000%
-000-44
P:0xADA--0xADBsieve.c \379--379ok100.000%
-000-22
P:0xADC--0xAE1sieve.c \378--378ok100.000%
100.000%100066
P:0xAE2--0xAE5sieve.c \380--380ok100.000%
-000-44
P:0xAE6--0xAE7sieve.c \381--381ok100.000%
-000-22
P:0xAE8--0xAEDsieve.c \380--380ok100.000%
100.000%100066
P:0xAEE--0xAF1sieve.c \382--382ok100.000%
-000-44
P:0xAF2--0xAF3sieve.c \383--383ok100.000%
-000-22
P:0xAF4--0xAF9sieve.c \382--382ok100.000%
100.000%100066
P:0xAFA--0xAFDsieve.c \384--384ok100.000%
-000-44
P:0xAFE--0xAFFsieve.c \385--385ok100.000%
-000-22
P:0xB00--0xB05sieve.c \384--384ok100.000%
100.000%100066
P:0xB06--0xB09sieve.c \386--386ok100.000%
-000-44
P:0xB0A--0xB0Bsieve.c \387--387ok100.000%
-000-22
P:0xB0C--0xB11sieve.c \386--386ok100.000%
100.000%100066
P:0xB12--0xB15sieve.c \388--388ok100.000%
-000-44
P:0xB16--0xB17sieve.c \389--389ok100.000%
-000-22
P:0xB18--0xB1Dsieve.c \388--388ok100.000%
100.000%100066
P:0xB1E--0xB21sieve.c \390--390ok100.000%
-000-44
P:0xB22--0xB23sieve.c \391--391ok100.000%
-000-22
P:0xB24--0xB29sieve.c \390--390ok100.000%
100.000%100066
P:0xB2A--0xB2Dsieve.c \392--392ok100.000%
-000-44
P:0xB2E--0xB2Fsieve.c \393--393ok100.000%
-000-22
P:0xB30--0xB35sieve.c \392--392ok100.000%
100.000%100066
P:0xB36--0xB39sieve.c \394--394ok100.000%
-000-44
P:0xB3A--0xB3Bsieve.c \395--395ok100.000%
-000-22
P:0xB3C--0xB41sieve.c \394--394ok100.000%
100.000%100066
P:0xB42--0xB45sieve.c \396--396ok100.000%
-000-44
P:0xB46--0xB47sieve.c \397--397ok100.000%
-000-22
P:0xB48--0xB4Dsieve.c \396--396ok100.000%
100.000%100066
P:0xB4E--0xB51sieve.c \398--398ok100.000%
-000-44
P:0xB52--0xB53sieve.c \399--399ok100.000%
-000-22
P:0xB54--0xB59sieve.c \398--398ok100.000%
100.000%100066
P:0xB5A--0xB5Bsieve.c \400--401ok100.000%
-000-22
P:0xB5C--0xB5Fsieve.c \402--403ok100.000%
-000-44
P:0xB60--0xB61sieve.c \404--404ok100.000%
-000-22
P:0xB62--0xB67sieve.c \402--403ok100.000%
100.000%100066
P:0xB68--0xB6Bsieve.c \405--405ok100.000%
-000-44
P:0xB6C--0xB6Dsieve.c \406--406ok100.000%
-000-22
P:0xB6E--0xB73sieve.c \405--405ok100.000%
100.000%100066
P:0xB74--0xB77sieve.c \407--407ok100.000%
-000-44
P:0xB78--0xB79sieve.c \408--408ok100.000%
-000-22
P:0xB7A--0xB7Fsieve.c \407--407ok100.000%
100.000%100066
P:0xB80--0xB83sieve.c \409--409ok100.000%
-000-44
P:0xB84--0xB85sieve.c \410--410ok100.000%
-000-22
P:0xB86--0xB8Bsieve.c \409--409ok100.000%
100.000%100066
P:0xB8C--0xB8Fsieve.c \411--411ok100.000%
-000-44
P:0xB90--0xB91sieve.c \412--412ok100.000%
-000-22
P:0xB92--0xB97sieve.c \411--411ok100.000%
100.000%100066
P:0xB98--0xB9Bsieve.c \413--413ok100.000%
-000-44
P:0xB9C--0xB9Dsieve.c \414--414ok100.000%
-000-22
P:0xB9E--0xBA3sieve.c \413--413ok100.000%
100.000%100066
P:0xBA4--0xBA7sieve.c \415--415ok100.000%
-000-44
P:0xBA8--0xBA9sieve.c \416--416ok100.000%
-000-22
P:0xBAA--0xBAFsieve.c \415--415ok100.000%
100.000%100066
P:0xBB0--0xBB3sieve.c \417--417ok100.000%
-000-44
P:0xBB4--0xBB5sieve.c \418--418ok100.000%
-000-22
P:0xBB6--0xBBBsieve.c \417--417ok100.000%
100.000%100066
P:0xBBC--0xBBFsieve.c \419--419ok100.000%
-000-44
P:0xBC0--0xBC1sieve.c \420--420ok100.000%
-000-22
P:0xBC2--0xBC7sieve.c \419--419ok100.000%
100.000%100066
P:0xBC8--0xBCBsieve.c \421--421ok100.000%
-000-44
P:0xBCC--0xBCDsieve.c \422--422ok100.000%
-000-22
P:0xBCE--0xBD3sieve.c \421--421ok100.000%
100.000%100066
P:0xBD4--0xBD7sieve.c \423--423ok100.000%
-000-44
P:0xBD8--0xBD9sieve.c \424--424ok100.000%
-000-22
P:0xBDA--0xBDFsieve.c \423--423ok100.000%
100.000%100066
P:0xBE0--0xBE3sieve.c \425--425ok100.000%
-000-44
P:0xBE4--0xBE5sieve.c \426--426ok100.000%
-000-22
P:0xBE6--0xBEBsieve.c \425--425ok100.000%
100.000%100066
P:0xBEC--0xBEFsieve.c \427--427ok100.000%
-000-44
P:0xBF0--0xBF1sieve.c \428--428ok100.000%
-000-22
P:0xBF2--0xBF7sieve.c \427--427ok100.000%
100.000%100066
P:0xBF8--0xBFBsieve.c \429--429ok100.000%
-000-44
P:0xBFC--0xBFDsieve.c \430--430ok100.000%
-000-22
P:0xBFE--0xC03sieve.c \429--429ok100.000%
100.000%100066
P:0xC04--0xC07sieve.c \431--431ok100.000%
-000-44
P:0xC08--0xC09sieve.c \432--432ok100.000%
-000-22
P:0xC0A--0xC0Fsieve.c \431--431ok100.000%
100.000%100066
P:0xC10--0xC13sieve.c \433--433ok100.000%
-000-44
P:0xC14--0xC15sieve.c \434--434ok100.000%
-000-22
P:0xC16--0xC1Bsieve.c \433--433ok100.000%
100.000%100066
P:0xC1C--0xC1Dsieve.c \435--436ok100.000%
-000-22
P:0xC1E--0xC27sieve.c \437--437ok100.000%
-000-1010
P:0xC28--0xC93\\sieve\sieve\func11partial40.740%
50.000%001010844
P:0xC28--0xC2Fsieve.c \438--440ok100.000%
-000-88
P:0xC30--0xC41sieve.c \441--441not taken88.888%
50.000%00101816
P:0xC42--0xC47sieve.c \442--444never0.000%
-000-60
P:0xC48--0xC4Dsieve.c \445--445never0.000%
-000-60
P:0xC4E--0xC55sieve.c \446--446never0.000%
-000-80
P:0xC56--0xC5Dsieve.c \447--448never0.000%
-000-80
P:0xC5E--0xC61sieve.c \449--450never0.000%
-000-40
P:0xC62--0xC67sieve.c \451--452never0.000%
-000-60
P:0xC68--0xC6Dsieve.c \453--453never0.000%
-000-60
P:0xC6E--0xC75sieve.c \454--454never0.000%
-000-80
P:0xC76--0xC7Dsieve.c \455--458never0.000%
-000-80
P:0xC7E--0xC7Fsieve.c \459--460ok100.000%
-000-22
P:0xC80--0xC81sieve.c \461--462ok100.000%
-000-22
P:0xC82--0xC93sieve.c \463--463partial88.888%
-000-1816
P:0xC94--0xCAB\\sieve\sieve\func12never0.000%
-000-240
P:0xC94--0xC9Bsieve.c \464--469never0.000%
-000-80
P:0xC9C--0xCA1sieve.c \470--470never0.000%
-000-60
P:0xCA2--0xCABsieve.c \471--471never0.000%
-000-100
P:0xCAC--0xD09\\sieve\sieve\func13ok100.000%
100.000%10009494
P:0xCAC--0xCB7sieve.c \472--474ok100.000%
-000-1212
P:0xCB8--0xCC3sieve.c \475--477ok100.000%
-000-1212
P:0xCC4--0xCCBsieve.c \478--478ok100.000%
-000-88
P:0xCCC--0xCD3sieve.c \479--479ok100.000%
-000-88
P:0xCD4--0xCD9sieve.c \480--481ok100.000%
100.000%100066
P:0xCDA--0xCF3sieve.c \482--482ok100.000%
-000-2626
P:0xCF4--0xCFDsieve.c \483--484ok100.000%
-000-1010
P:0xCFE--0xD0Bsieve.c \485--485partial85.714%
-000-1412
P:0xD0C--0xD29\\sieve\sieve\func14ok100.000%
-000-3030
P:0xD0C--0xD17sieve.c \486--488ok100.000%
-000-1212
P:0xD18--0xD1Dsieve.c \489--489ok100.000%
-000-66
P:0xD1E--0xD2Bsieve.c \490--490partial85.714%
-000-1412
P:0xD2C--0xD4B\\sieve\sieve\func15ok100.000%
-000-3232
P:0xD2C--0xD37sieve.c \491--493ok100.000%
-000-1212
P:0xD38--0xD3Fsieve.c \494--494ok100.000%
-000-88
P:0xD40--0xD4Bsieve.c \495--495ok100.000%
-000-1212
P:0xD4C--0xD63\\sieve\sieve\func16ok100.000%
-000-2424
P:0xD4C--0xD53sieve.c \496--498ok100.000%
-000-88
P:0xD54--0xD57sieve.c \499--499ok100.000%
-000-44
P:0xD58--0xD63sieve.c \500--500ok100.000%
-000-1212
P:0xD64--0xD8F\\sieve\sieve\func17ok100.000%
-000-4444
P:0xD64--0xD75sieve.c \501--503ok100.000%
-000-1818
P:0xD76--0xD83sieve.c \504--504ok100.000%
-000-1414
P:0xD84--0xD8Fsieve.c \505--505ok100.000%
-000-1212
P:0xD90--0xDB3\\sieve\sieve\func18ok100.000%
-000-3636
P:0xD90--0xD9Dsieve.c \506--508ok100.000%
-000-1414
P:0xD9E--0xDA7sieve.c \509--509ok100.000%
-000-1010
P:0xDA8--0xDB3sieve.c \510--510ok100.000%
-000-1212
P:0xDB4--0xDD7\\sieve\sieve\func19ok100.000%
-000-3636
P:0xDB4--0xDC1sieve.c \511--513ok100.000%
-000-1414
P:0xDC2--0xDCBsieve.c \514--514ok100.000%
-000-1010
P:0xDCC--0xDD7sieve.c \515--515ok100.000%
-000-1212
P:0xDD8--0xE0B\\sieve\sieve\func20ok100.000%
-000-5252
P:0xDD8--0xDE9sieve.c \516--518ok100.000%
-000-1818
P:0xDEA--0xDFFsieve.c \519--519ok100.000%
-000-2222
P:0xE00--0xE0Bsieve.c \520--520ok100.000%
-000-1212
P:0xE0C--0xE39\\sieve\sieve\func21ok100.000%
-000-4646
P:0xE0C--0xE1Bsieve.c \521--523ok100.000%
-000-1616
P:0xE1C--0xE2Dsieve.c \524--524ok100.000%
-000-1818
P:0xE2E--0xE3Bsieve.c \525--525partial85.714%
-000-1412
P:0xE3C--0xE6B\\sieve\sieve\func22ok100.000%
-000-4848
P:0xE3C--0xE4Dsieve.c \526--528ok100.000%
-000-1818
P:0xE4E--0xE5Fsieve.c \529--529ok100.000%
-000-1818
P:0xE60--0xE6Bsieve.c \530--530ok100.000%
-000-1212
P:0xE6C--0xE9D\\sieve\sieve\func23never0.000%
-000-500
P:0xE6C--0xE7Fsieve.c \531--533never0.000%
-000-200
P:0xE80--0xE91sieve.c \534--534never0.000%
-000-180
P:0xE92--0xE9Fsieve.c \535--535never0.000%
-000-140
P:0xEA0--0xEAF\\sieve\sieve\func24never0.000%
-000-160
P:0xEA0--0xEA3sieve.c \536--538never0.000%
-000-40
P:0xEA4--0xEA5sieve.c \539--539never0.000%
-000-20
P:0xEA6--0xEAFsieve.c \540--540never0.000%
-000-100
P:0xEB0--0xEC3\\sieve\sieve\func25never0.000%
-000-200
P:0xEB0--0xEB3sieve.c \541--543never0.000%
-000-40
P:0xEB4--0xEB5sieve.c \544--544never0.000%
-000-20
P:0xEB6--0xEC3sieve.c \545--545never0.000%
-000-140
P:0xEC4--0xED7\\sieve\sieve\func26never0.000%
-000-200
P:0xEC4--0xEC7sieve.c \546--548never0.000%
-000-40
P:0xEC8--0xEC9sieve.c \549--551never0.000%
-000-20
P:0xECA--0xED7sieve.c \552--552never0.000%
-000-140
P:0xED8--0xF17\\sieve\sieve\func27never0.000%
-000-640
P:0xED8--0xEE7sieve.c \553--555never0.000%
-000-160
P:0xEE8--0xEF9sieve.c \556--556never0.000%
-000-180
P:0xEFA--0xF05sieve.c \557--558never0.000%
-000-120
P:0xF06--0xF17sieve.c \559--559never0.000%
-000-180
P:0xF18--0xF57\\sieve\sieve\test_cond_instrnever0.000%
0.000%0001640
P:0xF18--0xF21sieve.c \560--567never0.000%
-000-100
P:0xF22--0xF29sieve.c \568--580never0.000%
-000-80
P:0xF2A--0xF2Fsieve.c \581--581never0.000%
0.000%000160
P:0xF30--0xF37sieve.c \582--582never0.000%
-000-80
P:0xF38--0xF3Dsieve.c \583--583never0.000%
-000-60
P:0xF3E--0xF45sieve.c \584--584never0.000%
-000-80
P:0xF46--0xF49sieve.c \585--586never0.000%
-000-40
P:0xF4A--0xF4Bsieve.c \587--589never0.000%
-000-20
P:0xF4C--0xF57sieve.c \590--590never0.000%
-000-120
P:0xF58--0x103B\\sieve\sieve\func_sinpartial97.368%
100.000%2000228222
P:0xF58--0xF5Dsieve.c \591--596ok100.000%
-000-66
P:0xF5E--0xF61sieve.c \597--600ok100.000%
-000-44
P:0xF62--0xF6Bsieve.c \601--601ok100.000%
-000-1010
P:0xF6C--0xFCDsieve.c \602--602ok100.000%
-000-9898
P:0xFCE--0xFFFsieve.c \601--601ok100.000%
100.000%20005050
P:0x1000--0x103Bsieve.c \603--603partial90.000%
-000-6054
P:0x103C--0x111F\\sieve\sieve\init_linked_listpartial100.000%
100.000%3000228228
P:0x103C--0x1041sieve.c \604--606ok100.000%
-000-66
P:0x1042--0x1045sieve.c \607--607ok100.000%
-000-44
P:0x1046--0x1049sieve.c \608--608ok100.000%
-000-44
P:0x104A--0x104Fsieve.c \609--611ok100.000%
-000-66
P:0x1050--0x1055sieve.c \612--612ok100.000%
-000-66
P:0x1056--0x105Bsieve.c \613--613ok100.000%
-000-66
P:0x105C--0x1061sieve.c \614--614ok100.000%
-000-66
P:0x1062--0x1067sieve.c \615--616ok100.000%
-000-66
P:0x1068--0x1097sieve.c \617--617ok100.000%
100.000%10004848
P:0x1098--0x10C5sieve.c \618--618ok100.000%
100.000%10004646
P:0x10C6--0x10D9sieve.c \619--619ok100.000%
-000-2020
P:0x10DA--0x10FBsieve.c \620--620ok100.000%
-000-3434
P:0x10FC--0x1109sieve.c \615--616ok100.000%
100.000%10001414
P:0x110A--0x111Fsieve.c \621--622partial100.000%
-000-2222
P:0x1120--0x1167\\sieve\sieve\substnever0.000%
0.000%0001720
P:0x1120--0x112Bsieve.c \623--625never0.000%
-000-120
P:0x112C--0x113Fsieve.c \626--626never0.000%
0.000%0001200
P:0x1140--0x1143sieve.c \627--628never0.000%
-000-40
P:0x1144--0x1147sieve.c \629--630never0.000%
-000-40
P:0x1148--0x114Bsieve.c \631--632never0.000%
-000-40
P:0x114C--0x114Fsieve.c \633--634never0.000%
-000-40
P:0x1150--0x1153sieve.c \635--636never0.000%
-000-40
P:0x1154--0x1157sieve.c \637--638never0.000%
-000-40
P:0x1158--0x1167sieve.c \639--639never0.000%
-000-160
P:0x1168--0x120B\\sieve\sieve\encodenever0.000%
0.000%00031640
P:0x1168--0x116Fsieve.c \640--642never0.000%
-000-80
P:0x1170--0x1175sieve.c \643--645never0.000%
-000-60
P:0x1176--0x1183sieve.c \646--646never0.000%
-000-140
P:0x1184--0x1197sieve.c \647--647never0.000%
0.000%0002200
P:0x1198--0x11A5sieve.c \648--648never0.000%
-000-140
P:0x11A6--0x11B9sieve.c \649--649never0.000%
-000-200
P:0x11BA--0x11C9sieve.c \650--650never0.000%
-000-160
P:0x11CA--0x11DDsieve.c \651--652never0.000%
-000-200
P:0x11DE--0x11EBsieve.c \653--654never0.000%
-000-140
P:0x11EC--0x11FDsieve.c \643--645never0.000%
0.000%0001180
P:0x11FE--0x11FFsieve.c \655--656never0.000%
-000-20
P:0x1200--0x120Bsieve.c \657--657never0.000%
-000-120
P:0x120C--0x126B\\sieve\sieve\func28never0.000%
-000-960
P:0x120C--0x1215sieve.c \658--669never0.000%
-000-100
P:0x1216--0x1223sieve.c \670--670never0.000%
-000-140
P:0x1224--0x1239sieve.c \671--671never0.000%
-000-220
P:0x123A--0x125Fsieve.c \672--672never0.000%
-000-380
P:0x1260--0x126Bsieve.c \673--673never0.000%
-000-120
P:0x126C--0x15DF\\sieve\sieve\mainpartial69.909%
40.000%0311884618
P:0x126C--0x1271sieve.c \674--686ok100.000%
-000-66
P:0x1272--0x1275sieve.c \687--691ok100.000%
-000-44
P:0x1276--0x127Dsieve.c \692--694taken75.000%
50.000%010086
P:0x127E--0x1285sieve.c \695--695never0.000%
-000-80
P:0x1286--0x128Bsieve.c \696--697ok100.000%
-000-66
P:0x128C--0x1291sieve.c \698--698ok100.000%
-000-66
P:0x1292--0x129Bsieve.c \699--699ok100.000%
-000-1010
P:0x129C--0x12B1sieve.c \700--701ok100.000%
-000-2222
P:0x12B2--0x12E1sieve.c \702--702partial79.166%
50.000%02004838
P:0x12E2--0x1309sieve.c \703--703ok100.000%
-000-4040
P:0x130A--0x131Fsieve.c \704--704ok100.000%
-000-2222
P:0x1320--0x1325sieve.c \705--706ok100.000%
-000-66
P:0x1326--0x132Bsieve.c \707--707ok100.000%
-000-66
P:0x132C--0x1331sieve.c \708--708ok100.000%
-000-66
P:0x1332--0x1337sieve.c \709--709ok100.000%
-000-66
P:0x1338--0x133Bsieve.c \710--711ok100.000%
-000-44
P:0x133C--0x133Fsieve.c \712--712ok100.000%
-000-44
P:0x1340--0x1343sieve.c \713--713ok100.000%
-000-44
P:0x1344--0x1347sieve.c \714--714ok100.000%
-000-44
P:0x1348--0x134Bsieve.c \715--715ok100.000%
-000-44
P:0x134C--0x1351sieve.c \716--717ok100.000%
-000-66
P:0x1352--0x1357sieve.c \718--718ok100.000%
-000-66
P:0x1358--0x135Bsieve.c \719--720ok100.000%
-000-44
P:0x135C--0x1361sieve.c \721--721ok100.000%
-000-66
P:0x1362--0x138Fsieve.c \722--722ok100.000%
-000-4646
P:0x1390--0x139Dsieve.c \723--723ok100.000%
-000-1414
P:0x139E--0x13C3sieve.c \724--725ok100.000%
-000-3838
P:0x13C4--0x13D1sieve.c \726--727ok100.000%
-000-1414
P:0x13D2--0x13D3sieve.c \733--733never0.000%
-000-20
P:0x13D4--0x13E3sieve.c \728--730ok100.000%
-000-1616
P:0x13E4--0x13E9sieve.c \731--732not taken66.666%
50.000%001064
P:0x13EA--0x13EFsieve.c \734--735ok100.000%
-000-66
P:0x13F0--0x13F5sieve.c \736--737ok100.000%
-000-66
P:0x13F6--0x1403sieve.c \738--738ok100.000%
-000-1414
P:0x1404--0x140Dsieve.c \739--739ok100.000%
-000-1010
P:0x140E--0x1423sieve.c \740--740ok100.000%
-000-2222
P:0x1424--0x1427sieve.c \741--742ok100.000%
-000-44
P:0x1428--0x142Bsieve.c \743--743ok100.000%
-000-44
P:0x142C--0x142Fsieve.c \744--744ok100.000%
-000-44
P:0x1430--0x1435sieve.c \745--745ok100.000%
-000-66
P:0x1436--0x143Fsieve.c \746--746ok100.000%
-000-1010
P:0x1440--0x1445sieve.c \747--747ok100.000%
-000-66
P:0x1446--0x144Bsieve.c \748--748ok100.000%
-000-66
P:0x144C--0x1451sieve.c \749--749ok100.000%
-000-66
P:0x1452--0x1459sieve.c \750--750ok100.000%
-000-88
P:0x145A--0x1461sieve.c \751--751ok100.000%
-000-88
P:0x1462--0x1469sieve.c \752--752ok100.000%
-000-88
P:0x146A--0x1473sieve.c \753--753ok100.000%
-000-1010
P:0x1474--0x147Dsieve.c \754--754ok100.000%
-000-1010
P:0x147E--0x1487sieve.c \755--755ok100.000%
-000-1010
P:0x1488--0x1491sieve.c \756--756ok100.000%
-000-1010
P:0x1492--0x1499sieve.c \757--758never0.000%
-000-80
P:0x149A--0x14A3sieve.c \759--759never0.000%
-000-100
P:0x14A4--0x14ABsieve.c \760--760never0.000%
-000-80
P:0x14AC--0x14C9sieve.c \761--761never0.000%
-000-300
P:0x14CA--0x14D1sieve.c \762--763never0.000%
-000-80
P:0x14D2--0x14D5sieve.c \764--764never0.000%
-000-40
P:0x14D6--0x14E3sieve.c \765--766never0.000%
-000-140
P:0x14E4--0x14F1sieve.c \767--767never0.000%
-000-140
P:0x14F2--0x14F7sieve.c \768--769never0.000%
-000-60
P:0x14F8--0x14FDsieve.c \770--770never0.000%
-000-60
P:0x14FE--0x1503sieve.c \771--771never0.000%
-000-60
P:0x1504--0x150Bsieve.c \772--772never0.000%
-000-80
P:0x150C--0x1511sieve.c \773--773never0.000%
-000-60
P:0x1512--0x1517sieve.c \774--774never0.000%
-000-60
P:0x1518--0x151Dsieve.c \775--775never0.000%
-000-60
P:0x151E--0x1523sieve.c \776--776never0.000%
-000-60
P:0x1524--0x1529sieve.c \777--777never0.000%
-000-60
P:0x152A--0x152Fsieve.c \778--778never0.000%
-000-60
P:0x1530--0x1535sieve.c \779--779never0.000%
-000-60
P:0x1536--0x153Bsieve.c \780--780never0.000%
-000-60
P:0x153C--0x1541sieve.c \781--781never0.000%
-000-60
P:0x1542--0x1547sieve.c \782--782never0.000%
-000-60
P:0x1548--0x1551sieve.c \783--784never0.000%
0.000%0001100
P:0x1552--0x1553sieve.c \785--786never0.000%
-000-20
P:0x1554--0x15DFsieve.c \787--787p-read65.714%
-000-14092
P:0x15E0--0x1637\\sieve\sieve\sievenever0.000%
0.000%0004880
P:0x15E0--0x15E5sieve.c \788--794never0.000%
-000-60
P:0x15E6--0x15E9sieve.c \795--798never0.000%
-000-40
P:0x15EA--0x15F9sieve.c \799--800never0.000%
0.000%0001160
P:0x15FA--0x15FDsieve.c \801--802never0.000%
-000-40
P:0x15FE--0x1605sieve.c \803--803never0.000%
0.000%000180
P:0x1606--0x1609sieve.c \804--804never0.000%
-000-40
P:0x160A--0x160Bsieve.c \805--805never0.000%
-000-20
P:0x160C--0x160Dsieve.c \806--806never0.000%
-000-20
P:0x160E--0x1613sieve.c \807--807never0.000%
-000-60
P:0x1614--0x1615sieve.c \808--808never0.000%
-000-20
P:0x1616--0x1619sieve.c \806--806never0.000%
0.000%000140
P:0x161A--0x161Fsieve.c \809--810never0.000%
-000-60
P:0x1620--0x1625sieve.c \801--802never0.000%
0.000%000160
P:0x1626--0x1627sieve.c \811--814never0.000%
-000-20
P:0x1628--0x1637sieve.c \815--815never0.000%
-000-160
P:0x1638--0x167B\\sieve\sieve\backgroundnever0.000%
0.000%0001680
P:0x1638--0x163Bsieve.c \816--819never0.000%
-000-40
P:0x163C--0x1649sieve.c \820--822never0.000%
-000-140
P:0x164A--0x164Fsieve.c \823--825never0.000%
-000-60
P:0x1650--0x1651sieve.c \826--826never0.000%
-000-20
P:0x1652--0x165Bsieve.c \827--827never0.000%
-000-100
P:0x165C--0x1663sieve.c \826--826never0.000%
0.000%000180
P:0x1664--0x166Dsieve.c \828--828never0.000%
-000-100
P:0x166E--0x167Dsieve.c \829--829partial12.500%
-000-162
P:0x460--0x167Btotalpartial73.813%
78.125%47421146363422

COVerage.ListVar

addresstreecoverageread
0%100%
write
0%100%
bytesreadwrite
P:0x4B0\\sieve\sieve
D:0x4428--0x4443init_linked_list\textp-read0.000%
0.000%
2800
D:0x4628--0x462Bperiodread0.000%
0.000%
400
D:0x4650--0x465Afunc26\x1never0.000%
0.000%
1100
D:0x465C--0x465Ffunc2\fstaticreadwrite0.000%
100.000%
404
D:0x46C0--0x46C3mstatic1readwrite0.000%
100.000%
404
D:0x46C4--0x46C7mstatic2readwrite0.000%
100.000%
404
D:0x46C8--0x46CBmcountreadwrite0.000%
100.000%
404
D:0x46D0--0x46D3background\bcnt2never0.000%
0.000%
400
D:0x46D4--0x46D7background\bcnt1never0.000%
0.000%
400
D:0x46D8--0x46DBfunc9\stat1readwrite0.000%
100.000%
404
D:0x46DC--0x46DFfunc9\stat2readwrite0.000%
100.000%
404
D:0x46E0--0x46E3func2\fstatic2write0.000%
100.000%
404
P:0x1680\\sieve\monitor
D:0x4660--0x4663Monitor_Handler\Monitor_AddressLownever0.000%
0.000%
400
D:0x4664--0x46A3Monitor_Handler\Monitor_Buffernever0.000%
0.000%
6400
D:0x46A4--0x46A7Monitor_Handler\Monitor_Indexnever0.000%
0.000%
400
D:0x46A8--0x46ABMonitor_Handler\Monitor_Countnever0.000%
0.000%
400
D:0x46AC--0x46AFMonitor_Handler\Monitor_AddressHighnever0.000%
0.000%
400
P:0x208C\\sieve\itm
D:0x46B0--0x46B3ItmMessage\initnever0.000%
0.000%
400
 \\sieve\Global
D:0x4360--0x4370cstr1never0.000%
0.000%
1700
D:0x4444--0x4447ITM_BASEnever0.000%
0.000%
400
D:0x4620--0x4624defaultstringnever0.000%
0.000%
500
D:0x462C--0x462Dplot1readwrite0.000%
100.000%
202
D:0x4630--0x4633vfloatreadwrite0.000%
100.000%
404
D:0x4638--0x463Fvdoublereadwrite0.000%
100.000%
808
D:0x4640--0x4643vintnever0.000%
0.000%
400
D:0x4644--0x4648vdiarraynever0.000%
0.000%
500
D:0x464C--0x464FmonHookread0.000%
0.000%
400
D:0x46CC--0x46CDplot2write0.000%
100.000%
202
D:0x46E8--0x4705vdblarraynever0.000%
0.000%
3000
D:0x4708--0x470Bvpppulongnever0.000%
0.000%
400
D:0x470C--0x470Fvpushortnever0.000%
0.000%
400
D:0x4710--0x4713vppppulongnever0.000%
0.000%
400
D:0x4714--0x4717vpcharnever0.000%
0.000%
400
D:0x4718--0x471Fdefnever0.000%
0.000%
800
D:0x4720--0x4733vtdef2never0.000%
0.000%
2000
D:0x4734--0x473Bvunionnever0.000%
0.000%
800
D:0x473C--0x473Fvpintnever0.000%
0.000%
400
D:0x4740--0x4743vppuintnever0.000%
0.000%
400
D:0x4744--0x4748vdarraynever0.000%
0.000%
500
D:0x474C--0x474Fvpuintnever0.000%
0.000%
400
D:0x4750--0x4763astreadwrite0.000%
100.000%
20020
D:0x4764--0x47C7pLinkedListBufp-write0.000%
80.000%
100080
D:0x47C8--0x47CBvshortrecordnever0.000%
0.000%
400
D:0x47CC--0x47CFdatasnever0.000%
0.000%
400
D:0x47D0--0x47D1vushortnever0.000%
0.000%
200
D:0x47D4--0x47D7vppucharnever0.000%
0.000%
400
D:0x47D8--0x4967stra2never0.000%
0.000%
40000
D:0x4968--0x497Faunnever0.000%
0.000%
2400
D:0x4980--0x4997vbfieldp-rd p-wr0.000%
87.500%
24021
D:0x4998--0x4998vucharnever0.000%
0.000%
100
D:0x499C--0x499Fvpulongnever0.000%
0.000%
400
D:0x49A0--0x49A3vpshortnever0.000%
0.000%
400
D:0x49A4--0x49CBvtarraynever0.000%
0.000%
4000
D:0x49CC--0x49CFvtdef1never0.000%
0.000%
400
D:0x49D0--0x49DFstr6never0.000%
0.000%
1600
D:0x49E0--0x49E3funcptrreadwrite0.000%
100.000%
404
D:0x49E4--0x49E5vshortnever0.000%
0.000%
200
D:0x49E8--0x49EBvppushortnever0.000%
0.000%
400
D:0x49F0--0x5D8Fsinewavewrite0.000%
100.000%
502405024
D:0x5D90--0x5D93vuintnever0.000%
0.000%
400
D:0x5D94--0x5D94enumvarwrite0.000%
100.000%
101
D:0x5D98--0x5DAAflagsnever0.000%
0.000%
1900
D:0x5DAC--0x5DAFvulongnever0.000%
0.000%
400
D:0x5DB0--0x5DB3vplongnever0.000%
0.000%
400
D:0x5DB4--0x5DB4vcharreadwrite0.000%
100.000%
101
D:0x5DB8--0x5DBBvppulongnever0.000%
0.000%
400
D:0x5DBC--0x5DCFstr2never0.000%
0.000%
2000
D:0x5DD0--0x5DD3vpucharnever0.000%
0.000%
400
D:0x5DD4--0x5DFBvarraynever0.000%
0.000%
4000
D:0x5DFC--0x5E03vstruct1never0.000%
0.000%
800
D:0x5E04--0x5ECBstra1never0.000%
0.000%
20000
D:0x5ECC--0x5ECFvlongreadwrite0.000%
100.000%
404
D:0x5ED0--0x5EE7vtriplearrayp-write0.000%
16.666%
2404

List

CoverageAddr/LineCodeLabelMnemonicsComment/Justification
\\sieve\crt0\crt0.sx
... 
4 
5#ifdef __thumb__ 
6# define subs sub 
7#endif 
8 
9 
10_start: 
11 /* set stack and frame pointer */ 
never12 ldr r1, .SP 
neverST:0000040049 0F_start:ldr r1,0x440
never13 mov r0, #0 
neverST:0000040220 00mov r0,#0x0
never14 mov sp, r1 
neverST:0000040446 8Dmov r13,r1
never15 mov fp, r0 
neverST:0000040646 83mov r11,r0
16 
17 /* clear .bss-section */ 
never18 ldr r4, .BSS_S 
neverST:000004084C 0Eldr r4,0x444
never19 ldr r5, .BSS_E 
neverST:0000040A4D 0Fldr r5,0x448
never20 subs r5, r5, r4 
neverST:0000040C1B 2Dsub r5,r5,r4
never21 beq bss_done 
neverST:0000040ED0 04beq 0x41A
never22 mov r0, #0 
neverST:0000041020 00mov r0,#0x0
23bss_clear: 
never24 strb r0, [r4] 
neverST:0000041270 20bss_clear:strb r0,[r4]
never25 add r4, r4, #1 
neverST:0000041434 01add r4,#0x1
never26 subs r5, r5, #1 
neverST:000004163D 01sub r5,#0x1
never27 bne bss_clear 
neverST:00000418D1 FBbne 0x412
... 
32init_data: 
33 ldr r0, .DATA_S 
34 ldr r1, .DATA_LADDR 
35 ldr r2, .DATA_SIZE 
36 bl memcpy 
37#endif 
38 
39 /* initialization of e.g. static objects */ 
never40 ldr r4, .INIT_S 
neverST:0000041A4C 0Cbss_done:ldr r4,0x44C
never41 ldr r5, .INIT_E 
neverST:0000041C4D 0Cldr r5,0x450
never42 subs r5, r5, r4 
neverST:0000041E1B 2Dsub r5,r5,r4
never43 beq init_done 
neverST:00000420D0 09beq 0x436
44init: 
never45 ldr r3,[r4] 
neverST:0000042268 23init:ldr r3,[r4]
never46 push {r0,r5} 
neverST:00000424B4 21push {r0,r5}
47#ifdef __thumb__ 
never48 mov r1, pc 
neverST:0000042646 79mov r1,pc
never49 add r1, #5 
neverST:0000042831 05add r1,#0x5
never50 mov lr, r1 
neverST:0000042A46 8Emov r14,r1
51#else 
52 mov lr,pc 
53#endif 
never54 bx r3 
neverST:0000042C47 18bx r3
never55 pop {r0,r5} 
neverST:0000042EBC 21pop {r0,r5}
never56 add r4, r4, #4 
neverST:0000043034 04add r4,#0x4
never57 subs r5, r5, #4 
neverST:000004323D 04sub r5,#0x4
never58 bne init 
neverST:00000434D1 F5bne 0x422
59init_done: 
60 
61gomain: 
never62 mov r0, #0 
neverST:0000043620 00gomain:mov r0,#0x0
never63 mov r1, #0 
neverST:0000043821 00mov r1,#0x0
never64 bl main 
neverST:0000043AF0 00 FF 17bl 0x126C
65 
66_exit: 
never67 b _exit 
neverST:0000043EE7 FE_exit:b 0x43E
neverSP:0000044000 00 80 00dcd 0x8000
neverSP:0000044400 00 46 B4dcd 0x46B4
neverSP:0000044800 00 5E E8dcd 0x5EE8
neverSP:0000044C00 00 46 20dcd 0x4620
neverSP:0000045000 00 46 20dcd 0x4620
neverSP:0000045400 00 46 20dcd 0x4620
neverSP:0000045800 00 46 20dcd 0x4620
neverSP:0000045C00 00 00 94dcd 0x94
\\sieve\isr\isr.c
1extern void Monitor_Handler(void); 
2 
3 
4/* Interrupt Service Routine for Timer0 to serve monitor code 
5 * for real-time memory access or 
6 * on an ARM922T Excalibur device 
7 */ 
8void exc_isr() __attribute__ ((interrupt ("IRQ"))); 
9void exc_isr() 
never10
neverSR:00000460E2 4E E0 04exc_isr:sub r14,r14,#0x4
neverSR:00000464E9 2D 58 1Fstmdb r13!,{r0-r4,r11-r12,r14}
neverSR:00000468E2 8D B0 1Cadd r11,r13,#0x1C
never11 Monitor_Handler(); 
neverSR:0000046CEB 00 05 BBbl 0x1B60
never12 *((unsigned int*)0x7FFFC200)=0x1C; // remove interrrupt from Timer0 
neverSR:00000470E5 9F 30 0Cldr r3,0x484
neverSR:00000474E3 A0 20 1Cmov r2,#0x1C
neverSR:00000478E5 83 20 00str r2,[r3]
never13
neverSR:0000047CE2 4B D0 1Csub r13,r11,#0x1C
neverSR:00000480E8 FD 98 1Fldmia r13!,{r0-r4,r11-r12,pc}^
neverSP:000004847F FF C2 00dcd 0x7FFFC200
14 
15 
16/* Interrupt Service Routine for Timer0 to serve monitor code 
17 * for real-time snooping of the PC 
18 * on an ARM922T Excalibur device 
19 */ 
20void exc_snoop() __attribute__ ((interrupt ("IRQ"))); 
21void exc_snoop() 
never22
neverSR:00000488E9 2D 08 0Cexc_snoop:stmdb r13!,{r2-r3,r11}
neverSR:0000048CE2 8D B0 08add r11,r13,#0x8
never23 __asm__("mcr p14,0,r14,c1,c0"); // save location at which interrupt occured to DCC register 
neverSR:00000490EE 01 EE 10mcr p14,0x0,r14,c1,c0,0x0
never24 *((unsigned int*)0x7FFFC200)=0x1C; // remove interrrupt from Timer0 
neverSR:00000494E5 9F 30 10ldr r3,0x4AC
neverSR:00000498E3 A0 20 1Cmov r2,#0x1C
neverSR:0000049CE5 83 20 00str r2,[r3]
never25
neverSR:000004A0E2 4B D0 08sub r13,r11,#0x8
neverSR:000004A4E8 BD 08 0Cldmia r13!,{r2-r3,r11}
neverSR:000004A8E2 5E F0 04subs pc,r14,#0x4
neverSP:000004AC7F FF C2 00dcd 0x7FFFC200
\\sieve\sieve\sieve.c
... 
136 struct abc z4; 
137} vunion; 
138 
139enum enumtyp { enum1, enum2, enum4=4, enum7=7, enum8, enumx= -1 } enumvar; 
140 
141int ( *funcptr ) (void); 
142 
143void func0(void) /* empty function */ 
never144
neverST:000004B0B5 80func0:push {r7,r14}
neverST:000004B2AF 00add r7,sp,#0x0
never145
neverST:000004B446 BDmov r13,r7
neverST:000004B6BC 80pop {r7}
neverST:000004B8BC 01pop {r0}
neverST:000004BA47 00bx r0
146 
147static void func1( int * intptr ) /* static function */ 
ok148
okST:000004BCB5 80func1:push {r7,r14}
okST:000004BEB0 82sub sp,#0x8
okST:000004C0AF 00add r7,sp,#0x0
okST:000004C260 78str r0,[r7,#0x4]
ok149 (*intptr)++; 
okST:000004C468 7Bldr r3,[r7,#0x4]
okST:000004C668 1Bldr r3,[r3]
okST:000004C81C 5Aadd r2,r3,#0x1
okST:000004CA68 7Bldr r3,[r7,#0x4]
okST:000004CC60 1Astr r2,[r3]
ok150
okST:000004CE46 BDmov r13,r7
okST:000004D0B0 02add sp,#0x8
okST:000004D2BC 80pop {r7}
okST:000004D4BC 01pop {r0}
okST:000004D647 00bx r0
151 
152void func2(void) 
ok153
okST:000004D8B5 90func2:push {r4,r7,r14}
okST:000004DAB0 83sub sp,#0x0C
okST:000004DCAF 00add r7,sp,#0x0
154 int autovar; 
155 register int regvar; 
156 static int fstatic = 44; /* initialized static variable */ 
157 static int fstatic2; /* not initialized static variable */ 
158 
ok159 autovar = regvar = fstatic; 
okST:000004DE4B 1Cldr r3,0x550
okST:000004E068 1Cldr r4,[r3]
okST:000004E260 7Cstr r4,[r7,#0x4]
ok160 autovar++; 
okST:000004E468 7Bldr r3,[r7,#0x4]
okST:000004E633 01add r3,#0x1
okST:000004E860 7Bstr r3,[r7,#0x4]
161 
ok162 func1( &autovar ); /* to force autovar as stack-scope */ 
okST:000004EA1D 3Badd r3,r7,#0x4
okST:000004EC1C 18mov r0,r3
okST:000004EEF7 FF FF E5bl 0x4BC
ok163 func1( &fstatic ); /* to force fstatic as static-scope */ 
okST:000004F24B 17ldr r3,0x550
okST:000004F41C 18mov r0,r3
okST:000004F6F7 FF FF E1bl 0x4BC
164 
ok165 for ( regvar = 0; regvar < 5 ; regvar++ ) 
okST:000004FA24 00mov r4,#0x0
okST:000004FCE0 08b 0x510
ok166 mstatic1 += regvar*autovar; 
okST:000004FE68 7Bldr r3,[r7,#0x4]
okST:000005001C 1Amov r2,r3
okST:0000050243 62mul r2,r4
okST:000005044B 13ldr r3,0x554
okST:0000050668 1Bldr r3,[r3]
okST:0000050818 D2add r2,r2,r3
okST:0000050A4B 12ldr r3,0x554
okST:0000050C60 1Astr r2,[r3]
164 
ok165 for ( regvar = 0; regvar < 5 ; regvar++ ) 
okST:0000050E34 01add r4,#0x1
okST:000005102C 04cmp r4,#0x4
okST:00000512DD F4ble 0x4FE
167 
ok168 fstatic += mstatic1; 
okST:000005144B 0Eldr r3,0x550
okST:0000051668 1Aldr r2,[r3]
okST:000005184B 0Eldr r3,0x554
okST:0000051A68 1Bldr r3,[r3]
okST:0000051C18 D2add r2,r2,r3
okST:0000051E4B 0Cldr r3,0x550
okST:0000052060 1Astr r2,[r3]
ok169 fstatic2 = 2*fstatic; 
okST:000005224B 0Bldr r3,0x550
okST:0000052468 1Bldr r3,[r3]
okST:0000052600 5Alsl r2,r3,#0x1
okST:000005284B 0Bldr r3,0x558
okST:0000052A60 1Astr r2,[r3]
170 
taken171 if (mcount < 500) 
okST:0000052C4B 0Bldr r3,0x55C
okST:0000052E68 1Aldr r2,[r3]
okST:000005304B 0Bldr r3,0x560
okST:0000053242 9Acmp r2,r3
takenST:00000534DD 05ble 0x542
173 
never174 func1( &fstatic2 ); 
neverST:000005364B 08ldr r3,0x558
neverST:000005381C 18mov r0,r3
neverST:0000053AF7 FF FF BFbl 0x4BC
175 
never176 return; 
neverST:0000053E46 C0nop
neverST:00000540E0 00b 0x544
ok172 return; 
okST:0000054246 C0nop
partial177
okST:0000054446 BDmov r13,r7
okST:00000546B0 03add sp,#0x0C
okST:00000548BC 90pop {r4,r7}
okST:0000054ABC 01pop {r0}
okST:0000054C47 00bx r0
neverST:0000054E46 C0nop
readSP:0000055000 00 46 5Cdcd 0x465C
readSP:0000055400 00 46 C0dcd 0x46C0
readSP:0000055800 00 46 E0dcd 0x46E0
readSP:0000055C00 00 46 C8dcd 0x46C8
readSP:0000056000 00 01 F3dcd 0x1F3
178 
179void func2a(void) 
ok180
okST:00000564B5 90func2a:push {r4,r7,r14}
okST:00000566B0 83sub sp,#0x0C
okST:00000568AF 00add r7,sp,#0x0
181 char autovar; /* char stack variable */ 
182 register char regvar; /* char register variable */ 
183 
ok184 autovar = regvar = (char) mstatic1; 
okST:0000056A4B 13ldr r3,0x5B8
okST:0000056C68 1Bldr r3,[r3]
okST:0000056E06 1Blsl r3,r3,#0x18
okST:000005700E 1Clsr r4,r3,#0x18
okST:000005721D FBadd r3,r7,#0x7
okST:000005741C 22mov r2,r4
okST:0000057670 1Astrb r2,[r3]
ok185 autovar++; 
okST:000005781D FBadd r3,r7,#0x7
okST:0000057A1D FAadd r2,r7,#0x7
okST:0000057C78 12ldrb r2,[r2]
okST:0000057E32 01add r2,#0x1
okST:0000058070 1Astrb r2,[r3]
186 
ok187 for ( regvar = 0; regvar < (char) 5 ; regvar++ ) 
okST:0000058224 00mov r4,#0x0
okST:00000584E0 10b 0x5A8
ok188 vchar += regvar*autovar; 
okST:000005861D FBadd r3,r7,#0x7
okST:0000058878 1Bldrb r3,[r3]
okST:0000058A1C 1Amov r2,r3
okST:0000058C1C 13mov r3,r2
okST:0000058E43 63mul r3,r4
okST:0000059006 1Blsl r3,r3,#0x18
okST:000005920E 1Alsr r2,r3,#0x18
okST:000005944B 09ldr r3,0x5BC
okST:0000059678 1Bldrb r3,[r3]
okST:0000059818 D3add r3,r2,r3
okST:0000059A06 1Blsl r3,r3,#0x18
okST:0000059C0E 1Alsr r2,r3,#0x18
okST:0000059E4B 07ldr r3,0x5BC
okST:000005A070 1Astrb r2,[r3]
186 
ok187 for ( regvar = 0; regvar < (char) 5 ; regvar++ ) 
okST:000005A21C 63add r3,r4,#0x1
okST:000005A406 1Blsl r3,r3,#0x18
okST:000005A60E 1Clsr r4,r3,#0x18
okST:000005A82C 04cmp r4,#0x4
okST:000005AAD9 ECbls 0x586
partial189
okST:000005AC46 BDmov r13,r7
okST:000005AEB0 03add sp,#0x0C
okST:000005B0BC 90pop {r4,r7}
okST:000005B2BC 01pop {r0}
okST:000005B447 00bx r0
neverST:000005B646 C0nop
readSP:000005B800 00 46 C0dcd 0x46C0
readSP:000005BC00 00 5D B4dcd 0x5DB4
190 
191void func2b(void) 
ok192
okST:000005C0B5 90func2b:push {r4,r7,r14}
okST:000005C2B0 83sub sp,#0x0C
okST:000005C4AF 00add r7,sp,#0x0
193 long autovar; /* long stack variable */ 
194 register long regvar; /* long register variable */ 
195 
ok196 autovar = regvar = mstatic1; 
okST:000005C64B 0Cldr r3,0x5F8
okST:000005C868 1Cldr r4,[r3]
okST:000005CA60 7Cstr r4,[r7,#0x4]
ok197 autovar++; 
okST:000005CC68 7Bldr r3,[r7,#0x4]
okST:000005CE33 01add r3,#0x1
okST:000005D060 7Bstr r3,[r7,#0x4]
198 
ok199 for ( regvar = 0; regvar < 5l ; regvar++ ) 
okST:000005D224 00mov r4,#0x0
okST:000005D4E0 08b 0x5E8
ok200 vlong += regvar*autovar; 
okST:000005D668 7Bldr r3,[r7,#0x4]
okST:000005D81C 1Amov r2,r3
okST:000005DA43 62mul r2,r4
okST:000005DC4B 07ldr r3,0x5FC
okST:000005DE68 1Bldr r3,[r3]
okST:000005E018 D2add r2,r2,r3
okST:000005E24B 06ldr r3,0x5FC
okST:000005E460 1Astr r2,[r3]
198 
ok199 for ( regvar = 0; regvar < 5l ; regvar++ ) 
okST:000005E634 01add r4,#0x1
okST:000005E82C 04cmp r4,#0x4
okST:000005EADD F4ble 0x5D6
partial201
okST:000005EC46 BDmov r13,r7
okST:000005EEB0 03add sp,#0x0C
okST:000005F0BC 90pop {r4,r7}
okST:000005F2BC 01pop {r0}
okST:000005F447 00bx r0
neverST:000005F646 C0nop
readSP:000005F800 00 46 C0dcd 0x46C0
readSP:000005FC00 00 5E CCdcd 0x5ECC
202 
203void func2c(void) 
ok204
okST:00000600B5 F0func2c:push {r4-r7,r14}
okST:00000602B0 83sub sp,#0x0C
okST:00000604AF 00add r7,sp,#0x0
205 double autovar; /* double stack variable */ 
206 register double regvar; /* double register variable */ 
207 
ok208 autovar = regvar = (double) mstatic1; 
okST:000006064B 2Cldr r3,0x6B8
okST:0000060868 1Bldr r3,[r3]
okST:0000060A1C 18mov r0,r3
okST:0000060CF0 03 FE 94bl 0x4338
okST:000006101C 03mov r3,r0
okST:000006121C 0Cmov r4,r1
okST:000006141C 25mov r5,r4
okST:000006161C 1Cmov r4,r3
okST:0000061860 3Cstr r4,[r7]
okST:0000061A60 7Dstr r5,[r7,#0x4]
ok209 autovar++; 
okST:0000061C68 38ldr r0,[r7]
okST:0000061E68 79ldr r1,[r7,#0x4]
okST:000006204B 20ldr r3,0x6A4
okST:000006224A 1Fldr r2,0x6A0
okST:00000624F0 03 FE 8Cbl 0x4340
okST:000006281C 03mov r3,r0
okST:0000062A1C 0Cmov r4,r1
okST:0000062C60 3Bstr r3,[r7]
okST:0000062E60 7Cstr r4,[r7,#0x4]
210 
ok211 for ( regvar = 0.0; regvar < 5.0 ; regvar += 1.0 ) 
okST:000006304C 1Dldr r4,0x6A8
okST:000006324D 1Eldr r5,0x6AC
okST:00000634E0 1Db 0x672
ok212 vdouble += regvar*autovar; 
okST:000006361C 20mov r0,r4
okST:000006381C 29mov r1,r5
okST:0000063A68 3Aldr r2,[r7]
okST:0000063C68 7Bldr r3,[r7,#0x4]
okST:0000063EF0 03 FE 6Bbl 0x4318
okST:000006421C 02mov r2,r0
okST:000006441C 0Bmov r3,r1
okST:000006461C 10mov r0,r2
okST:000006481C 19mov r1,r3
okST:0000064A4B 1Cldr r3,0x6BC
okST:0000064C68 1Aldr r2,[r3]
okST:0000064E68 5Bldr r3,[r3,#0x4]
okST:00000650F0 03 FE 76bl 0x4340
okST:000006541C 02mov r2,r0
okST:000006561C 0Bmov r3,r1
okST:0000065849 18ldr r1,0x6BC
okST:0000065A60 0Astr r2,[r1]
okST:0000065C60 4Bstr r3,[r1,#0x4]
210 
ok211 for ( regvar = 0.0; regvar < 5.0 ; regvar += 1.0 ) 
okST:0000065E1C 20mov r0,r4
okST:000006601C 29mov r1,r5
okST:000006624B 10ldr r3,0x6A4
okST:000006644A 0Eldr r2,0x6A0
okST:00000666F0 03 FE 6Bbl 0x4340
okST:0000066A1C 03mov r3,r0
okST:0000066C1C 0Cmov r4,r1
okST:0000066E1C 25mov r5,r4
okST:000006701C 1Cmov r4,r3
okST:0000067223 01mov r3,#0x1
okST:000006741C 1Emov r6,r3
okST:000006761C 20mov r0,r4
okST:000006781C 29mov r1,r5
okST:0000067A4A 0Dldr r2,0x6B0
okST:0000067C4B 0Dldr r3,0x6B4
okST:0000067EF0 03 FE 47bl 0x4310
okST:000006821C 03mov r3,r0
okST:00000684D1 01bne 0x68A
okST:0000068623 00mov r3,#0x0
okST:000006881C 1Emov r6,r3
okST:0000068A06 33lsl r3,r6,#0x18
okST:0000068C0E 1Blsr r3,r3,#0x18
okST:0000068ED1 D2bne 0x636
partial213
okST:0000069046 BDmov r13,r7
okST:00000692B0 03add sp,#0x0C
okST:00000694BC F0pop {r4-r7}
okST:00000696BC 01pop {r0}
okST:0000069847 00bx r0
neverST:0000069A46 C0nop
neverST:0000069C46 C0nop
neverST:0000069E46 C0nop
readSP:000006A000 00 00 00dcd 0x0
readSP:000006A43F F0 00 00dcd 0x3FF00000
readSP:000006A800 00 00 00dcd 0x0
readSP:000006AC00 00 00 00dcd 0x0
readSP:000006B000 00 00 00dcd 0x0
readSP:000006B440 14 00 00dcd 0x40140000
readSP:000006B800 00 46 C0dcd 0x46C0
readSP:000006BC00 00 46 38dcd 0x4638
214 
215void func2d(void) 
ok216
okST:000006C0B5 90func2d:push {r4,r7,r14}
okST:000006C2B0 83sub sp,#0x0C
okST:000006C4AF 00add r7,sp,#0x0
217 short autovar; /* short stack variable */ 
218 register short regvar; /* short register variable */ 
219 
ok220 autovar = regvar = mstatic1; 
okST:000006C64B 13ldr r3,0x714
okST:000006C868 1Bldr r3,[r3]
okST:000006CA04 1Blsl r3,r3,#0x10
okST:000006CC0C 1Clsr r4,r3,#0x10
okST:000006CE1D BBadd r3,r7,#0x6
okST:000006D01C 22mov r2,r4
okST:000006D280 1Astrh r2,[r3]
ok221 autovar++; 
okST:000006D41D BBadd r3,r7,#0x6
okST:000006D61D BAadd r2,r7,#0x6
okST:000006D888 12ldrh r2,[r2]
okST:000006DA32 01add r2,#0x1
okST:000006DC80 1Astrh r2,[r3]
222 
ok223 for ( regvar = 0; regvar < 5l ; regvar++ ) 
okST:000006DE24 00mov r4,#0x0
okST:000006E0E0 0Eb 0x700
ok224 vlong += regvar*autovar; 
okST:000006E204 23lsl r3,r4,#0x10
okST:000006E414 1Basr r3,r3,#0x10
okST:000006E61D BAadd r2,r7,#0x6
okST:000006E821 00mov r1,#0x0
okST:000006EA5E 52ldrsh r2,[r2,r1]
okST:000006EC43 5Amul r2,r3
okST:000006EE4B 0Aldr r3,0x718
okST:000006F068 1Bldr r3,[r3]
okST:000006F218 D2add r2,r2,r3
okST:000006F44B 08ldr r3,0x718
okST:000006F660 1Astr r2,[r3]
222 
ok223 for ( regvar = 0; regvar < 5l ; regvar++ ) 
okST:000006F81C 23mov r3,r4
okST:000006FA33 01add r3,#0x1
okST:000006FC04 1Blsl r3,r3,#0x10
okST:000006FE0C 1Clsr r4,r3,#0x10
okST:0000070004 23lsl r3,r4,#0x10
okST:0000070214 1Basr r3,r3,#0x10
okST:000007042B 04cmp r3,#0x4
okST:00000706DD ECble 0x6E2
partial225
okST:0000070846 BDmov r13,r7
okST:0000070AB0 03add sp,#0x0C
okST:0000070CBC 90pop {r4,r7}
okST:0000070EBC 01pop {r0}
okST:0000071047 00bx r0
neverST:0000071246 C0nop
readSP:0000071400 00 46 C0dcd 0x46C0
readSP:0000071800 00 5E CCdcd 0x5ECC
226 
227 
228static int func3(void) /* simple function */ 
ok229
okST:0000071CB5 80func3:push {r7,r14}
okST:0000071EAF 00add r7,sp,#0x0
ok230 return 5; 
okST:0000072023 05mov r3,#0x5
ok231
okST:000007221C 18mov r0,r3
okST:0000072446 BDmov r13,r7
okST:00000726BC 80pop {r7}
okST:00000728BC 02pop {r1}
okST:0000072A47 08bx r1
232 
233struct struct1 func4( struct struct1 str ) /* function returning struct */ 
ok234
okST:0000072CB0 84func4:sub sp,#0x10
okST:0000072EB5 90push {r4,r7,r14}
okST:00000730B0 83sub sp,#0x0C
okST:00000732AF 00add r7,sp,#0x0
okST:0000073460 78str r0,[r7,#0x4]
okST:0000073620 04mov r0,#0x4
okST:0000073824 18mov r4,#0x18
okST:0000073A19 E4add r4,r4,r7
okST:0000073C18 20add r0,r4,r0
okST:0000073E60 01str r1,[r0]
okST:0000074060 42str r2,[r0,#0x4]
okST:0000074260 83str r3,[r0,#0x8]
ok235 str.count++; 
okST:0000074423 04mov r3,#0x4
okST:0000074620 18mov r0,#0x18
okST:0000074819 C0add r0,r0,r7
okST:0000074A18 C3add r3,r0,r3
okST:0000074C68 5Bldr r3,[r3,#0x4]
okST:0000074E1C 5Aadd r2,r3,#0x1
okST:0000075023 04mov r3,#0x4
okST:0000075221 18mov r1,#0x18
okST:0000075419 C9add r1,r1,r7
okST:0000075618 CBadd r3,r1,r3
okST:0000075860 5Astr r2,[r3,#0x4]
236 
ok237 return str; 
okST:0000075A68 7Bldr r3,[r7,#0x4]
okST:0000075C22 04mov r2,#0x4
okST:0000075E24 18mov r4,#0x18
okST:0000076019 E4add r4,r4,r7
okST:0000076218 A2add r2,r4,r2
okST:00000764CA 13ldmia r2!,{r0-r1,r4}
okST:00000766C3 13stmia r3!,{r0-r1,r4}
okST:00000768CA 03ldmia r2!,{r0-r1}
okST:0000076AC3 03stmia r3!,{r0-r1}
partial238
okST:0000076C68 78ldr r0,[r7,#0x4]
okST:0000076E46 BDmov r13,r7
okST:00000770B0 03add sp,#0x0C
okST:00000772BC 90pop {r4,r7}
okST:00000774BC 08pop {r3}
okST:00000776B0 04add sp,#0x10
okST:0000077847 18bx r3
neverST:0000077A46 C0nop padding NOP
239 
240int func5( int a, char b, long c ) /* multiple arguments */ 
ok241
okST:0000077CB5 80func5:push {r7,r14}
okST:0000077EB0 84sub sp,#0x10
okST:00000780AF 00add r7,sp,#0x0
okST:0000078260 F8str r0,[r7,#0x0C]
okST:0000078460 7Astr r2,[r7,#0x4]
okST:000007861C 3Bmov r3,r7
okST:0000078833 0Badd r3,#0x0B
okST:0000078A1C 0Amov r2,r1
okST:0000078C70 1Astrb r2,[r3]
ok242 return a+b*c; 
okST:0000078E1C 3Bmov r3,r7
okST:0000079033 0Badd r3,#0x0B
okST:0000079278 1Bldrb r3,[r3]
okST:0000079468 7Aldr r2,[r7,#0x4]
okST:0000079643 5Amul r2,r3
okST:0000079868 FBldr r3,[r7,#0x0C]
okST:0000079A18 D3add r3,r2,r3
ok243
okST:0000079C1C 18mov r0,r3
okST:0000079E46 BDmov r13,r7
okST:000007A0B0 04add sp,#0x10
okST:000007A2BC 80pop {r7}
okST:000007A4BC 02pop {r1}
okST:000007A647 08bx r1
244 
245float func6( float a, float b ) 
ok246
okST:000007A8B5 80func6:push {r7,r14}
okST:000007AAB0 82sub sp,#0x8
okST:000007ACAF 00add r7,sp,#0x0
okST:000007AE60 78str r0,[r7,#0x4]
okST:000007B060 39str r1,[r7]
ok247 vfloat = 1.0; 
okST:000007B24B 0Bldr r3,0x7E0
okST:000007B44A 0Bldr r2,0x7E4
okST:000007B660 1Astr r2,[r3]
ok248 vfloat = -1.0; 
okST:000007B84B 09ldr r3,0x7E0
okST:000007BA4A 0Bldr r2,0x7E8
okST:000007BC60 1Astr r2,[r3]
ok249 vfloat = 10.0; 
okST:000007BE4B 08ldr r3,0x7E0
okST:000007C04A 0Aldr r2,0x7EC
okST:000007C260 1Astr r2,[r3]
ok250 vfloat = 1.6; 
okST:000007C44B 06ldr r3,0x7E0
okST:000007C64A 0Aldr r2,0x7F0
okST:000007C860 1Astr r2,[r3]
251 
ok252 return a*b; 
okST:000007CA68 78ldr r0,[r7,#0x4]
okST:000007CC68 39ldr r1,[r7]
okST:000007CEF0 03 FD BBbl 0x4348
okST:000007D21C 03mov r3,r0
partial253
okST:000007D41C 18mov r0,r3
okST:000007D646 BDmov r13,r7
okST:000007D8B0 02add sp,#0x8
okST:000007DABC 80pop {r7}
okST:000007DCBC 02pop {r1}
okST:000007DE47 08bx r1
readSP:000007E000 00 46 30dcd 0x4630
readSP:000007E43F 80 00 00dcd 0x3F800000
readSP:000007E8BF 80 00 00dcd 0xBF800000
readSP:000007EC41 20 00 00dcd 0x41200000
readSP:000007F03F CC CC CDdcd 0x3FCCCCCD
254 
255double func7( double a, double b ) 
ok256
okST:000007F4B5 90func7:push {r4,r7,r14}
okST:000007F6B0 85sub sp,#0x14
okST:000007F8AF 00add r7,sp,#0x0
okST:000007FA60 B8str r0,[r7,#0x8]
okST:000007FC60 F9str r1,[r7,#0x0C]
okST:000007FE60 3Astr r2,[r7]
okST:0000080060 7Bstr r3,[r7,#0x4]
ok257 vdouble = 1.0; 
okST:000008024A 19ldr r2,0x868
okST:000008044C 11ldr r4,0x84C
okST:000008064B 10ldr r3,0x848
okST:0000080860 13str r3,[r2]
okST:0000080A60 54str r4,[r2,#0x4]
ok258 vdouble = -1.0; 
okST:0000080C4A 16ldr r2,0x868
okST:0000080E4B 10ldr r3,0x850
okST:000008104C 10ldr r4,0x854
okST:0000081260 13str r3,[r2]
okST:0000081460 54str r4,[r2,#0x4]
ok259 vdouble = 10.0; 
okST:000008164A 14ldr r2,0x868
okST:000008184B 0Fldr r3,0x858
okST:0000081A4C 10ldr r4,0x85C
okST:0000081C60 13str r3,[r2]
okST:0000081E60 54str r4,[r2,#0x4]
ok260 vdouble = 1.6; 
okST:000008204A 11ldr r2,0x868
okST:000008224B 0Fldr r3,0x860
okST:000008244C 0Fldr r4,0x864
okST:0000082660 13str r3,[r2]
okST:0000082860 54str r4,[r2,#0x4]
261 
ok262 return a*b; 
okST:0000082A68 B8ldr r0,[r7,#0x8]
okST:0000082C68 F9ldr r1,[r7,#0x0C]
okST:0000082E68 3Aldr r2,[r7]
okST:0000083068 7Bldr r3,[r7,#0x4]
okST:00000832F0 03 FD 71bl 0x4318
okST:000008361C 03mov r3,r0
okST:000008381C 0Cmov r4,r1
partial263
okST:0000083A1C 18mov r0,r3
okST:0000083C1C 21mov r1,r4
okST:0000083E46 BDmov r13,r7
okST:00000840B0 05add sp,#0x14
okST:00000842BC 90pop {r4,r7}
okST:00000844BC 04pop {r2}
okST:0000084647 10bx r2
readSP:0000084800 00 00 00dcd 0x0
readSP:0000084C3F F0 00 00dcd 0x3FF00000
readSP:0000085000 00 00 00dcd 0x0
readSP:00000854BF F0 00 00dcd 0xBFF00000
readSP:0000085800 00 00 00dcd 0x0
readSP:0000085C40 24 00 00dcd 0x40240000
readSP:0000086099 99 99 9Adcd 0x9999999A
readSP:000008643F F9 99 99dcd 0x3FF99999
readSP:0000086800 00 46 38dcd 0x4638
... 
282 int p:15; 
283 char q:6; 
284 char r:1; 
285}; 
286 
287struct bfield vbfield; 
288 
289void func8(void) 
ok290
okST:0000086CB5 80func8:push {r7,r14}
okST:0000086EAF 00add r7,sp,#0x0
ok291 vbfield.a = 1; 
okST:000008704B 68ldr r3,0xA14
okST:0000087278 1Aldrb r2,[r3]
okST:0000087421 01mov r1,#0x1
okST:0000087643 0Aorr r2,r1
okST:0000087870 1Astrb r2,[r3]
ok292 vbfield.b = 1; 
okST:0000087A4B 66ldr r3,0xA14
okST:0000087C78 1Aldrb r2,[r3]
okST:0000087E21 06mov r1,#0x6
okST:0000088043 8Abic r2,r1
okST:0000088221 02mov r1,#0x2
okST:0000088443 0Aorr r2,r1
okST:0000088670 1Astrb r2,[r3]
ok293 vbfield.c = 1; 
okST:000008884B 62ldr r3,0xA14
okST:0000088A78 1Aldrb r2,[r3]
okST:0000088C21 38mov r1,#0x38
okST:0000088E43 8Abic r2,r1
okST:0000089021 08mov r1,#0x8
okST:0000089243 0Aorr r2,r1
okST:0000089470 1Astrb r2,[r3]
ok294 vbfield.d = 1; 
okST:000008964B 5Fldr r3,0xA14
okST:0000089888 19ldrh r1,[r3]
okST:0000089A4A 5Fldr r2,0xA18
okST:0000089C40 0Aand r2,r1
okST:0000089E21 40mov r1,#0x40
okST:000008A043 0Aorr r2,r1
okST:000008A280 1Astrh r2,[r3]
ok295 vbfield.e = 1; 
okST:000008A44B 5Bldr r3,0xA14
okST:000008A668 19ldr r1,[r3]
okST:000008A84A 5Cldr r2,0xA1C
okST:000008AA40 0Aand r2,r1
okST:000008AC21 80mov r1,#0x80
okST:000008AE01 89lsl r1,r1,#0x6
okST:000008B043 0Aorr r2,r1
okST:000008B260 1Astr r2,[r3]
ok296 vbfield.f = 1; 
okST:000008B44B 57ldr r3,0xA14
okST:000008B688 9Aldrh r2,[r3,#0x4]
okST:000008B80B D2lsr r2,r2,#0x0F
okST:000008BA03 D2lsl r2,r2,#0x0F
okST:000008BC21 01mov r1,#0x1
okST:000008BE43 0Aorr r2,r1
okST:000008C080 9Astrh r2,[r3,#0x4]
ok297 vbfield.g = 1; 
okST:000008C24B 54ldr r3,0xA14
okST:000008C479 5Aldrb r2,[r3,#0x5]
okST:000008C621 80mov r1,#0x80
okST:000008C842 49neg r1,r1
okST:000008CA43 0Aorr r2,r1
okST:000008CC71 5Astrb r2,[r3,#0x5]
ok298 vbfield.h = 1; 
okST:000008CE4B 51ldr r3,0xA14
okST:000008D088 DAldrh r2,[r3,#0x6]
okST:000008D20B D2lsr r2,r2,#0x0F
okST:000008D403 D2lsl r2,r2,#0x0F
okST:000008D621 01mov r1,#0x1
okST:000008D843 0Aorr r2,r1
okST:000008DA80 DAstrh r2,[r3,#0x6]
ok299 vbfield.i = 1; 
okST:000008DC4B 4Dldr r3,0xA14
okST:000008DE79 DAldrb r2,[r3,#0x7]
okST:000008E021 80mov r1,#0x80
okST:000008E242 49neg r1,r1
okST:000008E443 0Aorr r2,r1
okST:000008E671 DAstrb r2,[r3,#0x7]
ok300 vbfield.j = 1; 
okST:000008E84B 4Aldr r3,0xA14
okST:000008EA89 19ldrh r1,[r3,#0x8]
okST:000008EC22 00mov r2,#0x0
okST:000008EE40 0Aand r2,r1
okST:000008F021 01mov r1,#0x1
okST:000008F243 0Aorr r2,r1
okST:000008F481 1Astrh r2,[r3,#0x8]
ok301 vbfield.k = 1; 
okST:000008F64B 47ldr r3,0xA14
okST:000008F87A 9Aldrb r2,[r3,#0x0A]
okST:000008FA21 01mov r1,#0x1
okST:000008FC43 0Aorr r2,r1
okST:000008FE72 9Astrb r2,[r3,#0x0A]
ok302 vbfield.l = 1; 
okST:000009004B 44ldr r3,0xA14
okST:000009027A 9Aldrb r2,[r3,#0x0A]
okST:0000090421 06mov r1,#0x6
okST:0000090643 8Abic r2,r1
okST:0000090821 02mov r1,#0x2
okST:0000090A43 0Aorr r2,r1
okST:0000090C72 9Astrb r2,[r3,#0x0A]
ok303 vbfield.m = 1; 
okST:0000090E4B 41ldr r3,0xA14
okST:0000091089 99ldrh r1,[r3,#0x0C]
okST:0000091222 00mov r2,#0x0
okST:0000091440 0Aand r2,r1
okST:0000091621 01mov r1,#0x1
okST:0000091843 0Aorr r2,r1
okST:0000091A81 9Astrh r2,[r3,#0x0C]
ok304 vbfield.n = 1; 
okST:0000091C4B 3Dldr r3,0xA14
okST:0000091E22 01mov r2,#0x1
okST:0000092061 1Astr r2,[r3,#0x10]
ok305 vbfield.o = 1; 
okST:000009224B 3Cldr r3,0xA14
okST:0000092422 01mov r2,#0x1
okST:0000092675 1Astrb r2,[r3,#0x14]
ok306 vbfield.p = 1; 
okST:000009284B 3Aldr r3,0xA14
okST:0000092A69 59ldr r1,[r3,#0x14]
okST:0000092C4A 3Cldr r2,0xA20
okST:0000092E40 0Aand r2,r1
okST:0000093021 80mov r1,#0x80
okST:0000093200 49lsl r1,r1,#0x1
okST:0000093443 0Aorr r2,r1
okST:0000093661 5Astr r2,[r3,#0x14]
ok307 vbfield.q = 1; 
okST:000009384B 36ldr r3,0xA14
okST:0000093A7D DAldrb r2,[r3,#0x17]
okST:0000093C21 3Fmov r1,#0x3F
okST:0000093E43 8Abic r2,r1
okST:0000094021 01mov r1,#0x1
okST:0000094243 0Aorr r2,r1
okST:0000094475 DAstrb r2,[r3,#0x17]
ok308 vbfield.r = 1; 
okST:000009464B 33ldr r3,0xA14
okST:000009487D DAldrb r2,[r3,#0x17]
okST:0000094A21 40mov r1,#0x40
okST:0000094C43 0Aorr r2,r1
okST:0000094E75 DAstrb r2,[r3,#0x17]
309 
ok310 vbfield.a = -1; 
okST:000009504B 30ldr r3,0xA14
okST:0000095278 1Aldrb r2,[r3]
okST:0000095421 01mov r1,#0x1
okST:0000095643 0Aorr r2,r1
okST:0000095870 1Astrb r2,[r3]
ok311 vbfield.b = -1; 
okST:0000095A4B 2Eldr r3,0xA14
okST:0000095C78 1Aldrb r2,[r3]
okST:0000095E21 06mov r1,#0x6
okST:0000096043 0Aorr r2,r1
okST:0000096270 1Astrb r2,[r3]
ok312 vbfield.c = -1; 
okST:000009644B 2Bldr r3,0xA14
okST:0000096678 1Aldrb r2,[r3]
okST:0000096821 38mov r1,#0x38
okST:0000096A43 0Aorr r2,r1
okST:0000096C70 1Astrb r2,[r3]
ok313 vbfield.d = -1; 
okST:0000096E4B 29ldr r3,0xA14
okST:0000097088 1Aldrh r2,[r3]
okST:0000097221 FEmov r1,#0xFE
okST:0000097401 49lsl r1,r1,#0x5
okST:0000097643 0Aorr r2,r1
okST:0000097880 1Astrh r2,[r3]
ok314 vbfield.e = -1; 
okST:0000097A4B 26ldr r3,0xA14
okST:0000097C68 1Aldr r2,[r3]
okST:0000097E21 FFmov r1,#0xFF
okST:0000098003 49lsl r1,r1,#0x0D
okST:0000098243 0Aorr r2,r1
okST:0000098460 1Astr r2,[r3]
ok315 vbfield.f = -1; 
okST:000009864B 23ldr r3,0xA14
okST:0000098888 9Aldrh r2,[r3,#0x4]
okST:0000098A49 26ldr r1,0xA24
okST:0000098C43 0Aorr r2,r1
okST:0000098E80 9Astrh r2,[r3,#0x4]
ok316 vbfield.g = -1; 
okST:000009904B 20ldr r3,0xA14
okST:0000099279 5Aldrb r2,[r3,#0x5]
okST:0000099421 80mov r1,#0x80
okST:0000099642 49neg r1,r1
okST:0000099843 0Aorr r2,r1
okST:0000099A71 5Astrb r2,[r3,#0x5]
ok317 vbfield.h = -1; 
okST:0000099C4B 1Dldr r3,0xA14
okST:0000099E88 DAldrh r2,[r3,#0x6]
okST:000009A049 20ldr r1,0xA24
okST:000009A243 0Aorr r2,r1
okST:000009A480 DAstrh r2,[r3,#0x6]
ok318 vbfield.i = -1; 
okST:000009A64B 1Bldr r3,0xA14
okST:000009A879 DAldrb r2,[r3,#0x7]
okST:000009AA21 80mov r1,#0x80
okST:000009AC42 49neg r1,r1
okST:000009AE43 0Aorr r2,r1
okST:000009B071 DAstrb r2,[r3,#0x7]
ok319 vbfield.j = -1; 
okST:000009B24B 18ldr r3,0xA14
okST:000009B489 1Aldrh r2,[r3,#0x8]
okST:000009B621 01mov r1,#0x1
okST:000009B842 49neg r1,r1
okST:000009BA43 0Aorr r2,r1
okST:000009BC81 1Astrh r2,[r3,#0x8]
ok320 vbfield.k = -1 & 0x01; 
okST:000009BE4B 15ldr r3,0xA14
okST:000009C07A 9Aldrb r2,[r3,#0x0A]
okST:000009C221 01mov r1,#0x1
okST:000009C443 0Aorr r2,r1
okST:000009C672 9Astrb r2,[r3,#0x0A]
ok321 vbfield.l = -1 & 0x03; 
okST:000009C84B 12ldr r3,0xA14
okST:000009CA7A 9Aldrb r2,[r3,#0x0A]
okST:000009CC21 06mov r1,#0x6
okST:000009CE43 0Aorr r2,r1
okST:000009D072 9Astrb r2,[r3,#0x0A]
ok322 vbfield.m = (unsigned short) -1; 
okST:000009D24B 10ldr r3,0xA14
okST:000009D489 9Aldrh r2,[r3,#0x0C]
okST:000009D621 01mov r1,#0x1
okST:000009D842 49neg r1,r1
okST:000009DA43 0Aorr r2,r1
okST:000009DC81 9Astrh r2,[r3,#0x0C]
ok323 vbfield.n = -1; 
okST:000009DE4B 0Dldr r3,0xA14
okST:000009E022 01mov r2,#0x1
okST:000009E242 52neg r2,r2
okST:000009E461 1Astr r2,[r3,#0x10]
ok324 vbfield.o = -1; 
okST:000009E64B 0Bldr r3,0xA14
okST:000009E822 FFmov r2,#0xFF
okST:000009EA75 1Astrb r2,[r3,#0x14]
ok325 vbfield.p = -1; 
okST:000009EC4B 09ldr r3,0xA14
okST:000009EE69 5Aldr r2,[r3,#0x14]
okST:000009F049 0Dldr r1,0xA28
okST:000009F243 0Aorr r2,r1
okST:000009F461 5Astr r2,[r3,#0x14]
ok326 vbfield.q = -1; 
okST:000009F64B 07ldr r3,0xA14
okST:000009F87D DAldrb r2,[r3,#0x17]
okST:000009FA21 3Fmov r1,#0x3F
okST:000009FC43 0Aorr r2,r1
okST:000009FE75 DAstrb r2,[r3,#0x17]
ok327 vbfield.r = -1; 
okST:00000A004B 04ldr r3,0xA14
okST:00000A027D DAldrb r2,[r3,#0x17]
okST:00000A0421 40mov r1,#0x40
okST:00000A0643 0Aorr r2,r1
okST:00000A0875 DAstrb r2,[r3,#0x17]
partial328
okST:00000A0A46 BDmov r13,r7
okST:00000A0CBC 80pop {r7}
okST:00000A0EBC 01pop {r0}
okST:00000A1047 00bx r0
neverST:00000A1246 C0nop
readSP:00000A1400 00 49 80dcd 0x4980
readSP:00000A18FF FF E0 3Fdcd 0xFFFFE03F
readSP:00000A1CFF E0 1F FFdcd 0xFFE01FFF
readSP:00000A20FF 80 00 FFdcd 0xFF8000FF
readSP:00000A2400 00 7F FFdcd 0x7FFF
readSP:00000A2800 7F FF 00dcd 0x7FFF00
329 
330static int * func9(void) /* nested local variables */ 
ok331
okST:00000A2CB5 B0func9:push {r4-r5,r7,r14}
okST:00000A2EB0 82sub sp,#0x8
okST:00000A30AF 00add r7,sp,#0x0
332 static int stat1 = 0; 
333 register int reg1; 
334 int auto1; 
335 
ok336 auto1 = stat1; 
okST:00000A324B 13ldr r3,0xA80
okST:00000A3468 1Bldr r3,[r3]
okST:00000A3660 7Bstr r3,[r7,#0x4]
337 
ok338 for ( reg1 = 0 ; reg1 < 2 ; reg1++ ) 
okST:00000A3824 00mov r4,#0x0
okST:00000A3AE0 18b 0xA6E
339
340 static int stat2 = 0; 
341 register int reg2; 
342 int auto2; 
343 
ok344 auto2 = stat2; 
okST:00000A3C4B 11ldr r3,0xA84
okST:00000A3E68 1Bldr r3,[r3]
okST:00000A4060 3Bstr r3,[r7]
345 
ok346 for ( reg2 = 0 ; reg2 < reg1 ; reg2++ ) 
okST:00000A4225 00mov r5,#0x0
okST:00000A44E0 10b 0xA68
347
ok348 func1( &stat1 ); 
okST:00000A464B 0Eldr r3,0xA80
okST:00000A481C 18mov r0,r3
okST:00000A4AF7 FF FD 37bl 0x4BC
ok349 func1( &auto1 ); 
okST:00000A4E1D 3Badd r3,r7,#0x4
okST:00000A501C 18mov r0,r3
okST:00000A52F7 FF FD 33bl 0x4BC
ok350 func1( &stat2 ); 
okST:00000A564B 0Bldr r3,0xA84
okST:00000A581C 18mov r0,r3
okST:00000A5AF7 FF FD 2Fbl 0x4BC
ok351 func1( &auto2 ); 
okST:00000A5E1C 3Bmov r3,r7
okST:00000A601C 18mov r0,r3
okST:00000A62F7 FF FD 2Bbl 0x4BC
345 
ok346 for ( reg2 = 0 ; reg2 < reg1 ; reg2++ ) 
okST:00000A6635 01add r5,#0x1
okST:00000A6842 A5cmp r5,r4
okST:00000A6ADB ECblt 0xA46
337 
ok338 for ( reg1 = 0 ; reg1 < 2 ; reg1++ ) 
okST:00000A6C34 01add r4,#0x1
okST:00000A6E2C 01cmp r4,#0x1
okST:00000A70DD E4ble 0xA3C
352
353
354 
ok355 return &stat1; 
okST:00000A724B 03ldr r3,0xA80
partial356
okST:00000A741C 18mov r0,r3
okST:00000A7646 BDmov r13,r7
okST:00000A78B0 02add sp,#0x8
okST:00000A7ABC B0pop {r4-r5,r7}
okST:00000A7CBC 02pop {r1}
okST:00000A7E47 08bx r1
readSP:00000A8000 00 46 D8dcd 0x46D8
readSP:00000A8400 00 46 DCdcd 0x46DC
357 
358int func10(void) 
ok359
okST:00000A88B5 B0func10:push {r4-r5,r7,r14}
okST:00000A8AAF 00add r7,sp,#0x0
360 register int i; 
361 register int v1, v2, v3, v4, v5, v6, v7, v8; 
362 register int v9, v10, v11, v12, v13, v14, v15, v16, v17; 
363 
ok364 v17 = 0; 
okST:00000A8C24 00mov r4,#0x0
ok365 for ( i = 0 ; i < 3 ; i++ ) 
okST:00000A8E25 00mov r5,#0x0
okST:00000A90E0 01b 0xA96
ok366 v17 += i; 
okST:00000A9219 64add r4,r4,r5
ok365 for ( i = 0 ; i < 3 ; i++ ) 
okST:00000A9435 01add r5,#0x1
okST:00000A962D 02cmp r5,#0x2
okST:00000A98DD FBble 0xA92
367 
ok368 for ( v1 = 0 ; v1 < 3 ; v1++ ) 
okST:00000A9A25 00mov r5,#0x0
okST:00000A9CE0 01b 0xAA2
ok369 v17 += v1; 
okST:00000A9E19 64add r4,r4,r5
367 
ok368 for ( v1 = 0 ; v1 < 3 ; v1++ ) 
okST:00000AA035 01add r5,#0x1
okST:00000AA22D 02cmp r5,#0x2
okST:00000AA4DD FBble 0xA9E
ok370 for ( v2 = 0 ; v2 < 3 ; v2++ ) 
okST:00000AA625 00mov r5,#0x0
okST:00000AA8E0 01b 0xAAE
ok371 v17 += v2; 
okST:00000AAA19 64add r4,r4,r5
ok370 for ( v2 = 0 ; v2 < 3 ; v2++ ) 
okST:00000AAC35 01add r5,#0x1
okST:00000AAE2D 02cmp r5,#0x2
okST:00000AB0DD FBble 0xAAA
ok372 for ( v3 = 0 ; v3 < 3 ; v3++ ) 
okST:00000AB225 00mov r5,#0x0
okST:00000AB4E0 01b 0xABA
ok373 v17 += v3; 
okST:00000AB619 64add r4,r4,r5
ok372 for ( v3 = 0 ; v3 < 3 ; v3++ ) 
okST:00000AB835 01add r5,#0x1
okST:00000ABA2D 02cmp r5,#0x2
okST:00000ABCDD FBble 0xAB6
ok374 for ( v4 = 0 ; v4 < 3 ; v4++ ) 
okST:00000ABE25 00mov r5,#0x0
okST:00000AC0E0 01b 0xAC6
ok375 v17 += v4; 
okST:00000AC219 64add r4,r4,r5
ok374 for ( v4 = 0 ; v4 < 3 ; v4++ ) 
okST:00000AC435 01add r5,#0x1
okST:00000AC62D 02cmp r5,#0x2
okST:00000AC8DD FBble 0xAC2
ok376 for ( v5 = 0 ; v5 < 3 ; v5++ ) 
okST:00000ACA25 00mov r5,#0x0
okST:00000ACCE0 01b 0xAD2
ok377 v17 += v5; 
okST:00000ACE19 64add r4,r4,r5
ok376 for ( v5 = 0 ; v5 < 3 ; v5++ ) 
okST:00000AD035 01add r5,#0x1
okST:00000AD22D 02cmp r5,#0x2
okST:00000AD4DD FBble 0xACE
ok378 for ( v6 = 0 ; v6 < 3 ; v6++ ) 
okST:00000AD625 00mov r5,#0x0
okST:00000AD8E0 01b 0xADE
ok379 v17 += v6; 
okST:00000ADA19 64add r4,r4,r5
ok378 for ( v6 = 0 ; v6 < 3 ; v6++ ) 
okST:00000ADC35 01add r5,#0x1
okST:00000ADE2D 02cmp r5,#0x2
okST:00000AE0DD FBble 0xADA
ok380 for ( v7 = 0 ; v7 < 3 ; v7++ ) 
okST:00000AE225 00mov r5,#0x0
okST:00000AE4E0 01b 0xAEA
ok381 v17 += v7; 
okST:00000AE619 64add r4,r4,r5
ok380 for ( v7 = 0 ; v7 < 3 ; v7++ ) 
okST:00000AE835 01add r5,#0x1
okST:00000AEA2D 02cmp r5,#0x2
okST:00000AECDD FBble 0xAE6
ok382 for ( v8 = 0 ; v8 < 3 ; v8++ ) 
okST:00000AEE25 00mov r5,#0x0
okST:00000AF0E0 01b 0xAF6
ok383 v17 += v8; 
okST:00000AF219 64add r4,r4,r5
ok382 for ( v8 = 0 ; v8 < 3 ; v8++ ) 
okST:00000AF435 01add r5,#0x1
okST:00000AF62D 02cmp r5,#0x2
okST:00000AF8DD FBble 0xAF2
ok384 for ( v9 = 0 ; v9 < 3 ; v9++ ) 
okST:00000AFA25 00mov r5,#0x0
okST:00000AFCE0 01b 0xB02
ok385 v17 += v9; 
okST:00000AFE19 64add r4,r4,r5
ok384 for ( v9 = 0 ; v9 < 3 ; v9++ ) 
okST:00000B0035 01add r5,#0x1
okST:00000B022D 02cmp r5,#0x2
okST:00000B04DD FBble 0xAFE
ok386 for ( v10 = 0 ; v10 < 3 ; v10++ ) 
okST:00000B0625 00mov r5,#0x0
okST:00000B08E0 01b 0xB0E
ok387 v17 += v10; 
okST:00000B0A19 64add r4,r4,r5
ok386 for ( v10 = 0 ; v10 < 3 ; v10++ ) 
okST:00000B0C35 01add r5,#0x1
okST:00000B0E2D 02cmp r5,#0x2
okST:00000B10DD FBble 0xB0A
ok388 for ( v11 = 0 ; v11 < 3 ; v11++ ) 
okST:00000B1225 00mov r5,#0x0
okST:00000B14E0 01b 0xB1A
ok389 v17 += v11; 
okST:00000B1619 64add r4,r4,r5
ok388 for ( v11 = 0 ; v11 < 3 ; v11++ ) 
okST:00000B1835 01add r5,#0x1
okST:00000B1A2D 02cmp r5,#0x2
okST:00000B1CDD FBble 0xB16
ok390 for ( v12 = 0 ; v12 < 3 ; v12++ ) 
okST:00000B1E25 00mov r5,#0x0
okST:00000B20E0 01b 0xB26
ok391 v17 += v12; 
okST:00000B2219 64add r4,r4,r5
ok390 for ( v12 = 0 ; v12 < 3 ; v12++ ) 
okST:00000B2435 01add r5,#0x1
okST:00000B262D 02cmp r5,#0x2
okST:00000B28DD FBble 0xB22
ok392 for ( v13 = 0 ; v13 < 3 ; v13++ ) 
okST:00000B2A25 00mov r5,#0x0
okST:00000B2CE0 01b 0xB32
ok393 v17 += v13; 
okST:00000B2E19 64add r4,r4,r5
ok392 for ( v13 = 0 ; v13 < 3 ; v13++ ) 
okST:00000B3035 01add r5,#0x1
okST:00000B322D 02cmp r5,#0x2
okST:00000B34DD FBble 0xB2E
ok394 for ( v14 = 0 ; v14 < 3 ; v14++ ) 
okST:00000B3625 00mov r5,#0x0
okST:00000B38E0 01b 0xB3E
ok395 v17 += v14; 
okST:00000B3A19 64add r4,r4,r5
ok394 for ( v14 = 0 ; v14 < 3 ; v14++ ) 
okST:00000B3C35 01add r5,#0x1
okST:00000B3E2D 02cmp r5,#0x2
okST:00000B40DD FBble 0xB3A
ok396 for ( v15 = 0 ; v15 < 3 ; v15++ ) 
okST:00000B4225 00mov r5,#0x0
okST:00000B44E0 01b 0xB4A
ok397 v17 += v15; 
okST:00000B4619 64add r4,r4,r5
ok396 for ( v15 = 0 ; v15 < 3 ; v15++ ) 
okST:00000B4835 01add r5,#0x1
okST:00000B4A2D 02cmp r5,#0x2
okST:00000B4CDD FBble 0xB46
ok398 for ( v16 = 0 ; v16 < 3 ; v16++ ) 
okST:00000B4E25 00mov r5,#0x0
okST:00000B50E0 01b 0xB56
ok399 v17 += v16; 
okST:00000B5219 64add r4,r4,r5
ok398 for ( v16 = 0 ; v16 < 3 ; v16++ ) 
okST:00000B5435 01add r5,#0x1
okST:00000B562D 02cmp r5,#0x2
okST:00000B58DD FBble 0xB52
400 
ok401 i = v17; 
okST:00000B5A1C 25mov r5,r4
402 
ok403 for ( v1 = 0 ; v1 < 3 ; v1++ ) 
okST:00000B5C25 00mov r5,#0x0
okST:00000B5EE0 01b 0xB64
ok404 v17 += v1; 
okST:00000B6019 64add r4,r4,r5
402 
ok403 for ( v1 = 0 ; v1 < 3 ; v1++ ) 
okST:00000B6235 01add r5,#0x1
okST:00000B642D 02cmp r5,#0x2
okST:00000B66DD FBble 0xB60
ok405 for ( v2 = 0 ; v2 < 3 ; v2++ ) 
okST:00000B6825 00mov r5,#0x0
okST:00000B6AE0 01b 0xB70
ok406 v17 += v2; 
okST:00000B6C19 64add r4,r4,r5
ok405 for ( v2 = 0 ; v2 < 3 ; v2++ ) 
okST:00000B6E35 01add r5,#0x1
okST:00000B702D 02cmp r5,#0x2
okST:00000B72DD FBble 0xB6C
ok407 for ( v3 = 0 ; v3 < 3 ; v3++ ) 
okST:00000B7425 00mov r5,#0x0
okST:00000B76E0 01b 0xB7C
ok408 v17 += v3; 
okST:00000B7819 64add r4,r4,r5
ok407 for ( v3 = 0 ; v3 < 3 ; v3++ ) 
okST:00000B7A35 01add r5,#0x1
okST:00000B7C2D 02cmp r5,#0x2
okST:00000B7EDD FBble 0xB78
ok409 for ( v4 = 0 ; v4 < 3 ; v4++ ) 
okST:00000B8025 00mov r5,#0x0
okST:00000B82E0 01b 0xB88
ok410 v17 += v4; 
okST:00000B8419 64add r4,r4,r5
ok409 for ( v4 = 0 ; v4 < 3 ; v4++ ) 
okST:00000B8635 01add r5,#0x1
okST:00000B882D 02cmp r5,#0x2
okST:00000B8ADD FBble 0xB84
ok411 for ( v5 = 0 ; v5 < 3 ; v5++ ) 
okST:00000B8C25 00mov r5,#0x0
okST:00000B8EE0 01b 0xB94
ok412 v17 += v5; 
okST:00000B9019 64add r4,r4,r5
ok411 for ( v5 = 0 ; v5 < 3 ; v5++ ) 
okST:00000B9235 01add r5,#0x1
okST:00000B942D 02cmp r5,#0x2
okST:00000B96DD FBble 0xB90
ok413 for ( v6 = 0 ; v6 < 3 ; v6++ ) 
okST:00000B9825 00mov r5,#0x0
okST:00000B9AE0 01b 0xBA0
ok414 v17 += v6; 
okST:00000B9C19 64add r4,r4,r5
ok413 for ( v6 = 0 ; v6 < 3 ; v6++ ) 
okST:00000B9E35 01add r5,#0x1
okST:00000BA02D 02cmp r5,#0x2
okST:00000BA2DD FBble 0xB9C
ok415 for ( v7 = 0 ; v7 < 3 ; v7++ ) 
okST:00000BA425 00mov r5,#0x0
okST:00000BA6E0 01b 0xBAC
ok416 v17 += v7; 
okST:00000BA819 64add r4,r4,r5
ok415 for ( v7 = 0 ; v7 < 3 ; v7++ ) 
okST:00000BAA35 01add r5,#0x1
okST:00000BAC2D 02cmp r5,#0x2
okST:00000BAEDD FBble 0xBA8
ok417 for ( v8 = 0 ; v8 < 3 ; v8++ ) 
okST:00000BB025 00mov r5,#0x0
okST:00000BB2E0 01b 0xBB8
ok418 v17 += v8; 
okST:00000BB419 64add r4,r4,r5
ok417 for ( v8 = 0 ; v8 < 3 ; v8++ ) 
okST:00000BB635 01add r5,#0x1
okST:00000BB82D 02cmp r5,#0x2
okST:00000BBADD FBble 0xBB4
ok419 for ( v9 = 0 ; v9 < 3 ; v9++ ) 
okST:00000BBC25 00mov r5,#0x0
okST:00000BBEE0 01b 0xBC4
ok420 v17 += v9; 
okST:00000BC019 64add r4,r4,r5
ok419 for ( v9 = 0 ; v9 < 3 ; v9++ ) 
okST:00000BC235 01add r5,#0x1
okST:00000BC42D 02cmp r5,#0x2
okST:00000BC6DD FBble 0xBC0
ok421 for ( v10 = 0 ; v10 < 3 ; v10++ ) 
okST:00000BC825 00mov r5,#0x0
okST:00000BCAE0 01b 0xBD0
ok422 v17 += v10; 
okST:00000BCC19 64add r4,r4,r5
ok421 for ( v10 = 0 ; v10 < 3 ; v10++ ) 
okST:00000BCE35 01add r5,#0x1
okST:00000BD02D 02cmp r5,#0x2
okST:00000BD2DD FBble 0xBCC
ok423 for ( v11 = 0 ; v11 < 3 ; v11++ ) 
okST:00000BD425 00mov r5,#0x0
okST:00000BD6E0 01b 0xBDC
ok424 v17 += v11; 
okST:00000BD819 64add r4,r4,r5
ok423 for ( v11 = 0 ; v11 < 3 ; v11++ ) 
okST:00000BDA35 01add r5,#0x1
okST:00000BDC2D 02cmp r5,#0x2
okST:00000BDEDD FBble 0xBD8
ok425 for ( v12 = 0 ; v12 < 3 ; v12++ ) 
okST:00000BE025 00mov r5,#0x0
okST:00000BE2E0 01b 0xBE8
ok426 v17 += v12; 
okST:00000BE419 64add r4,r4,r5
ok425 for ( v12 = 0 ; v12 < 3 ; v12++ ) 
okST:00000BE635 01add r5,#0x1
okST:00000BE82D 02cmp r5,#0x2
okST:00000BEADD FBble 0xBE4
ok427 for ( v13 = 0 ; v13 < 3 ; v13++ ) 
okST:00000BEC25 00mov r5,#0x0
okST:00000BEEE0 01b 0xBF4
ok428 v17 += v13; 
okST:00000BF019 64add r4,r4,r5
ok427 for ( v13 = 0 ; v13 < 3 ; v13++ ) 
okST:00000BF235 01add r5,#0x1
okST:00000BF42D 02cmp r5,#0x2
okST:00000BF6DD FBble 0xBF0
ok429 for ( v14 = 0 ; v14 < 3 ; v14++ ) 
okST:00000BF825 00mov r5,#0x0
okST:00000BFAE0 01b 0xC00
ok430 v17 += v14; 
okST:00000BFC19 64add r4,r4,r5
ok429 for ( v14 = 0 ; v14 < 3 ; v14++ ) 
okST:00000BFE35 01add r5,#0x1
okST:00000C002D 02cmp r5,#0x2
okST:00000C02DD FBble 0xBFC
ok431 for ( v15 = 0 ; v15 < 3 ; v15++ ) 
okST:00000C0425 00mov r5,#0x0
okST:00000C06E0 01b 0xC0C
ok432 v17 += v15; 
okST:00000C0819 64add r4,r4,r5
ok431 for ( v15 = 0 ; v15 < 3 ; v15++ ) 
okST:00000C0A35 01add r5,#0x1
okST:00000C0C2D 02cmp r5,#0x2
okST:00000C0EDD FBble 0xC08
ok433 for ( v16 = 0 ; v16 < 3 ; v16++ ) 
okST:00000C1025 00mov r5,#0x0
okST:00000C12E0 01b 0xC18
ok434 v17 += v16; 
okST:00000C1419 64add r4,r4,r5
ok433 for ( v16 = 0 ; v16 < 3 ; v16++ ) 
okST:00000C1635 01add r5,#0x1
okST:00000C182D 02cmp r5,#0x2
okST:00000C1ADD FBble 0xC14
435 
ok436 return v17; 
okST:00000C1C1C 23mov r3,r4
ok437
okST:00000C1E1C 18mov r0,r3
okST:00000C2046 BDmov r13,r7
okST:00000C22BC B0pop {r4-r5,r7}
okST:00000C24BC 02pop {r1}
okST:00000C2647 08bx r1
438 
439int func11( int x ) /* multiple returns */ 
ok440
okST:00000C28B5 80func11:push {r7,r14}
okST:00000C2AB0 82sub sp,#0x8
okST:00000C2CAF 00add r7,sp,#0x0
okST:00000C2E60 78str r0,[r7,#0x4]
not taken441 switch ( x ) 
okST:00000C3068 7Bldr r3,[r7,#0x4]
okST:00000C322B 06cmp r3,#0x6
not takenST:00000C34D8 23bhi 0xC7E
okST:00000C3668 7Bldr r3,[r7,#0x4]
okST:00000C3800 9Alsl r2,r3,#0x2
okST:00000C3A4B 15ldr r3,0xC90
okST:00000C3C18 D3add r3,r2,r3
okST:00000C3E68 1Bldr r3,[r3]
okST:00000C4046 9Fmov pc,r3
442
443 case 1: 
never444 x = x+1; 
neverST:00000C4268 7Bldr r3,[r7,#0x4]
neverST:00000C4433 01add r3,#0x1
neverST:00000C4660 7Bstr r3,[r7,#0x4]
never445 x = x*2; 
neverST:00000C4868 7Bldr r3,[r7,#0x4]
neverST:00000C4A00 5Blsl r3,r3,#0x1
neverST:00000C4C60 7Bstr r3,[r7,#0x4]
never446 return x*x; 
neverST:00000C4E68 7Bldr r3,[r7,#0x4]
neverST:00000C5068 7Aldr r2,[r7,#0x4]
neverST:00000C5243 53mul r3,r2
neverST:00000C54E0 15b 0xC82
447 case 2: 
never448 return x+x; 
neverST:00000C5668 7Aldr r2,[r7,#0x4]
neverST:00000C5868 7Bldr r3,[r7,#0x4]
neverST:00000C5A18 D3add r3,r2,r3
neverST:00000C5CE0 11b 0xC82
449 case 3: 
never450 return x-x; 
neverST:00000C5E23 00mov r3,#0x0
neverST:00000C60E0 0Fb 0xC82
451 case 4: 
never452 x = x+1; 
neverST:00000C6268 7Bldr r3,[r7,#0x4]
neverST:00000C6433 01add r3,#0x1
neverST:00000C6660 7Bstr r3,[r7,#0x4]
never453 x = x*2; 
neverST:00000C6868 7Bldr r3,[r7,#0x4]
neverST:00000C6A00 5Blsl r3,r3,#0x1
neverST:00000C6C60 7Bstr r3,[r7,#0x4]
never454 return x*x; 
neverST:00000C6E68 7Bldr r3,[r7,#0x4]
neverST:00000C7068 7Aldr r2,[r7,#0x4]
neverST:00000C7243 53mul r3,r2
neverST:00000C74E0 05b 0xC82
455 case 5: 
456 break; 
457 case 6: 
never458 return x+x; 
neverST:00000C7668 7Aldr r2,[r7,#0x4]
neverST:00000C7868 7Bldr r3,[r7,#0x4]
neverST:00000C7A18 D3add r3,r2,r3
neverST:00000C7CE0 01b 0xC82
459 default: 
ok460 break; 
okST:00000C7E46 C0nop
461
ok462 return x; 
okST:00000C8068 7Bldr r3,[r7,#0x4]
partial463
okST:00000C821C 18mov r0,r3
okST:00000C8446 BDmov r13,r7
okST:00000C86B0 02add sp,#0x8
okST:00000C88BC 80pop {r7}
okST:00000C8ABC 02pop {r1}
okST:00000C8C47 08bx r1
neverST:00000C8E46 C0nop
readSP:00000C9000 00 43 74dcd 0x4374
464 
465typedef char undefarray[]; 
466typedef undefarray * undefptr; 
467 
468void func12( undefptr ptr ) /* pointer to array of unknown size */ 
never469
neverST:00000C94B5 80func12:push {r7,r14}
neverST:00000C96B0 82sub sp,#0x8
neverST:00000C98AF 00add r7,sp,#0x0
neverST:00000C9A60 78str r0,[r7,#0x4]
never470 (*ptr)[0] = 1; 
neverST:00000C9C68 7Bldr r3,[r7,#0x4]
neverST:00000C9E22 01mov r2,#0x1
neverST:00000CA070 1Astrb r2,[r3]
never471
neverST:00000CA246 BDmov r13,r7
neverST:00000CA4B0 02add sp,#0x8
neverST:00000CA6BC 80pop {r7}
neverST:00000CA8BC 01pop {r0}
neverST:00000CAA47 00bx r0
472 
473int func13( int a, int c, int e ) /* arguments and locals stack-tracking */ 
ok474
okST:00000CACB5 80func13:push {r7,r14}
okST:00000CAEB0 88sub sp,#0x20
okST:00000CB0AF 00add r7,sp,#0x0
okST:00000CB260 F8str r0,[r7,#0x0C]
okST:00000CB460 B9str r1,[r7,#0x8]
okST:00000CB660 7Astr r2,[r7,#0x4]
475 int b, d, f; 
476 
ok477 b = a+c+e; 
okST:00000CB868 FAldr r2,[r7,#0x0C]
okST:00000CBA68 BBldr r3,[r7,#0x8]
okST:00000CBC18 D2add r2,r2,r3
okST:00000CBE68 7Bldr r3,[r7,#0x4]
okST:00000CC018 D3add r3,r2,r3
okST:00000CC261 FBstr r3,[r7,#0x1C]
ok478 f = b+a; 
okST:00000CC469 FAldr r2,[r7,#0x1C]
okST:00000CC668 FBldr r3,[r7,#0x0C]
okST:00000CC818 D3add r3,r2,r3
okST:00000CCA61 BBstr r3,[r7,#0x18]
ok479 d = f*b; 
okST:00000CCC69 BBldr r3,[r7,#0x18]
okST:00000CCE69 FAldr r2,[r7,#0x1C]
okST:00000CD043 53mul r3,r2
okST:00000CD261 7Bstr r3,[r7,#0x14]
480 
ok481 if ( e > 0 ) 
okST:00000CD468 7Bldr r3,[r7,#0x4]
okST:00000CD62B 00cmp r3,#0x0
okST:00000CD8DD 0Cble 0xCF4
ok482 c += func13( b, f, e-1 ); 
okST:00000CDA68 7Bldr r3,[r7,#0x4]
okST:00000CDC3B 01sub r3,#0x1
okST:00000CDE69 F9ldr r1,[r7,#0x1C]
okST:00000CE069 BAldr r2,[r7,#0x18]
okST:00000CE21C 08mov r0,r1
okST:00000CE41C 11mov r1,r2
okST:00000CE61C 1Amov r2,r3
okST:00000CE8F7 FF FF E0bl 0xCAC
okST:00000CEC1C 03mov r3,r0
okST:00000CEE68 BAldr r2,[r7,#0x8]
okST:00000CF018 D3add r3,r2,r3
okST:00000CF260 BBstr r3,[r7,#0x8]
483 
ok484 return c+e+d; 
okST:00000CF468 BAldr r2,[r7,#0x8]
okST:00000CF668 7Bldr r3,[r7,#0x4]
okST:00000CF818 D2add r2,r2,r3
okST:00000CFA69 7Bldr r3,[r7,#0x14]
okST:00000CFC18 D3add r3,r2,r3
partial485
okST:00000CFE1C 18mov r0,r3
okST:00000D0046 BDmov r13,r7
okST:00000D02B0 08add sp,#0x20
okST:00000D04BC 80pop {r7}
okST:00000D06BC 02pop {r1}
okST:00000D0847 08bx r1
neverST:00000D0A46 C0nop
486 
487int func14( char x1 ) /* Parameter: 1 Byte */ 
ok488
okST:00000D0CB5 80func14:push {r7,r14}
okST:00000D0EB0 82sub sp,#0x8
okST:00000D10AF 00add r7,sp,#0x0
okST:00000D121C 02mov r2,r0
okST:00000D141D FBadd r3,r7,#0x7
okST:00000D1670 1Astrb r2,[r3]
ok489 return 2*x1; 
okST:00000D181D FBadd r3,r7,#0x7
okST:00000D1A78 1Bldrb r3,[r3]
okST:00000D1C00 5Blsl r3,r3,#0x1
partial490
okST:00000D1E1C 18mov r0,r3
okST:00000D2046 BDmov r13,r7
okST:00000D22B0 02add sp,#0x8
okST:00000D24BC 80pop {r7}
okST:00000D26BC 02pop {r1}
okST:00000D2847 08bx r1
neverST:00000D2A46 C0nop
491 
492int func15( short x1 ) /* Parameter: 1 Word */ 
ok493
okST:00000D2CB5 80func15:push {r7,r14}
okST:00000D2EB0 82sub sp,#0x8
okST:00000D30AF 00add r7,sp,#0x0
okST:00000D321C 02mov r2,r0
okST:00000D341D BBadd r3,r7,#0x6
okST:00000D3680 1Astrh r2,[r3]
ok494 return 2*x1; 
okST:00000D381D BBadd r3,r7,#0x6
okST:00000D3A22 00mov r2,#0x0
okST:00000D3C5E 9Bldrsh r3,[r3,r2]
okST:00000D3E00 5Blsl r3,r3,#0x1
ok495
okST:00000D401C 18mov r0,r3
okST:00000D4246 BDmov r13,r7
okST:00000D44B0 02add sp,#0x8
okST:00000D46BC 80pop {r7}
okST:00000D48BC 02pop {r1}
okST:00000D4A47 08bx r1
496 
497int func16( long x1 ) /* Parameter: 1 Long */ 
ok498
okST:00000D4CB5 80func16:push {r7,r14}
okST:00000D4EB0 82sub sp,#0x8
okST:00000D50AF 00add r7,sp,#0x0
okST:00000D5260 78str r0,[r7,#0x4]
ok499 return (int) (2*x1); 
okST:00000D5468 7Bldr r3,[r7,#0x4]
okST:00000D5600 5Blsl r3,r3,#0x1
ok500
okST:00000D581C 18mov r0,r3
okST:00000D5A46 BDmov r13,r7
okST:00000D5CB0 02add sp,#0x8
okST:00000D5EBC 80pop {r7}
okST:00000D60BC 02pop {r1}
okST:00000D6247 08bx r1
501 
502int func17( short x1, short x2 ) /* Parameter: 2 Short */ 
ok503
okST:00000D64B5 80func17:push {r7,r14}
okST:00000D66B0 82sub sp,#0x8
okST:00000D68AF 00add r7,sp,#0x0
okST:00000D6A1C 0Amov r2,r1
okST:00000D6C1D BBadd r3,r7,#0x6
okST:00000D6E1C 01mov r1,r0
okST:00000D7080 19strh r1,[r3]
okST:00000D721D 3Badd r3,r7,#0x4
okST:00000D7480 1Astrh r2,[r3]
ok504 return x1*x2; 
okST:00000D761D BBadd r3,r7,#0x6
okST:00000D7821 00mov r1,#0x0
okST:00000D7A5E 5Bldrsh r3,[r3,r1]
okST:00000D7C1D 3Aadd r2,r7,#0x4
okST:00000D7E21 00mov r1,#0x0
okST:00000D805E 52ldrsh r2,[r2,r1]
okST:00000D8243 53mul r3,r2
ok505
okST:00000D841C 18mov r0,r3
okST:00000D8646 BDmov r13,r7
okST:00000D88B0 02add sp,#0x8
okST:00000D8ABC 80pop {r7}
okST:00000D8CBC 02pop {r1}
okST:00000D8E47 08bx r1
506 
507int func18( short x1, long x2 ) /* Parameter: Short,Long */ 
ok508
okST:00000D90B5 80func18:push {r7,r14}
okST:00000D92B0 82sub sp,#0x8
okST:00000D94AF 00add r7,sp,#0x0
okST:00000D961C 02mov r2,r0
okST:00000D9860 39str r1,[r7]
okST:00000D9A1D BBadd r3,r7,#0x6
okST:00000D9C80 1Astrh r2,[r3]
ok509 return x1*x2; 
okST:00000D9E1D BBadd r3,r7,#0x6
okST:00000DA022 00mov r2,#0x0
okST:00000DA25E 9Bldrsh r3,[r3,r2]
okST:00000DA468 3Aldr r2,[r7]
okST:00000DA643 53mul r3,r2
ok510
okST:00000DA81C 18mov r0,r3
okST:00000DAA46 BDmov r13,r7
okST:00000DACB0 02add sp,#0x8
okST:00000DAEBC 80pop {r7}
okST:00000DB0BC 02pop {r1}
okST:00000DB247 08bx r1
511 
512int func19( long x1, short x2 ) /* Parameter: Long,Short */ 
ok513
okST:00000DB4B5 80func19:push {r7,r14}
okST:00000DB6B0 82sub sp,#0x8
okST:00000DB8AF 00add r7,sp,#0x0
okST:00000DBA60 78str r0,[r7,#0x4]
okST:00000DBC1C 0Amov r2,r1
okST:00000DBE1C BBadd r3,r7,#0x2
okST:00000DC080 1Astrh r2,[r3]
ok514 return x1*x2; 
okST:00000DC21C BBadd r3,r7,#0x2
okST:00000DC422 00mov r2,#0x0
okST:00000DC65E 9Bldrsh r3,[r3,r2]
okST:00000DC868 7Aldr r2,[r7,#0x4]
okST:00000DCA43 53mul r3,r2
ok515
okST:00000DCC1C 18mov r0,r3
okST:00000DCE46 BDmov r13,r7
okST:00000DD0B0 02add sp,#0x8
okST:00000DD2BC 80pop {r7}
okST:00000DD4BC 02pop {r1}
okST:00000DD647 08bx r1
516 
517int func20( short x1, short x2, short x3 ) /* Parameter: 3 Short */ 
ok518
okST:00000DD8B5 80func20:push {r7,r14}
okST:00000DDAB0 82sub sp,#0x8
okST:00000DDCAF 00add r7,sp,#0x0
okST:00000DDE1D BBadd r3,r7,#0x6
okST:00000DE080 18strh r0,[r3]
okST:00000DE21D 3Badd r3,r7,#0x4
okST:00000DE480 19strh r1,[r3]
okST:00000DE61C BBadd r3,r7,#0x2
okST:00000DE880 1Astrh r2,[r3]
ok519 return x1*x2*x3; 
okST:00000DEA1D BBadd r3,r7,#0x6
okST:00000DEC21 00mov r1,#0x0
okST:00000DEE5E 5Bldrsh r3,[r3,r1]
okST:00000DF01D 3Aadd r2,r7,#0x4
okST:00000DF221 00mov r1,#0x0
okST:00000DF45E 52ldrsh r2,[r2,r1]
okST:00000DF643 53mul r3,r2
okST:00000DF81C BAadd r2,r7,#0x2
okST:00000DFA21 00mov r1,#0x0
okST:00000DFC5E 52ldrsh r2,[r2,r1]
okST:00000DFE43 53mul r3,r2
ok520
okST:00000E001C 18mov r0,r3
okST:00000E0246 BDmov r13,r7
okST:00000E04B0 02add sp,#0x8
okST:00000E06BC 80pop {r7}
okST:00000E08BC 02pop {r1}
okST:00000E0A47 08bx r1
521 
522int func21( long x1, short x2, short x3 ) /* Parameter: Long,Short,Short */ 
ok523
okST:00000E0CB5 80func21:push {r7,r14}
okST:00000E0EB0 82sub sp,#0x8
okST:00000E10AF 00add r7,sp,#0x0
okST:00000E1260 78str r0,[r7,#0x4]
okST:00000E141C BBadd r3,r7,#0x2
okST:00000E1680 19strh r1,[r3]
okST:00000E181C 3Bmov r3,r7
okST:00000E1A80 1Astrh r2,[r3]
ok524 return x1*x2*x3; 
okST:00000E1C1C BBadd r3,r7,#0x2
okST:00000E1E21 00mov r1,#0x0
okST:00000E205E 5Bldrsh r3,[r3,r1]
okST:00000E2268 7Aldr r2,[r7,#0x4]
okST:00000E2443 53mul r3,r2
okST:00000E261C 3Amov r2,r7
okST:00000E2821 00mov r1,#0x0
okST:00000E2A5E 52ldrsh r2,[r2,r1]
okST:00000E2C43 53mul r3,r2
partial525
okST:00000E2E1C 18mov r0,r3
okST:00000E3046 BDmov r13,r7
okST:00000E32B0 02add sp,#0x8
okST:00000E34BC 80pop {r7}
okST:00000E36BC 02pop {r1}
okST:00000E3847 08bx r1
neverST:00000E3A46 C0nop
526 
527int func22( short x1, long x2, short x3 ) /* Parameter: Short,Long,Short */ 
ok528
okST:00000E3CB5 80func22:push {r7,r14}
okST:00000E3EB0 82sub sp,#0x8
okST:00000E40AF 00add r7,sp,#0x0
okST:00000E4260 39str r1,[r7]
okST:00000E441D BBadd r3,r7,#0x6
okST:00000E461C 01mov r1,r0
okST:00000E4880 19strh r1,[r3]
okST:00000E4A1D 3Badd r3,r7,#0x4
okST:00000E4C80 1Astrh r2,[r3]
ok529 return x1*x2*x3; 
okST:00000E4E1D BBadd r3,r7,#0x6
okST:00000E5021 00mov r1,#0x0
okST:00000E525E 5Bldrsh r3,[r3,r1]
okST:00000E5468 3Aldr r2,[r7]
okST:00000E5643 53mul r3,r2
okST:00000E581D 3Aadd r2,r7,#0x4
okST:00000E5A21 00mov r1,#0x0
okST:00000E5C5E 52ldrsh r2,[r2,r1]
okST:00000E5E43 53mul r3,r2
ok530
okST:00000E601C 18mov r0,r3
okST:00000E6246 BDmov r13,r7
okST:00000E64B0 02add sp,#0x8
okST:00000E66BC 80pop {r7}
okST:00000E68BC 02pop {r1}
okST:00000E6A47 08bx r1
531 
532int func23( short x1, short x2, long x3 ) /* Parameter: Short,Short,Long */ 
never533
neverST:00000E6CB5 80func23:push {r7,r14}
neverST:00000E6EB0 82sub sp,#0x8
neverST:00000E70AF 00add r7,sp,#0x0
neverST:00000E7260 3Astr r2,[r7]
neverST:00000E741D BBadd r3,r7,#0x6
neverST:00000E761C 02mov r2,r0
neverST:00000E7880 1Astrh r2,[r3]
neverST:00000E7A1D 3Badd r3,r7,#0x4
neverST:00000E7C1C 0Amov r2,r1
neverST:00000E7E80 1Astrh r2,[r3]
never534 return x1*x2*x3; 
neverST:00000E801D BBadd r3,r7,#0x6
neverST:00000E8221 00mov r1,#0x0
neverST:00000E845E 5Bldrsh r3,[r3,r1]
neverST:00000E861D 3Aadd r2,r7,#0x4
neverST:00000E8821 00mov r1,#0x0
neverST:00000E8A5E 52ldrsh r2,[r2,r1]
neverST:00000E8C43 53mul r3,r2
neverST:00000E8E68 3Aldr r2,[r7]
neverST:00000E9043 53mul r3,r2
never535
neverST:00000E921C 18mov r0,r3
neverST:00000E9446 BDmov r13,r7
neverST:00000E96B0 02add sp,#0x8
neverST:00000E98BC 80pop {r7}
neverST:00000E9ABC 02pop {r1}
neverST:00000E9C47 08bx r1
neverST:00000E9E46 C0nop
536 
537char func24(void) /* Char Return */ 
never538
neverST:00000EA0B5 80func24:push {r7,r14}
neverST:00000EA2AF 00add r7,sp,#0x0
never539 return 55; 
neverST:00000EA423 37mov r3,#0x37
never540
neverST:00000EA61C 18mov r0,r3
neverST:00000EA846 BDmov r13,r7
neverST:00000EAABC 80pop {r7}
neverST:00000EACBC 02pop {r1}
neverST:00000EAE47 08bx r1
541 
542long func25(void) /* Long Return */ 
never543
neverST:00000EB0B5 80func25:push {r7,r14}
neverST:00000EB2AF 00add r7,sp,#0x0
never544 return 12345678l; 
neverST:00000EB44B 02ldr r3,0xEC0
never545
neverST:00000EB61C 18mov r0,r3
neverST:00000EB846 BDmov r13,r7
neverST:00000EBABC 80pop {r7}
neverST:00000EBCBC 02pop {r1}
neverST:00000EBE47 08bx r1
neverSP:00000EC000 BC 61 4Edcd 0xBC614E
546 
547char * func26(void) /* Pointer Return */ 
never548
neverST:00000EC4B5 80func26:push {r7,r14}
neverST:00000EC6AF 00add r7,sp,#0x0
549 static char x1[] = "Babel Fish"; 
550 
never551 return x1; 
neverST:00000EC84B 02ldr r3,0xED4
never552
neverST:00000ECA1C 18mov r0,r3
neverST:00000ECC46 BDmov r13,r7
neverST:00000ECEBC 80pop {r7}
neverST:00000ED0BC 02pop {r1}
neverST:00000ED247 08bx r1
neverSP:00000ED400 00 46 50dcd 0x4650
553 
554struct struct1 func27( short x1, short x2 ) /* function returning struct */ 
never555C:00000ED8never called => dead code
neverST:00000ED8B5 90func27:push {r4,r7,r14}never called => dead code
neverST:00000EDAB0 83sub sp,#0x0C
neverST:00000EDCAF 00add r7,sp,#0x0
neverST:00000EDE60 78str r0,[r7,#0x4]
neverST:00000EE01C BBadd r3,r7,#0x2
neverST:00000EE280 19strh r1,[r3]
neverST:00000EE41C 3Bmov r3,r7
neverST:00000EE680 1Astrh r2,[r3]
never556 ast.count = x1*x2; 
neverST:00000EE81C BBadd r3,r7,#0x2
neverST:00000EEA20 00mov r0,#0x0
neverST:00000EEC5E 1Bldrsh r3,[r3,r0]
neverST:00000EEE1C 3Amov r2,r7
neverST:00000EF021 00mov r1,#0x0
neverST:00000EF25E 52ldrsh r2,[r2,r1]
neverST:00000EF443 5Amul r2,r3
neverST:00000EF64B 07ldr r3,0xF14
neverST:00000EF860 5Astr r2,[r3,#0x4]
557 
never558 return ast; 
neverST:00000EFA68 7Bldr r3,[r7,#0x4]
neverST:00000EFC4A 05ldr r2,0xF14
neverST:00000EFECA 13ldmia r2!,{r0-r1,r4}
neverST:00000F00C3 13stmia r3!,{r0-r1,r4}
neverST:00000F02CA 11ldmia r2!,{r0,r4}
neverST:00000F04C3 11stmia r3!,{r0,r4}
never559
neverST:00000F0668 78ldr r0,[r7,#0x4]
neverST:00000F0846 BDmov r13,r7
neverST:00000F0AB0 03add sp,#0x0C
neverST:00000F0CBC 90pop {r4,r7}
neverST:00000F0EBC 02pop {r1}
neverST:00000F1047 08bx r1
neverST:00000F1246 C0nop
neverSP:00000F1400 00 47 50dcd 0x4750
560 
561 
562#if !defined(__aarch32__)&&!defined(__thumb__)&&!defined(__thumb2__)&&!defined(__aarch64__) 
563# define __aarch32__ 1 
564#endif 
565 
566static int test_cond_instr( int arg1, int arg2 ) /* function with conditional (non-branch) instructions */ 
never567
neverST:00000F18B5 80test_cond_instr:push {r7,r14}
neverST:00000F1AB0 84sub sp,#0x10
neverST:00000F1CAF 00add r7,sp,#0x0
neverST:00000F1E60 78str r0,[r7,#0x4]
neverST:00000F2060 39str r1,[r7]
... 
572 "ittte ne \n\t" 
573 "mulne %[arg2],%[arg1],%[arg2] \n\t" 
574 "addne %[arg2],%[arg2],#42 \n\t" 
575 "asrne %[result],%[arg2],#1 \n\t" 
576 "moveq %[result],#0 \n\t" 
577 : [result] "=r" (result) : [arg1] "r" (arg1), [arg2] "r" (arg2) 
578 ); 
579#else 
never580 arg2 = arg1 - arg2; 
neverST:00000F2268 7Aldr r2,[r7,#0x4]
neverST:00000F2468 3Bldr r3,[r7]
neverST:00000F261A D3sub r3,r2,r3
neverST:00000F2860 3Bstr r3,[r7]
never581 if (arg2){ 
neverST:00000F2A68 3Bldr r3,[r7]
neverST:00000F2C2B 00cmp r3,#0x0
neverST:00000F2ED0 0Abeq 0xF46
never582 arg2 = arg2 * arg1; 
neverST:00000F3068 3Bldr r3,[r7]
neverST:00000F3268 7Aldr r2,[r7,#0x4]
neverST:00000F3443 53mul r3,r2
neverST:00000F3660 3Bstr r3,[r7]
never583 arg2 = arg2 + 42; 
neverST:00000F3868 3Bldr r3,[r7]
neverST:00000F3A33 2Aadd r3,#0x2A
neverST:00000F3C60 3Bstr r3,[r7]
never584 result = arg2 >> 1; 
neverST:00000F3E68 3Bldr r3,[r7]
neverST:00000F4010 5Basr r3,r3,#0x1
neverST:00000F4260 FBstr r3,[r7,#0x0C]
neverST:00000F44E0 01b 0xF4A
585 } else { 
never586 result = 0; 
neverST:00000F4623 00mov r3,#0x0
neverST:00000F4860 FBstr r3,[r7,#0x0C]
587
588#endif 
never589 return result; 
neverST:00000F4A68 FBldr r3,[r7,#0x0C]
never590
neverST:00000F4C1C 18mov r0,r3
neverST:00000F4E46 BDmov r13,r7
neverST:00000F50B0 04add sp,#0x10
neverST:00000F52BC 80pop {r7}
neverST:00000F54BC 02pop {r1}
neverST:00000F5647 08bx r1
591 
592 
593double sinewave[628]; 
594 
595void func_sin(void) 
ok596
okST:00000F58B5 F0func_sin:push {r4-r7,r14}
okST:00000F5AB0 85sub sp,#0x14
okST:00000F5CAF 00add r7,sp,#0x0
597 int index; 
598 double x; 
599 
ok600 index = 0; 
okST:00000F5E23 00mov r3,#0x0
okST:00000F6060 FBstr r3,[r7,#0x0C]
ok601 for ( x = 0.0 ; x < 62.8 ; x += 0.1 ) 
okST:00000F624C 2Cldr r4,0x1014
okST:00000F644B 2Aldr r3,0x1010
okST:00000F6660 3Bstr r3,[r7]
okST:00000F6860 7Cstr r4,[r7,#0x4]
okST:00000F6AE0 3Ab 0xFE2
ok602 sinewave[index++] = (sin(x)/(x+0.1)) * 300.0 + 80.0; 
okST:00000F6C68 3Bldr r3,[r7]
okST:00000F6E68 7Cldr r4,[r7,#0x4]
okST:00000F701C 18mov r0,r3
okST:00000F721C 21mov r1,r4
okST:00000F74F0 01 F8 C0bl 0x20F8
okST:00000F781C 05mov r5,r0
okST:00000F7A1C 0Emov r6,r1
okST:00000F7C68 38ldr r0,[r7]
okST:00000F7E68 79ldr r1,[r7,#0x4]
okST:00000F804A 25ldr r2,0x1018
okST:00000F824B 26ldr r3,0x101C
okST:00000F84F0 03 F9 DCbl 0x4340
okST:00000F881C 03mov r3,r0
okST:00000F8A1C 0Cmov r4,r1
okST:00000F8C1C 28mov r0,r5
okST:00000F8E1C 31mov r1,r6
okST:00000F901C 1Amov r2,r3
okST:00000F921C 23mov r3,r4
okST:00000F94F0 03 F9 ACbl 0x42F0
okST:00000F981C 03mov r3,r0
okST:00000F9A1C 0Cmov r4,r1
okST:00000F9C1C 18mov r0,r3
okST:00000F9E1C 21mov r1,r4
okST:00000FA04A 1Fldr r2,0x1020
okST:00000FA24B 20ldr r3,0x1024
okST:00000FA4F0 03 F9 B8bl 0x4318
okST:00000FA81C 03mov r3,r0
okST:00000FAA1C 0Cmov r4,r1
okST:00000FAC1C 18mov r0,r3
okST:00000FAE1C 21mov r1,r4
okST:00000FB04A 1Dldr r2,0x1028
okST:00000FB24B 1Eldr r3,0x102C
okST:00000FB4F0 03 F9 C4bl 0x4340
okST:00000FB81C 03mov r3,r0
okST:00000FBA1C 0Cmov r4,r1
okST:00000FBC49 1Eldr r1,0x1038
okST:00000FBE68 FAldr r2,[r7,#0x0C]
okST:00000FC000 D2lsl r2,r2,#0x3
okST:00000FC218 8Aadd r2,r1,r2
okST:00000FC460 13str r3,[r2]
okST:00000FC660 54str r4,[r2,#0x4]
okST:00000FC868 FBldr r3,[r7,#0x0C]
okST:00000FCA33 01add r3,#0x1
okST:00000FCC60 FBstr r3,[r7,#0x0C]
ok601 for ( x = 0.0 ; x < 62.8 ; x += 0.1 ) 
okST:00000FCE68 38ldr r0,[r7]
okST:00000FD068 79ldr r1,[r7,#0x4]
okST:00000FD24A 11ldr r2,0x1018
okST:00000FD44B 11ldr r3,0x101C
okST:00000FD6F0 03 F9 B3bl 0x4340
okST:00000FDA1C 03mov r3,r0
okST:00000FDC1C 0Cmov r4,r1
okST:00000FDE60 3Bstr r3,[r7]
okST:00000FE060 7Cstr r4,[r7,#0x4]
okST:00000FE223 01mov r3,#0x1
okST:00000FE41C 1Cmov r4,r3
okST:00000FE668 38ldr r0,[r7]
okST:00000FE868 79ldr r1,[r7,#0x4]
okST:00000FEA4A 11ldr r2,0x1030
okST:00000FEC4B 11ldr r3,0x1034
okST:00000FEEF0 03 F9 8Fbl 0x4310
okST:00000FF21C 03mov r3,r0
okST:00000FF4D1 01bne 0xFFA
okST:00000FF623 00mov r3,#0x0
okST:00000FF81C 1Cmov r4,r3
okST:00000FFA06 23lsl r3,r4,#0x18
okST:00000FFC0E 1Blsr r3,r3,#0x18
okST:00000FFED1 B5bne 0xF6C
partial603
okST:0000100046 BDmov r13,r7
okST:00001002B0 05add sp,#0x14
okST:00001004BC F0pop {r4-r7}
okST:00001006BC 01pop {r0}
okST:0000100847 00bx r0
neverST:0000100A46 C0nop
neverST:0000100C46 C0nop
neverST:0000100E46 C0nop
readSP:0000101000 00 00 00dcd 0x0
readSP:0000101400 00 00 00dcd 0x0
readSP:0000101899 99 99 9Adcd 0x9999999A
readSP:0000101C3F B9 99 99dcd 0x3FB99999
readSP:0000102000 00 00 00dcd 0x0
readSP:0000102440 72 C0 00dcd 0x4072C000
readSP:0000102800 00 00 00dcd 0x0
readSP:0000102C40 54 00 00dcd 0x40540000
readSP:0000103066 66 66 66dcd 0x66666666
readSP:0000103440 4F 66 66dcd 0x404F6666
readSP:0000103800 00 49 F0dcd 0x49F0
604 
605void init_linked_list(void) 
ok606
okST:0000103CB5 80init_linked_list:push {r7,r14}
okST:0000103EB0 82sub sp,#0x8
okST:00001040AF 00add r7,sp,#0x0
ok607 int i = 0; 
okST:0000104223 00mov r3,#0x0
okST:0000104460 7Bstr r3,[r7,#0x4]
ok608 const int last = sizeof(pLinkedListBuf) / sizeof(pLinkedListBuf[0]) - 1; 
okST:0000104623 04mov r3,#0x4
okST:0000104860 3Bstr r3,[r7]
609 static const char* const text[] = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; 
610 
ok611 ast.left = pLinkedListBuf; 
okST:0000104A4B 32ldr r3,0x1114
okST:0000104C4A 32ldr r2,0x1118
okST:0000104E60 9Astr r2,[r3,#0x8]
ok612 ast.right = NULL; 
okST:000010504B 30ldr r3,0x1114
okST:0000105222 00mov r2,#0x0
okST:0000105460 DAstr r2,[r3,#0x0C]
ok613 ast.count = 0; 
okST:000010564B 2Fldr r3,0x1114
okST:0000105822 00mov r2,#0x0
okST:0000105A60 5Astr r2,[r3,#0x4]
ok614 ast.word = NULL; 
okST:0000105C4B 2Dldr r3,0x1114
okST:0000105E22 00mov r2,#0x0
okST:0000106060 1Astr r2,[r3]
615 
ok616 for (i = 0; i <= last; i++) { 
okST:0000106223 00mov r3,#0x0
okST:0000106460 7Bstr r3,[r7,#0x4]
okST:00001066E0 4Cb 0x1102
ok617 pLinkedListBuf[i].left = (i==last) ? NULL : &pLinkedListBuf[i+1]; /* next element */ 
okST:0000106868 7Aldr r2,[r7,#0x4]
okST:0000106A68 3Bldr r3,[r7]
okST:0000106C42 9Acmp r2,r3
okST:0000106ED0 09beq 0x1084
okST:0000107068 7Bldr r3,[r7,#0x4]
okST:000010721C 5Aadd r2,r3,#0x1
okST:000010741C 13mov r3,r2
okST:0000107600 9Blsl r3,r3,#0x2
okST:0000107818 9Badd r3,r3,r2
okST:0000107A00 9Blsl r3,r3,#0x2
okST:0000107C1C 1Amov r2,r3
okST:0000107E4B 26ldr r3,0x1118
okST:0000108018 D2add r2,r2,r3
okST:00001082E0 00b 0x1086
okST:0000108422 00mov r2,#0x0
okST:0000108648 24ldr r0,0x1118
okST:0000108868 79ldr r1,[r7,#0x4]
okST:0000108A1C 0Bmov r3,r1
okST:0000108C00 9Blsl r3,r3,#0x2
okST:0000108E18 5Badd r3,r3,r1
okST:0000109000 9Blsl r3,r3,#0x2
okST:0000109218 C3add r3,r0,r3
okST:0000109433 08add r3,#0x8
okST:0000109660 1Astr r2,[r3]
ok618 pLinkedListBuf[i].right = (i==0) ? &ast : &pLinkedListBuf[i-1]; /* previous element */ 
okST:0000109868 7Bldr r3,[r7,#0x4]
okST:0000109A2B 00cmp r3,#0x0
okST:0000109CD0 09beq 0x10B2
okST:0000109E68 7Bldr r3,[r7,#0x4]
okST:000010A01E 5Asub r2,r3,#0x1
okST:000010A21C 13mov r3,r2
okST:000010A400 9Blsl r3,r3,#0x2
okST:000010A618 9Badd r3,r3,r2
okST:000010A800 9Blsl r3,r3,#0x2
okST:000010AA1C 1Amov r2,r3
okST:000010AC4B 1Aldr r3,0x1118
okST:000010AE18 D2add r2,r2,r3
okST:000010B0E0 00b 0x10B4
okST:000010B24A 18ldr r2,0x1114
okST:000010B448 18ldr r0,0x1118
okST:000010B668 79ldr r1,[r7,#0x4]
okST:000010B81C 0Bmov r3,r1
okST:000010BA00 9Blsl r3,r3,#0x2
okST:000010BC18 5Badd r3,r3,r1
okST:000010BE00 9Blsl r3,r3,#0x2
okST:000010C018 C3add r3,r0,r3
okST:000010C233 0Cadd r3,#0x0C
okST:000010C460 1Astr r2,[r3]
ok619 pLinkedListBuf[i].count = i; 
okST:000010C649 14ldr r1,0x1118
okST:000010C868 7Aldr r2,[r7,#0x4]
okST:000010CA1C 13mov r3,r2
okST:000010CC00 9Blsl r3,r3,#0x2
okST:000010CE18 9Badd r3,r3,r2
okST:000010D000 9Blsl r3,r3,#0x2
okST:000010D218 CBadd r3,r1,r3
okST:000010D433 04add r3,#0x4
okST:000010D668 7Aldr r2,[r7,#0x4]
okST:000010D860 1Astr r2,[r3]
ok620 pLinkedListBuf[i].word = text[i % 7]; 
okST:000010DA68 7Bldr r3,[r7,#0x4]
okST:000010DC1C 18mov r0,r3
okST:000010DE21 07mov r1,#0x7
okST:000010E0F0 03 F9 26bl 0x4330
okST:000010E41C 0Bmov r3,r1
okST:000010E61C 1Amov r2,r3
okST:000010E84B 0Cldr r3,0x111C
okST:000010EA00 92lsl r2,r2,#0x2
okST:000010EC58 D0ldr r0,[r2,r3]
okST:000010EE49 0Aldr r1,0x1118
okST:000010F068 7Aldr r2,[r7,#0x4]
okST:000010F21C 13mov r3,r2
okST:000010F400 9Blsl r3,r3,#0x2
okST:000010F618 9Badd r3,r3,r2
okST:000010F800 9Blsl r3,r3,#0x2
okST:000010FA50 58str r0,[r3,r1]
615 
ok616 for (i = 0; i <= last; i++) { 
okST:000010FC68 7Bldr r3,[r7,#0x4]
okST:000010FE33 01add r3,#0x1
okST:0000110060 7Bstr r3,[r7,#0x4]
okST:0000110268 7Aldr r2,[r7,#0x4]
okST:0000110468 3Bldr r3,[r7]
okST:0000110642 9Acmp r2,r3
okST:00001108DD AEble 0x1068
621
partial622
okST:0000110A46 BDmov r13,r7
okST:0000110CB0 02add sp,#0x8
okST:0000110EBC 80pop {r7}
okST:00001110BC 01pop {r0}
okST:0000111247 00bx r0
readSP:0000111400 00 47 50dcd 0x4750
readSP:0000111800 00 47 64dcd 0x4764
readSP:0000111C00 00 44 28dcd 0x4428
623 
624static char subst( char c ) 
never625
neverST:00001120B5 80subst:push {r7,r14}
neverST:00001122B0 82sub sp,#0x8
neverST:00001124AF 00add r7,sp,#0x0
neverST:000011261C 02mov r2,r0
neverST:000011281D FBadd r3,r7,#0x7
neverST:0000112A70 1Astrb r2,[r3]
never626 switch ( c ){ 
neverST:0000112C1D FBadd r3,r7,#0x7
neverST:0000112E78 1Bldrb r3,[r3]
neverST:000011303B 61sub r3,#0x61
neverST:000011322B 14cmp r3,#0x14
neverST:00001134D8 0Ebhi 0x1154
neverST:0000113600 9Alsl r2,r3,#0x2
neverST:000011384B 0Aldr r3,0x1164
neverST:0000113A18 D3add r3,r2,r3
neverST:0000113C68 1Bldr r3,[r3]
neverST:0000113E46 9Fmov pc,r3
627 case 'a': 
never628 return 'e'; 
neverST:0000114023 65mov r3,#0x65
neverST:00001142E0 09b 0x1158
629 case 'e': 
never630 return 'i'; 
neverST:0000114423 69mov r3,#0x69
neverST:00001146E0 07b 0x1158
631 case 'i': 
never632 return 'u'; 
neverST:0000114823 75mov r3,#0x75
neverST:0000114AE0 05b 0x1158
633 case 'o': 
never634 return 'a'; 
neverST:0000114C23 61mov r3,#0x61
neverST:0000114EE0 03b 0x1158
635 case 'u': 
never636 return 'o'; 
neverST:0000115023 6Fmov r3,#0x6F
neverST:00001152E0 01b 0x1158
637
never638 return c; 
neverST:000011541D FBadd r3,r7,#0x7
neverST:0000115678 1Bldrb r3,[r3]
never639
neverST:000011581C 18mov r0,r3
neverST:0000115A46 BDmov r13,r7
neverST:0000115CB0 02add sp,#0x8
neverST:0000115EBC 80pop {r7}
neverST:00001160BC 02pop {r1}
neverST:0000116247 08bx r1
neverSP:0000116400 00 43 90dcd 0x4390
640 
641static char* encode( char str[] ) 
never642
neverST:00001168B5 90encode:push {r4,r7,r14}
neverST:0000116AB0 85sub sp,#0x14
neverST:0000116CAF 00add r7,sp,#0x0
neverST:0000116E60 78str r0,[r7,#0x4]
643 int i; 
644 
never645 for (i = 0; str[i]; i++){ 
neverST:0000117023 00mov r3,#0x0
neverST:0000117260 FBstr r3,[r7,#0x0C]
neverST:00001174E0 3Db 0x11F2
never646 char c = str[i]; 
neverST:0000117668 FBldr r3,[r7,#0x0C]
neverST:0000117868 7Aldr r2,[r7,#0x4]
neverST:0000117A18 D2add r2,r2,r3
neverST:0000117C1C 3Bmov r3,r7
neverST:0000117E33 0Badd r3,#0x0B
neverST:0000118078 12ldrb r2,[r2]
neverST:0000118270 1Astrb r2,[r3]
never647 if ('A' <= c && c <= 'Z'){ 
neverST:000011841C 3Bmov r3,r7
neverST:0000118633 0Badd r3,#0x0B
neverST:0000118878 1Bldrb r3,[r3]
neverST:0000118A2B 40cmp r3,#0x40
neverST:0000118CD9 1Dbls 0x11CA
neverST:0000118E1C 3Bmov r3,r7
neverST:0000119033 0Badd r3,#0x0B
neverST:0000119278 1Bldrb r3,[r3]
neverST:000011942B 5Acmp r3,#0x5A
neverST:00001196D8 18bhi 0x11CA
never648 c = c + ('a'-'A'); 
neverST:000011981C 3Bmov r3,r7
neverST:0000119A33 0Badd r3,#0x0B
neverST:0000119C1C 3Amov r2,r7
neverST:0000119E32 0Badd r2,#0x0B
neverST:000011A078 12ldrb r2,[r2]
neverST:000011A232 20add r2,#0x20
neverST:000011A470 1Astrb r2,[r3]
never649 c = subst(c); 
neverST:000011A61C 3Cmov r4,r7
neverST:000011A834 0Badd r4,#0x0B
neverST:000011AA1C 3Bmov r3,r7
neverST:000011AC33 0Badd r3,#0x0B
neverST:000011AE78 1Bldrb r3,[r3]
neverST:000011B01C 18mov r0,r3
neverST:000011B2F7 FF FF B5bl 0x1120
neverST:000011B61C 03mov r3,r0
neverST:000011B870 23strb r3,[r4]
never650 c = c - ('a'-'A'); 
neverST:000011BA1C 3Bmov r3,r7
neverST:000011BC33 0Badd r3,#0x0B
neverST:000011BE1C 3Amov r2,r7
neverST:000011C032 0Badd r2,#0x0B
neverST:000011C278 12ldrb r2,[r2]
neverST:000011C43A 20sub r2,#0x20
neverST:000011C670 1Astrb r2,[r3]
neverST:000011C8E0 09b 0x11DE
651 } else { 
never652 c = subst(c); 
neverST:000011CA1C 3Cmov r4,r7
neverST:000011CC34 0Badd r4,#0x0B
neverST:000011CE1C 3Bmov r3,r7
neverST:000011D033 0Badd r3,#0x0B
neverST:000011D278 1Bldrb r3,[r3]
neverST:000011D41C 18mov r0,r3
neverST:000011D6F7 FF FF A3bl 0x1120
neverST:000011DA1C 03mov r3,r0
neverST:000011DC70 23strb r3,[r4]
653
never654 str[i] = c; 
neverST:000011DE68 FBldr r3,[r7,#0x0C]
neverST:000011E068 7Aldr r2,[r7,#0x4]
neverST:000011E218 D3add r3,r2,r3
neverST:000011E41C 3Amov r2,r7
neverST:000011E632 0Badd r2,#0x0B
neverST:000011E878 12ldrb r2,[r2]
neverST:000011EA70 1Astrb r2,[r3]
643 int i; 
644 
never645 for (i = 0; str[i]; i++){ 
neverST:000011EC68 FBldr r3,[r7,#0x0C]
neverST:000011EE33 01add r3,#0x1
neverST:000011F060 FBstr r3,[r7,#0x0C]
neverST:000011F268 FBldr r3,[r7,#0x0C]
neverST:000011F468 7Aldr r2,[r7,#0x4]
neverST:000011F618 D3add r3,r2,r3
neverST:000011F878 1Bldrb r3,[r3]
neverST:000011FA2B 00cmp r3,#0x0
neverST:000011FCD1 BBbne 0x1176
655
never656 return str; 
neverST:000011FE68 7Bldr r3,[r7,#0x4]
never657
neverST:000012001C 18mov r0,r3
neverST:0000120246 BDmov r13,r7
neverST:00001204B0 05add sp,#0x14
neverST:00001206BC 90pop {r4,r7}
neverST:00001208BC 02pop {r1}
neverST:0000120A47 08bx r1
... 
661
662 short x; 
663 short y; 
664}; 
665 
666struct shortrecord vshortrecord; 
667 
668struct shortrecord func28( struct shortrecord x ) 
never669
neverST:0000120CB5 80func28:push {r7,r14}
neverST:0000120EB0 84sub sp,#0x10
neverST:00001210AF 00add r7,sp,#0x0
neverST:000012121D 3Badd r3,r7,#0x4
neverST:0000121460 18str r0,[r3]
never670 x.x++; 
neverST:000012161D 3Badd r3,r7,#0x4
neverST:0000121888 1Bldrh r3,[r3]
neverST:0000121A33 01add r3,#0x1
neverST:0000121C04 1Blsl r3,r3,#0x10
neverST:0000121E0C 1Alsr r2,r3,#0x10
neverST:000012201D 3Badd r3,r7,#0x4
neverST:0000122280 1Astrh r2,[r3]
never671 x.y = (short) (x.x+1); 
neverST:000012241D 3Badd r3,r7,#0x4
neverST:0000122688 1Bldrh r3,[r3]
neverST:0000122804 1Blsl r3,r3,#0x10
neverST:0000122A0C 1Blsr r3,r3,#0x10
neverST:0000122C33 01add r3,#0x1
neverST:0000122E04 1Blsl r3,r3,#0x10
neverST:000012300C 1Blsr r3,r3,#0x10
neverST:0000123204 1Blsl r3,r3,#0x10
neverST:000012340C 1Alsr r2,r3,#0x10
neverST:000012361D 3Badd r3,r7,#0x4
neverST:0000123880 5Astrh r2,[r3,#0x2]
never672 return x; 
neverST:0000123A1C 3Bmov r3,r7
neverST:0000123C33 0Cadd r3,#0x0C
neverST:0000123E1D 3Aadd r2,r7,#0x4
neverST:0000124068 12ldr r2,[r2]
neverST:0000124260 1Astr r2,[r3]
neverST:000012441C 3Amov r2,r7
neverST:0000124632 0Cadd r2,#0x0C
neverST:0000124823 00mov r3,#0x0
neverST:0000124A88 11ldrh r1,[r2]
neverST:0000124C04 09lsl r1,r1,#0x10
neverST:0000124E0C 09lsr r1,r1,#0x10
neverST:000012500C 1Blsr r3,r3,#0x10
neverST:0000125204 1Blsl r3,r3,#0x10
neverST:0000125443 0Borr r3,r1
neverST:0000125688 52ldrh r2,[r2,#0x2]
neverST:0000125804 12lsl r2,r2,#0x10
neverST:0000125A04 1Blsl r3,r3,#0x10
neverST:0000125C0C 1Blsr r3,r3,#0x10
neverST:0000125E43 13orr r3,r2
never673
neverST:000012601C 18mov r0,r3
neverST:0000126246 BDmov r13,r7
neverST:00001264B0 04add sp,#0x10
neverST:00001266BC 80pop {r7}
neverST:00001268BC 02pop {r1}
neverST:0000126A47 08bx r1
... 
678 unsigned long l[1]; 
679} datas; 
680 
681static int sieve(void); 
682 
683void (*monHook)(void) __attribute__ ((section (".data"))) = 0; 
684 
685int main(void) 
ok686
okST:0000126CB5 F0main:push {r4-r7,r14}
okST:0000126EB0 8Dsub sp,#0x34
okST:00001270AF 02add r7,sp,#0x8
687 int j; 
688 short int inc, sign; 
689 char *p; 
690 
ok691 func_sin(); 
okST:00001272F7 FF FE 71bl 0xF58
692 
693 do { 
taken694 if (monHook) 
okST:000012764B BEldr r3,0x1570
okST:0000127868 1Bldr r3,[r3]
okST:0000127A2B 00cmp r3,#0x0
takenST:0000127CD0 03beq 0x1286
never695 monHook(); 
neverST:0000127E4B BCldr r3,0x1570
neverST:0000128068 1Bldr r3,[r3]
neverST:00001282F0 00 F9 FBbl 0x167C
696 
ok697 mstatic1 = 12; 
okST:000012864B BBldr r3,0x1574
okST:0000128822 0Cmov r2,#0x0C
okST:0000128A60 1Astr r2,[r3]
ok698 mstatic2 = 34; 
okST:0000128C4B BAldr r3,0x1578
okST:0000128E22 22mov r2,#0x22
okST:0000129060 1Astr r2,[r3]
ok699 mcount++; 
okST:000012924B BAldr r3,0x157C
okST:0000129468 1Bldr r3,[r3]
okST:000012961C 5Aadd r2,r3,#0x1
okST:000012984B B8ldr r3,0x157C
okST:0000129A60 1Astr r2,[r3]
700 
ok701 inc = (4 * 15000) / period; 
okST:0000129C4B B8ldr r3,0x1580
okST:0000129E68 1Bldr r3,[r3]
okST:000012A048 B8ldr r0,0x1584
okST:000012A21C 19mov r1,r3
okST:000012A4F0 03 F8 40bl 0x4328
okST:000012A81C 03mov r3,r0
okST:000012AA1C 1Amov r2,r3
okST:000012AC1C 3Bmov r3,r7
okST:000012AE33 22add r3,#0x22
okST:000012B080 1Astrh r2,[r3]
partial702 sign = ( (mcount % period) >= period/2 ) ? -1 : +1; 
okST:000012B24B B2ldr r3,0x157C
okST:000012B468 1Aldr r2,[r3]
okST:000012B64B B2ldr r3,0x1580
okST:000012B868 1Bldr r3,[r3]
okST:000012BA1C 10mov r0,r2
okST:000012BC1C 19mov r1,r3
okST:000012BEF0 03 F8 37bl 0x4330
okST:000012C21C 0Bmov r3,r1
okST:000012C41C 1Amov r2,r3
okST:000012C64B AEldr r3,0x1580
okST:000012C868 1Bldr r3,[r3]
okST:000012CA2B 00cmp r3,#0x0
takenST:000012CCDA 00bge 0x12D0
neverST:000012CE33 01add r3,#0x1
okST:000012D010 5Basr r3,r3,#0x1
okST:000012D242 9Acmp r2,r3
takenST:000012D4DB 01blt 0x12DA
neverST:000012D64B ACldr r3,0x1588
neverST:000012D8E0 00b 0x12DC
okST:000012DA23 01mov r3,#0x1
okST:000012DC1C 3Amov r2,r7
okST:000012DE32 20add r2,#0x20
okST:000012E080 13strh r3,[r2]
ok703 plot1 = plot1 + sign * inc; 
okST:000012E21C 3Bmov r3,r7
okST:000012E433 20add r3,#0x20
okST:000012E688 1Bldrh r3,[r3]
okST:000012E81C 3Amov r2,r7
okST:000012EA32 22add r2,#0x22
okST:000012EC88 12ldrh r2,[r2]
okST:000012EE43 53mul r3,r2
okST:000012F004 1Blsl r3,r3,#0x10
okST:000012F20C 1Alsr r2,r3,#0x10
okST:000012F44B A5ldr r3,0x158C
okST:000012F688 1Bldrh r3,[r3]
okST:000012F804 1Blsl r3,r3,#0x10
okST:000012FA0C 1Blsr r3,r3,#0x10
okST:000012FC18 D3add r3,r2,r3
okST:000012FE04 1Blsl r3,r3,#0x10
okST:000013000C 1Blsr r3,r3,#0x10
okST:0000130204 1Blsl r3,r3,#0x10
okST:000013040C 1Alsr r2,r3,#0x10
okST:000013064B A1ldr r3,0x158C
okST:0000130880 1Astrh r2,[r3]
ok704 plot2 = 25000 * sign; 
okST:0000130A1C 3Bmov r3,r7
okST:0000130C33 20add r3,#0x20
okST:0000130E88 1Bldrh r3,[r3]
okST:000013104A 9Fldr r2,0x1590
okST:0000131243 53mul r3,r2
okST:0000131404 1Blsl r3,r3,#0x10
okST:000013160C 1Blsr r3,r3,#0x10
okST:0000131804 1Blsl r3,r3,#0x10
okST:0000131A0C 1Alsr r2,r3,#0x10
okST:0000131C4B 9Dldr r3,0x1594
okST:0000131E80 1Astrh r2,[r3]
705 
ok706 vtriplearray[0][0][0] = 1; 
okST:000013204B 9Dldr r3,0x1598
okST:0000132222 01mov r2,#0x1
okST:0000132470 1Astrb r2,[r3]
ok707 vtriplearray[1][0][0] = 2; 
okST:000013264B 9Cldr r3,0x1598
okST:0000132822 02mov r2,#0x2
okST:0000132A73 1Astrb r2,[r3,#0x0C]
ok708 vtriplearray[0][1][0] = 3; 
okST:0000132C4B 9Aldr r3,0x1598
okST:0000132E22 03mov r2,#0x3
okST:0000133071 1Astrb r2,[r3,#0x4]
ok709 vtriplearray[0][0][1] = 4; 
okST:000013324B 99ldr r3,0x1598
okST:0000133422 04mov r2,#0x4
okST:0000133670 5Astrb r2,[r3,#0x1]
710 
ok711 func2(); 
okST:00001338F7 FF F8 CEbl 0x4D8
ok712 func2a(); 
okST:0000133CF7 FF F9 12bl 0x564
ok713 func2b(); 
okST:00001340F7 FF F9 3Ebl 0x5C0
ok714 func2c(); 
okST:00001344F7 FF F9 5Cbl 0x600
ok715 func2d(); 
okST:00001348F7 FF F9 BAbl 0x6C0
716 
ok717 funcptr = (int (*) ()) 0; 
okST:0000134C4B 93ldr r3,0x159C
okST:0000134E22 00mov r2,#0x0
okST:0000135060 1Astr r2,[r3]
ok718 funcptr = func3; 
okST:000013524B 92ldr r3,0x159C
okST:000013544A 92ldr r2,0x15A0
okST:0000135660 1Astr r2,[r3]
719 
ok720 init_linked_list(); 
okST:00001358F7 FF FE 70bl 0x103C
ok721 ast.count = 12345; 
okST:0000135C4B 91ldr r3,0x15A4
okST:0000135E4A 92ldr r2,0x15A8
okST:0000136060 5Astr r2,[r3,#0x4]
ok722 ast.field1 = 1 + mstatic2; 
okST:000013624B 85ldr r3,0x1578
okST:0000136468 1Bldr r3,[r3]
okST:0000136606 1Blsl r3,r3,#0x18
okST:000013680E 1Blsr r3,r3,#0x18
okST:0000136A33 01add r3,#0x1
okST:0000136C06 1Blsl r3,r3,#0x18
okST:0000136E0E 1Blsr r3,r3,#0x18
okST:0000137006 1Blsl r3,r3,#0x18
okST:000013720E 1Blsr r3,r3,#0x18
okST:0000137401 9Blsl r3,r3,#0x6
okST:0000137606 1Blsl r3,r3,#0x18
okST:0000137816 1Basr r3,r3,#0x18
okST:0000137A11 9Basr r3,r3,#0x6
okST:0000137C06 1Blsl r3,r3,#0x18
okST:0000137E0E 19lsr r1,r3,#0x18
okST:000013804B 88ldr r3,0x15A4
okST:0000138222 03mov r2,#0x3
okST:0000138440 0Aand r2,r1
okST:000013867C 19ldrb r1,[r3,#0x10]
okST:0000138820 03mov r0,#0x3
okST:0000138A43 81bic r1,r0
okST:0000138C43 0Aorr r2,r1
okST:0000138E74 1Astrb r2,[r3,#0x10]
ok723 ast.field2 = 2; 
okST:000013904B 84ldr r3,0x15A4
okST:000013927C 1Aldrb r2,[r3,#0x10]
okST:0000139421 1Cmov r1,#0x1C
okST:0000139643 8Abic r2,r1
okST:0000139821 08mov r1,#0x8
okST:0000139A43 0Aorr r2,r1
okST:0000139C74 1Astrb r2,[r3,#0x10]
724 
ok725 ast = func4(ast); 
okST:0000139E4C 81ldr r4,0x15A4
okST:000013A01C 38mov r0,r7
okST:000013A24B 80ldr r3,0x15A4
okST:000013A446 6Amov r2,r13
okST:000013A61C 19mov r1,r3
okST:000013A831 0Cadd r1,#0x0C
okST:000013AAC9 60ldmia r1!,{r5-r6}
okST:000013ACC2 60stmia r2!,{r5-r6}
okST:000013AE68 19ldr r1,[r3]
okST:000013B068 5Aldr r2,[r3,#0x4]
okST:000013B268 9Bldr r3,[r3,#0x8]
okST:000013B4F7 FF F9 BAbl 0x72C
okST:000013B81C 3Amov r2,r7
okST:000013BA1C 23mov r3,r4
okST:000013BCCA 13ldmia r2!,{r0-r1,r4}
okST:000013BEC3 13stmia r3!,{r0-r1,r4}
okST:000013C0CA 60ldmia r2!,{r5-r6}
okST:000013C2C3 60stmia r3!,{r5-r6}
726 
ok727 j = (*funcptr) (); 
okST:000013C44B 75ldr r3,0x159C
okST:000013C668 1Bldr r3,[r3]
okST:000013C8F0 00 F9 58bl 0x167C
okST:000013CC1C 03mov r3,r0
okST:000013CE62 7Bstr r3,[r7,#0x24]
okST:000013D0E0 00b 0x13D4
never733 goto start; C:000013D2j is never 0, seems to be useless code
neverST:000013D246 C0nop j is never 0, seems to be useless code
728 
729start: 
ok730 j = func5((int) j, (char) 2, (long) 3); 
okST:000013D46A 7Bstart:ldr r3,[r7,#0x24]
okST:000013D61C 18mov r0,r3
okST:000013D821 02mov r1,#0x2
okST:000013DA22 03mov r2,#0x3
okST:000013DCF7 FF F9 CEbl 0x77C
okST:000013E01C 03mov r3,r0
okST:000013E262 7Bstr r3,[r7,#0x24]
731 
not taken732 if (j == 0) 
okST:000013E46A 7Bldr r3,[r7,#0x24]
okST:000013E62B 00cmp r3,#0x0
not takenST:000013E8D0 F3beq 0x13D2
734 
ok735 enumvar = enumx; 
okST:000013EA4B 70ldr r3,0x15AC
okST:000013EC22 FFmov r2,#0xFF
okST:000013EE70 1Astrb r2,[r3]
736 
ok737 vfloat = 2.0; 
okST:000013F04B 6Fldr r3,0x15B0
okST:000013F24A 70ldr r2,0x15B4
okST:000013F460 1Astr r2,[r3]
ok738 func6( vfloat, (float) 3.0 ); 
okST:000013F64B 6Eldr r3,0x15B0
okST:000013F868 1Aldr r2,[r3]
okST:000013FA4B 6Fldr r3,0x15B8
okST:000013FC1C 10mov r0,r2
okST:000013FE1C 19mov r1,r3
okST:00001400F7 FF F9 D2bl 0x7A8
ok739 vdouble = 2.0; 
okST:000014044A 6Dldr r2,0x15BC
okST:000014064C 57ldr r4,0x1564
okST:000014084B 55ldr r3,0x1560
okST:0000140A60 13str r3,[r2]
okST:0000140C60 54str r4,[r2,#0x4]
ok740 func7( vdouble, (double) 3.0 ); 
okST:0000140E4B 6Bldr r3,0x15BC
okST:0000141068 19ldr r1,[r3]
okST:0000141268 5Aldr r2,[r3,#0x4]
okST:000014144B 54ldr r3,0x1568
okST:000014164C 55ldr r4,0x156C
okST:000014181C 08mov r0,r1
okST:0000141A1C 11mov r1,r2
okST:0000141C1C 1Amov r2,r3
okST:0000141E1C 23mov r3,r4
okST:00001420F7 FF F9 E8bl 0x7F4
741 
ok742 func8(); 
okST:00001424F7 FF FA 22bl 0x86C
ok743 func9(); 
okST:00001428F7 FF FB 00bl 0xA2C
ok744 func10(); 
okST:0000142CF7 FF FB 2Cbl 0xA88
ok745 func11(5); 
okST:0000143020 05mov r0,#0x5
okST:00001432F7 FF FB F9bl 0xC28
ok746 func13(1, 2, 3); 
okST:0000143620 01mov r0,#0x1
okST:0000143821 02mov r1,#0x2
okST:0000143A22 03mov r2,#0x3
okST:0000143CF7 FF FC 36bl 0xCAC
ok747 func14((char) 55); 
okST:0000144020 37mov r0,#0x37
okST:00001442F7 FF FC 63bl 0xD0C
ok748 func15((short) 55); 
okST:0000144620 37mov r0,#0x37
okST:00001448F7 FF FC 70bl 0xD2C
ok749 func16((long) 55); 
okST:0000144C20 37mov r0,#0x37
okST:0000144EF7 FF FC 7Dbl 0xD4C
ok750 func17((short) 44, (short) 55); 
okST:0000145220 2Cmov r0,#0x2C
okST:0000145421 37mov r1,#0x37
okST:00001456F7 FF FC 85bl 0xD64
ok751 func18((short) 44, (long) 55); 
okST:0000145A20 2Cmov r0,#0x2C
okST:0000145C21 37mov r1,#0x37
okST:0000145EF7 FF FC 97bl 0xD90
ok752 func19((long) 44, (short) 55); 
okST:0000146220 2Cmov r0,#0x2C
okST:0000146421 37mov r1,#0x37
okST:00001466F7 FF FC A5bl 0xDB4
ok753 func20((short) 33, (short) 44, (short) 55); 
okST:0000146A20 21mov r0,#0x21
okST:0000146C21 2Cmov r1,#0x2C
okST:0000146E22 37mov r2,#0x37
okST:00001470F7 FF FC B2bl 0xDD8
ok754 func21((long) 33, (short) 44, (short) 55); 
okST:0000147420 21mov r0,#0x21
okST:0000147621 2Cmov r1,#0x2C
okST:0000147822 37mov r2,#0x37
okST:0000147AF7 FF FC C7bl 0xE0C
ok755 func22((short) 33, (long) 44, (short) 55); 
okST:0000147E20 21mov r0,#0x21
okST:0000148021 2Cmov r1,#0x2C
okST:0000148222 37mov r2,#0x37
okST:00001484F7 FF FC DAbl 0xE3C
ok756 func23((short) 33, (short) 44, (long) 55); 
okST:0000148820 21mov r0,#0x21
okST:0000148A21 2Cmov r1,#0x2C
okST:0000148C22 37mov r2,#0x37
okST:0000148EF7 FF FC EDbl 0xE6C
757 
never758 j = func24(); 
neverST:00001492F7 FF FD 05bl 0xEA0
neverST:000014961C 03mov r3,r0
neverST:0000149862 7Bstr r3,[r7,#0x24]
never759 vlong = func25(); 
neverST:0000149AF7 FF FD 09bl 0xEB0
neverST:0000149E1C 02mov r2,r0
neverST:000014A04B 47ldr r3,0x15C0
neverST:000014A260 1Astr r2,[r3]
never760 p = func26(); 
neverST:000014A4F7 FF FD 0Ebl 0xEC4
neverST:000014A81C 03mov r3,r0
neverST:000014AA61 FBstr r3,[r7,#0x1C]
never761 vshortrecord = func28(vshortrecord); 
neverST:000014AC4B 45ldr r3,0x15C4
neverST:000014AE68 18ldr r0,[r3]
neverST:000014B0F7 FF FE ACbl 0x120C
neverST:000014B41C 03mov r3,r0
neverST:000014B61C 3Amov r2,r7
neverST:000014B81C 19mov r1,r3
neverST:000014BA80 11strh r1,[r2]
neverST:000014BC0C 1Alsr r2,r3,#0x10
neverST:000014BE1C BBadd r3,r7,#0x2
neverST:000014C080 1Astrh r2,[r3]
neverST:000014C24B 40ldr r3,0x15C4
neverST:000014C41C 3Amov r2,r7
neverST:000014C668 12ldr r2,[r2]
neverST:000014C860 1Astr r2,[r3]
762 
never763 encode(p); 
neverST:000014CA69 FBldr r3,[r7,#0x1C]
neverST:000014CC1C 18mov r0,r3
neverST:000014CEF7 FF FE 4Bbl 0x1168
never764 sieve(); 
neverST:000014D2F0 00 F8 85bl 0x15E0
765 
never766 mstatic1 = test_cond_instr( 14, 14 ); /* returns 0 */ 
neverST:000014D620 0Emov r0,#0x0E
neverST:000014D821 0Emov r1,#0x0E
neverST:000014DAF7 FF FD 1Dbl 0xF18
neverST:000014DE1C 02mov r2,r0
neverST:000014E04B 24ldr r3,0x1574
neverST:000014E260 1Astr r2,[r3]
never767 mstatic2 = test_cond_instr( 78, 55 ); /* returns 918 */ 
neverST:000014E420 4Emov r0,#0x4E
neverST:000014E621 37mov r1,#0x37
neverST:000014E8F7 FF FD 16bl 0xF18
neverST:000014EC1C 02mov r2,r0
neverST:000014EE4B 22ldr r3,0x1578
neverST:000014F060 1Astr r2,[r3]
768 
never769 datas.b[0] = 0x12; 
neverST:000014F24B 35ldr r3,0x15C8
neverST:000014F422 12mov r2,#0x12
neverST:000014F670 1Astrb r2,[r3]
never770 datas.b[1] = 0x12; 
neverST:000014F84B 33ldr r3,0x15C8
neverST:000014FA22 12mov r2,#0x12
neverST:000014FC70 5Astrb r2,[r3,#0x1]
never771 datas.b[2] = 0x12; 
neverST:000014FE4B 32ldr r3,0x15C8
neverST:0000150022 12mov r2,#0x12
neverST:0000150270 9Astrb r2,[r3,#0x2]
never772 datas.b[3] = p[0]; 
neverST:0000150469 FBldr r3,[r7,#0x1C]
neverST:0000150678 1Aldrb r2,[r3]
neverST:000015084B 2Fldr r3,0x15C8
neverST:0000150A70 DAstrb r2,[r3,#0x3]
never773 datas.w[0] = 0x1234; 
neverST:0000150C4B 2Eldr r3,0x15C8
neverST:0000150E4A 2Fldr r2,0x15CC
neverST:0000151080 1Astrh r2,[r3]
never774 datas.w[1] = 0x1234; 
neverST:000015124B 2Dldr r3,0x15C8
neverST:000015144A 2Dldr r2,0x15CC
neverST:0000151680 5Astrh r2,[r3,#0x2]
never775 datas.l[0] = 0x12345678; 
neverST:000015184B 2Bldr r3,0x15C8
neverST:0000151A4A 2Dldr r2,0x15D0
neverST:0000151C60 1Astr r2,[r3]
never776 datas.b[0] = 0x11; 
neverST:0000151E4B 2Aldr r3,0x15C8
neverST:0000152022 11mov r2,#0x11
neverST:0000152270 1Astrb r2,[r3]
never777 datas.b[1] = 0x11; 
neverST:000015244B 28ldr r3,0x15C8
neverST:0000152622 11mov r2,#0x11
neverST:0000152870 5Astrb r2,[r3,#0x1]
never778 datas.b[2] = 0x11; 
neverST:0000152A4B 27ldr r3,0x15C8
neverST:0000152C22 11mov r2,#0x11
neverST:0000152E70 9Astrb r2,[r3,#0x2]
never779 datas.b[3] = 0x11; 
neverST:000015304B 25ldr r3,0x15C8
neverST:0000153222 11mov r2,#0x11
neverST:0000153470 DAstrb r2,[r3,#0x3]
never780 datas.w[0] = 0x1122; 
neverST:000015364B 24ldr r3,0x15C8
neverST:000015384A 26ldr r2,0x15D4
neverST:0000153A80 1Astrh r2,[r3]
never781 datas.w[1] = 0x1122; 
neverST:0000153C4B 22ldr r3,0x15C8
neverST:0000153E4A 25ldr r2,0x15D4
neverST:0000154080 5Astrh r2,[r3,#0x2]
never782 datas.l[0] = 0x11223344; 
neverST:000015424B 21ldr r3,0x15C8
neverST:000015444A 24ldr r2,0x15D8
neverST:0000154660 1Astr r2,[r3]
783 
never784 } while (vint); 
neverST:000015484B 24ldr r3,0x15DC
neverST:0000154A68 1Bldr r3,[r3]
neverST:0000154C2B 00cmp r3,#0x0
neverST:0000154ED0 00beq 0x1552
neverST:00001550E6 91b 0x1276
785 
never786 return 0; 
neverST:0000155223 00mov r3,#0x0
p-read787
neverST:000015541C 18mov r0,r3
neverST:0000155646 BDmov r13,r7
neverST:00001558B0 0Badd sp,#0x2C
neverST:0000155ABC F0pop {r4-r7}
neverST:0000155CBC 02pop {r1}
neverST:0000155E47 08bx r1
readSP:0000156000 00 00 00dcd 0x0
readSP:0000156440 00 00 00dcd 0x40000000
readSP:0000156800 00 00 00dcd 0x0
readSP:0000156C40 08 00 00dcd 0x40080000
readSP:0000157000 00 46 4Cdcd 0x464C
readSP:0000157400 00 46 C0dcd 0x46C0
readSP:0000157800 00 46 C4dcd 0x46C4
readSP:0000157C00 00 46 C8dcd 0x46C8
readSP:0000158000 00 46 28dcd 0x4628
readSP:0000158400 00 EA 60dcd 0xEA60
neverSP:0000158800 00 FF FFdcd 0xFFFF
readSP:0000158C00 00 46 2Cdcd 0x462C
readSP:0000159000 00 61 A8dcd 0x61A8
readSP:0000159400 00 46 CCdcd 0x46CC
readSP:0000159800 00 5E D0dcd 0x5ED0
readSP:0000159C00 00 49 E0dcd 0x49E0
readSP:000015A000 00 07 1Ddcd 0x71D
readSP:000015A400 00 47 50dcd 0x4750
readSP:000015A800 00 30 39dcd 0x3039
readSP:000015AC00 00 5D 94dcd 0x5D94
readSP:000015B000 00 46 30dcd 0x4630
readSP:000015B440 00 00 00dcd 0x40000000
readSP:000015B840 40 00 00dcd 0x40400000
readSP:000015BC00 00 46 38dcd 0x4638
neverSP:000015C000 00 5E CCdcd 0x5ECC
neverSP:000015C400 00 47 C8dcd 0x47C8
neverSP:000015C800 00 47 CCdcd 0x47CC
neverSP:000015CC00 00 12 34dcd 0x1234
neverSP:000015D012 34 56 78dcd 0x12345678
neverSP:000015D400 00 11 22dcd 0x1122
neverSP:000015D811 22 33 44dcd 0x11223344
neverSP:000015DC00 00 46 40dcd 0x4640
788 
789 
790#define SIZE 18 
791char flags[SIZE+1]; 
792 
793static int sieve(void) /* sieve of erathostenes */ 
never794
neverST:000015E0B5 F0sieve:push {r4-r7,r14}
neverST:000015E2B0 83sub sp,#0x0C
neverST:000015E4AF 00add r7,sp,#0x0
795 register int i, prime, k; 
796 int count; 
797 
never798 count = 0; 
neverST:000015E623 00mov r3,#0x0
neverST:000015E860 7Bstr r3,[r7,#0x4]
799 
never800 for ( i = 0 ; i <= SIZE ; flags[i++] = TRUE ) ; 
neverST:000015EA24 00mov r4,#0x0
neverST:000015ECE0 03b 0x15F6
neverST:000015EE4B 11ldr r3,0x1634
neverST:000015F022 01mov r2,#0x1
neverST:000015F255 1Astrb r2,[r3,r4]
neverST:000015F434 01add r4,#0x1
neverST:000015F62C 12cmp r4,#0x12
neverST:000015F8DD F9ble 0x15EE
801 
never802 for (i = 0; i <= SIZE; i++) { 
neverST:000015FA24 00mov r4,#0x0
neverST:000015FCE0 11b 0x1622
never803 if (flags[i]) { 
neverST:000015FE4B 0Dldr r3,0x1634
neverST:000016005D 1Bldrb r3,[r3,r4]
neverST:000016022B 00cmp r3,#0x0
neverST:00001604D0 0Cbeq 0x1620
never804 prime = i + i + 3; 
neverST:0000160619 23add r3,r4,r4
neverST:000016081C DEadd r6,r3,#0x3
never805 k = i + prime; 
neverST:0000160A19 A5add r5,r4,r6
never806 while (k <= SIZE) { 
neverST:0000160CE0 03b 0x1616
never807 flags[k] = FALSE; 
neverST:0000160E4B 09ldr r3,0x1634
neverST:0000161022 00mov r2,#0x0
neverST:0000161255 5Astrb r2,[r3,r5]
never808 k += prime; 
neverST:0000161419 ADadd r5,r5,r6
never806 while (k <= SIZE) { 
neverST:000016162D 12cmp r5,#0x12
neverST:00001618DD F9ble 0x160E
809
never810 count++; 
neverST:0000161A68 7Bldr r3,[r7,#0x4]
neverST:0000161C33 01add r3,#0x1
neverST:0000161E60 7Bstr r3,[r7,#0x4]
801 
never802 for (i = 0; i <= SIZE; i++) { 
neverST:0000162034 01add r4,#0x1
neverST:000016222C 12cmp r4,#0x12
neverST:00001624DD EBble 0x15FE
811
812
813 
never814 return count; 
neverST:0000162668 7Bldr r3,[r7,#0x4]
never815
neverST:000016281C 18mov r0,r3
neverST:0000162A46 BDmov r13,r7
neverST:0000162CB0 03add sp,#0x0C
neverST:0000162EBC F0pop {r4-r7}
neverST:00001630BC 02pop {r1}
neverST:0000163247 08bx r1
neverSP:0000163400 00 5D 98dcd 0x5D98
816 
817 
818int background(void) /* job for background-demo */ 
never819C:00001638never called => dead code
neverST:00001638B5 80background:push {r7,r14}never called => dead code
neverST:0000163AAF 00add r7,sp,#0x0
820 static long int bcnt1, bcnt2; 
821 
never822 bcnt1 = bcnt2 = 0; 
neverST:0000163C4B 0Cldr r3,0x1670
neverST:0000163E22 00mov r2,#0x0
neverST:0000164060 1Astr r2,[r3]
neverST:000016424B 0Bldr r3,0x1670
neverST:0000164468 1Aldr r2,[r3]
neverST:000016464B 0Bldr r3,0x1674
neverST:0000164860 1Astr r2,[r3]
823 
824 while (1) { 
never825 bcnt1 = 10000000; 
neverST:0000164A4B 0Aldr r3,0x1674
neverST:0000164C4A 0Aldr r2,0x1678
neverST:0000164E60 1Astr r2,[r3]
never826 while (bcnt1>0) 
neverST:00001650E0 04b 0x165C
never827 bcnt1--; 
neverST:000016524B 08ldr r3,0x1674
neverST:0000165468 1Bldr r3,[r3]
neverST:000016561E 5Asub r2,r3,#0x1
neverST:000016584B 06ldr r3,0x1674
neverST:0000165A60 1Astr r2,[r3]
never826 while (bcnt1>0) 
neverST:0000165C4B 05ldr r3,0x1674
neverST:0000165E68 1Bldr r3,[r3]
neverST:000016602B 00cmp r3,#0x0
neverST:00001662DC F6bgt 0x1652
never828 bcnt2++; 
neverST:000016644B 02ldr r3,0x1670
neverST:0000166668 1Bldr r3,[r3]
neverST:000016681C 5Aadd r2,r3,#0x1
neverST:0000166A4B 01ldr r3,0x1670
neverST:0000166C60 1Astr r2,[r3]
partial829
neverST:0000166EE7 ECb 0x164A
neverSP:0000167000 00 46 D0dcd 0x46D0
neverSP:0000167400 00 46 D4dcd 0x46D4
neverSP:0000167800 98 96 80dcd 0x989680
okST:0000167C00 18movs r0,r3