1/* main_vbs.inc: Display of statistics for ld-tigcc 2 3 Copyright (C) 2002-2003 Sebastian Reichelt 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2, or (at your option) 8 any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program; if not, write to the Free Software Foundation, 17 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 18 19// This file is included by main.c 20{ 21 if (DisplayStats) 22 { 23 printf ("Target Calculators:\n"); 24 if (Program.Calcs & CALC_TI92) 25 printf (" TI-92\n"); 26 if (Program.Calcs & CALC_TI89) 27 printf (" TI-89\n"); 28 if (Program.Calcs & CALC_TI92PLUS) 29 printf (" TI-92 Plus\n"); 30 if (Program.Calcs & CALC_V200) 31 printf (" V200\n"); 32 printf ("Program Statistics:\n" 33 " Program Variable Name: %s\\%s\n" 34 " Program Variable Size: %ld Bytes\n", 35 ProgramFolder, ProgramName, (long) OptInfo->ProgramSize); 36 if (OptInfo->DataSize > 0) 37 { 38 printf (" Data Variable Size: %ld Bytes\n", 39 (long) OptInfo->DataSize); 40 } 41 if (OptInfo->BSSSize > 0) 42 { 43 printf (" BSS Size: %ld Bytes\n", 44 (long) OptInfo->BSSSize); 45 } 46 printf (" Absolute Relocs: %ld\n" 47 " Natively Emitted Relocs: %ld\n", 48 (long) OptInfo->RelocCount, (long) OptInfo->NativeRelocCount); 49 if (OptInfo->OptimizeBranchesResult > 0) 50 printf (OptInfo->OptimizeBranches ? " Relocs Removed by Branch Optimization: %ld\n" : " Relocs Removable by Branch Optimization: %ld\n", (long) OptInfo->OptimizeBranchesResult); 51 if (OptInfo->OptimizeMovesResult > 0) 52 printf (OptInfo->OptimizeMoves ? " Relocs Removed by Move Optimization: %ld\n" : " Relocs Removable by Move Optimization: %ld\n", (long) OptInfo->OptimizeMovesResult); 53 if (OptInfo->OptimizeTestsResult > 0) 54 printf (OptInfo->OptimizeTests ? " Relocs Removed by Test Optimization: %ld\n" : " Relocs Removable by Test Optimization: %ld\n", (long) OptInfo->OptimizeTestsResult); 55 if (OptInfo->OptimizeCalcsResult > 0) 56 printf (OptInfo->OptimizeCalcs ? " Relocs Removed by Calc Optimization: %ld\n" : " Relocs Removable by Calc Optimization: %ld\n", (long) OptInfo->OptimizeCalcsResult); 57 if (OptInfo->UseFLineJumpsResult > 0) 58 printf (OptInfo->UseFLineJumps || OptInfo->Use4ByteFLineJumps ? " Relocs Removed by F-Line Jumps: %ld\n" : " Relocs Removable by F-Line Jumps: %ld\n", (long) OptInfo->UseFLineJumpsResult); 59 if (OptInfo->CutRangesResult > 0) 60 printf (OptInfo->CutRanges ? " Space Saved by Range-Cutting: %ld Bytes\n" : " Estimated Space Savable by Range-Cutting: %ld Bytes\n", (long) OptInfo->CutRangesResult); 61 if (OptInfo->NearAssemblyResult > 0) 62 printf (" Space Savable by Using GAS `-l' Switch: %ld Bytes\n", (long) OptInfo->NearAssemblyResult); 63 } 64} 65