Notebooks · lib/rv32/tests/riscv/rv32ui_st_ld
lib/ rv32/ tests/ riscv/ rv32ui_st_ld.viv
lib/rv32/tests/riscv/rv32ui_st_ld.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–376
# riscv-tests rv32ui/st_ld.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 la x2, tdat li x1, 0xffffffffffffffdd sb x1, 0(x2) lb x14, 0(x2) li x7, 0xffffffffffffffdd bne x14, x7, fail test_3: li gp, 3 la x2, tdat li x1, 0xffffffffffffffcd sb x1, 1(x2) lb x14, 1(x2) li x7, 0xffffffffffffffcd bne x14, x7, fail test_4: li gp, 4 la x2, tdat li x1, 0xffffffffffffffcc sb x1, 2(x2) lb x14, 2(x2) li x7, 0xffffffffffffffcc bne x14, x7, fail test_5: li gp, 5 la x2, tdat li x1, 0xffffffffffffffbc sb x1, 3(x2) lb x14, 3(x2) li x7, 0xffffffffffffffbc bne x14, x7, fail test_6: li gp, 6 la x2, tdat li x1, 0xffffffffffffffbb sb x1, 4(x2) lb x14, 4(x2) li x7, 0xffffffffffffffbb bne x14, x7, fail test_7: li gp, 7 la x2, tdat li x1, 0xffffffffffffffab sb x1, 5(x2) lb x14, 5(x2) li x7, 0xffffffffffffffab bne x14, x7, fail test_8: li gp, 8 la x2, tdat li x1, 0x33 sb x1, 0(x2) lb x14, 0(x2) li x7, 0x33 bne x14, x7, fail test_9: li gp, 9 la x2, tdat li x1, 0x23 sb x1, 1(x2) lb x14, 1(x2) li x7, 0x23 bne x14, x7, fail test_10: li gp, 10 la x2, tdat li x1, 0x22 sb x1, 2(x2) lb x14, 2(x2) li x7, 0x22 bne x14, x7, fail test_11: li gp, 11 la x2, tdat li x1, 0x12 sb x1, 3(x2) lb x14, 3(x2) li x7, 0x12 bne x14, x7, fail test_12: li gp, 12 la x2, tdat li x1, 0x11 sb x1, 4(x2) lb x14, 4(x2) li x7, 0x11 bne x14, x7, fail test_13: li gp, 13 la x2, tdat li x1, 0x01 sb x1, 5(x2) lb x14, 5(x2) li x7, 0x01 bne x14, x7, fail test_14: li gp, 14 la x2, tdat li x1, 0x33 sb x1, 0(x2) lbu x14, 0(x2) li x7, 0x33 bne x14, x7, fail test_15: li gp, 15 la x2, tdat li x1, 0x23 sb x1, 1(x2) lbu x14, 1(x2) li x7, 0x23 bne x14, x7, fail test_16: li gp, 16 la x2, tdat li x1, 0x22 sb x1, 2(x2) lbu x14, 2(x2) li x7, 0x22 bne x14, x7, fail test_17: li gp, 17 la x2, tdat li x1, 0x12 sb x1, 3(x2) lbu x14, 3(x2) li x7, 0x12 bne x14, x7, fail test_18: li gp, 18 la x2, tdat li x1, 0x11 sb x1, 4(x2) lbu x14, 4(x2) li x7, 0x11 bne x14, x7, fail test_19: li gp, 19 la x2, tdat li x1, 0x01 sb x1, 5(x2) lbu x14, 5(x2) li x7, 0x01 bne x14, x7, fail test_20: li gp, 20 la x2, tdat li x1, 0xffffffffaabbccdd sw x1, 0(x2) lw x14, 0(x2) li x7, 0xffffffffaabbccdd bne x14, x7, fail test_21: li gp, 21 la x2, tdat li x1, 0xffffffffdaabbccd sw x1, 4(x2) lw x14, 4(x2) li x7, 0xffffffffdaabbccd bne x14, x7, fail test_22: li gp, 22 la x2, tdat li x1, 0xffffffffddaabbcc sw x1, 8(x2) lw x14, 8(x2) li x7, 0xffffffffddaabbcc bne x14, x7, fail test_23: li gp, 23 la x2, tdat li x1, 0xffffffffcddaabbc sw x1, 12(x2) lw x14, 12(x2) li x7, 0xffffffffcddaabbc bne x14, x7, fail test_24: li gp, 24 la x2, tdat li x1, 0xffffffffccddaabb sw x1, 16(x2) lw x14, 16(x2) li x7, 0xffffffffccddaabb bne x14, x7, fail test_25: li gp, 25 la x2, tdat li x1, 0xffffffffbccddaab sw x1, 20(x2) lw x14, 20(x2) li x7, 0xffffffffbccddaab bne x14, x7, fail test_26: li gp, 26 la x2, tdat li x1, 0x00112233 sw x1, 0(x2) lw x14, 0(x2) li x7, 0x00112233 bne x14, x7, fail test_27: li gp, 27 la x2, tdat li x1, 0x30011223 sw x1, 4(x2) lw x14, 4(x2) li x7, 0x30011223 bne x14, x7, fail test_28: li gp, 28 la x2, tdat li x1, 0x33001122 sw x1, 8(x2) lw x14, 8(x2) li x7, 0x33001122 bne x14, x7, fail test_29: li gp, 29 la x2, tdat li x1, 0x23300112 sw x1, 12(x2) lw x14, 12(x2) li x7, 0x23300112 bne x14, x7, fail test_30: li gp, 30 la x2, tdat li x1, 0x22330011 sw x1, 16(x2) lw x14, 16(x2) li x7, 0x22330011 bne x14, x7, fail test_31: li gp, 31 la x2, tdat li x1, 0x12233001 sw x1, 20(x2) lw x14, 20(x2) li x7, 0x12233001 bne x14, x7, fail test_32: li gp, 32 la x2, tdat li x1, 0xffffffffffffccdd sh x1, 0(x2) lh x14, 0(x2) li x7, 0xffffffffffffccdd bne x14, x7, fail test_33: li gp, 33 la x2, tdat li x1, 0xffffffffffffbccd sh x1, 2(x2) lh x14, 2(x2) li x7, 0xffffffffffffbccd bne x14, x7, fail test_34: li gp, 34 la x2, tdat li x1, 0xffffffffffffbbcc sh x1, 4(x2) lh x14, 4(x2) li x7, 0xffffffffffffbbcc bne x14, x7, fail test_35: li gp, 35 la x2, tdat li x1, 0xffffffffffffabbc sh x1, 6(x2) lh x14, 6(x2) li x7, 0xffffffffffffabbc bne x14, x7, fail test_36: li gp, 36 la x2, tdat li x1, 0xffffffffffffaabb sh x1, 8(x2) lh x14, 8(x2) li x7, 0xffffffffffffaabb bne x14, x7, fail test_37: li gp, 37 la x2, tdat li x1, 0xffffffffffffdaab sh x1, 10(x2) lh x14, 10(x2) li x7, 0xffffffffffffdaab bne x14, x7, fail test_38: li gp, 38 la x2, tdat li x1, 0x2233 sh x1, 0(x2) lh x14, 0(x2) li x7, 0x2233 bne x14, x7, fail test_39: li gp, 39 la x2, tdat li x1, 0x1223 sh x1, 2(x2) lh x14, 2(x2) li x7, 0x1223 bne x14, x7, fail test_40: li gp, 40 la x2, tdat li x1, 0x1122 sh x1, 4(x2) lh x14, 4(x2) li x7, 0x1122 bne x14, x7, fail test_41: li gp, 41 la x2, tdat li x1, 0x0112 sh x1, 6(x2) lh x14, 6(x2) li x7, 0x0112 bne x14, x7, fail test_42: li gp, 42 la x2, tdat li x1, 0x0011 sh x1, 8(x2) lh x14, 8(x2) li x7, 0x0011 bne x14, x7, fail test_43: li gp, 43 la x2, tdat li x1, 0x3001 sh x1, 10(x2) lh x14, 10(x2) li x7, 0x3001 bne x14, x7, fail test_44: li gp, 44 la x2, tdat li x1, 0x2233 sh x1, 0(x2) lhu x14, 0(x2) li x7, 0x2233 bne x14, x7, fail test_45: li gp, 45 la x2, tdat li x1, 0x1223 sh x1, 2(x2) lhu x14, 2(x2) li x7, 0x1223 bne x14, x7, fail test_46: li gp, 46 la x2, tdat li x1, 0x1122 sh x1, 4(x2) lhu x14, 4(x2) li x7, 0x1122 bne x14, x7, fail test_47: li gp, 47 la x2, tdat li x1, 0x0112 sh x1, 6(x2) lhu x14, 6(x2) li x7, 0x0112 bne x14, x7, fail test_48: li gp, 48 la x2, tdat li x1, 0x0011 sh x1, 8(x2) lhu x14, 8(x2) li x7, 0x0011 bne x14, x7, fail test_49: li gp, 49 la x2, tdat li x1, 0x3001 sh x1, 10(x2) lhu x14, 10(x2) li x7, 0x3001 bne x14, x7, fail li a0, 0xef la a1, tdat sb a0, 3(a1) lb a2, 3(a1) 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 tdat: .rept 20 .word 0xdeadbeef .endr """ result = run_asm(SOURCE, STEP_LIMIT) show "rv32ui-st_ld", result.exit_code, result.steps test "rv32ui-st_ld 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