In all of my MPLAB project, XC8 generates a file called "funclist" in the project directory when the program is compiled (see example file below). The first number is the address of the function, the last number is the size of the function in instructions/words (I have no idea what the middle number indicates). As you can see the program below uses 1232 words of program meory. As you can see main function uses only 19 words of memory while the state machine for HeaterWaterControl takes up 139 instructions. (Yes, as funny as it may seem, main in this particular program only calls a few functions so it is quite small in comparison to the other functions) Hope it helps, Sincerely, Jason White PS: The linker is the program that keeps track of all of these sizes and of= fsets Example File - "funclist": _ShowStatus: CODE, 30 0 191 _InitTimer0: CODE, 1273 0 5 _InitTimer1: CODE, 1268 0 5 _InitTimer2: CODE, 1212 0 9 _UpdateSetTemperature: CODE, 1173 0 19 _ConfigureOscillator: CODE, 1221 0 9 _ConfigCheck: CODE, 852 0 59 _main: CODE, 1154 0 19 _StopServe: CODE, 1132 0 22 _InitCCP1: CODE, 1263 0 5 _InitCCP2: CODE, 1258 0 5 _HeaterWaterControl: CODE, 403 0 139 _CompressorControl: CODE, 542 0 111 _InitADC: CODE, 1203 0 9 _ServeDrink: CODE, 653 0 107 _InitApp: CODE, 1011 0 41 __initialization: CODE, 17 0 11 _isr: CODE, 964 0 47 _DelaySystick: CODE, 1109 0 23 _ServiceADC: CODE, 221 0 182 _GetADCResult: CODE, 1192 0 11 _SetSyrup1PWM: CODE, 1085 0 24 _SetSyrup2PWM: CODE, 1052 0 33 _InitWDT: CODE, 1285 0 1 _UpdatePumpSpeeds: CODE, 911 0 53 _HeaterControl: CODE, 760 0 92 Total: 1232 On Tue, Dec 16, 2014 at 10:46 PM, James Cameron wrote: > Answering as a Python capable programmer but with no XC8 experience. > > On Tue, Dec 16, 2014 at 06:53:09PM -0800, Jesse Lackey wrote: >> After some XC8 user manual searching and poking thru all the .lst, >> .map etc. files, I cannot find a way to get a list of the size of >> every function. Weirdly. Some googling led me to this: >> >> which I have running, but it doesn't give the size of each function >> - it gives the size of all the PSECTs the compiler/linker created. > > As if perhaps each function should have been in a psect? > > The python script looks reasonable, but I don't know the format of the > .lst and .map files. > > If you read those files yourself, for just one function can you > calculate the size manually? > > -- > James Cameron > http://quozl.linux.org.au/ > -- > http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist --=20 Jason White --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .