In addition to the tests, a more detailed explanation of how "insertBits(..)" functions has been included in its doxygen documentation. The previous explanation was ambigious and led to confusion. Change-Id: I2ae8608733ebaa8f8f726cbb3a2cd8639b69c6b7 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21700 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Gabe Black <gabeblack@google.com> Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Maintainer: Jason Lowe-Power <jason@lowepower.com>
123 lines
4.6 KiB
Python
123 lines
4.6 KiB
Python
# -*- mode:python -*-
|
|
|
|
# Copyright (c) 2006 The Regents of The University of Michigan
|
|
# All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions are
|
|
# met: redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer;
|
|
# redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution;
|
|
# neither the name of the copyright holders nor the names of its
|
|
# contributors may be used to endorse or promote products derived from
|
|
# this software without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
#
|
|
# Authors: Nathan Binkert
|
|
|
|
Import('*')
|
|
|
|
if env['CP_ANNOTATE']:
|
|
SimObject('CPA.py')
|
|
Source('cp_annotate.cc')
|
|
SimObject('Graphics.py')
|
|
Source('atomicio.cc')
|
|
GTest('atomicio.test', 'atomicio.test.cc', 'atomicio.cc')
|
|
Source('bitfield.cc')
|
|
GTest('bitfield.test', 'bitfield.test.cc', 'bitfield.cc')
|
|
Source('imgwriter.cc')
|
|
Source('bmpwriter.cc')
|
|
Source('callback.cc')
|
|
GTest('callback.test', 'callback.test.cc', 'callback.cc')
|
|
Source('channel_addr.cc')
|
|
Source('cprintf.cc', add_tags='gtest lib')
|
|
GTest('cprintf.test', 'cprintf.test.cc')
|
|
Source('debug.cc')
|
|
if env['USE_FENV']:
|
|
Source('fenv.c')
|
|
if env['USE_PNG']:
|
|
Source('pngwriter.cc')
|
|
Source('fiber.cc')
|
|
GTest('fiber.test', 'fiber.test.cc', 'fiber.cc')
|
|
GTest('coroutine.test', 'coroutine.test.cc', 'fiber.cc')
|
|
Source('framebuffer.cc')
|
|
Source('hostinfo.cc')
|
|
Source('inet.cc')
|
|
Source('inifile.cc')
|
|
GTest('inifile.test', 'inifile.test.cc', 'inifile.cc', 'str.cc')
|
|
Source('intmath.cc')
|
|
Source('logging.cc')
|
|
Source('match.cc')
|
|
Source('output.cc')
|
|
Source('pixel.cc')
|
|
GTest('pixel.test', 'pixel.test.cc', 'pixel.cc')
|
|
Source('pollevent.cc')
|
|
Source('random.cc')
|
|
if env['TARGET_ISA'] != 'null':
|
|
Source('remote_gdb.cc')
|
|
Source('socket.cc')
|
|
Source('statistics.cc')
|
|
Source('str.cc')
|
|
Source('time.cc')
|
|
Source('trace.cc')
|
|
GTest('trie.test', 'trie.test.cc')
|
|
Source('types.cc')
|
|
|
|
Source('loader/aout_object.cc')
|
|
Source('loader/dtb_file.cc')
|
|
Source('loader/ecoff_object.cc')
|
|
Source('loader/elf_object.cc')
|
|
Source('loader/image_file_data.cc')
|
|
Source('loader/memory_image.cc')
|
|
Source('loader/object_file.cc')
|
|
Source('loader/symtab.cc')
|
|
|
|
Source('stats/group.cc')
|
|
Source('stats/text.cc')
|
|
if env['USE_HDF5']:
|
|
Source('stats/hdf5.cc')
|
|
|
|
GTest('addr_range.test', 'addr_range.test.cc')
|
|
GTest('addr_range_map.test', 'addr_range_map.test.cc')
|
|
GTest('bitunion.test', 'bitunion.test.cc')
|
|
GTest('channel_addr.test', 'channel_addr.test.cc')
|
|
GTest('circlebuf.test', 'circlebuf.test.cc')
|
|
GTest('circular_queue.test', 'circular_queue.test.cc')
|
|
GTest('sat_counter.test', 'sat_counter.test.cc')
|
|
GTest('refcnt.test','refcnt.test.cc')
|
|
|
|
DebugFlag('Annotate', "State machine annotation debugging")
|
|
DebugFlag('AnnotateQ', "State machine annotation queue debugging")
|
|
DebugFlag('AnnotateVerbose', "Dump all state machine annotation details")
|
|
DebugFlag('GDBAcc', "Remote debugger accesses")
|
|
DebugFlag('GDBExtra', "Dump extra information on reads and writes")
|
|
DebugFlag('GDBMisc', "Breakpoints, traps, watchpoints, etc.")
|
|
DebugFlag('GDBRead', "Reads to the remote address space")
|
|
DebugFlag('GDBRecv', "Messages received from the remote application")
|
|
DebugFlag('GDBSend', "Messages sent to the remote application")
|
|
DebugFlag('GDBWrite', "Writes to the remote address space")
|
|
DebugFlag('SQL', "SQL queries sent to the server")
|
|
DebugFlag('Stats', "Statistics management")
|
|
DebugFlag('StatEvents', "Statistics event tracking")
|
|
|
|
CompoundFlag('GDBAll',
|
|
[ 'GDBMisc', 'GDBAcc', 'GDBRead', 'GDBWrite', 'GDBSend', 'GDBRecv',
|
|
'GDBExtra' ],
|
|
desc="All Remote debugging flags")
|
|
CompoundFlag('AnnotateAll', ['Annotate', 'AnnotateQ', 'AnnotateVerbose'],
|
|
desc="All Annotation flags")
|
|
|