gitextract_up_kab8w/ ├── .github/ │ └── workflows/ │ ├── debug.yml │ ├── docs.yml │ └── release.yml ├── .gitignore ├── .gitmodules ├── CMakeLists.txt ├── LICENSE ├── Makefile ├── README.md ├── cmake/ │ ├── AddFileHashes.cmake │ ├── BuildType.cmake │ ├── BundleMacOS.cmake │ ├── CopyrightTools.cmake │ ├── FindElfUtils.cmake │ ├── FindLibElf.cmake │ ├── FindPythonInterp.cmake │ ├── GPL-3.0-or-later.cmake │ ├── LibElfinSettings.cmake │ ├── PackageTools.cmake │ └── TestingTools.cmake ├── data/ │ ├── cz.cvut.edu.comparch.qtrvsim.metainfo.xml.in │ ├── gui.desktop.in │ ├── icons/ │ │ └── macos/ │ │ └── gui.icns │ └── wasm/ │ ├── browserconfig.xml │ ├── index.html │ └── manifest.json ├── default.nix ├── docs/ │ ├── developer/ │ │ ├── build&deploy/ │ │ │ ├── building-wasm.md │ │ │ └── release.md │ │ ├── coreview-graphics/ │ │ │ └── using-drawio-diagram.md │ │ ├── debuging/ │ │ │ ├── logging.md │ │ │ └── sanitizers.md │ │ └── need-to-know.md │ └── user/ │ ├── SUMMARY.md │ ├── basics/ │ │ ├── basics_of_user_interface.md │ │ ├── first_launch.md │ │ ├── getting_started.md │ │ ├── menus_and_the_toolbar.md │ │ └── writing_programs.md │ ├── book.toml │ ├── introduction.md │ └── reference/ │ ├── advanced_configuration/ │ │ └── environment_variables.md │ ├── advanced_configuration.md │ └── external_toolchains.md ├── external/ │ ├── compiler/ │ │ ├── compile.sh │ │ └── config │ └── svgscene/ │ ├── CMakeLists.txt │ ├── LICENSE │ ├── README.md │ └── src/ │ ├── example/ │ │ ├── main.cpp │ │ ├── mainwindow.cpp │ │ ├── mainwindow.h │ │ └── mainwindow.ui │ └── svgscene/ │ ├── components/ │ │ ├── groupitem.cpp │ │ ├── groupitem.h │ │ ├── hyperlinkitem.cpp │ │ ├── hyperlinkitem.h │ │ ├── simpletextitem.cpp │ │ └── simpletextitem.h │ ├── graphicsview/ │ │ ├── svggraphicsview.cpp │ │ └── svggraphicsview.h │ ├── polyfills/ │ │ └── qt5/ │ │ ├── qstringview.h │ │ └── qwheelevent.h │ ├── svgdocument.cpp │ ├── svgdocument.h │ ├── svggraphicsscene.cpp │ ├── svggraphicsscene.h │ ├── svghandler.cpp │ ├── svghandler.h │ ├── svgmetadata.cpp │ ├── svgmetadata.h │ ├── svgspec.h │ └── utils/ │ ├── logging.h │ └── memory_ownership.h ├── extras/ │ ├── building/ │ │ └── build-wasm.sh │ ├── core_graphics/ │ │ └── diagram.drawio │ ├── crosscompiling/ │ │ ├── shell-mips-elf.nix │ │ ├── shell-riscv-elf-with-newlib.nix │ │ └── shell-riscv-elf.nix │ └── packaging/ │ ├── _tools/ │ │ ├── add-to-changelog.sh │ │ └── git-archive-submodules.sh │ ├── add-to-changelog.sh │ ├── appimage/ │ │ └── appimage.yml.in │ ├── arch/ │ │ └── PKGBUILD.in │ ├── deb/ │ │ ├── debian/ │ │ │ ├── changelog │ │ │ ├── compat │ │ │ ├── control.in │ │ │ ├── copyright │ │ │ ├── docs │ │ │ ├── rules │ │ │ └── source/ │ │ │ └── format │ │ └── dsc.in │ ├── flatpak/ │ │ └── cz.cvut.edu.comparch.qtrvsim.json │ ├── mingw/ │ │ └── cmake-i686-w64-mingw32.conf │ ├── nix/ │ │ └── qtrvsim.nix │ └── rpm/ │ └── spec.in ├── qtlogging.ini ├── src/ │ ├── assembler/ │ │ ├── CMakeLists.txt │ │ ├── fixmatheval.cpp │ │ ├── fixmatheval.h │ │ ├── messagetype.h │ │ ├── simpleasm.cpp │ │ └── simpleasm.h │ ├── cli/ │ │ ├── CMakeLists.txt │ │ ├── chariohandler.cpp │ │ ├── chariohandler.h │ │ ├── main.cpp │ │ ├── msgreport.cpp │ │ ├── msgreport.h │ │ ├── reporter.cpp │ │ ├── reporter.h │ │ ├── tracer.cpp │ │ └── tracer.h │ ├── common/ │ │ ├── CMakeLists.txt │ │ ├── containers/ │ │ │ └── cvector.h │ │ ├── endian.h │ │ ├── logging.h │ │ ├── logging_format_colors.h │ │ ├── math/ │ │ │ └── bit_ops.h │ │ ├── memory_ownership.h │ │ ├── polyfills/ │ │ │ ├── CMakeLists.txt │ │ │ ├── byteswap.h │ │ │ ├── clz32.h │ │ │ ├── endian_detection.h │ │ │ ├── mulh64.h │ │ │ ├── mulh64.test.cpp │ │ │ ├── mulh64.test.h │ │ │ ├── qstring_hash.h │ │ │ └── qt5/ │ │ │ ├── qfontmetrics.h │ │ │ ├── qlinef.h │ │ │ └── qtableview.h │ │ ├── string_utils.h │ │ └── type_utils/ │ │ └── lens.h │ ├── gui/ │ │ ├── CMakeLists.txt │ │ ├── dialogs/ │ │ │ ├── about/ │ │ │ │ ├── aboutdialog.cpp │ │ │ │ └── aboutdialog.h │ │ │ ├── gotosymbol/ │ │ │ │ ├── gotosymboldialog.cpp │ │ │ │ ├── gotosymboldialog.h │ │ │ │ └── gotosymboldialog.ui │ │ │ ├── new/ │ │ │ │ ├── NewDialog.ui │ │ │ │ ├── NewDialogCache.ui │ │ │ │ ├── newdialog.cpp │ │ │ │ └── newdialog.h │ │ │ └── savechanged/ │ │ │ ├── savechangeddialog.cpp │ │ │ └── savechangeddialog.h │ │ ├── extprocess.cpp │ │ ├── extprocess.h │ │ ├── fontsize.cpp │ │ ├── fontsize.h │ │ ├── graphicsview.cpp │ │ ├── graphicsview.h │ │ ├── helper/ │ │ │ └── async_modal.h │ │ ├── hinttabledelegate.cpp │ │ ├── hinttabledelegate.h │ │ ├── main.cpp │ │ ├── mainwindow/ │ │ │ ├── MainWindow.ui │ │ │ ├── mainwindow.cpp │ │ │ └── mainwindow.h │ │ ├── qhtml5file.h │ │ ├── qhtml5file_html5.cpp │ │ ├── resources/ │ │ │ ├── icons/ │ │ │ │ ├── gui.icns │ │ │ │ └── icons.qrc │ │ │ └── samples/ │ │ │ ├── samples.qrc │ │ │ ├── simple-lw-sw-ia.S │ │ │ ├── template-os.S │ │ │ └── template.S │ │ ├── statictable.cpp │ │ ├── statictable.h │ │ ├── textsignalaction.cpp │ │ ├── textsignalaction.h │ │ ├── ui/ │ │ │ ├── hexlineedit.cpp │ │ │ ├── hexlineedit.h │ │ │ ├── pow2spinbox.cpp │ │ │ └── pow2spinbox.h │ │ ├── widgets/ │ │ │ ├── hidingtabwidget.cpp │ │ │ └── hidingtabwidget.h │ │ └── windows/ │ │ ├── cache/ │ │ │ ├── cachedock.cpp │ │ │ ├── cachedock.h │ │ │ ├── cacheview.cpp │ │ │ └── cacheview.h │ │ ├── coreview/ │ │ │ ├── components/ │ │ │ │ ├── cache.cpp │ │ │ │ ├── cache.h │ │ │ │ ├── value_handlers.cpp │ │ │ │ └── value_handlers.h │ │ │ ├── data.h │ │ │ ├── scene.cpp │ │ │ ├── scene.h │ │ │ └── schemas/ │ │ │ └── schemas.qrc │ │ ├── csr/ │ │ │ ├── csrdock.cpp │ │ │ └── csrdock.h │ │ ├── editor/ │ │ │ ├── editordock.cpp │ │ │ ├── editordock.h │ │ │ ├── editortab.cpp │ │ │ ├── editortab.h │ │ │ ├── highlighterasm.cpp │ │ │ ├── highlighterasm.h │ │ │ ├── highlighterc.cpp │ │ │ ├── highlighterc.h │ │ │ ├── linenumberarea.cpp │ │ │ ├── linenumberarea.h │ │ │ ├── srceditor.cpp │ │ │ └── srceditor.h │ │ ├── lcd/ │ │ │ ├── lcddisplaydock.cpp │ │ │ ├── lcddisplaydock.h │ │ │ ├── lcddisplayview.cpp │ │ │ └── lcddisplayview.h │ │ ├── memory/ │ │ │ ├── memorydock.cpp │ │ │ ├── memorydock.h │ │ │ ├── memorymodel.cpp │ │ │ ├── memorymodel.h │ │ │ ├── memorytableview.cpp │ │ │ └── memorytableview.h │ │ ├── messages/ │ │ │ ├── messagesdock.cpp │ │ │ ├── messagesdock.h │ │ │ ├── messagesmodel.cpp │ │ │ ├── messagesmodel.h │ │ │ ├── messagesview.cpp │ │ │ └── messagesview.h │ │ ├── peripherals/ │ │ │ ├── peripheralsdock.cpp │ │ │ ├── peripheralsdock.h │ │ │ ├── peripheralsview.cpp │ │ │ ├── peripheralsview.h │ │ │ └── peripheralsview.ui │ │ ├── predictor/ │ │ │ ├── predictor_bht_dock.cpp │ │ │ ├── predictor_bht_dock.h │ │ │ ├── predictor_btb_dock.cpp │ │ │ ├── predictor_btb_dock.h │ │ │ ├── predictor_info_dock.cpp │ │ │ └── predictor_info_dock.h │ │ ├── program/ │ │ │ ├── programdock.cpp │ │ │ ├── programdock.h │ │ │ ├── programmodel.cpp │ │ │ ├── programmodel.h │ │ │ ├── programtableview.cpp │ │ │ └── programtableview.h │ │ ├── registers/ │ │ │ ├── registersdock.cpp │ │ │ └── registersdock.h │ │ ├── terminal/ │ │ │ ├── terminaldock.cpp │ │ │ └── terminaldock.h │ │ └── tlb/ │ │ ├── tlbdock.cpp │ │ ├── tlbdock.h │ │ ├── tlbview.cpp │ │ └── tlbview.h │ ├── machine/ │ │ ├── CMakeLists.txt │ │ ├── bitfield.h │ │ ├── config_isa.h │ │ ├── core/ │ │ │ └── core_state.h │ │ ├── core.cpp │ │ ├── core.h │ │ ├── core.test.cpp │ │ ├── core.test.h │ │ ├── csr/ │ │ │ ├── address.h │ │ │ ├── controlstate.cpp │ │ │ └── controlstate.h │ │ ├── execute/ │ │ │ ├── alu.cpp │ │ │ ├── alu.h │ │ │ ├── alu.test.cpp │ │ │ ├── alu.test.h │ │ │ ├── alu_op.h │ │ │ └── mul_op.h │ │ ├── instruction.cpp │ │ ├── instruction.h │ │ ├── instruction.test.cpp │ │ ├── instruction.test.h │ │ ├── machine.cpp │ │ ├── machine.h │ │ ├── machineconfig.cpp │ │ ├── machineconfig.h │ │ ├── machinedefs.h │ │ ├── memory/ │ │ │ ├── address.h │ │ │ ├── address_range.h │ │ │ ├── address_with_mode.h │ │ │ ├── backend/ │ │ │ │ ├── aclintmswi.cpp │ │ │ │ ├── aclintmswi.h │ │ │ │ ├── aclintmtimer.cpp │ │ │ │ ├── aclintmtimer.h │ │ │ │ ├── aclintsswi.cpp │ │ │ │ ├── aclintsswi.h │ │ │ │ ├── backend_memory.h │ │ │ │ ├── lcddisplay.cpp │ │ │ │ ├── lcddisplay.h │ │ │ │ ├── memory.cpp │ │ │ │ ├── memory.h │ │ │ │ ├── memory.test.cpp │ │ │ │ ├── memory.test.h │ │ │ │ ├── peripheral.cpp │ │ │ │ ├── peripheral.h │ │ │ │ ├── peripspiled.cpp │ │ │ │ ├── peripspiled.h │ │ │ │ ├── serialport.cpp │ │ │ │ └── serialport.h │ │ │ ├── cache/ │ │ │ │ ├── cache.cpp │ │ │ │ ├── cache.h │ │ │ │ ├── cache.test.cpp │ │ │ │ ├── cache.test.h │ │ │ │ ├── cache_policy.cpp │ │ │ │ ├── cache_policy.h │ │ │ │ └── cache_types.h │ │ │ ├── frontend_memory.cpp │ │ │ ├── frontend_memory.h │ │ │ ├── memory_bus.cpp │ │ │ ├── memory_bus.h │ │ │ ├── memory_utils.h │ │ │ ├── tlb/ │ │ │ │ ├── tlb.cpp │ │ │ │ ├── tlb.h │ │ │ │ ├── tlb_policy.cpp │ │ │ │ └── tlb_policy.h │ │ │ └── virtual/ │ │ │ ├── page_table_walker.cpp │ │ │ ├── page_table_walker.h │ │ │ ├── sv32.h │ │ │ └── virtual_address.h │ │ ├── pipeline.h │ │ ├── predictor.cpp │ │ ├── predictor.h │ │ ├── predictor_types.h │ │ ├── programloader.cpp │ │ ├── programloader.h │ │ ├── programloader.test.cpp │ │ ├── programloader.test.h │ │ ├── register_value.h │ │ ├── registers.cpp │ │ ├── registers.h │ │ ├── registers.test.cpp │ │ ├── registers.test.h │ │ ├── simulator_exception.cpp │ │ ├── simulator_exception.h │ │ ├── symboltable.cpp │ │ ├── symboltable.h │ │ ├── tests/ │ │ │ ├── data/ │ │ │ │ └── cache_test_performance_data.h │ │ │ └── utils/ │ │ │ └── integer_decomposition.h │ │ └── utils.h │ ├── os_emulation/ │ │ ├── CMakeLists.txt │ │ ├── ossyscall.cpp │ │ ├── ossyscall.h │ │ ├── posix_polyfill.h │ │ ├── syscall_nr.h │ │ ├── syscallent.h │ │ └── target_errno.h │ └── project_info.h.in └── tests/ ├── cli/ │ ├── asm_error/ │ │ └── program.S │ ├── modifiers/ │ │ ├── program.S │ │ └── stdout.txt │ ├── modifiers-pcrel/ │ │ ├── program.S │ │ └── stdout.txt │ ├── stalls/ │ │ ├── program.S │ │ └── stdout.txt │ └── virtual_memory/ │ ├── dtlb/ │ │ ├── program.S │ │ └── stdout.txt │ ├── exec/ │ │ ├── program.S │ │ └── stdout.txt │ ├── itlb/ │ │ ├── program.S │ │ └── stdout.txt │ ├── memrw/ │ │ ├── program.S │ │ └── stdout.txt │ └── template/ │ ├── program.S │ └── stdout.txt ├── riscv-official/ │ ├── .gitignore │ ├── README.md │ ├── code/ │ │ ├── constants.py │ │ ├── helpers.py │ │ ├── myparse.py │ │ ├── selftesting.py │ │ └── testing.py │ ├── env/ │ │ └── p/ │ │ ├── BackUp/ │ │ │ └── riscv_test.h │ │ ├── link.ld │ │ └── riscv_test.h │ ├── isa/ │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── selftests/ │ │ │ ├── Makefile │ │ │ ├── options_test.sh │ │ │ └── tests/ │ │ │ ├── addi-fail32.S │ │ │ ├── addi-fail64.S │ │ │ ├── simple-fail32.S │ │ │ ├── simple-fail64.S │ │ │ ├── simple-pass32.S │ │ │ └── simple-pass64.S │ │ └── toolchain_setup │ └── qtrvsim_tester.py └── stud-support/ ├── build_tests.py └── run_tests.py