123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263(**************************************************************************)(* This file is part of BINSEC. *)(* *)(* Copyright (C) 2016-2026 *)(* CEA (Commissariat à l'énergie atomique et aux énergies *)(* alternatives) *)(* *)(* you can redistribute it and/or modify it under the terms of the GNU *)(* Lesser General Public License as published by the Free Software *)(* Foundation, version 2.1. *)(* *)(* It is distributed in the hope that it will be useful, *)(* but WITHOUT ANY WARRANTY; without even the implied warranty of *)(* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *)(* GNU Lesser General Public License for more details. *)(* *)(* See the GNU Lesser General Public License version 2.1 *)(* for more details (enclosed in the file licenses/LGPLv2.1). *)(* *)(**************************************************************************)moduleLogger=LoggermoduleExpr=ExprmoduleCunit=CunitmoduleFrame=FramemoduleLines=LinesmoduleLoclist=LoclistmoduleInt=Basic_types.Integers.Inttypet={isa:Machine.isa;units:Cunit.tlist;frame:Frame.t;lines:Lines.t;loc:Loclist.tInt.Map.t;}letloadimg:t=letisa=Loader.Img.archimginletunits=Cunit.loadimginletframe=Frame.loadimginletlines=Lines.loadimginletloc=Loclist.loadimgin{isa;units;frame;lines;loc}letppppfdebug:unit=Format.fprintfppf"@[<v 2>Contents of the .debug_info section:@ ";List.iter(fununit->Format.pp_print_spaceppf();Cunit.ppppfunit)debug.units;Format.fprintfppf"@]@ @[<v>Contents of the frame section:@ @ ";Frame.ppppfdebug.frame;Format.fprintfppf"@]@ @[<v>Decoded dump of debug contents of section .debug_line:@ @ ";Lines.ppppfdebug.lines;(matchInt.Map.find0debug.locwith|exceptionNot_found->()|loclist->Format.fprintfppf"@]@ @[<v>Contents of the .debug_loc section:@ @ ";Loclist.ppppf(debug.isa,loclist));Format.pp_close_boxppf()