112771Sqtt2@cornell.edu# See LICENSE for license details. 212771Sqtt2@cornell.edu 312771Sqtt2@cornell.edu#***************************************************************************** 412771Sqtt2@cornell.edu# fence_i.S 512771Sqtt2@cornell.edu#----------------------------------------------------------------------------- 612771Sqtt2@cornell.edu# 712771Sqtt2@cornell.edu# Test self-modifying code and the fence.i instruction. 812771Sqtt2@cornell.edu# 912771Sqtt2@cornell.edu 1012771Sqtt2@cornell.edu#include "riscv_test.h" 1112771Sqtt2@cornell.edu#include "test_macros.h" 1212771Sqtt2@cornell.edu 1312771Sqtt2@cornell.eduRVTEST_RV64U 1412771Sqtt2@cornell.eduRVTEST_CODE_BEGIN 1512771Sqtt2@cornell.edu 1612771Sqtt2@cornell.eduli a3, 111 1712771Sqtt2@cornell.edulh a0, insn 1812771Sqtt2@cornell.edulh a1, insn+2 1912771Sqtt2@cornell.edu 2012771Sqtt2@cornell.edu# test I$ hit 2112771Sqtt2@cornell.edu.align 6 2212771Sqtt2@cornell.edush a0, 1f, t0 2312771Sqtt2@cornell.edush a1, 1f+2, t0 2412771Sqtt2@cornell.edufence.i 2512771Sqtt2@cornell.edu 2612771Sqtt2@cornell.edu1: addi a3, a3, 222 2712771Sqtt2@cornell.eduTEST_CASE( 2, a3, 444, nop ) 2812771Sqtt2@cornell.edu 2912771Sqtt2@cornell.edu# test prefetcher hit 3012771Sqtt2@cornell.eduli a4, 100 3112771Sqtt2@cornell.edu1: addi a4, a4, -1 3212771Sqtt2@cornell.edubnez a4, 1b 3312771Sqtt2@cornell.edu 3412771Sqtt2@cornell.edush a0, 1f, t0 3512771Sqtt2@cornell.edush a1, 1f+2, t0 3612771Sqtt2@cornell.edufence.i 3712771Sqtt2@cornell.edu 3812771Sqtt2@cornell.edu.align 6 3912771Sqtt2@cornell.edu1: addi a3, a3, 555 4012771Sqtt2@cornell.eduTEST_CASE( 3, a3, 777, nop ) 4112771Sqtt2@cornell.edu 4212771Sqtt2@cornell.eduTEST_PASSFAIL 4312771Sqtt2@cornell.edu 4412771Sqtt2@cornell.eduRVTEST_CODE_END 4512771Sqtt2@cornell.edu 4612771Sqtt2@cornell.edu .data 4712771Sqtt2@cornell.eduRVTEST_DATA_BEGIN 4812771Sqtt2@cornell.edu 4912771Sqtt2@cornell.edu TEST_DATA 5012771Sqtt2@cornell.edu 5112771Sqtt2@cornell.eduinsn: 5212771Sqtt2@cornell.edu addi a3, a3, 333 5312771Sqtt2@cornell.edu 5412771Sqtt2@cornell.eduRVTEST_DATA_END 55