├── .gitignore ├── LICENSE ├── README.md ├── aarch64_instructions.py ├── arm2riscv.py ├── compile_thru_arm2riscv.sh ├── convert_parse_tree.py ├── display_code.sh ├── docs ├── Walkthrough.md ├── asm_examples │ ├── check_csel.asm │ ├── float_cmp.asm │ ├── floats_punned.asm │ ├── helloworld.asm │ ├── instruction_log.csv │ ├── instruction_log.md │ ├── large_mergesort.asm │ ├── sieve_of_erastothenes.asm │ ├── simple_math.asm │ ├── simple_math_more_types.asm │ ├── table.html │ ├── thread_amotests.asm │ └── thread_stress_loadstore.asm ├── project_documentation.md ├── registers.xlsx ├── table.md └── utils │ ├── parse_instr.py │ └── rvop_decoder.py ├── gentexts.py ├── grammar └── grammar_arm.lark ├── helper_methods.py ├── instr_helpers.py ├── register_map.py ├── show_arm.sh ├── test_suite.py ├── testing ├── code │ ├── check_csel.c │ ├── float_cmp.c │ ├── floats_punned.c │ ├── helloworld.c │ ├── large_mergesort.c │ ├── sieve_of_erastothenes.c │ ├── simple_math.c │ ├── simple_math_more_types.c │ ├── thread_amotests.c │ └── thread_stress_loadstore.c ├── qemu_binaries │ ├── qemu-aarch64-static │ └── qemu-riscv64-static └── setup_environment.dockerfile └── utils.py /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/README.md -------------------------------------------------------------------------------- /aarch64_instructions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/aarch64_instructions.py -------------------------------------------------------------------------------- /arm2riscv.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/arm2riscv.py -------------------------------------------------------------------------------- /compile_thru_arm2riscv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/compile_thru_arm2riscv.sh -------------------------------------------------------------------------------- /convert_parse_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/convert_parse_tree.py -------------------------------------------------------------------------------- /display_code.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/display_code.sh -------------------------------------------------------------------------------- /docs/Walkthrough.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/Walkthrough.md -------------------------------------------------------------------------------- /docs/asm_examples/check_csel.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/check_csel.asm -------------------------------------------------------------------------------- /docs/asm_examples/float_cmp.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/float_cmp.asm -------------------------------------------------------------------------------- /docs/asm_examples/floats_punned.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/floats_punned.asm -------------------------------------------------------------------------------- /docs/asm_examples/helloworld.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/helloworld.asm -------------------------------------------------------------------------------- /docs/asm_examples/instruction_log.csv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/instruction_log.csv -------------------------------------------------------------------------------- /docs/asm_examples/instruction_log.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/instruction_log.md -------------------------------------------------------------------------------- /docs/asm_examples/large_mergesort.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/large_mergesort.asm -------------------------------------------------------------------------------- /docs/asm_examples/sieve_of_erastothenes.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/sieve_of_erastothenes.asm -------------------------------------------------------------------------------- /docs/asm_examples/simple_math.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/simple_math.asm -------------------------------------------------------------------------------- /docs/asm_examples/simple_math_more_types.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/simple_math_more_types.asm -------------------------------------------------------------------------------- /docs/asm_examples/table.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/table.html -------------------------------------------------------------------------------- /docs/asm_examples/thread_amotests.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/thread_amotests.asm -------------------------------------------------------------------------------- /docs/asm_examples/thread_stress_loadstore.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/asm_examples/thread_stress_loadstore.asm -------------------------------------------------------------------------------- /docs/project_documentation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/project_documentation.md -------------------------------------------------------------------------------- /docs/registers.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/registers.xlsx -------------------------------------------------------------------------------- /docs/table.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/table.md -------------------------------------------------------------------------------- /docs/utils/parse_instr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/utils/parse_instr.py -------------------------------------------------------------------------------- /docs/utils/rvop_decoder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/docs/utils/rvop_decoder.py -------------------------------------------------------------------------------- /gentexts.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/gentexts.py -------------------------------------------------------------------------------- /grammar/grammar_arm.lark: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/grammar/grammar_arm.lark -------------------------------------------------------------------------------- /helper_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/helper_methods.py -------------------------------------------------------------------------------- /instr_helpers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/instr_helpers.py -------------------------------------------------------------------------------- /register_map.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/register_map.py -------------------------------------------------------------------------------- /show_arm.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | aarch64-linux-gnu-gcc -march=armv8.3-a -S -o - $@ 4 | -------------------------------------------------------------------------------- /test_suite.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/test_suite.py -------------------------------------------------------------------------------- /testing/code/check_csel.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/check_csel.c -------------------------------------------------------------------------------- /testing/code/float_cmp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/float_cmp.c -------------------------------------------------------------------------------- /testing/code/floats_punned.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/floats_punned.c -------------------------------------------------------------------------------- /testing/code/helloworld.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/helloworld.c -------------------------------------------------------------------------------- /testing/code/large_mergesort.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/large_mergesort.c -------------------------------------------------------------------------------- /testing/code/sieve_of_erastothenes.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/sieve_of_erastothenes.c -------------------------------------------------------------------------------- /testing/code/simple_math.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/simple_math.c -------------------------------------------------------------------------------- /testing/code/simple_math_more_types.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/simple_math_more_types.c -------------------------------------------------------------------------------- /testing/code/thread_amotests.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/thread_amotests.c -------------------------------------------------------------------------------- /testing/code/thread_stress_loadstore.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/code/thread_stress_loadstore.c -------------------------------------------------------------------------------- /testing/qemu_binaries/qemu-aarch64-static: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/qemu_binaries/qemu-aarch64-static -------------------------------------------------------------------------------- /testing/qemu_binaries/qemu-riscv64-static: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/qemu_binaries/qemu-riscv64-static -------------------------------------------------------------------------------- /testing/setup_environment.dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/testing/setup_environment.dockerfile -------------------------------------------------------------------------------- /utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/schorrm/arm2riscv/HEAD/utils.py --------------------------------------------------------------------------------