Notebooks · lib/rv32/tests/riscv/rv32um_mulhu
lib/ rv32/ tests/ riscv/ rv32um_mulhu.viv
lib/rv32/tests/riscv/rv32um_mulhu.viv · 1 code cellOpen in the workbenchDownload .vivLook inside this program
- Atlas
The program’s map: every function and which calls which.
There’s no recorded run of this program yet.
Shift+Enter in a cell runs it and moves to the next. Running a cell runs every cell above it too, as one program.
[1]lines 1–313
# riscv-tests rv32um/mulhu.S, preprocessed by tools/rv32/riscv_tests.py # (riscv-tests commit 7b68f7b91f82; BSD-3-Clause, The Regents of the # University of California). Generated: do not edit. from rv32.system import run_asm, STEP_LIMIT SOURCE = """ .text _start: test_2: li gp, 2 li x11, 0 li x12, 0 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_3: li gp, 3 li x11, 1 li x12, 1 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_4: li gp, 4 li x11, 3 li x12, 7 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_5: li gp, 5 li x11, 0 li x12, 4294934528 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_6: li gp, 6 li x11, 2147483648 li x12, 0 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_7: li gp, 7 li x11, 2147483648 li x12, 4294934528 mulhu x14, x11, x12 li x7, 2147467264 bne x14, x7, fail test_30: li gp, 30 li x11, 2863311531 li x12, 196221 mulhu x14, x11, x12 li x7, 130814 bne x14, x7, fail test_31: li gp, 31 li x11, 196221 li x12, 2863311531 mulhu x14, x11, x12 li x7, 130814 bne x14, x7, fail test_32: li gp, 32 li x11, 4278190080 li x12, 4278190080 mulhu x14, x11, x12 li x7, 4261478400 bne x14, x7, fail test_33: li gp, 33 li x11, 4294967295 li x12, 4294967295 mulhu x14, x11, x12 li x7, 4294967294 bne x14, x7, fail test_34: li gp, 34 li x11, 4294967295 li x12, 1 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_35: li gp, 35 li x11, 1 li x12, 4294967295 mulhu x14, x11, x12 li x7, 0 bne x14, x7, fail test_8: li gp, 8 li x11, 13631488 li x12, 11534336 mulhu x11, x11, x12 li x7, 36608 bne x11, x7, fail test_9: li gp, 9 li x11, 14680064 li x12, 11534336 mulhu x12, x11, x12 li x7, 39424 bne x12, x7, fail test_10: li gp, 10 li x11, 13631488 mulhu x11, x11, x11 li x7, 43264 bne x11, x7, fail test_11: li gp, 11 li x4, 0 1: li x1, 13631488 li x2, 11534336 mulhu x14, x1, x2 addi x6, x14, 0 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 36608 bne x6, x7, fail test_12: li gp, 12 li x4, 0 1: li x1, 14680064 li x2, 11534336 mulhu x14, x1, x2 nop addi x6, x14, 0 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 39424 bne x6, x7, fail test_13: li gp, 13 li x4, 0 1: li x1, 15728640 li x2, 11534336 mulhu x14, x1, x2 nop nop addi x6, x14, 0 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 42240 bne x6, x7, fail test_14: li gp, 14 li x4, 0 1: li x1, 13631488 li x2, 11534336 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 36608 bne x14, x7, fail test_15: li gp, 15 li x4, 0 1: li x1, 14680064 li x2, 11534336 nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 39424 bne x14, x7, fail test_16: li gp, 16 li x4, 0 1: li x1, 15728640 li x2, 11534336 nop nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 42240 bne x14, x7, fail test_17: li gp, 17 li x4, 0 1: li x1, 13631488 nop li x2, 11534336 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 36608 bne x14, x7, fail test_18: li gp, 18 li x4, 0 1: li x1, 14680064 nop li x2, 11534336 nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 39424 bne x14, x7, fail test_19: li gp, 19 li x4, 0 1: li x1, 15728640 nop nop li x2, 11534336 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 42240 bne x14, x7, fail test_20: li gp, 20 li x4, 0 1: li x2, 11534336 li x1, 13631488 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 36608 bne x14, x7, fail test_21: li gp, 21 li x4, 0 1: li x2, 11534336 li x1, 14680064 nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 39424 bne x14, x7, fail test_22: li gp, 22 li x4, 0 1: li x2, 11534336 li x1, 15728640 nop nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 42240 bne x14, x7, fail test_23: li gp, 23 li x4, 0 1: li x2, 11534336 nop li x1, 13631488 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 36608 bne x14, x7, fail test_24: li gp, 24 li x4, 0 1: li x2, 11534336 nop li x1, 14680064 nop mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 39424 bne x14, x7, fail test_25: li gp, 25 li x4, 0 1: li x2, 11534336 nop nop li x1, 15728640 mulhu x14, x1, x2 addi x4, x4, 1 li x5, 2 bne x4, x5, 1b li x7, 42240 bne x14, x7, fail test_26: li gp, 26 li x1, 2080374784 mulhu x2, x0, x1 li x7, 0 bne x2, x7, fail test_27: li gp, 27 li x1, 2147483648 mulhu x2, x1, x0 li x7, 0 bne x2, x7, fail test_28: li gp, 28 mulhu x1, x0, x0 li x7, 0 bne x1, x7, fail test_29: li gp, 29 li x1, 34603008 li x2, 35651584 mulhu x0, x1, x2 li x7, 0 bne x0, x7, fail bne x0, gp, pass fail: mv a0, gp li a7, 93 ecall pass: li gp, 1 li a7, 93 li a0, 0 ecall .data .data """ result = run_asm(SOURCE, STEP_LIMIT) show "rv32um-mulhu", result.exit_code, result.steps test "rv32um-mulhu passes every case" { assert_true(result.halted) assert_true(result.exit_code == 0) } # SPDX-License-Identifier: BSD-3-Clause # SPDX-FileCopyrightText: 2012-2015 The Regents of the University of California (Regents) # SPDX-FileCopyrightText: 2026 The Viv authors