From 7d13740a11919ea1ca8246b9004b2859807b14cc Mon Sep 17 00:00:00 2001 From: David Harris Date: Thu, 13 Jan 2022 21:45:54 +0000 Subject: [PATCH] Mixed C and assembly language test cases; SRT initial version passing tests --- examples/C/inline/Makefile | 32 + examples/C/inline/inline | Bin 0 -> 38864 bytes examples/C/inline/inline.c | 11 + examples/C/mm/Makefile | 16 - examples/C/mm/common.h | 36 - examples/C/mm/mm | Bin 112448 -> 0 bytes examples/C/mm/mm.c | 152 - examples/C/mm/mm_main.c | 76 - examples/C/mm/old.gen.scala | 81 - examples/C/mm/rb.h | 210 - examples/C/simple/Makefile | 16 - examples/C/simple/comp1.s | 10 - examples/C/simple/simple | Bin 37496 -> 0 bytes examples/C/simple/simple.c | 40 - examples/C/simple/simple.dis | 11009 ----------------------------- examples/C/simple/simple_orig.c | 35 - examples/C/sum/Makefile | 19 +- examples/C/sum/sum | Bin 0 -> 40008 bytes examples/C/sum/sum.c | 4 +- examples/C/sum_mixed/Makefile | 32 + examples/C/sum_mixed/sum_mixed | Bin 0 -> 67720 bytes examples/C/sum_mixed/sum_mixed.c | 18 + examples/asm/sumtest/sum.S | Bin 794 -> 816 bytes pipelined/srt/sim-srt-batch | 1 + pipelined/srt/srt.do | 2 +- pipelined/srt/srt.sv | 212 +- pipelined/srt/srt_stanford.sv | 355 + 27 files changed, 597 insertions(+), 11770 deletions(-) create mode 100644 examples/C/inline/Makefile create mode 100755 examples/C/inline/inline create mode 100644 examples/C/inline/inline.c delete mode 100644 examples/C/mm/Makefile delete mode 100644 examples/C/mm/common.h delete mode 100755 examples/C/mm/mm delete mode 100644 examples/C/mm/mm.c delete mode 100644 examples/C/mm/mm_main.c delete mode 100644 examples/C/mm/old.gen.scala delete mode 100644 examples/C/mm/rb.h delete mode 100644 examples/C/simple/Makefile delete mode 100644 examples/C/simple/comp1.s delete mode 100755 examples/C/simple/simple delete mode 100644 examples/C/simple/simple.c delete mode 100644 examples/C/simple/simple.dis delete mode 100644 examples/C/simple/simple_orig.c create mode 100755 examples/C/sum/sum create mode 100644 examples/C/sum_mixed/Makefile create mode 100755 examples/C/sum_mixed/sum_mixed create mode 100644 examples/C/sum_mixed/sum_mixed.c create mode 100755 pipelined/srt/sim-srt-batch create mode 100644 pipelined/srt/srt_stanford.sv diff --git a/examples/C/inline/Makefile b/examples/C/inline/Makefile new file mode 100644 index 000000000..67868315d --- /dev/null +++ b/examples/C/inline/Makefile @@ -0,0 +1,32 @@ +TARGET = inline + +$(TARGET).objdump: $(TARGET) + riscv64-unknown-elf-objdump -S -D $(TARGET) > $(TARGET).objdump + +$(TARGET): $(TARGET).c Makefile + riscv64-unknown-elf-gcc -o $(TARGET) -g -O\ + -march=rv64gc -mabi=lp64d -mcmodel=medany \ + -nostdlib -static -lm -fno-tree-loop-distribute-patterns \ + -T../common/test.ld -I../common \ + $(TARGET).c ../common/crt.S ../common/syscalls.c +# Compiler flags: +# -o $(TARGET) defines the name of the output file +# -g generates debugging symbols for gdb +# -O turns on basic optimization; -O3 turns on heavy optimization; omit for no optimization +# -march=rv64gc -mabi=lp64d =mcmodel=medany generates code for RV64GC with doubles and long/ptrs = 64 bits +# -static forces static linking (no dynamic shared libraries on bare metal) +# -lm links the math library if necessary (when #include math.h) +# -nostdlib avoids inserting standard startup files and default libraries +# because we are using crt.s on bare metal +# -fno-tree-loop-distribute-patterns turns replacing loops with memcpy/memset in the std library +# -T specifies the linker file +# -I specifies the include path (e.g. for util.h) +# The last line defines the C files to compile. +# crt.S is needed as our startup file to initialize the processor +# syscalls.c implements printf through the HTIF for Spike +# other flags from riscv-tests makefiles that don't seem to be important +# -ffast-math -DPREALLOCATE=1 -std=gnu99 \ +# -fno-common -fno-builtin-printf -nostartfiles -lgcc \ + +clean: + rm -f $(TARGET) $(TARGET).objdump diff --git a/examples/C/inline/inline b/examples/C/inline/inline new file mode 100755 index 0000000000000000000000000000000000000000..29b5b8bff87695406890aa1fabf03d9429050f46 GIT binary patch literal 38864 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 literal 0 HcmV?d00001 diff --git a/examples/C/inline/inline.c b/examples/C/inline/inline.c new file mode 100644 index 000000000..92d93a1b7 --- /dev/null +++ b/examples/C/inline/inline.c @@ -0,0 +1,11 @@ +// inline.c +// David_Harris@hmc.edu 12 January 2022 +// Illustrates inline assembly language + +#include + +int main(void) { + long cycles; + asm volatile("csrr %0, 0xB00" : "=r"(cycles)); // read mcycle register + printf ("mcycle = %ld\n", cycles); +} diff --git a/examples/C/mm/Makefile b/examples/C/mm/Makefile deleted file mode 100644 index 0a7fbb4a1..000000000 --- a/examples/C/mm/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -TARGET = mm - -$(TARGET).objdump: $(TARGET) - riscv64-unknown-elf-objdump -S -D $(TARGET) > $(TARGET).objdump - -$(TARGET): $(TARGET).c Makefile - riscv64-unknown-elf-gcc -g -o $(TARGET) -march=rv64gc -mabi=lp64d -mcmodel=medany \ - -DPREALLOCATE=1 -mcmodel=medany -static -std=gnu99 -O2 -ffast-math -fno-common \ - -fno-builtin-printf -fno-tree-loop-distribute-patterns \ - -static -nostdlib -nostartfiles -lm -lgcc -T../common/test.ld \ - -I../common \ - -O *.c \ - ../common/crt.S ../common/syscalls.c - -clean: - rm -f $(TARGET) $(TARGET).objdump diff --git a/examples/C/mm/common.h b/examples/C/mm/common.h deleted file mode 100644 index 01b9f3fe7..000000000 --- a/examples/C/mm/common.h +++ /dev/null @@ -1,36 +0,0 @@ -// See LICENSE for license details. - -#ifndef _MM_H -#define _MM_H - -#include -#include -#include - -#ifdef SP -typedef float t; -#define fma fmaf -#else -typedef double t; -#endif - -#define inline inline __attribute__((always_inline)) - -#define alloca_aligned(s, a) ((void*)(((uintptr_t)alloca((s)+(a)-1)+(a)-1)&~((a)-1))) - -#include "rb.h" - -#ifdef __cplusplus -extern "C" { -#endif - -void mm(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc); - -#ifdef __cplusplus -} -#endif - -//void rb(t* a, t* b, t* c, size_t lda, size_t ldb, size_t ldc); - -#endif diff --git a/examples/C/mm/mm b/examples/C/mm/mm deleted file mode 100755 index ae176956134cc44c4d28fb537042f707ade75c1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 112448 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 -#include -#include -#include - -#define MIN(a, b) ((a) < (b) ? (a) : (b)) - -static void mm_naive(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - for (size_t i = 0; i < m; i++) - { - for (size_t j = 0; j < n; j++) - { - t s0 = c[i*ldc+j], s1 = 0, s2 = 0, s3 = 0; - for (size_t k = 0; k < p/4*4; k+=4) - { - s0 = fma(a[i*lda+k+0], b[(k+0)*ldb+j], s0); - s1 = fma(a[i*lda+k+1], b[(k+1)*ldb+j], s1); - s2 = fma(a[i*lda+k+2], b[(k+2)*ldb+j], s2); - s3 = fma(a[i*lda+k+3], b[(k+3)*ldb+j], s3); - } - for (size_t k = p/4*4; k < p; k++) - s0 = fma(a[i*lda+k], b[k*ldb+j], s0); - c[i*ldc+j] = (s0 + s1) + (s2 + s3); - } - } -} - -static inline void mm_rb(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - size_t mb = m/RBM*RBM, nb = n/RBN*RBN; - for (size_t i = 0; i < mb; i += RBM) - { - for (size_t j = 0; j < nb; j += RBN) - kloop(p, a+i*lda, lda, b+j, ldb, c+i*ldc+j, ldc); - mm_naive(RBM, n - nb, p, a+i*lda, lda, b+nb, ldb, c+i*ldc+nb, ldc); - } - mm_naive(m - mb, n, p, a+mb*lda, lda, b, ldb, c+mb*ldc, ldc); -} - -static inline void repack(t* a, size_t lda, const t* a0, size_t lda0, size_t m, size_t p) -{ - for (size_t i = 0; i < m; i++) - { - for (size_t j = 0; j < p/8*8; j+=8) - { - t t0 = a0[i*lda0+j+0]; - t t1 = a0[i*lda0+j+1]; - t t2 = a0[i*lda0+j+2]; - t t3 = a0[i*lda0+j+3]; - t t4 = a0[i*lda0+j+4]; - t t5 = a0[i*lda0+j+5]; - t t6 = a0[i*lda0+j+6]; - t t7 = a0[i*lda0+j+7]; - a[i*lda+j+0] = t0; - a[i*lda+j+1] = t1; - a[i*lda+j+2] = t2; - a[i*lda+j+3] = t3; - a[i*lda+j+4] = t4; - a[i*lda+j+5] = t5; - a[i*lda+j+6] = t6; - a[i*lda+j+7] = t7; - } - for (size_t j = p/8*8; j < p; j++) - a[i*lda+j] = a0[i*lda0+j]; - } -} - -static void mm_cb(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - size_t nmb = m/CBM, nnb = n/CBN, npb = p/CBK; - size_t mb = nmb*CBM, nb = nnb*CBN, pb = npb*CBK; - //t a1[mb*pb], b1[pb*nb], c1[mb*nb]; - t* a1 = (t*)alloca_aligned(sizeof(t)*mb*pb, 8192); - t* b1 = (t*)alloca_aligned(sizeof(t)*pb*nb, 8192); - t* c1 = (t*)alloca_aligned(sizeof(t)*mb*nb, 8192); - - for (size_t i = 0; i < mb; i += CBM) - for (size_t j = 0; j < pb; j += CBK) - repack(a1 + (npb*(i/CBM) + j/CBK)*(CBM*CBK), CBK, a + i*lda + j, lda, CBM, CBK); - - for (size_t i = 0; i < pb; i += CBK) - for (size_t j = 0; j < nb; j += CBN) - repack(b1 + (nnb*(i/CBK) + j/CBN)*(CBK*CBN), CBN, b + i*ldb + j, ldb, CBK, CBN); - - for (size_t i = 0; i < mb; i += CBM) - for (size_t j = 0; j < nb; j += CBN) - repack(c1 + (nnb*(i/CBM) + j/CBN)*(CBM*CBN), CBN, c + i*ldc + j, ldc, CBM, CBN); - - for (size_t i = 0; i < mb; i += CBM) - { - for (size_t j = 0; j < nb; j += CBN) - { - for (size_t k = 0; k < pb; k += CBK) - { - mm_rb(CBM, CBN, CBK, - a1 + (npb*(i/CBM) + k/CBK)*(CBM*CBK), CBK, - b1 + (nnb*(k/CBK) + j/CBN)*(CBK*CBN), CBN, - c1 + (nnb*(i/CBM) + j/CBN)*(CBM*CBN), CBN); - } - if (pb < p) - { - mm_rb(CBM, CBN, p - pb, - a + i*lda + pb, lda, - b + pb*ldb + j, ldb, - c1 + (nnb*(i/CBM) + j/CBN)*(CBM*CBN), CBN); - } - } - if (nb < n) - { - for (size_t k = 0; k < p; k += CBK) - { - mm_rb(CBM, n - nb, MIN(p - k, CBK), - a + i*lda + k, lda, - b + k*ldb + nb, ldb, - c + i*ldc + nb, ldc); - } - } - } - if (mb < m) - { - for (size_t j = 0; j < n; j += CBN) - { - for (size_t k = 0; k < p; k += CBK) - { - mm_rb(m - mb, MIN(n - j, CBN), MIN(p - k, CBK), - a + mb*lda + k, lda, - b + k*ldb + j, ldb, - c + mb*ldc + j, ldc); - } - } - } - - for (size_t i = 0; i < mb; i += CBM) - for (size_t j = 0; j < nb; j += CBN) - repack(c + i*ldc + j, ldc, c1 + (nnb*(i/CBM) + j/CBN)*(CBM*CBN), CBN, CBM, CBN); -} - -void mm(size_t m, size_t n, size_t p, - t* a, size_t lda, t* b, size_t ldb, t* c, size_t ldc) -{ - if (__builtin_expect(m <= 2*CBM && n <= 2*CBN && p <= 2*CBK, 1)) - mm_rb(m, n, p, a, lda, b, ldb, c, ldc); - else - mm_cb(m, n, p, a, lda, b, ldb, c, ldc); -} diff --git a/examples/C/mm/mm_main.c b/examples/C/mm/mm_main.c deleted file mode 100644 index 5a90d1ab1..000000000 --- a/examples/C/mm/mm_main.c +++ /dev/null @@ -1,76 +0,0 @@ -// See LICENSE for license details. - -#include "common.h" -#include -#include -#include -#include "util.h" - -#pragma GCC optimize ("unroll-loops") - -int main(int argc, char** argv) -//void thread_entry(int cid, int nc) -{ - const int R = 8; - int m, n, p; - uint64_t s = 0xdeadbeefU; - - int cid = 0; - int nc = 0; - - m = CBM; - n = CBN; - p = CBK; - - t a[m*p]; - t b[p*n]; - t c[m*n]; - - for (size_t i = 0; i < m; i++) - for (size_t j = 0; j < p; j++) - a[i*p+j] = (t)(s = lfsr(s)); - for (size_t i = 0; i < p; i++) - for (size_t j = 0; j < n; j++) - b[i*n+j] = (t)(s = lfsr(s)); - memset(c, 0, m*n*sizeof(c[0])); - - size_t instret, cycles; - for (int i = 0; i < R; i++) - { - instret = -read_csr(minstret); - cycles = -read_csr(mcycle); - mm(m, n, p, a, p, b, n, c, n); - instret += read_csr(minstret); - cycles += read_csr(mcycle); - } - - asm volatile("fence"); - - printf("C%d: reg block %dx%dx%d, cache block %dx%dx%d\n", - cid, RBM, RBN, RBK, CBM, CBN, CBK); - printf("C%d: %d instructions\n", cid, (int)(instret)); - printf("C%d: %d cycles\n", cid, (int)(cycles)); - printf("C%d: %d flops\n", cid, 2*m*n*p); - printf("C%d: %d Mflops @ 1 GHz\n", cid, 2000*m*n*p/(cycles)); - -#if 1 - for (size_t i = 0; i < m; i++) - { - for (size_t j = 0; j < n; j++) - { - t s = 0; - for (size_t k = 0; k < p; k++) - s += a[i*p+k] * b[k*n+j]; - s *= R; - if (fabs(c[i*n+j]-s) > fabs(1e-6*s)) - { - printf("C%d: c[%lu][%lu] %f != %f\n", cid, i, j, c[i*n+j], s); - exit(1); - } - } - } -#endif - - //barrier(nc); - exit(0); -} diff --git a/examples/C/mm/old.gen.scala b/examples/C/mm/old.gen.scala deleted file mode 100644 index 982daa86d..000000000 --- a/examples/C/mm/old.gen.scala +++ /dev/null @@ -1,81 +0,0 @@ -import scala.sys.process._ -object MMGen { - implicit def i2s(i: Int) = i.toString - def writeFile(name: String, contents: String) = { - val f = new java.io.FileWriter(name) - f.write(contents) - f.close - } - - var indent = 0 - def spacing = " " * indent - def assign(lhs: String, rhs: String) = - spacing + lhs + " = " + rhs + ";\n" - def init(t: String, n: String, v: String) = - assign(t+" "+n, v) - def open_block(s: String = "") = { - val result = (if (s != "") spacing + s else "") + spacing + "{\n" - indent = indent + 1 - result - } - def close_block = { - indent = indent - 1 - spacing + "}\n" - } - - def ar(m: String, i: String) = m+"["+i+"]" - def r(a: String, b: String*) = (a :: b.toList).reduceLeft(_+"_"+_) - - def rb(m: Int, n: Int, p: Int) = { - var s = open_block("static inline void kloop(size_t p, t* a0, size_t lda, t* b0, size_t ldb, t* c, size_t ldc)\n") - - for (i <- 0 until m) - s += init("t*", r("c", i), "&"+ar("c", "ldc*"+i)) - for (i <- 0 until m; j <- 0 until n) - s += init("t", r("c", i, j), ar(r("c", i), j)) - - def doit(m: Int, n: Int, p: Int) = { - for (i <- 0 until m) - s += init("t*", r("a", i), "&"+ar("a", "lda*"+i)) - for (k <- 0 until p) - s += init("t*", r("b", k), "&"+ar("b", "ldb*"+k)) - for (k <- 0 until p; i <- 0 until m; j <- 0 until n) - s += assign(r("c", i, j), "fma(" + ar(r("a", i), k) + ", " + ar(r("b", k), j) + ", " + r("c", i, j) + ")") - } - - s += open_block("for (t *a = a0, *b = b0; a < a0 + p/RBK*RBK; a += RBK, b += RBK*ldb)\n") - doit(m, n, p) - s += close_block - - s += open_block("for (t *a = a0 + p/RBK*RBK, *b = b0 + p/RBK*RBK*ldb; a < a0 + p; a++, b += ldb)\n") - doit(m, n, 1) - s += close_block - - for (i <- 0 until m; j <- 0 until n) - s += assign(ar(r("c", i), j), r("c", i, j)) - s += close_block - - s - } - def gcd(a: Int, b: Int): Int = if (b == 0) a else gcd(b, a%b) - def lcm(a: Int, b: Int): Int = a*b/gcd(a, b) - def lcm(a: Seq[Int]): Int = { - if (a.tail.isEmpty) a.head - else lcm(a.head, lcm(a.tail)) - } - def test1(m: Int, n: Int, p: Int, m1: Int, n1: Int, p1: Int) = { - val decl = "static const int RBM = "+m+", RBN = "+n+", RBK = "+p+";\n" + - "static const int CBM = "+m1+", CBN = "+n1+", CBK = "+p1+";\n" - writeFile("rb.h", decl + rb(m, n, p)) - //"make"!! - - "make run"! - - ("cp a.out " + Seq("b", m, n, p, m1, n1, p1, "run").reduce(_+"."+_))! - } - def main(args: Array[String]): Unit = { - test1(4, 5, 6, 24, 25, 24) - //for (i <- 4 to 6; j <- 4 to 6; k <- 4 to 6) - // test1(i, j, k, if (i == 5) 35 else 36, if (j == 5) 35 else 36, if (k == 5) 35 else 36) - } -} diff --git a/examples/C/mm/rb.h b/examples/C/mm/rb.h deleted file mode 100644 index 421c9648f..000000000 --- a/examples/C/mm/rb.h +++ /dev/null @@ -1,210 +0,0 @@ -static const int RBM = 4, RBN = 5, RBK = 6; -static const int CBM = 24, CBN = 25, CBK = 24; -static inline void kloop(size_t p, t* a0, size_t lda, t* b0, size_t ldb, t* c, size_t ldc) -{ - t* c_0 = &c[ldc*0]; - t* c_1 = &c[ldc*1]; - t* c_2 = &c[ldc*2]; - t* c_3 = &c[ldc*3]; - t c_0_0 = c_0[0]; - t c_0_1 = c_0[1]; - t c_0_2 = c_0[2]; - t c_0_3 = c_0[3]; - t c_0_4 = c_0[4]; - t c_1_0 = c_1[0]; - t c_1_1 = c_1[1]; - t c_1_2 = c_1[2]; - t c_1_3 = c_1[3]; - t c_1_4 = c_1[4]; - t c_2_0 = c_2[0]; - t c_2_1 = c_2[1]; - t c_2_2 = c_2[2]; - t c_2_3 = c_2[3]; - t c_2_4 = c_2[4]; - t c_3_0 = c_3[0]; - t c_3_1 = c_3[1]; - t c_3_2 = c_3[2]; - t c_3_3 = c_3[3]; - t c_3_4 = c_3[4]; - for (t *a = a0, *b = b0; a < a0 + p/RBK*RBK; a += RBK, b += RBK*ldb) - { - t* a_0 = &a[lda*0]; - t* a_1 = &a[lda*1]; - t* a_2 = &a[lda*2]; - t* a_3 = &a[lda*3]; - t* b_0 = &b[ldb*0]; - t* b_1 = &b[ldb*1]; - t* b_2 = &b[ldb*2]; - t* b_3 = &b[ldb*3]; - t* b_4 = &b[ldb*4]; - t* b_5 = &b[ldb*5]; - c_0_0 = fma(a_0[0], b_0[0], c_0_0); - c_0_1 = fma(a_0[0], b_0[1], c_0_1); - c_0_2 = fma(a_0[0], b_0[2], c_0_2); - c_0_3 = fma(a_0[0], b_0[3], c_0_3); - c_0_4 = fma(a_0[0], b_0[4], c_0_4); - c_1_0 = fma(a_1[0], b_0[0], c_1_0); - c_1_1 = fma(a_1[0], b_0[1], c_1_1); - c_1_2 = fma(a_1[0], b_0[2], c_1_2); - c_1_3 = fma(a_1[0], b_0[3], c_1_3); - c_1_4 = fma(a_1[0], b_0[4], c_1_4); - c_2_0 = fma(a_2[0], b_0[0], c_2_0); - c_2_1 = fma(a_2[0], b_0[1], c_2_1); - c_2_2 = fma(a_2[0], b_0[2], c_2_2); - c_2_3 = fma(a_2[0], b_0[3], c_2_3); - c_2_4 = fma(a_2[0], b_0[4], c_2_4); - c_3_0 = fma(a_3[0], b_0[0], c_3_0); - c_3_1 = fma(a_3[0], b_0[1], c_3_1); - c_3_2 = fma(a_3[0], b_0[2], c_3_2); - c_3_3 = fma(a_3[0], b_0[3], c_3_3); - c_3_4 = fma(a_3[0], b_0[4], c_3_4); - c_0_0 = fma(a_0[1], b_1[0], c_0_0); - c_0_1 = fma(a_0[1], b_1[1], c_0_1); - c_0_2 = fma(a_0[1], b_1[2], c_0_2); - c_0_3 = fma(a_0[1], b_1[3], c_0_3); - c_0_4 = fma(a_0[1], b_1[4], c_0_4); - c_1_0 = fma(a_1[1], b_1[0], c_1_0); - c_1_1 = fma(a_1[1], b_1[1], c_1_1); - c_1_2 = fma(a_1[1], b_1[2], c_1_2); - c_1_3 = fma(a_1[1], b_1[3], c_1_3); - c_1_4 = fma(a_1[1], b_1[4], c_1_4); - c_2_0 = fma(a_2[1], b_1[0], c_2_0); - c_2_1 = fma(a_2[1], b_1[1], c_2_1); - c_2_2 = fma(a_2[1], b_1[2], c_2_2); - c_2_3 = fma(a_2[1], b_1[3], c_2_3); - c_2_4 = fma(a_2[1], b_1[4], c_2_4); - c_3_0 = fma(a_3[1], b_1[0], c_3_0); - c_3_1 = fma(a_3[1], b_1[1], c_3_1); - c_3_2 = fma(a_3[1], b_1[2], c_3_2); - c_3_3 = fma(a_3[1], b_1[3], c_3_3); - c_3_4 = fma(a_3[1], b_1[4], c_3_4); - c_0_0 = fma(a_0[2], b_2[0], c_0_0); - c_0_1 = fma(a_0[2], b_2[1], c_0_1); - c_0_2 = fma(a_0[2], b_2[2], c_0_2); - c_0_3 = fma(a_0[2], b_2[3], c_0_3); - c_0_4 = fma(a_0[2], b_2[4], c_0_4); - c_1_0 = fma(a_1[2], b_2[0], c_1_0); - c_1_1 = fma(a_1[2], b_2[1], c_1_1); - c_1_2 = fma(a_1[2], b_2[2], c_1_2); - c_1_3 = fma(a_1[2], b_2[3], c_1_3); - c_1_4 = fma(a_1[2], b_2[4], c_1_4); - c_2_0 = fma(a_2[2], b_2[0], c_2_0); - c_2_1 = fma(a_2[2], b_2[1], c_2_1); - c_2_2 = fma(a_2[2], b_2[2], c_2_2); - c_2_3 = fma(a_2[2], b_2[3], c_2_3); - c_2_4 = fma(a_2[2], b_2[4], c_2_4); - c_3_0 = fma(a_3[2], b_2[0], c_3_0); - c_3_1 = fma(a_3[2], b_2[1], c_3_1); - c_3_2 = fma(a_3[2], b_2[2], c_3_2); - c_3_3 = fma(a_3[2], b_2[3], c_3_3); - c_3_4 = fma(a_3[2], b_2[4], c_3_4); - c_0_0 = fma(a_0[3], b_3[0], c_0_0); - c_0_1 = fma(a_0[3], b_3[1], c_0_1); - c_0_2 = fma(a_0[3], b_3[2], c_0_2); - c_0_3 = fma(a_0[3], b_3[3], c_0_3); - c_0_4 = fma(a_0[3], b_3[4], c_0_4); - c_1_0 = fma(a_1[3], b_3[0], c_1_0); - c_1_1 = fma(a_1[3], b_3[1], c_1_1); - c_1_2 = fma(a_1[3], b_3[2], c_1_2); - c_1_3 = fma(a_1[3], b_3[3], c_1_3); - c_1_4 = fma(a_1[3], b_3[4], c_1_4); - c_2_0 = fma(a_2[3], b_3[0], c_2_0); - c_2_1 = fma(a_2[3], b_3[1], c_2_1); - c_2_2 = fma(a_2[3], b_3[2], c_2_2); - c_2_3 = fma(a_2[3], b_3[3], c_2_3); - c_2_4 = fma(a_2[3], b_3[4], c_2_4); - c_3_0 = fma(a_3[3], b_3[0], c_3_0); - c_3_1 = fma(a_3[3], b_3[1], c_3_1); - c_3_2 = fma(a_3[3], b_3[2], c_3_2); - c_3_3 = fma(a_3[3], b_3[3], c_3_3); - c_3_4 = fma(a_3[3], b_3[4], c_3_4); - c_0_0 = fma(a_0[4], b_4[0], c_0_0); - c_0_1 = fma(a_0[4], b_4[1], c_0_1); - c_0_2 = fma(a_0[4], b_4[2], c_0_2); - c_0_3 = fma(a_0[4], b_4[3], c_0_3); - c_0_4 = fma(a_0[4], b_4[4], c_0_4); - c_1_0 = fma(a_1[4], b_4[0], c_1_0); - c_1_1 = fma(a_1[4], b_4[1], c_1_1); - c_1_2 = fma(a_1[4], b_4[2], c_1_2); - c_1_3 = fma(a_1[4], b_4[3], c_1_3); - c_1_4 = fma(a_1[4], b_4[4], c_1_4); - c_2_0 = fma(a_2[4], b_4[0], c_2_0); - c_2_1 = fma(a_2[4], b_4[1], c_2_1); - c_2_2 = fma(a_2[4], b_4[2], c_2_2); - c_2_3 = fma(a_2[4], b_4[3], c_2_3); - c_2_4 = fma(a_2[4], b_4[4], c_2_4); - c_3_0 = fma(a_3[4], b_4[0], c_3_0); - c_3_1 = fma(a_3[4], b_4[1], c_3_1); - c_3_2 = fma(a_3[4], b_4[2], c_3_2); - c_3_3 = fma(a_3[4], b_4[3], c_3_3); - c_3_4 = fma(a_3[4], b_4[4], c_3_4); - c_0_0 = fma(a_0[5], b_5[0], c_0_0); - c_0_1 = fma(a_0[5], b_5[1], c_0_1); - c_0_2 = fma(a_0[5], b_5[2], c_0_2); - c_0_3 = fma(a_0[5], b_5[3], c_0_3); - c_0_4 = fma(a_0[5], b_5[4], c_0_4); - c_1_0 = fma(a_1[5], b_5[0], c_1_0); - c_1_1 = fma(a_1[5], b_5[1], c_1_1); - c_1_2 = fma(a_1[5], b_5[2], c_1_2); - c_1_3 = fma(a_1[5], b_5[3], c_1_3); - c_1_4 = fma(a_1[5], b_5[4], c_1_4); - c_2_0 = fma(a_2[5], b_5[0], c_2_0); - c_2_1 = fma(a_2[5], b_5[1], c_2_1); - c_2_2 = fma(a_2[5], b_5[2], c_2_2); - c_2_3 = fma(a_2[5], b_5[3], c_2_3); - c_2_4 = fma(a_2[5], b_5[4], c_2_4); - c_3_0 = fma(a_3[5], b_5[0], c_3_0); - c_3_1 = fma(a_3[5], b_5[1], c_3_1); - c_3_2 = fma(a_3[5], b_5[2], c_3_2); - c_3_3 = fma(a_3[5], b_5[3], c_3_3); - c_3_4 = fma(a_3[5], b_5[4], c_3_4); - } - for (t *a = a0 + p/RBK*RBK, *b = b0 + p/RBK*RBK*ldb; a < a0 + p; a++, b += ldb) - { - t* a_0 = &a[lda*0]; - t* a_1 = &a[lda*1]; - t* a_2 = &a[lda*2]; - t* a_3 = &a[lda*3]; - t* b_0 = &b[ldb*0]; - c_0_0 = fma(a_0[0], b_0[0], c_0_0); - c_0_1 = fma(a_0[0], b_0[1], c_0_1); - c_0_2 = fma(a_0[0], b_0[2], c_0_2); - c_0_3 = fma(a_0[0], b_0[3], c_0_3); - c_0_4 = fma(a_0[0], b_0[4], c_0_4); - c_1_0 = fma(a_1[0], b_0[0], c_1_0); - c_1_1 = fma(a_1[0], b_0[1], c_1_1); - c_1_2 = fma(a_1[0], b_0[2], c_1_2); - c_1_3 = fma(a_1[0], b_0[3], c_1_3); - c_1_4 = fma(a_1[0], b_0[4], c_1_4); - c_2_0 = fma(a_2[0], b_0[0], c_2_0); - c_2_1 = fma(a_2[0], b_0[1], c_2_1); - c_2_2 = fma(a_2[0], b_0[2], c_2_2); - c_2_3 = fma(a_2[0], b_0[3], c_2_3); - c_2_4 = fma(a_2[0], b_0[4], c_2_4); - c_3_0 = fma(a_3[0], b_0[0], c_3_0); - c_3_1 = fma(a_3[0], b_0[1], c_3_1); - c_3_2 = fma(a_3[0], b_0[2], c_3_2); - c_3_3 = fma(a_3[0], b_0[3], c_3_3); - c_3_4 = fma(a_3[0], b_0[4], c_3_4); - } - c_0[0] = c_0_0; - c_0[1] = c_0_1; - c_0[2] = c_0_2; - c_0[3] = c_0_3; - c_0[4] = c_0_4; - c_1[0] = c_1_0; - c_1[1] = c_1_1; - c_1[2] = c_1_2; - c_1[3] = c_1_3; - c_1[4] = c_1_4; - c_2[0] = c_2_0; - c_2[1] = c_2_1; - c_2[2] = c_2_2; - c_2[3] = c_2_3; - c_2[4] = c_2_4; - c_3[0] = c_3_0; - c_3[1] = c_3_1; - c_3[2] = c_3_2; - c_3[3] = c_3_3; - c_3[4] = c_3_4; -} diff --git a/examples/C/simple/Makefile b/examples/C/simple/Makefile deleted file mode 100644 index 7a455b49a..000000000 --- a/examples/C/simple/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -TARGET = simple - -$(TARGET).objdump: $(TARGET) - riscv64-unknown-elf-objdump -S -D $(TARGET) > $(TARGET).objdump - -$(TARGET): $(TARGET).c Makefile - riscv64-unknown-elf-gcc -g -o $(TARGET) -march=rv64gc -mabi=lp64d -mcmodel=medany \ - -DPREALLOCATE=1 -mcmodel=medany -static -std=gnu99 -O2 -ffast-math -fno-common \ - -fno-builtin-printf -fno-tree-loop-distribute-patterns \ - -static -nostdlib -nostartfiles -lm -lgcc -T../common/test.ld \ - -I../common \ - -O0 $(TARGET).c \ - ../common/crt.S ../common/syscalls.c comp1.s - -clean: - rm -f $(TARGET) $(TARGET).objdump diff --git a/examples/C/simple/comp1.s b/examples/C/simple/comp1.s deleted file mode 100644 index c9ef7f124..000000000 --- a/examples/C/simple/comp1.s +++ /dev/null @@ -1,10 +0,0 @@ -.global _comp1 -_comp1: - - li a0, 42 - ret - - - - - diff --git a/examples/C/simple/simple b/examples/C/simple/simple deleted file mode 100755 index 035f1a6ab554fb09205e2f722783f31626ae5de1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37496 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 P-@j2&F%FHt-1PqoLmc)8 diff --git a/examples/C/simple/simple.c b/examples/C/simple/simple.c deleted file mode 100644 index 8b8b1a6f5..000000000 --- a/examples/C/simple/simple.c +++ /dev/null @@ -1,40 +0,0 @@ -// simple.C -// David_Harris@hmc.edu 24 December 2021 -// Simple illustration of compiling C code - -//#include -#include "util.h" -extern int printf(const char* fmt, ...); -extern int _comp1(void); - -/* -long sum(long N) { - long result, i; - result = 0; - for (i=1; i<=N; i++) { - result = result + i; - } - return result; - - int a; - asm volatile ("li s0, 10;"); - - asm volatile( - "li %0, 3;" - // "csrrs %0, 0xF14, zero" //CSSRS rd, mhartid, 0 - : "=r"(a) //output - : //input - : //clobbered - ); - return a; -} -*/ - -int main(void) { - int s[1], expected[1]; - // s[0] = sum(4); - s[0] = _comp1(); - printf("s = %d\n", s[0]); - expected[0] = 42; - return verify(1, s, expected); // 0 means success -} diff --git a/examples/C/simple/simple.dis b/examples/C/simple/simple.dis deleted file mode 100644 index 44a11e080..000000000 --- a/examples/C/simple/simple.dis +++ /dev/null @@ -1,11009 +0,0 @@ - -simple: file format elf64-littleriscv - -Contents of section .text.init: - 80000000 81400141 81410142 81420143 81430144 .@.A.A.B.B.C.C.D - 80000010 81440145 81450146 81460147 81470148 .D.E.E.F.F.G.G.H - 80000020 81480149 8149014a 814a014b 814b014c .H.I.I.J.J.K.K.L - 80000030 814c014d 814d014e 814e014f 814ff962 .L.M.M.N.N.O.O.b - 80000040 73a00230 8542fe02 63d80200 05459712 s..0.B..c....E.. - 80000050 000023a9 a2faddbf 97020000 93820209 ..#............. - 80000060 73905230 73103000 530000f0 d30000f0 s.R0s.0.S....... - 80000070 530100f0 d30100f0 530200f0 d30200f0 S.......S....... - 80000080 530300f0 d30300f0 530400f0 d30400f0 S.......S....... - 80000090 530500f0 d30500f0 530600f0 d30600f0 S.......S....... - 800000a0 530700f0 d30700f0 530800f0 d30800f0 S.......S....... - 800000b0 530900f0 d30900f0 530a00f0 d30a00f0 S.......S....... - 800000c0 530b00f0 d30b00f0 530c00f0 d30c00f0 S.......S....... - 800000d0 530d00f0 d30d00f0 530e00f0 d30e00f0 S.......S....... - 800000e0 530f00f0 d30f00f0 97020000 93828203 S............... - 800000f0 73905230 97410000 938141e5 13827187 s.R0.A....A...q. - 80000100 137202fc 732540f1 85456370 b5001301 .r..s%@..Ecp.... - 80000110 15004601 12911316 15013292 6f207006 ..F.......2.o p. - 80000120 6d7106e4 0ae80eec 12f016f4 1af81efc mq.............. - 80000130 a2e0a6e4 aae8aeec b2f0b6f4 baf8befc ................ - 80000140 42e146e5 4ae94eed 52f156f5 5af95efd B.F.J.N.R.V.Z.^. - 80000150 e2e1e6e5 eae9eeed f2f1f6f5 faf9fefd ................ - 80000160 73252034 f3251034 0a86ef20 606e7310 s% 4.%.4... `ns. - 80000170 15348962 9b820280 73a00230 a2604261 .4.b....s..0.`Ba - 80000180 e2610272 a2724273 e2730664 a6644665 .a.r.rBs.s.d.dFe - 80000190 e6650676 a6764677 e6770a68 aa684a69 .e.v.vFw.w.h.hJi - 800001a0 ea690a7a aa7a4a7b ea7b0e6c ae6c4e6d .i.z.zJ{.{.l.lNm - 800001b0 ee6d0e7e ae7e4e7f ee7f5161 73002030 .m.~.~N...Qas. 0 - 800001c0 0000 .. -Contents of section .tohost: - 80001000 00000000 00000000 00000000 00000000 ................ - 80001010 00000000 00000000 00000000 00000000 ................ - 80001020 00000000 00000000 00000000 00000000 ................ - 80001030 00000000 00000000 00000000 00000000 ................ - 80001040 00000000 00000000 ........ -Contents of section .text: - 80002000 5d71a2e4 8008aa87 2330b4fc 233cc4fa ]q......#0..#<.. - 80002010 2326f4fc 232604fe 41a88327 c4fe8a07 #&..#&..A..'.... - 80002020 033704fc ba979c43 2324f4fe 8327c4fe .7.....C#$...'.. - 80002030 85078a07 033704fc ba979c43 2322f4fe .....7.....C#".. - 80002040 8327c4fe 8a070337 84fbba97 9c432320 .'.....7.....C# - 80002050 f4fe8327 c4fe8507 8a070337 84fbba97 ...'.......7.... - 80002060 9c43232e f4fc8327 84fe3e87 832704fe .C#....'..>..'.. - 80002070 01278127 6307f700 8327c4fe 85278127 .'.'c....'...'.' - 80002080 59a08327 44fe3e87 8327c4fd 01278127 Y..'D.>..'...'.' - 80002090 6307f700 8327c4fe 89278127 ada08327 c....'...'.'...' - 800020a0 c4fe8927 2326f4fe 8327c4fc 1bd7f701 ...'#&...'...... - 800020b0 b99f9bd7 17408127 9b971700 1b870700 .....@.'........ - 800020c0 8327c4fe 8127e3ca e7f48327 c4fc858b .'...'.....'.... - 800020d0 81278dcb 8327c4fc 8a07f117 033704fc .'...'.......7.. - 800020e0 ba979c43 9b860700 8327c4fc 8a07f117 ...C.....'...... - 800020f0 033784fb ba979c43 36876305 f7008327 .7.....C6.c....' - 80002100 c4fc11a0 81473e85 26646161 82801d71 .....G>.&daa...q - 80002110 a2ec8010 aa872338 b4fa2334 c4fa232e ......#8..#4..#. - 80002120 f4fa2326 04fe6da0 8327c4fe 8e070337 ..#&..m..'.....7 - 80002130 04fbba97 9c232730 f4fe8327 c4fe8507 .....#'0...'.... - 80002140 8e070337 04fbba97 9c23273c f4fc8327 ...7.....#'<...' - 80002150 c4fe8e07 033784fa ba979c23 2738f4fc .....7.....#'8.. - 80002160 8327c4fe 85078e07 033784fa ba979c23 .'.......7.....# - 80002170 2734f4fc 073704fe 873704fd d327f7a2 '4...7...7...'.. - 80002180 b337f000 93f7f70f 2322f4fc 073784fd .7......#"...7.. - 80002190 873784fc d327f7a2 b337f000 93f7f70f .7...'...7...... - 800021a0 2320f4fc 832744fc 3e878327 04fcf98f # ...'D.>..'.... - 800021b0 812791eb 8327c4fe 85278127 032744fc .'...'...'.'.'D. - 800021c0 b99f8127 9da08327 c4fe8927 2326f4fe ...'...'...'#&.. - 800021d0 8327c4fb 1bd7f701 b99f9bd7 17408127 .'...........@.' - 800021e0 9b971700 1b870700 8327c4fe 8127e3cd .........'...'.. - 800021f0 e7f28327 c4fb858b 81279dc7 8327c4fb ...'.....'...'.. - 80002200 8e07e117 033704fb ba979823 8327c4fb .....7.....#.'.. - 80002210 8e07e117 033784fa ba979c23 d327f7a2 .....7.....#.'.. - 80002220 81e78327 c4fb11a0 81473e85 66642561 ...'.....G>.fd%a - 80002230 82800111 22ec0010 aa872326 f4fe0f00 ....".....#&.... - 80002240 f00f8327 020093b7 170093f7 f70f1b87 ...'............ - 80002250 07002320 e2009717 00009387 274f0547 ..# ........'O.G - 80002260 0f00500f afa6e704 9b870600 1b870700 ..P............. - 80002270 8327c4fe fd378127 6310f702 97170000 .'...7.'c....... - 80002280 9387c74c 23a00700 03270200 97170000 ...L#....'...... - 80002290 9387074c 98c329a8 01009717 00009387 ...L..)......... - 800022a0 274b9c43 1b870700 83270200 e317f7fe 'K.C.....'...... - 800022b0 0f00f00f 01006264 05618280 797122f4 ......bd.a..yq". - 800022c0 0018233c a4fc8337 84fd13d7 17008337 ..#<...7.......7 - 800022d0 84fdb98f 858b2334 f4fe8337 84fd13d7 ......#4...7.... - 800022e0 17008337 84fefa17 d98f3e85 22744561 ...7......>."tEa - 800022f0 82800111 22ec0010 2334a4fe 833784fe ...."...#4...7.. - 80002300 83d70700 81278d8b 812799c3 914711a0 .....'...'...G.. - 80002310 89473e85 62640561 82807971 22f40018 .G>.bd.a..yq"... - 80002320 233ca4fc 85478d47 2326f4fe 8327c4fe #<...G.G#&...'.. - 80002330 3e852274 45618280 011106ec 22e80010 >."tEa......"... - 80002340 1145eff0 9ffdaa87 81272324 f4fe8327 .E.......'#$...' - 80002350 84febe85 17150000 1305c524 ef00b053 ...........$...S - 80002360 a9472320 f4fe1307 04fe9307 84fe3a86 .G# ..........:. - 80002370 be850545 eff0dfc8 aa873e85 e2604264 ...E......>..`Bd - 80002380 05618280 5d71a2e4 8008aa87 2330b4fc .a..]q......#0.. - 80002390 233cc4fa 2326f4fc 232604fe 41a88327 #<..#&..#&..A..' - 800023a0 c4fe8a07 033704fc ba979c43 2324f4fe .....7.....C#$.. - 800023b0 8327c4fe 85078a07 033704fc ba979c43 .'.......7.....C - 800023c0 2322f4fe 8327c4fe 8a070337 84fbba97 #"...'.....7.... - 800023d0 9c432320 f4fe8327 c4fe8507 8a070337 .C# ...'.......7 - 800023e0 84fbba97 9c43232e f4fc8327 84fe3e87 .....C#....'..>. - 800023f0 832704fe 01278127 6307f700 8327c4fe .'...'.'c....'.. - 80002400 85278127 59a08327 44fe3e87 8327c4fd .'.'Y..'D.>..'.. - 80002410 01278127 6307f700 8327c4fe 89278127 .'.'c....'...'.' - 80002420 ada08327 c4fe8927 2326f4fe 8327c4fc ...'...'#&...'.. - 80002430 1bd7f701 b99f9bd7 17408127 9b971700 .........@.'.... - 80002440 1b870700 8327c4fe 8127e3ca e7f48327 .....'...'.....' - 80002450 c4fc858b 81278dcb 8327c4fc 8a07f117 .....'...'...... - 80002460 033704fc ba979c43 9b860700 8327c4fc .7.....C.....'.. - 80002470 8a07f117 033784fb ba979c43 36876305 .....7.....C6.c. - 80002480 f7008327 c4fc11a0 81473e85 26646161 ...'.....G>.&daa - 80002490 82801d71 a2ec8010 aa872338 b4fa2334 ...q......#8..#4 - 800024a0 c4fa232e f4fa2326 04fe6da0 8327c4fe ..#...#&..m..'.. - 800024b0 8e070337 04fbba97 9c232730 f4fe8327 ...7.....#'0...' - 800024c0 c4fe8507 8e070337 04fbba97 9c23273c .......7.....#'< - 800024d0 f4fc8327 c4fe8e07 033784fa ba979c23 ...'.....7.....# - 800024e0 2738f4fc 8327c4fe 85078e07 033784fa '8...'.......7.. - 800024f0 ba979c23 2734f4fc 073704fe 873704fd ...#'4...7...7.. - 80002500 d327f7a2 b337f000 93f7f70f 2322f4fc .'...7......#".. - 80002510 073784fd 873784fc d327f7a2 b337f000 .7...7...'...7.. - 80002520 93f7f70f 2320f4fc 832744fc 3e878327 ....# ...'D.>..' - 80002530 04fcf98f 812791eb 8327c4fe 85278127 .....'...'...'.' - 80002540 032744fc b99f8127 9da08327 c4fe8927 .'D....'...'...' - 80002550 2326f4fe 8327c4fb 1bd7f701 b99f9bd7 #&...'.......... - 80002560 17408127 9b971700 1b870700 8327c4fe .@.'.........'.. - 80002570 8127e3cd e7f28327 c4fb858b 81279dc7 .'.....'.....'.. - 80002580 8327c4fb 8e07e117 033704fb ba979823 .'.......7.....# - 80002590 8327c4fb 8e07e117 033784fa ba979c23 .'.......7.....# - 800025a0 d327f7a2 81e78327 c4fb11a0 81473e85 .'.....'.....G>. - 800025b0 66642561 82800111 22ec0010 aa872326 fd%a....".....#& - 800025c0 f4fe0f00 f00f8327 020493b7 170093f7 .......'........ - 800025d0 f70f1b87 07002320 e2049717 00009387 ......# ........ - 800025e0 67190547 0f00500f afa6e704 9b870600 g..G..P......... - 800025f0 1b870700 8327c4fe fd378127 6310f702 .....'...7.'c... - 80002600 97170000 93870717 23a00700 03270204 ........#....'.. - 80002610 97170000 93874716 98c329a8 01009717 ......G...)..... - 80002620 00009387 67159c43 1b870700 83270204 ....g..C.....'.. - 80002630 e317f7fe 0f00f00f 01006264 05618280 ..........bd.a.. - 80002640 797122f4 0018233c a4fc8337 84fd13d7 yq"...#<...7.... - 80002650 17008337 84fdb98f 858b2334 f4fe8337 ...7......#4...7 - 80002660 84fd13d7 17008337 84fefa17 d98f3e85 .......7......>. - 80002670 22744561 82800111 22ec0010 2334a4fe "tEa...."...#4.. - 80002680 833784fe 83d70700 81278d8b 812799c3 .7.......'...'.. - 80002690 914711a0 89473e85 62640561 82807171 .G...G>.bd.a..qq - 800026a0 22f50019 233ca4f6 2338b4f6 2334c4f6 "...#<..#8..#4.. - 800026b0 2330d4f6 930704ff 233cf4f4 833784f5 #0......#<...7.. - 800026c0 938707f9 9387f703 99839a07 033784f7 .............7.. - 800026d0 98e30337 04f798e7 033784f6 98eb0337 ...7.....7.....7 - 800026e0 04f698ef 0f00f00f be8617f7 ffff1307 ................ - 800026f0 679114e3 010017f7 ffff1307 a7941863 g..............c - 80002700 7ddb17f7 ffff1307 e7932330 07000f00 }.........#0.... - 80002710 f00f9c63 3e852a74 4d618280 5d71a2e4 ...c>.*tMa..]q.. - 80002720 8008aa87 232ef4fa 232e04fc 01008327 ....#...#......' - 80002730 c4fd1b87 07008547 e3cbe7fe f32700b0 .......G.....'.. - 80002740 2338f4fc 833704fd 2334f4fe 8327c4fb #8...7..#4...'.. - 80002750 81278def 17170000 1307c7ff 8327c4fd .'...........'.. - 80002760 8e07ba97 9c630337 84feb307 f7402334 .....c.7.....@#4 - 80002770 f4fe1717 00001307 e7fe8327 c4fd8e07 ...........'.... - 80002780 ba971717 00001307 67e298e3 8327c4fd ........g....'.. - 80002790 1b871700 232ee4fc 17170000 130787fb ....#........... - 800027a0 8e07ba97 033784fe 98e30100 8327c4fd .....7.......'.. - 800027b0 1b870700 8547e3cb e7fef327 20b02334 .....G.....' .#4 - 800027c0 f4fc8337 84fc2330 f4fe8327 c4fb8127 ...7..#0...'...' - 800027d0 8def1717 00001307 e7f78327 c4fd8e07 ...........'.... - 800027e0 ba979c63 033704fe b307f740 2330f4fe ...c.7.....@#0.. - 800027f0 17170000 130707f7 8327c4fd 8e07ba97 .........'...... - 80002800 17170000 130707db 98e38327 c4fd1b87 ...........'.... - 80002810 1700232e e4fc1717 00001307 a7f38e07 ..#............. - 80002820 ba970337 04fe98e3 01002664 61618280 ...7......&daa.. - 80002830 011122ec 00102334 a4fe8337 84fe8607 .."...#4...7.... - 80002840 13e71700 97e7ffff 9387c77b 98e301a0 ...........{.... - 80002850 797106f4 22f00018 2334a4fe 2330b4fe yq.."...#4..#0.. - 80002860 233cc4fc 13059053 eff09ffc 011106ec #<.....S........ - 80002870 22e80010 aa872326 f4fe8327 c4fe3e85 ".....#&...'..>. - 80002880 eff01ffb 411106e4 22e00008 13056008 ....A...".....`. - 80002890 eff0dffd 797106f4 22f026ec 0018233c ....yq..".&...#< - 800028a0 a4fc8334 84fd0335 84fdef00 102daa87 ...4...5.....-.. - 800028b0 be862686 85451305 0004eff0 5fde0100 ..&..E......_... - 800028c0 a2700274 e2644561 82800111 22ec0010 .p.t.dEa...."... - 800028d0 aa872e87 2326f4fe ba872324 f4fe0100 ....#&....#$.... - 800028e0 8327c4fe 8127edff 01000100 62640561 .'...'......bd.a - 800028f0 82800111 06ec22e8 0010aa87 2330b4fe ......".....#0.. - 80002900 2326f4fe 17150000 1305c5cb eff09ff8 #&.............. - 80002910 fd573e85 e2604264 05618280 011106ec .W>..`Bd.a...... - 80002920 22e80010 17170000 130747e5 97170000 ".........G..... - 80002930 9387c7e4 b307f740 2334f4fe 92870336 .......@#4.....6 - 80002940 84fe9715 00009385 65e33e85 ef00900a ........e.>..... - 80002950 1387c18f 97170000 938747e2 b307f740 ..........G....@ - 80002960 2330f4fe 12878337 84feba97 033604fe #0.....7.....6.. - 80002970 81453e85 ef009013 0100e260 42640561 .E>........`Bd.a - 80002980 82807171 06f522f1 26ed0019 aa872e87 ..qq..".&....... - 80002990 232ef4f4 ba87232c f4f49307 04fe2338 #.....#,......#8 - 800029a0 f4f48337 04f59387 07f89387 f7039983 ...7............ - 800029b0 93946700 eff09ff6 032784f5 8327c4f5 ..g......'...'.. - 800029c0 ba853e85 eff07ff0 81450145 eff0df96 ..>......E.E.... - 800029d0 aa872328 f4fc233c 94fc232a 04fc95a0 ..#(..#<..#*.... - 800029e0 17170000 130707d7 832744fd 8e07ba97 .........'D..... - 800029f0 9c63b9c3 17170000 1307c7d6 832744fd .c...........'D. - 80002a00 8e07ba97 90631717 00001307 a7d48327 .....c.........' - 80002a10 44fd8e07 ba979c63 be869715 00009385 D......c........ - 80002a20 e5bb0335 84fdef00 c070aa87 3e878337 ...5.....p..>..7 - 80002a30 84fdba97 233cf4fc 832744fd 8527232a ....#<...'D..'#* - 80002a40 f4fc8327 44fd1b87 07008547 e3dae7f8 ...'D......G.... - 80002a50 833784fd 6385f400 2685eff0 bfe38327 .7..c...&......' - 80002a60 04fd3e85 eff09fe0 011106ec 22e80010 ..>........."... - 80002a70 aa872326 f4fe8327 020c1b87 17009b06 ..#&...'........ - 80002a80 07002320 d20c0327 c4fe1377 f70f9306 ..# ...'...w.... - 80002a90 0208b697 2380e700 8327c4fe 1b870700 ....#....'...... - 80002aa0 a9476309 f7008327 020c3e87 93070004 .Gc....'..>..... - 80002ab0 631ff700 13070208 8327020c be863a86 c........'....:. - 80002ac0 85451305 0004eff0 9fbd2320 020c8147 .E........# ...G - 80002ad0 3e85e260 42640561 82803971 06fc22f8 >..`Bd.a..9q..". - 80002ae0 80002334 a4fc2326 04fe99a8 833784fc ..#4..#&.....7.. - 80002af0 93f7f70f bd8b13f7 f70f8337 84fc93f6 ...........7.... - 80002b00 f700a547 63e5d700 93070003 19a09307 ...Gc........... - 80002b10 7005bd46 0326c4fe 919e8126 b99f13f7 p..F.&.....&.... - 80002b20 f70f9387 06ffa297 2384e7fe 833784fc ........#....7.. - 80002b30 91832334 f4fc8327 c4fe8527 2326f4fe ..#4...'...'#&.. - 80002b40 8327c4fe 1b870700 bd47e3d1 e7fa2304 .'.......G....#. - 80002b50 04fe9307 84fd3e85 eff0dfd3 0100e270 ......>........p - 80002b60 42742161 82804d71 86e6a2e2 800a233c Bt!a..Mq......#< - 80002b70 a4ec2338 b4ec2334 c4ec3686 ba863e87 ..#8..#4..6...>. - 80002b80 b2872322 f4ecb687 2320f4ec ba87232e ..#"....# ....#. - 80002b90 f4ea2326 04fe8367 44ec0337 84ecb376 ..#&...gD..7...v - 80002ba0 f7028327 c4fe1b87 17002326 e4fe1b87 ...'......#&.... - 80002bb0 06008a07 c117a297 23ace7ee 836744ec ........#....gD. - 80002bc0 033784ec 636bf700 836744ec 033784ec .7..ck...gD..7.. - 80002bd0 b357f702 2334f4ec 7dbf0100 09a88327 .W..#4..}......' - 80002be0 c4eb0337 84ed8335 04ed3e85 02978327 ...7...5..>....' - 80002bf0 04ec1b87 f7ff2320 e4ec0327 c4fe0127 ......# ...'...' - 80002c00 e34ff7fc 89a08327 c4fe8a07 c117a297 .O.....'........ - 80002c10 03a787ef 8327c4fe 8a07c117 a29783a7 .....'.......... - 80002c20 87efbe86 a54763f5 d7009307 700519a0 .....Gc.....p... - 80002c30 93070003 b99f8127 81270337 84ed8335 .......'.'.7...5 - 80002c40 04ed3e85 02978327 c4fe1b87 f7ff2326 ..>....'......#& - 80002c50 e4fee34a f0fa0100 0100b660 16647161 ...J.......`.dqa - 80002c60 82800111 22ec0010 2334a4fe ae872322 ...."...#4....#" - 80002c70 f4fe8327 44fe1b87 07008547 63dce700 ...'D......Gc... - 80002c80 833784fe 9c639386 87000337 84fe14e3 .7...c.....7.... - 80002c90 9c6315a8 832744fe 812799cb 833784fe .c...'D..'...7.. - 80002ca0 9c639386 87000337 84fe14e3 9c6321a8 .c.....7.....c!. - 80002cb0 833784fe 9c639386 87000337 84fe14e3 .7...c.....7.... - 80002cc0 9c438217 81933e85 62640561 82800111 .C....>.bd.a.... - 80002cd0 22ec0010 2334a4fe ae872322 f4fe8327 "...#4....#"...' - 80002ce0 44fe1b87 07008547 63dce700 833784fe D......Gc....7.. - 80002cf0 9c639386 87000337 84fe14e3 9c6305a8 .c.....7.....c.. - 80002d00 832744fe 812799cb 833784fe 9c639386 .'D..'...7...c.. - 80002d10 87000337 84fe14e3 9c6311a8 833784fe ...7.....c...7.. - 80002d20 9c639386 87000337 84fe14e3 9c433e85 .c.....7.....C>. - 80002d30 62640561 82805971 86f4a2f0 a6eccae8 bd.a..Yq........ - 80002d40 80182334 a4fa2330 b4fa233c c4f82338 ..#4..#0..#<..#8 - 80002d50 d4f831a8 638a0432 833784f9 8507233c ..1.c..2.7....#< - 80002d60 f4f88337 84fa8335 04fa2685 82978337 ...7...5..&....7 - 80002d70 84f983c7 07009b84 07002687 93075002 ..........&...P. - 80002d80 e31af7fc 833784f9 8507233c f4f88337 .....7....#<...7 - 80002d90 84f9233c f4fa9307 0002a303 f4fcfd57 ..#<...........W - 80002da0 2326f4fc fd572324 f4fc2328 04fc232a #&...W#$..#(..#* - 80002db0 04fa8337 84f91387 1700233c e4f883c7 ...7......#<.... - 80002dc0 07009b84 07009b86 d4fd1b87 06009307 ................ - 80002dd0 500563ee e7289397 06028193 13972700 P.c..(........'. - 80002de0 97170000 93870781 ba979c43 1b870700 ...........C.... - 80002df0 97170000 93870780 ba978287 9307d002 ................ - 80002e00 a303f4fc 7db79307 0003a303 f4fc55b7 ....}.........U. - 80002e10 232404fc 832784fc 3e87ba87 9b972700 #$...'..>.....'. - 80002e20 b99f9b97 17008127 a59f8127 9b8707fd .......'...'.... - 80002e30 2324f4fc 833784f9 83c70700 9b840700 #$...7.......... - 80002e40 26879307 f00263d3 e7042687 93079003 &.....c...&..... - 80002e50 63cee702 833784f9 8507233c f4f85dbf c....7....#<..]. - 80002e60 833704f9 13878700 2338e4f8 9c432324 .7......#8...C#$ - 80002e70 f4fc31a8 8327c4fc 8127e3dc 07f22326 ..1..'...'....#& - 80002e80 04fc05bf 8547232a f4fa25b7 01008327 .....G#*..%....' - 80002e90 c4fc8127 e3df07f0 832784fc 2326f4fc ...'.....'..#&.. - 80002ea0 fd572324 f4fc31b7 832704fd 85272328 .W#$..1..'...'#( - 80002eb0 f4fc01b7 833704f9 13878700 2338e4f8 .....7......#8.. - 80002ec0 9c430337 84fa8335 04fa3e85 029765aa .C.7...5..>...e. - 80002ed0 833704f9 13878700 2338e4f8 03b90700 .7......#8...... - 80002ee0 63160900 17090000 13094970 8327c4fc c.........Ip.'.. - 80002ef0 8127635a f0068347 74fc13f7 f70f9307 .'cZ...Gt....... - 80002f00 d0026302 f7068324 c4fc8327 84fcbe85 ..c....$...'.... - 80002f10 4a85ef00 404aaa87 8127bb87 f4408127 J...@J...'...@.' - 80002f20 2326f4fc 39a88347 74fc8127 033784fa #&..9..Gt..'.7.. - 80002f30 833504fa 3e850297 8327c4fc fd372326 .5..>....'...7#& - 80002f40 f4fc8327 c4fc8127 e34ff0fc 29a88337 ...'...'.O..)..7 - 80002f50 84fa8335 04fa2685 82970509 8327c4fc ...5..&......'.. - 80002f60 fd372326 f4fc8347 09009b84 07008dcc .7#&...G........ - 80002f70 832784fc 8127e3cc 07fc8327 84fcfd37 .'...'.....'...7 - 80002f80 2324f4fc 832784fc 8127e3d2 07fc29a8 #$...'...'....). - 80002f90 833784fa 833504fa 13050002 82978327 .7...5.........' - 80002fa0 c4fcfd37 2326f4fc 8327c4fc 8127e341 ...7#&...'...'.A - 80002fb0 f0fed1a8 032704fd 930704f9 ba853e85 .....'........>. - 80002fc0 eff0ffd0 aa87233c f4fc8337 84fd63df ......#<...7..c. - 80002fd0 07008337 84fa8335 04fa1305 d0028297 ...7...5........ - 80002fe0 833784fd b307f040 233cf4fc a947232a .7.....@#<...G#* - 80002ff0 f4fcb9a0 a947232a f4fc0da8 a147232a .....G#*.....G#* - 80003000 f4fc2da0 85472328 f4fc8337 84fa8335 ..-..G#(...7...5 - 80003010 04fa1305 00038297 833784fa 833504fa .........7...5.. - 80003020 13058007 8297c147 232af4fc 032704fd .......G#*...'.. - 80003030 930704f9 ba853e85 eff0bfc2 233ca4fc ......>.....#<.. - 80003040 832644fd 834774fc 81270327 c4fc0336 .&D..Gt..'.'...6 - 80003050 84fd8335 04fa0335 84faeff0 dfb025a0 ...5...5......%. - 80003060 833784fa 833504fa 26858297 29a88337 .7...5..&...)..7 - 80003070 84fa8335 04fa1305 50028297 833784fb ...5....P....7.. - 80003080 233cf4f8 0100e5b1 0100a670 0674e664 #<.........p.t.d - 80003090 46696561 82805971 06f422f0 0018233c Fiea..Yq.."...#< - 800030a0 a4fc0ce4 10e814ec 18f01cf4 23380403 ............#8.. - 800030b0 233c1403 93070404 2338f4fc 833704fd #<......#8...7.. - 800030c0 938787fc 2334f4fe 833784fe be860336 ....#4...7.....6 - 800030d0 84fd8145 17050000 13054599 eff0bfc5 ...E......E..... - 800030e0 81473e85 a2700274 65618280 397122fc .G>..p.tea..9q". - 800030f0 8000aa87 2338b4fc 232ef4fc 233474fc ....#8..#...#4t. - 80003100 833704fd 2334f4fe 833784fe 9c630327 .7..#4...7...c.' - 80003110 c4fd1377 f70f2380 e7008337 84fe9c63 ...w..#....7...c - 80003120 13871700 833784fe 98e30100 62742161 .....7......bt!a - 80003130 82806d71 86eda2e9 8011233c a4f22338 ..mq......#<..#8 - 80003140 b4f210e0 14e418e8 1cec2330 04032334 ..........#0..#4 - 80003150 14039307 04032334 f4f28337 84f2233c ......#4...7..#< - 80003160 f4fc9307 84f41307 84f49306 703994c3 ............p9.. - 80003170 b7b68301 93863628 d4c3b7b6 03019386 ......6(........ - 80003180 363894c7 b7860200 93867606 d4c798eb 68........v..... - 80003190 17070000 1307c7f5 98ef0f10 00008337 ...............7 - 800031a0 84f32334 f4fe9307 04032334 f4f28337 ..#4......#4...7 - 800031b0 84f29387 07fd2330 f4fe0337 04fe9307 ......#0...7.... - 800031c0 84f43e85 930784f3 ba860336 04f3be85 ..>........6.... - 800031d0 eff07fb6 833784f3 23800700 033784f3 .....7..#....7.. - 800031e0 833784fe b307f740 81273e85 ee604e64 .7.....@.'>..`Nd - 800031f0 51618280 5d71a2e4 80082334 a4fc2330 Qa..]q....#4..#0 - 80003200 b4fc233c c4fa0337 84fc8337 04fc5d8f ..#<...7...7..]. - 80003210 833784fb d98f9d8b b1e38337 04fc2334 .7.........7..#4 - 80003220 f4fe8337 84fc2330 f4fe39a8 033784fe ...7..#0..9..7.. - 80003230 93078700 2334f4fe 833704fe 93868700 ....#4...7...... - 80003240 2330d4fe 186398e3 033784fc 833784fb #0...c...7...7.. - 80003250 ba970337 04fee36b f7fc99a0 833704fc ...7...k.....7.. - 80003260 233cf4fc 833784fc 2338f4fc 0da00337 #<...7..#8.....7 - 80003270 84fd9307 1700233c f4fc8337 04fd9386 ......#<...7.... - 80003280 17002338 d4fc0347 07002380 e7000337 ..#8...G..#....7 - 80003290 84fc8337 84fbba97 033704fd e369f7fc ...7.....7...i.. - 800032a0 833784fc 3e852664 61618280 5d71a2e4 .7..>.&daa..]q.. - 800032b0 80082334 a4fcae87 233cc4fa 2322f4fc ..#4....#<..#".. - 800032c0 033784fc 833784fb d98f9d8b bde78327 .7...7.........' - 800032d0 44fc93f7 f70f233c f4fc8337 84fda207 D.....#<...7.... - 800032e0 033784fd d98f233c f4fc8337 84fdc207 .7....#<...7.... - 800032f0 033784fd d98f233c f4fc8337 84fd8217 .7....#<...7.... - 80003300 033784fd d98f233c f4fc8337 84fc2334 .7....#<...7..#4 - 80003310 f4fe11a8 833784fe 13878700 2334e4fe .....7......#4.. - 80003320 033784fd 98e30337 84fc8337 84fbba97 .7.....7...7.... - 80003330 033784fe e360f7fe 1da88337 84fc2330 .7...`.....7..#0 - 80003340 f4fe29a8 833704fe 13871700 2330e4fe ..)..7......#0.. - 80003350 032744fc 1377f70f 2380e700 033784fc .'D..w..#....7.. - 80003360 833784fb ba970337 04fee36d f7fc8337 .7.....7...m...7 - 80003370 84fc3e85 26646161 82807971 22f40018 ..>.&daa..yq"... - 80003380 233ca4fc 833784fd 2334f4fe 31a08337 #<...7..#4..1..7 - 80003390 84fe8507 2334f4fe 833784fe 83c70700 ....#4...7...... - 800033a0 fdf70337 84fe8337 84fdb307 f7403e85 ...7...7.....@>. - 800033b0 22744561 82807971 22f40018 233ca4fc "tEa..yq"...#<.. - 800033c0 2338b4fc 833784fd 2334f4fe 31a08337 #8...7..#4..1..7 - 800033d0 84fe8507 2334f4fe 833704fd 1387f7ff ....#4...7...... - 800033e0 2338e4fc 91c78337 84fe83c7 0700e5f3 #8.....7........ - 800033f0 033784fe 833784fd b307f740 3e852274 .7...7.....@>."t - 80003400 45618280 797122f4 0018233c a4fc2338 Ea..yq"...#<..#8 - 80003410 b4fc8337 84fd1387 1700233c e4fc83c7 ...7......#<.... - 80003420 0700a307 f4fe8337 04fd1387 17002338 .......7......#8 - 80003430 e4fc83c7 07002307 f4fe8347 f4fe93f7 ......#....G.... - 80003440 f70f81cf 8347f4fe 3e878347 e4fe1377 .....G..>..G...w - 80003450 f70f93f7 f70fe30e f7fa8347 f4fe1b87 ...........G.... - 80003460 07008347 e4fe8127 bb07f740 81273e85 ...G...'...@.'>. - 80003470 22744561 82807971 22f40018 233ca4fc "tEa..yq"...#<.. - 80003480 2338b4fc 833784fd 2334f4fe 01000337 #8...7..#4.....7 - 80003490 04fd9307 17002338 f4fc8337 84fe9386 ......#8...7.... - 800034a0 17002334 d4fe0347 07002380 e70083c7 ..#4...G..#..... - 800034b0 0700f1ff 833784fd 3e852274 45618280 .....7..>."tEa.. - 800034c0 797122f4 0018233c a4fc2334 04fe2322 yq"...#<..#4..#" - 800034d0 04fe31a0 833784fd 8507233c f4fc8337 ..1..7....#<...7 - 800034e0 84fd83c7 07003e87 93070002 e304f7fe ......>......... - 800034f0 833784fd 83c70700 3e879307 d002630b .7......>.....c. - 80003500 f7008337 84fd83c7 07003e87 9307b002 ...7......>..... - 80003510 6312f706 833784fd 83c70700 1b870700 c....7.......... - 80003520 9307d002 b307f740 93b71700 93f7f70f .......@........ - 80003530 2322f4fe 833784fd 8507233c f4fc1da8 #"...7....#<.... - 80003540 033784fe ba878a07 ba978607 2334f4fe .7..........#4.. - 80003550 833784fd 13871700 233ce4fc 83c70700 .7......#<...... - 80003560 81279b87 07fd8127 3e878337 84feba97 .'.....'>..7.... - 80003570 2334f4fe 833784fd 83c70700 f1f38327 #4...7.........' - 80003580 44fe8127 91c78337 84feb307 f04019a0 D..'...7.....@.. - 80003590 833784fe 3e852274 45618280 .7..>."tEa.. -Contents of section .rodata: - 800035a0 73203d20 25640a00 6d637963 6c650000 s = %d..mcycle.. - 800035b0 6d696e73 74726574 00000000 00000000 minstret........ - 800035c0 496d706c 656d656e 74206d61 696e2829 Implement main() - 800035d0 2c20666f 6f210a00 2573203d 2025640a , foo!..%s = %d. - 800035e0 00000000 00000000 286e756c 6c290000 ........(null).. - 800035f0 94f8ffff 7efaffff 70faffff 7efaffff ....~...p...~... - 80003600 7efaffff 7efaffff 7efaffff 70f8ffff ~...~...~...p... - 80003610 7efaffff 7efaffff 0cf8ffff 84f8ffff ~...~........... - 80003620 7efaffff 16f8ffff 20f8ffff 20f8ffff ~....... ... ... - 80003630 20f8ffff 20f8ffff 20f8ffff 20f8ffff ... ... ... ... - 80003640 20f8ffff 20f8ffff 20f8ffff 7efaffff ... ... ...~... - 80003650 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 80003660 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 80003670 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 80003680 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 80003690 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036a0 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036b0 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036c0 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036d0 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036e0 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 800036f0 c4f8ffff c4f9ffff 7efaffff 7efaffff ........~...~... - 80003700 7efaffff 7efaffff 7efaffff 7efaffff ~...~...~...~... - 80003710 7efaffff b8f8ffff 7efaffff 7efaffff ~.......~...~... - 80003720 0cfaffff 14faffff 7efaffff 7efaffff ........~...~... - 80003730 e0f8ffff 7efaffff 04faffff 7efaffff ....~.......~... - 80003740 7efaffff 36faffff ~...6... -Contents of section .debug_info: - 0000 b4030000 05000108 00000000 0c000000 ................ - 0010 000c0000 00000900 00000020 00800000 ........... .... - 0020 00008403 00000000 00000000 00000201 ................ - 0030 06f30000 00020108 f1000000 0202053f ...............? - 0040 01000002 02070d01 00000d04 05696e74 .............int - 0050 000a4a00 00000651 00000006 4a000000 ..J....Q....J... - 0060 0204072b 02000002 0805c502 00000749 ...+...........I - 0070 01000003 69197a00 00000208 07260200 ....i.z......&.. - 0080 0007dc00 000003e8 1a7a0000 00074b01 .........z....K. - 0090 0000043c 146e0000 0007de00 00000452 ...<.n.........R - 00a0 15810000 000e2603 00000207 0c4a0000 ......&......J.. - 00b0 00bc0000 000fbc00 00001000 03c80000 ................ - 00c0 00020108 fa000000 06c10000 00113501 ..............5. - 00d0 0000021e 054a0000 00382300 80000000 .....J...8#..... - 00e0 004c0000 00000000 00019c0c 01000001 .L.............. - 00f0 7300021f 090c0100 00029168 09040100 s..........h.... - 0100 00021f0f 0c010000 02916000 124a0000 ..........`..J.. - 0110 001c0100 00137a00 00000000 1473756d ......z......sum - 0120 00020906 67000000 1a230080 00000000 ....g....#...... - 0130 1e000000 00000000 019c5901 0000044e ..........Y....N - 0140 0002090f 67000000 02915801 61000211 ....g.....X.a... - 0150 084a0000 0002916c 0008e800 00004612 .J.....l......F. - 0160 99000000 f2220080 00000000 28000000 ....."......(... - 0170 00000000 019c8901 00000470 63000146 ...........pc..F - 0180 25990000 00029168 0008ff00 00004011 %......h......@. - 0190 8d000000 bc220080 00000000 36000000 ....."......6... - 01a0 00000000 019cc701 00000478 0001401f ...........x..@. - 01b0 8d000000 02915801 62697400 01420c8d ......X.bit..B.. - 01c0 00000002 91680015 ce000000 012c2732 .....h.......,'2 - 01d0 22008000 0000008a 00000000 00000001 "............... - 01e0 9c2c0200 00052001 00002c33 4a000000 .,.... ...,3J... - 01f0 02916c09 5a010000 012e1751 00000009 ..l.Z......Q.... - 0200 034c3700 80000000 0009d600 0000012f .L7............/ - 0210 17510000 00090348 37008000 00000016 .Q.....H7....... - 0220 54010000 0130174a 00000000 08600100 T....0.J.....`.. - 0230 001c0c4a 0000000e 21008000 00000024 ...J....!......$ - 0240 01000000 00000001 9cef0200 00046e00 ..............n. - 0250 011c1d4a 00000003 91bc7f05 3a010000 ...J........:... - 0260 1c37ef02 00000391 b07f0527 0100001c .7.........'.... - 0270 4b050300 000391a8 7f016900 011e074a K.........i....J - 0280 00000002 916c0b28 21008000 0000009e .....l.(!....... - 0290 00000000 00000001 74300001 220cf402 ........t0.."... - 02a0 00000291 60017431 0001221a f4020000 ....`.t1.."..... - 02b0 02915801 76300001 230cf402 00000291 ..X.v0..#....... - 02c0 50017631 0001231c f4020000 02914801 P.v1..#.......H. - 02d0 65713100 0124094a 00000002 91440165 eq1..$.J.....D.e - 02e0 71320001 24194a00 00000291 40000003 q2..$.J.....@... - 02f0 00030000 0208042e 01000006 f4020000 ................ - 0300 0afb0200 0003fb02 00000827 0100000c ...........'.... - 0310 0c4a0000 00002000 80000000 000e0100 .J.... ......... - 0320 00000000 00019cad 03000004 6e00010c ............n... - 0330 174a0000 0002914c 053a0100 000c2ead .J.....L.:...... - 0340 03000002 91400527 0100000c 3fb20300 .....@.'....?... - 0350 000391b8 7f016900 010e074a 00000002 ......i....J.... - 0360 916c0b1a 20008000 00000084 00000000 .l.. ........... - 0370 00000001 74300001 12094a00 00000291 ....t0....J..... - 0380 68017431 00011217 4a000000 02916401 h.t1....J.....d. - 0390 76300001 13094a00 00000291 60017631 v0....J.....`.v1 - 03a0 00011319 4a000000 02915c00 00035600 ....J.....\...V. - 03b0 0000035b 00000000 25000000 05000108 ...[....%....... - 03c0 52010000 01c70300 00000000 80000000 R............... - 03d0 00c6036d 01000073 0100009e 01000001 ...m...s........ - 03e0 80790e00 00050001 08660100 001d0000 .y.......f...... - 03f0 00000cd0 00000009 00000084 23008000 ............#... - 0400 00000018 12000000 000000cf 07000008 ................ - 0410 0106f300 00000801 08f10000 00080205 ................ - 0420 3f010000 0802070d 0100001e 0405696e ?.............in - 0430 7400134a 0000000f 51000000 0f4a0000 t..J....Q....J.. - 0440 00080407 2b020000 080805c5 0200000a ....+........... - 0450 49010000 0469197a 00000008 08072602 I....i.z......&. - 0460 00000adc 00000004 e81a7a00 00000a4b ..........z....K - 0470 01000005 3c146e00 0000138d 0000000a ....<.n......... - 0480 de000000 05521581 0000000f 9e000000 .....R.......... - 0490 0a590200 0006d117 7a000000 080805c0 .Y......z....... - 04a0 0200001f 082008cc 03000007 cf000000 ..... .......... - 04b0 080108fa 0000000f cf000000 07d60000 ................ - 04c0 00080807 21020000 0a450200 0007281b ....!....E....(. - 04d0 c4000000 0a4c0200 00076318 e7000000 .....L....c..... - 04e0 10780300 000f1a99 00000010 b6030000 .x.............. - 04f0 101a9900 00000c9e 00000025 0100000d ...........%.... - 0500 7a000000 01000381 02000002 25121501 z...........%... - 0510 00000903 50370080 00000000 0cca0000 ....P7.......... - 0520 004b0100 000d7a00 00000100 035b0300 .K....z......[.. - 0530 0002260e 3b010000 09036037 00800000 ..&.;.....`7.... - 0540 000021de 03000002 c2010667 000000c0 ..!........g.... - 0550 34008000 000000dc 00000000 00000001 4............... - 0560 9cb20100 00057374 7200c201 17db0000 ......str....... - 0570 00029158 06726573 00c40108 67000000 ...X.res....g... - 0580 02916814 60020000 c501074a 00000002 ..h.`......J.... - 0590 9164000e 0c020000 2608ca00 00007634 .d......&.....v4 - 05a0 00800000 00004a00 00000000 0000019c ......J......... - 05b0 ff010000 11f50300 00ba0114 ca000000 ................ - 05c0 02915805 73726300 ba0126db 00000002 ..X.src...&..... - 05d0 91500664 00bc0109 ca000000 02916800 .P.d..........h. - 05e0 0ead0200 0024064a 00000004 34008000 .....$.J....4... - 05f0 00000072 00000000 00000001 9c590200 ...r.........Y.. - 0600 00057331 00ae0118 db000000 02915805 ..s1..........X. - 0610 733200ae 0128db00 00000291 50066331 s2...(......P.c1 - 0620 00b00111 35000000 02916f06 633200b0 ....5.....o.c2.. - 0630 01153500 00000291 6e000eb1 01000077 ..5.....n......w - 0640 09af0000 00b63300 80000000 004e0000 ......3......N.. - 0650 00000000 00019ca2 02000005 7300a601 ............s... - 0660 1cdb0000 00029158 056e00a6 0126af00 .......X.n...&.. - 0670 00000291 50067000 a8010fdb 00000002 ....P.p......... - 0680 9168000e aa010000 2909af00 00007a33 .h......).....z3 - 0690 00800000 00003c00 00000000 0000019c ......<......... - 06a0 de020000 0573009e 011bdb00 00000291 .....s.......... - 06b0 58067000 a0010fdb 00000002 9168000e X.p..........h.. - 06c0 d3020000 2109c200 0000ac32 00800000 ....!......2.... - 06d0 0000ce00 00000000 0000019c 7f030000 ................ - 06e0 11f50300 008b0114 c2000000 02914811 ..............H. - 06f0 92030000 8b011e4a 00000002 9144056c .......J.....D.l - 0700 656e008b 012baf00 00000391 b87f15ce en...+.......... - 0710 32008000 0000006c 00000000 0000005f 2......l......._ - 0720 03000014 69030000 8e010f9e 00000002 ....i........... - 0730 91580664 00930110 7f030000 02916800 .X.d..........h. - 0740 093a3300 80000000 00340000 00000000 .:3......4...... - 0750 00066400 97010bca 00000002 91600000 ..d..........`.. - 0760 079e0000 000ebf03 00001f09 c2000000 ................ - 0770 f4310080 00000000 b8000000 00000000 .1.............. - 0780 019c3004 000011f5 0300007b 0114c200 ..0........{.... - 0790 00000291 48057372 63007b01 26300400 ....H.src.{.&0.. - 07a0 00029140 056c656e 007b0132 af000000 ...@.len.{.2.... - 07b0 0391b87f 151a3200 80000000 00420000 ......2......B.. - 07c0 00000000 00030400 00067300 7e011636 ..........s.~..6 - 07d0 04000002 91680664 007f0110 7f030000 .....h.d........ - 07e0 02916000 095c3200 80000000 00440000 ..`..\2......D.. - 07f0 00000000 00067300 830111db 00000002 ......s......... - 0800 91580664 0084010b ca000000 02915000 .X.d..........P. - 0810 00073504 00002207 aa000000 12250300 ..5..."......%.. - 0820 0003f405 4a000000 32310080 00000000 ....J...21...... - 0830 c2000000 00000000 019cee04 00000573 ...............s - 0840 74720067 0113ca00 00000391 887e0566 tr.g.........~.f - 0850 6d740067 0124db00 00000391 807e1806 mt.g.$.......~.. - 0860 61700069 010bf300 00000391 b07f147c ap.i...........| - 0870 0200006a 0109ca00 00000391 b87f2384 ...j..........#. - 0880 03000002 6d0108ec 30008000 00000046 ....m...0......F - 0890 00000000 00000001 9c079148 06239001 ...........H.#.. - 08a0 06056368 006d011a 4a000000 02915c11 ..ch.m..J.....\. - 08b0 a8020000 6d0125ee 04000002 915014ce ....m.%......P.. - 08c0 0200006f 010cf304 00000291 68000007 ...o........h... - 08d0 c2000000 07ca0000 00122603 000003c8 ..........&..... - 08e0 054a0000 00963000 80000000 00560000 .J....0......V.. - 08f0 00000000 00019c3b 05000005 666d7400 .......;....fmt. - 0900 5c0118db 00000003 91987f18 06617000 \............ap. - 0910 5e010bf3 00000003 91a87f00 19fa0300 ^............... - 0920 00c50d36 2d008000 00000060 03000000 ...6-......`.... - 0930 00000001 9c740600 00018c03 000002c5 .....t.......... - 0940 1e840600 000391a8 7f010e03 000002c5 ................ - 0950 3aee0400 000391a0 7f04666d 740002c5 :.........fmt... - 0960 4edb0000 00039198 7f046170 0002c55b N.........ap...[ - 0970 f3000000 0391907f 02700002 c718db00 .........p...... - 0980 00000162 038f0200 0002c80f db000000 ...b............ - 0990 0391b87f 02636800 02c9104a 00000001 .....ch....J.... - 09a0 59246572 720002c9 144a0000 00026e75 Y$err....J....nu - 09b0 6d0002ca 16e00000 00029158 03130200 m..........X.... - 09c0 0002cb07 4a000000 02915403 b4020000 ....J.....T..... - 09d0 02cb0d4a 00000002 91500365 02000002 ...J.....P.e.... - 09e0 cb144a00 00000291 4c03c101 000002cb ..J.....L....... - 09f0 1b4a0000 00029148 033a0300 0002cb26 .J.....H.:.....& - 0a00 4a000000 0391b47f 03540200 0002cc08 J........T...... - 0a10 cf000000 02914725 9f020000 02de03b2 ......G%........ - 0a20 2d008000 00000016 b9010000 0a018e2e -............... - 0a30 00800000 00001600 0300004a 01403000 ...........J.@0. - 0a40 80000000 0016fe02 00004801 2c300080 ..........H.,0.. - 0a50 00000000 00268406 00001a4a 0000001a .....&.....J.... - 0a60 ee040000 00077406 00000bf7 02000002 ......t......... - 0a70 bb12bb00 0000ce2c 00800000 00006800 .......,......h. - 0a80 00000000 0000019c c9060000 04617000 .............ap. - 0a90 02bb22c9 06000002 916801b4 02000002 .."......h...... - 0aa0 bb2a4a00 00000291 640007f3 0000000b .*J.....d....... - 0ab0 e1010000 02b11be0 00000062 2c008000 ...........b,... - 0ac0 0000006c 00000000 00000001 9c0e0700 ...l............ - 0ad0 00046170 0002b12c c9060000 02916801 ..ap...,......h. - 0ae0 b4020000 02b1344a 00000002 91640019 ......4J.....d.. - 0af0 18020000 9c14662b 00800000 0000fc00 ......f+........ - 0b00 00000000 0000019c ab070000 018c0300 ................ - 0b10 00029c24 84060000 0391d87d 010e0300 ...$.......}.... - 0b20 00029c40 ee040000 0391d07d 046e756d ...@.......}.num - 0b30 00029d28 e0000000 0391c87d 01130200 ...(.......}.... - 0b40 00029d36 60000000 0391c47d 01650200 ...6`......}.e.. - 0b50 00029d40 4a000000 0391c07d 01540200 ...@J......}.T.. - 0b60 00029d4b 4a000000 0391bc7d 037f0300 ...KJ......}.... - 0b70 00029f0c ab070000 0391e87d 02706f73 ...........}.pos - 0b80 0002a007 4a000000 02916c00 0c600000 ....J.....l..`.. - 0b90 00bb0700 000d7a00 00003f00 17970300 ......z...?..... - 0ba0 008eda2a 00800000 00008c00 00000000 ...*............ - 0bb0 0000019c 01080000 04780002 8e188d00 .........x...... - 0bc0 00000291 48027374 72000290 08010800 ....H.str....... - 0bd0 00029158 02690002 91074a00 00000291 ...X.i....J..... - 0be0 6c000ccf 00000011 0800000d 7a000000 l...........z... - 0bf0 100012e9 01000003 dc054a00 0000682a ..........J...h* - 0c00 00800000 00007200 00000000 0000019c ......r......... - 0c10 5a080000 04636800 027e114a 00000002 Z....ch..~.J.... - 0c20 916c2762 75660002 80185a08 0000401b .l'buf....Z...@. - 0c30 98020000 02814a00 0000000c cf000000 ......J......... - 0c40 6a080000 0d7a0000 003f0017 e9020000 j....z...?...... - 0c50 6a822900 80000000 00e60000 00000000 j.)............. - 0c60 00019cf3 08000004 63696400 026a104a ........cid..j.J - 0c70 00000003 91dc7e04 6e630002 6a194a00 ......~.nc..j.J. - 0c80 00000391 d87e0272 65740002 70074a00 .....~.ret..p.J. - 0c90 00000291 50286275 66000272 085a0800 ....P(buf..r.Z.. - 0ca0 00400279 00037702 00000273 09ca0000 .@.y..w....s.... - 0cb0 00029158 09da2900 80000000 00760000 ...X..)......v.. - 0cc0 00000000 00026900 02740c4a 00000002 ......i..t.J.... - 0cd0 91540000 29ec0300 0002600d 1c290080 .T..).....`..).. - 0ce0 00000000 66000000 00000000 019c5f09 ....f........._. - 0cf0 0000034c 03000002 6212c200 00000154 ...L....b......T - 0d00 102d0300 00630fcf 00000010 d6010000 .-...c.......... - 0d10 631dcf00 0000106e 03000063 29cf0000 c......n...c)... - 0d20 0003cb01 00000264 0aaf0000 00029168 .......d.......h - 0d30 03420300 0002660a af000000 02916000 .B....f.......`. - 0d40 12350100 0002591b 4a000000 f2280080 .5....Y.J....(.. - 0d50 00000000 2a000000 00000000 019ca009 ....*........... - 0d60 00000115 03000002 59244a00 00000291 ........Y$J..... - 0d70 6c012003 00000259 31f30400 00029160 l. ....Y1......` - 0d80 001cff01 0000521c ca280080 00000000 ......R..(...... - 0d90 28000000 00000000 019cdb09 00000463 (..............c - 0da0 69640002 522d4a00 00000291 6c046e63 id..R-J.....l.nc - 0db0 00025236 4a000000 02916800 17f60100 ..R6J.....h..... - 0dc0 004d9428 00800000 00003600 00000000 .M.(......6..... - 0dd0 0000019c 050a0000 04730002 4d1bdb00 .........s..M... - 0de0 00000291 58002a3f 02000002 48068428 ....X.*?....H..( - 0df0 00800000 00001000 00000000 0000019c ................ - 0e00 2b720200 00024306 6c280080 00000000 +r....C.l(...... - 0e10 18000000 00000000 019c4d0a 0000018a ..........M..... - 0e20 02000002 430f4a00 00000291 6c0012aa ....C.J.....l... - 0e30 03000002 3e219e00 00005028 00800000 ....>!....P(.... - 0e40 00001c00 00000000 0000019c 9d0a0000 ................ - 0e50 01ba0200 00023e37 9e000000 02916804 ......>7......h. - 0e60 65706300 023e489e 00000002 916001f1 epc..>H......`.. - 0e70 01000002 3e577f03 00000291 58002c6b ....>W......X.,k - 0e80 02000002 38203028 00800000 00002000 ....8 0(...... . - 0e90 00000000 0000019c cb0a0000 018a0200 ................ - 0ea0 00023836 9e000000 02916800 1ce30300 ..86......h..... - 0eb0 0028061c 27008000 00000014 01000000 .(..'........... - 0ec0 00000001 9c8e0b00 00013802 00000228 ..........8....( - 0ed0 134a0000 000391bc 7f026900 022a074a .J........i..*.J - 0ee0 00000002 915c152c 27008000 0000007e .....\.,'......~ - 0ef0 00000000 0000004b 0b000002 63737200 .......K....csr. - 0f00 0232039e 00000002 9168093c 27008000 .2.......h.<'... - 0f10 0000000c 00000000 00000003 c6030000 ................ - 0f20 0232037a 00000002 91500000 09aa2700 .2.z.....P....'. - 0f30 80000000 007e0000 00000000 00026373 .....~........cs - 0f40 72000233 039e0000 00029160 09ba2700 r..3.......`..'. - 0f50 80000000 000c0000 00000000 0003c603 ................ - 0f60 00000233 037a0000 00029148 0000000b ...3.z.....H.... - 0f70 ef020000 0212129e 0000009e 26008000 ............&... - 0f80 0000007e 00000000 00000001 9c010c00 ...~............ - 0f90 00011a03 00000212 249e0000 000391f8 ........$....... - 0fa0 7e01da02 00000212 348d0000 000391f0 ~.......4....... - 0fb0 7e01df02 00000212 438d0000 000391e8 ~.......C....... - 0fc0 7e01e402 00000212 528d0000 000391e0 ~.......R....... - 0fd0 7e2da003 00000214 15110c00 0040027f ~-...........@.. - 0fe0 00000c99 00000011 0c00000d 7a000000 ............z... - 0ff0 07001301 0c00000b e8000000 0146129e .............F.. - 1000 00000076 26008000 00000028 00000000 ...v&......(.... - 1010 00000001 9c470c00 00047063 00014625 .....G....pc..F% - 1020 9e000000 02916800 0bff0000 00014011 ......h.......@. - 1030 8d000000 40260080 00000000 36000000 ....@&......6... - 1040 00000000 019c860c 00000478 0001401f ...........x..@. - 1050 8d000000 02915802 62697400 01420c8d ......X.bit..B.. - 1060 00000002 9168002e ce000000 012c27b6 .....h.......,'. - 1070 25008000 0000008a 00000000 00000001 %............... - 1080 9ceb0c00 00012001 0000012c 334a0000 ...... ....,3J.. - 1090 0002916c 035a0100 00012e17 51000000 ...l.Z......Q... - 10a0 09037437 00800000 000003d6 00000001 ..t7............ - 10b0 2f175100 00000903 70370080 00000000 /.Q.....p7...... - 10c0 1b540100 0001304a 00000000 0b600100 .T....0J.....`.. - 10d0 00011c0c 4a000000 92240080 00000000 ....J....$...... - 10e0 24010000 00000000 019cb10d 0000046e $..............n - 10f0 00011c1d 4a000000 0391bc7f 013a0100 ....J........:.. - 1100 00011c37 b10d0000 0391b07f 01270100 ...7.........'.. - 1110 00011c4b c70d0000 0391a87f 02690001 ...K.........i.. - 1120 1e074a00 00000291 6c09ac24 00800000 ..J.....l..$.... - 1130 00009e00 00000000 00000274 30000122 ...........t0.." - 1140 0cb60d00 00029160 02743100 01221ab6 .......`.t1..".. - 1150 0d000002 91580276 30000123 0cb60d00 .....X.v0..#.... - 1160 00029150 02763100 01231cb6 0d000002 ...P.v1..#...... - 1170 91480265 71310001 24094a00 00000291 .H.eq1..$.J..... - 1180 44026571 32000124 194a0000 00029140 D.eq2..$.J.....@ - 1190 000007c2 0d000008 08042e01 00000fb6 ................ - 11a0 0d000013 bd0d0000 07bd0d00 000b2701 ..............'. - 11b0 0000010c 0c4a0000 00842300 80000000 .....J....#..... - 11c0 000e0100 00000000 00019c72 0e000004 ...........r.... - 11d0 6e00010c 174a0000 0002914c 013a0100 n....J.....L.:.. - 11e0 00010c2e 720e0000 02914001 27010000 ....r.....@.'... - 11f0 010c3f77 0e000003 91b87f02 6900010e ..?w........i... - 1200 074a0000 0002916c 099e2300 80000000 .J.....l..#..... - 1210 00840000 00000000 00027430 00011209 ..........t0.... - 1220 4a000000 02916802 74310001 12174a00 J.....h.t1....J. - 1230 00000291 64027630 00011309 4a000000 ....d.v0....J... - 1240 02916002 76310001 13194a00 00000291 ..`.v1....J..... - 1250 5c000007 56000000 075b0000 0000 \...V....[.... -Contents of section .debug_abbrev: - 0000 01340003 083a0b3b 0b390b49 13021800 .4...:.;.9.I.... - 0010 00022400 0b0b3e0b 030e0000 030f000b ..$...>......... - 0020 21084913 00000405 0003083a 0b3b0b39 !.I........:.;.9 - 0030 0b491302 18000005 0500030e 3a21013b .I..........:!.; - 0040 0b390b49 13021800 00062600 49130000 .9.I......&.I... - 0050 07160003 0e3a0b3b 0b390b49 13000008 .....:.;.9.I.... - 0060 2e01030e 3a21013b 0b390b27 19491311 ....:!.;.9.'.I.. - 0070 01120740 187a1901 13000009 3400030e ...@.z......4... - 0080 3a0b3b0b 390b4913 02180000 0a350049 :.;.9.I......5.I - 0090 1300000b 0b011101 12070000 0c110125 ...............% - 00a0 0e130b03 1f1b1f11 01120710 1700000d ................ - 00b0 24000b0b 3e0b0308 00000e2e 013f1903 $...>........?.. - 00c0 0e3a0b3b 0b390b27 1949133c 19011300 .:.;.9.'.I.<.... - 00d0 000f0500 49130000 10180000 00112e01 ....I........... - 00e0 3f19030e 3a0b3b0b 390b2719 49131101 ?...:.;.9.'.I... - 00f0 12074018 7c190113 00001201 01491301 ..@.|........I.. - 0100 13000013 21004913 2f0b0000 142e013f ....!.I./......? - 0110 1903083a 0b3b0b39 0b271949 13110112 ...:.;.9.'.I.... - 0120 0740187a 19011300 00152e01 030e3a0b .@.z..........:. - 0130 3b0b390b 27191101 12074018 7a190113 ;.9.'.....@.z... - 0140 00001634 00030e3a 0b3b0b39 0b491300 ...4...:.;.9.I.. - 0150 00000111 00101711 01120f03 0e1b0e25 ...............% - 0160 0e130500 00000105 00030e3a 0b3b0b39 ...........:.;.9 - 0170 0b491302 18000002 34000308 3a0b3b0b .I......4...:.;. - 0180 390b4913 02180000 03340003 0e3a0b3b 9.I......4...:.; - 0190 0b390b49 13021800 00040500 03083a0b .9.I..........:. - 01a0 3b0b390b 49130218 00000505 0003083a ;.9.I..........: - 01b0 21023b05 390b4913 02180000 06340003 !.;.9.I......4.. - 01c0 083a2102 3b05390b 49130218 0000070f .:!.;.9.I....... - 01d0 000b2108 49130000 0824000b 0b3e0b03 ..!.I....$...>.. - 01e0 0e000009 0b011101 12070000 0a160003 ................ - 01f0 0e3a0b3b 0b390b49 1300000b 2e01030e .:.;.9.I........ - 0200 3a0b3b0b 390b2719 49131101 12074018 :.;.9.'.I.....@. - 0210 7a190113 00000c01 01491301 1300000d z........I...... - 0220 21004913 2f0b0000 0e2e013f 19030e3a !.I./......?...: - 0230 21083b0b 390b2719 49131101 12074018 !.;.9.'.I.....@. - 0240 7a190113 00000f26 00491300 00103400 z......&.I....4. - 0250 030e3a21 023b0b39 0b49133f 193c1900 ..:!.;.9.I.?.<.. - 0260 00110500 030e3a21 023b0539 0b491302 ......:!.;.9.I.. - 0270 18000012 2e013f19 030e3a0b 3b0b390b ......?...:.;.9. - 0280 27194913 11011207 40187c19 01130000 '.I.....@.|..... - 0290 13350049 13000014 3400030e 3a21023b .5.I....4...:!.; - 02a0 05390b49 13021800 00150b01 11011207 .9.I............ - 02b0 01130000 160a0003 0e3a2102 3b053921 .........:!.;.9! - 02c0 05110100 00172e01 3f19030e 3a21023b ........?...:!.; - 02d0 0b392106 27191101 12074018 7c190113 .9!.'.....@.|... - 02e0 00001818 00000019 2e01030e 3a21023b ............:!.; - 02f0 0b390b27 19110112 0740187c 19011300 .9.'.....@.|.... - 0300 001a0500 49130000 1b340003 0e3a0b3b ....I....4...:.; - 0310 0b392117 49130000 1c2e013f 19030e3a .9!.I......?...: - 0320 21023b0b 390b2719 11011207 40187a19 !.;.9.'.....@.z. - 0330 01130000 1d110125 0e130b03 1f1b1f11 .......%........ - 0340 01120710 1700001e 24000b0b 3e0b0308 ........$...>... - 0350 00001f0f 000b0b00 00200f00 0b0b030e ......... ...... - 0360 0000212e 013f1903 0e3a0b3b 05390b27 ..!..?...:.;.9.' - 0370 19491311 01120740 187a1901 13000022 .I.....@.z....." - 0380 26000000 232e0103 0e3a0b3b 05390b27 &...#....:.;.9.' - 0390 19110112 07401848 187a1900 00243400 .....@.H.z...$4. - 03a0 03083a0b 3b0b390b 49130000 250a0003 ..:.;.9.I...%... - 03b0 0e3a0b3b 0b390b11 01000026 15012719 .:.;.9.....&..'. - 03c0 01130000 27340003 083a0b3b 0b390b49 ....'4...:.;.9.I - 03d0 1388010b 00002834 0003083a 0b3b0b39 ......(4...:.;.9 - 03e0 0b491388 010b0218 0000292e 01030e3a .I........)....: - 03f0 0b3b0b39 0b110112 0740187c 19011300 .;.9.....@.|.... - 0400 002a2e00 3f19030e 3a0b3b0b 390b1101 .*..?...:.;.9... - 0410 12074018 7c190000 2b2e013f 19030e3a ..@.|...+..?...: - 0420 0b3b0b39 0b271987 01191101 12074018 .;.9.'........@. - 0430 7c190113 00002c2e 013f1903 0e3a0b3b |.....,..?...:.; - 0440 0b390b27 19870119 11011207 40187a19 .9.'........@.z. - 0450 01130000 2d340003 0e3a0b3b 0b390b49 ....-4...:.;.9.I - 0460 1388010b 02180000 2e2e0103 0e3a0b3b .............:.; - 0470 0b390b27 19110112 0740187a 19011300 .9.'.....@.z.... - 0480 0000 .. -Contents of section .debug_aranges: - 0000 2c000000 02000000 00000800 00000000 ,............... - 0010 00200080 00000000 84030000 00000000 . .............. - 0020 00000000 00000000 00000000 00000000 ................ - 0030 2c000000 0200b803 00000800 00000000 ,............... - 0040 00000080 00000000 c0010000 00000000 ................ - 0050 00000000 00000000 00000000 00000000 ................ - 0060 2c000000 0200e103 00000800 00000000 ,............... - 0070 84230080 00000000 18120000 00000000 .#.............. - 0080 00000000 00000000 00000000 00000000 ................ -Contents of section .debug_line: - 0000 c3030000 05000800 45000000 010101fb ........E....... - 0010 0e0d0001 01010100 00000100 00010101 ................ - 0020 1f040900 00003400 00003e00 00007500 ......4...>...u. - 0030 00000201 1f020f05 00000000 00a80000 ................ - 0040 00010000 000000af 00000002 c0000000 ................ - 0050 03050100 09020020 00800000 0000030c ....... ........ - 0060 01050a03 03091400 01050303 00090400 ................ - 0070 01051203 02090200 01050903 00090c00 ................ - 0080 01052003 00090600 01051703 00090e00 .. ............. - 0090 01051403 01090600 01050903 00090c00 ................ - 00a0 01052403 00090600 01051903 00090e00 ..$............. - 00b0 01050803 01090600 01051b00 02040103 ................ - 00c0 00091200 01050803 01090a00 01051b00 ................ - 00d0 02040103 00091200 01000204 02037b09 ..............{. - 00e0 0a000105 14000204 01030009 0a000105 ................ - 00f0 16000204 01030009 10000105 11000204 ................ - 0100 01030009 08000105 0d030709 0a000105 ................ - 0110 06030009 08000105 19000204 01030009 ................ - 0120 02000105 28000204 01030009 14000105 ....(........... - 0130 1f000204 01030009 0e000105 12000204 ................ - 0140 01030009 02000105 0c030109 06000105 ................ - 0150 0a030109 06000105 01030109 02000103 ................ - 0160 03090800 01050a03 03091400 01050303 ................ - 0170 00090400 01051503 02090200 01050c03 ................ - 0180 00090c00 01052303 00090600 01051a03 ......#......... - 0190 00090e00 01051703 01090600 01050c03 ................ - 01a0 00090c00 01052703 00090600 01051c03 ......'......... - 01b0 00090e00 01051203 01090600 01050903 ................ - 01c0 00091400 01052203 00090400 01051903 ......"......... - 01d0 00091400 01050f03 01090400 01050803 ................ - 01e0 00090e00 01051f00 02040103 00090200 ................ - 01f0 01052100 02040103 00090800 01051b00 ..!............. - 0200 02040203 7b090a00 01051400 02040103 ....{........... - 0210 00090a00 01051600 02040103 00091000 ................ - 0220 01051100 02040103 00090800 01050d03 ................ - 0230 07090a00 01050603 00090800 01051900 ................ - 0240 02040103 00090200 01052800 02040103 ..........(..... - 0250 00091000 01051200 02040103 00091000 ................ - 0260 01050c03 01090600 01050a03 01090600 ................ - 0270 01050103 01090200 01030309 08000105 ................ - 0280 03030509 0c000105 11030209 04000105 ................ - 0290 0f030009 10000105 07030109 04000105 ................ - 02a0 30030009 1a000105 06030009 08000105 0............... - 02b0 0b030209 04000103 01090c00 01050d03 ................ - 02c0 02091000 01051400 02040103 00090200 ................ - 02d0 01050303 03091600 01050103 01090400 ................ - 02e0 01030309 08000105 1a030109 0a000105 ................ - 02f0 15030009 08000105 0c030009 06000105 ................ - 0300 0d030109 06000105 1a030009 08000105 ................ - 0310 13030009 06000105 01030109 02000103 ................ - 0320 03090800 01050c03 01090a00 01050b03 ................ - 0330 00090400 01052003 00090400 01052903 ...... .......). - 0340 00090600 01000204 01060300 09020001 ................ - 0350 00020402 03000904 00010501 00020405 ................ - 0360 06030109 02000104 02051203 40090800 ............@... - 0370 01050403 0a090a00 01050b03 08090800 ................ - 0380 01050103 01090400 01051003 02090800 ................ - 0390 01050c03 02090800 01050a03 00090800 ................ - 03a0 01050503 01090600 01051103 01091200 ................ - 03b0 01050c03 01090600 01050103 01091400 ................ - 03c0 01090a00 00010104 04000005 0008002e ................ - 03d0 00000001 0101fb0e 0d000101 01010000 ................ - 03e0 00010000 0101011f 02340000 00340000 .........4...4.. - 03f0 0002011f 020f02ca 00000000 ca000000 ................ - 0400 01000902 00000080 00000000 03110103 ................ - 0410 01090200 01030109 02000103 01090200 ................ - 0420 01030109 02000103 01090200 01030109 ................ - 0430 02000103 01090200 01030109 02000103 ................ - 0440 01090200 01030109 02000103 01090200 ................ - 0450 01030109 02000103 01090200 01030109 ................ - 0460 02000103 01090200 01030109 02000103 ................ - 0470 01090200 01030109 02000103 01090200 ................ - 0480 01030109 02000103 01090200 01030109 ................ - 0490 02000103 01090200 01030109 02000103 ................ - 04a0 01090200 01030109 02000103 01090200 ................ - 04b0 01030109 02000103 01090200 01030109 ................ - 04c0 02000103 03090200 01030109 02000103 ................ - 04d0 03090400 01030109 02000103 02090200 ................ - 04e0 01030509 04000103 01090200 01030109 ................ - 04f0 08000103 05090200 01030109 08000103 ................ - 0500 02090400 01030109 04000103 01090400 ................ - 0510 01030109 04000103 01090400 01030109 ................ - 0520 04000103 01090400 01030109 04000103 ................ - 0530 01090400 01030109 04000103 01090400 ................ - 0540 01030109 04000103 01090400 01030109 ................ - 0550 04000103 01090400 01030109 04000103 ................ - 0560 01090400 01030109 04000103 01090400 ................ - 0570 01030109 04000103 01090400 01030109 ................ - 0580 04000103 01090400 01030109 04000103 ................ - 0590 01090400 01030109 04000103 01090400 ................ - 05a0 01030109 04000103 01090400 01030109 ................ - 05b0 04000103 01090400 01030109 04000103 ................ - 05c0 01090400 01030509 04000103 01090800 ................ - 05d0 01030509 04000103 03090800 01030109 ................ - 05e0 04000103 03090400 01030209 04000103 ................ - 05f0 01090200 01030409 04000103 01090400 ................ - 0600 01030109 02000103 01090200 01030109 ................ - 0610 04000103 02090200 01030409 04000103 ................ - 0620 02090200 01030109 02000103 01090200 ................ - 0630 01030109 02000103 01090200 01030109 ................ - 0640 02000103 01090200 01030109 02000103 ................ - 0650 01090200 01030109 02000103 01090200 ................ - 0660 01030109 02000103 01090200 01030109 ................ - 0670 02000103 01090200 01030109 02000103 ................ - 0680 01090200 01030109 02000103 01090200 ................ - 0690 01030109 02000103 01090200 01030109 ................ - 06a0 02000103 01090200 01030109 02000103 ................ - 06b0 01090200 01030109 02000103 01090200 ................ - 06c0 01030109 02000103 01090200 01030109 ................ - 06d0 02000103 01090200 01030209 02000103 ................ - 06e0 01090400 01030109 04000103 01090200 ................ - 06f0 01030109 04000103 03090400 01030109 ................ - 0700 06000103 02090400 01030109 02000103 ................ - 0710 01090200 01030109 02000103 01090200 ................ - 0720 01030109 02000103 01090200 01030109 ................ - 0730 02000103 01090200 01030109 02000103 ................ - 0740 01090200 01030109 02000103 01090200 ................ - 0750 01030109 02000103 01090200 01030109 ................ - 0760 02000103 01090200 01030109 02000103 ................ - 0770 01090200 01030109 02000103 01090200 ................ - 0780 01030109 02000103 01090200 01030109 ................ - 0790 02000103 01090200 01030109 02000103 ................ - 07a0 01090200 01030109 02000103 01090200 ................ - 07b0 01030109 02000103 01090200 01030209 ................ - 07c0 02000103 01090200 01090400 0001010d ................ - 07d0 10000005 00080061 00000001 0101fb0e .......a........ - 07e0 0d000101 01010000 00010000 0101011f ................ - 07f0 06090000 00340000 00e50000 003e0000 .....4.......>.. - 0800 00750000 00140100 0002011f 020f09d0 .u.............. - 0810 00000000 a8000000 01da0000 00015201 ..............R. - 0820 000002af 00000003 c0000000 045a0100 .............Z.. - 0830 00056301 0000056c 01000002 05010009 ..c....l........ - 0840 02842300 80000000 00030c01 050a0303 ..#............. - 0850 09140001 05030300 09040001 05120302 ................ - 0860 09020001 05090300 090c0001 05200300 ............. .. - 0870 09060001 05170300 090e0001 05140301 ................ - 0880 09060001 05090300 090c0001 05240300 .............$.. - 0890 09060001 05190300 090e0001 05080301 ................ - 08a0 09060001 051b0002 04010300 09120001 ................ - 08b0 05080301 090a0001 051b0002 04010300 ................ - 08c0 09120001 00020402 037b090a 00010514 .........{...... - 08d0 00020401 0300090a 00010516 00020401 ................ - 08e0 03000910 00010511 00020401 03000908 ................ - 08f0 0001050d 0307090a 00010506 03000908 ................ - 0900 00010519 00020401 03000902 00010528 ...............( - 0910 00020401 03000914 0001051f 00020401 ................ - 0920 0300090e 00010512 00020401 03000902 ................ - 0930 0001050c 03010906 0001050a 03010906 ................ - 0940 00010501 03010902 00010303 09080001 ................ - 0950 050a0303 09140001 05030300 09040001 ................ - 0960 05150302 09020001 050c0300 090c0001 ................ - 0970 05230300 09060001 051a0300 090e0001 .#.............. - 0980 05170301 09060001 050c0300 090c0001 ................ - 0990 05270300 09060001 051c0300 090e0001 .'.............. - 09a0 05120301 09060001 05090300 09140001 ................ - 09b0 05220300 09040001 05190300 09140001 .".............. - 09c0 050f0301 09040001 05080300 090e0001 ................ - 09d0 051f0002 04010300 09020001 05210002 .............!.. - 09e0 04010300 09080001 051b0002 0402037b ...............{ - 09f0 090a0001 05140002 04010300 090a0001 ................ - 0a00 05160002 04010300 09100001 05110002 ................ - 0a10 04010300 09080001 050d0307 090a0001 ................ - 0a20 05060300 09080001 05190002 04010300 ................ - 0a30 09020001 05280002 04010300 09100001 .....(.......... - 0a40 05120002 04010300 09100001 050c0301 ................ - 0a50 09060001 050a0301 09060001 05010301 ................ - 0a60 09020001 03030908 00010503 0305090c ................ - 0a70 00010511 03020904 0001050f 03000910 ................ - 0a80 00010507 03010904 00010530 0300091a ...........0.... - 0a90 00010506 03000908 0001050b 03020904 ................ - 0aa0 00010301 090c0001 050d0302 09100001 ................ - 0ab0 05140002 04010300 09020001 05030303 ................ - 0ac0 09160001 05010301 09040001 03030908 ................ - 0ad0 0001051a 0301090a 00010515 03000908 ................ - 0ae0 0001050c 03000906 0001050d 03010906 ................ - 0af0 0001051a 03000908 00010513 03000906 ................ - 0b00 00010501 03010902 00010303 09080001 ................ - 0b10 050c0301 090a0001 050b0300 09040001 ................ - 0b20 05200300 09040001 05290300 09060001 . .......)...... - 0b30 00020401 06030009 02000100 02040203 ................ - 0b40 00090400 01050100 02040506 03010902 ................ - 0b50 00010402 034a0908 00010510 0302092e .....J.......... - 0b60 00010301 09060001 03010906 00010301 ................ - 0b70 09060001 05030301 09060001 050c0302 ................ - 0b80 09040001 050a0300 09020001 05090301 ................ - 0b90 090a0001 05130002 04010300 09020001 ................ - 0ba0 050c0302 090c0001 05030302 090c0001 ................ - 0bb0 05130301 09040001 05010301 09020001 ................ - 0bc0 03070908 00010507 0301090c 00010503 ................ - 0bd0 03080904 00010002 04010603 00090200 ................ - 0be0 01000204 02030009 0e000100 02040303 ................ - 0bf0 00091800 01000204 05030009 38000100 ............8... - 0c00 02040506 0301091e 00010002 04010603 ................ - 0c10 00090200 01000204 02030009 0e000100 ................ - 0c20 02040303 00091800 01000204 05030009 ................ - 0c30 38000105 01000204 05060303 091e0001 8............... - 0c40 03030908 00010512 0301090a 00010518 ................ - 0c50 03000906 0001050a 03000904 00010509 ................ - 0c60 00020401 0301090a 00010501 03040902 ................ - 0c70 00010503 03010914 00010501 03040908 ................ - 0c80 00010503 0301090e 00010501 0304090a ................ - 0c90 00010503 03010908 00010501 03040908 ................ - 0ca0 00010503 0301090e 00010501 0301091c ................ - 0cb0 00010303 090c0001 05090303 09140001 ................ - 0cc0 050e0002 04010300 09020001 05010301 ................ - 0cd0 09080001 0303090a 00010503 03020912 ................ - 0ce0 0001050a 0301090c 00010501 03010902 ................ - 0cf0 00010303 090a0001 05230303 09080001 .........#...... - 0d00 050a0300 09140001 05030301 09040001 ................ - 0d10 05210301 09140001 050a0300 09100001 .!.............. - 0d20 05030301 09040001 05010301 09140001 ................ - 0d30 0303090a 00010503 03010932 00010301 ...........2.... - 0d40 09040001 050d0303 09100001 05090303 ................ - 0d50 090e0001 050c0301 09040001 05030300 ................ - 0d60 09040001 05110301 09020001 05080300 ................ - 0d70 09120001 050f0301 09020001 050c0300 ................ - 0d80 093a0001 05260002 0402037e 090a0001 .:...&.....~.... - 0d90 05150002 04010300 090a0001 05060303 ................ - 0da0 090e0001 05050301 09080001 05030302 ................ - 0db0 09060001 05010305 090a0001 050d0304 ................ - 0dc0 090e0001 05110300 09100001 05060302 ................ - 0dd0 09120001 051c0002 04010300 090e0001 ................ - 0de0 05120002 04010300 09040001 05050302 ................ - 0df0 090a0001 050c0301 09160001 050a0303 ................ - 0e00 09040001 05010301 09020001 0303090a ................ - 0e10 0001050a 0303090c 00010503 03000904 ................ - 0e20 00010514 03020902 00010521 0300090e ...........!.... - 0e30 0001051b 03000908 00010002 04010603 ................ - 0e40 00090600 01000204 02030009 06000105 ................ - 0e50 0b000204 04060300 09040001 051b0002 ................ - 0e60 04040300 090a0001 050f0002 04040300 ................ - 0e70 09060001 05070002 04040301 090a0001 ................ - 0e80 05180002 0404037d 090a0001 05110002 .......}........ - 0e90 04020300 090a0001 050b0305 090e0001 ................ - 0ea0 05030302 09040001 05010301 090a0001 ................ - 0eb0 0304090a 00010507 0302092c 00010517 ...........,.... - 0ec0 03040904 0001050d 0300090c 00010511 ................ - 0ed0 0300090c 0001050d 0301090e 00010508 ................ - 0ee0 03000904 00010509 03020908 00010511 ................ - 0ef0 037d0910 00010507 03020902 00010509 .}.............. - 0f00 03040902 00010505 03010902 0001050f ................ - 0f10 037f0910 00010512 0300090c 00010509 ................ - 0f20 0303090a 0001050f 03010902 0001051c ................ - 0f30 0300090e 00010533 0300090e 00010002 .......3........ - 0f40 04010603 00090800 01000204 02030009 ................ - 0f50 06000105 15000204 04060300 09040001 ................ - 0f60 05050002 04040300 09040001 050d037f ................ - 0f70 090e0001 05100300 090c0001 05010302 ................ - 0f80 09040001 0303090c 00010506 03010910 ................ - 0f90 0001050c 0301090e 0001050b 03010914 ................ - 0fa0 0001050c 03010908 00010302 09140001 ................ - 0fb0 05010301 09160001 03030908 00010506 ................ - 0fc0 03010910 0001050c 0301090e 0001050b ................ - 0fd0 03010914 0001050c 03010908 00010302 ................ - 0fe0 09140001 05010301 09120001 03030908 ................ - 0ff0 0001050b 0309091c 0001050a 03010902 ................ - 1000 00010302 09040001 05070301 090a0001 ................ - 1010 0512037c 090c0001 05100300 09080001 ...|............ - 1020 052a0300 09040001 05080306 090a0001 .*.............. - 1030 050e0303 090a0001 050a0301 09080001 ................ - 1040 050b0301 09080001 050f0301 09060001 ................ - 1050 050b0301 09060001 050d0301 09040001 ................ - 1060 05130302 09040001 05120300 090c0001 ................ - 1070 05100300 09040001 05050300 09040001 ................ - 1080 050c0304 09360001 05070301 09080001 .....6.......... - 1090 050c0304 09020001 05070301 09080001 ................ - 10a0 0516030c 09020001 051f0301 09040001 ................ - 10b0 05240300 09140001 05130300 09040001 .$.............. - 10c0 050e0301 09080001 050c0300 09080001 ................ - 10d0 03010904 00010516 00020401 0300090a ................ - 10e0 0001051d 037d090a 00010513 0301090a .....}.......... - 10f0 00010511 03080902 00010507 03010912 ................ - 1100 0001050a 03030902 0001050f 0301090a ................ - 1110 00010507 03010904 0001050f 03030902 ................ - 1120 00010507 03010906 00010373 09020001 ...........s.... - 1130 050a0310 09020001 050f0301 090a0001 ................ - 1140 05260300 09080001 05070301 09060001 .&.............. - 1150 050c0304 09020001 05070301 090a0001 ................ - 1160 03040902 00010301 091a0001 050e0304 ................ - 1170 09020001 050a0300 09100001 050b0301 ................ - 1180 09040001 050a0301 09080001 05150002 ................ - 1190 04010300 090a0001 05140301 09100001 ................ - 11a0 05170300 09040001 05140300 090e0001 ................ - 11b0 05090300 090c0001 050b0002 04030301 ................ - 11c0 09020001 053e0002 0403037f 09120001 .....>.......... - 11d0 05340002 04010300 090a0001 05070302 .4.............. - 11e0 090a0001 05090002 04050301 09020001 ................ - 11f0 050a0002 04050301 090c0001 054d0002 .............M.. - 1200 0405037e 09020001 05140002 04010300 ...~............ - 1210 090a0001 05120002 04010300 09040001 ................ - 1220 05200002 04010300 09040001 00020402 . .............. - 1230 06030009 02000105 32000204 04060300 ........2....... - 1240 090a0001 05070304 09140001 05090002 ................ - 1250 04020301 09020001 051e0002 0402037f ................ - 1260 090e0001 05140002 04010300 090a0001 ................ - 1270 05070302 090a0001 050d0304 09020001 ................ - 1280 050b0300 09120001 03010904 0001050a ................ - 1290 03000904 00010509 03010904 00010510 ................ - 12a0 0301090e 0001050f 03000904 0001050d ................ - 12b0 03000904 0001050c 03020904 00010507 ................ - 12c0 03010906 0001050c 03040902 00010507 ................ - 12d0 03010906 0001050c 03050902 00010507 ................ - 12e0 03010906 0001050d 03050902 00010507 ................ - 12f0 03010906 00010301 090e0001 050c0305 ................ - 1300 090e0001 050d0302 09060001 05070302 ................ - 1310 09140001 0301091e 00010304 09020001 ................ - 1320 0301090c 00010304 09020001 050b0301 ................ - 1330 090e0001 05070301 09080001 050b0002 ................ - 1340 040103f8 7e090200 01050903 02090200 ....~........... - 1350 01050103 89010902 00010303 090c0001 ................ - 1360 05030302 091e0001 03020914 0001050a ................ - 1370 03030918 00010501 03010902 00010503 ................ - 1380 0309090a 0001050c 03010914 00010506 ................ - 1390 03010908 0001050c 03000906 00010506 ................ - 13a0 0301090c 0001050c 03000906 00010503 ................ - 13b0 0301090a 00010501 03760908 00010403 .........v...... - 13c0 0505038c 7f092000 01040205 0903f600 ...... ......... - 13d0 094c0001 05030301 09080001 03090914 .L.............. - 13e0 00010301 091a0001 05080300 09040001 ................ - 13f0 050e0303 09040001 05010301 090e0001 ................ - 1400 0303090a 00010509 03010912 0001051b ................ - 1410 03000904 00010519 03000904 0001052a ...............* - 1420 03000902 00010531 03000906 00010506 .......1........ - 1430 03000902 00010516 03010902 00010510 ................ - 1440 03010908 0001050b 03010908 00010510 ................ - 1450 03010902 00010509 0300090c 0001050e ................ - 1460 0300090c 0001050c 03000902 00010522 ..............." - 1470 037f0902 0001050e 0300090a 00010511 ................ - 1480 0303090a 0001050b 03010908 00010301 ................ - 1490 09080001 05100301 09020001 05090300 ................ - 14a0 090c0001 050e0300 090c0001 050c0300 ................ - 14b0 09040001 051d037f 09040001 050e0300 ................ - 14c0 090a0001 050a0303 09080001 05010301 ................ - 14d0 09040001 03030908 00010509 03010914 ................ - 14e0 00010519 03000904 00010520 03000906 ........... .... - 14f0 00010506 03000902 0001051b 03010902 ................ - 1500 0001050f 03000904 00010512 03010908 ................ - 1510 0001050a 03000906 00010512 0301090a ................ - 1520 0001050a 03000906 00010518 0301090a ................ - 1530 0001050a 03000906 00010510 0302090a ................ - 1540 0001050b 03010908 00010509 03010902 ................ - 1550 0001050c 0300090c 00010522 037f0906 ...........".... - 1560 0001050e 0300090a 0001050b 0303090a ................ - 1570 00010301 09080001 05090301 09020001 ................ - 1580 050c0300 090c0001 051d037f 090c0001 ................ - 1590 050e0300 090a0001 050a0303 09080001 ................ - 15a0 05010301 09040001 03030908 0001050f ................ - 15b0 0301090a 00010509 03010908 00010506 ................ - 15c0 03010902 0001050a 037f090a 0001050c ................ - 15d0 0302090a 00010501 0301090c 00010303 ................ - 15e0 09080001 050f0301 090e0001 05090301 ................ - 15f0 09080001 05060301 09020001 050b037f ................ - 1600 090a0001 050e0300 090c0001 05110002 ................ - 1610 04010300 09020001 050e0002 04010300 ................ - 1620 09080001 050c0302 09020001 05010301 ................ - 1630 090c0001 03030908 0001050d 00020402 ................ - 1640 0304090e 00010508 00020402 0300090c ................ - 1650 0001050d 00020402 03010908 00010508 ................ - 1660 00020402 0300090c 00010514 00020402 ................ - 1670 03010908 00010002 04010603 00090a00 ................ - 1680 01050d06 03020916 00010501 03010914 ................ - 1690 00010303 09080001 05090301 090e0001 ................ - 16a0 03010908 00010516 00020401 03000902 ................ - 16b0 0001050d 00020401 0300090c 00010512 ................ - 16c0 00020401 0300090c 00010510 00020401 ................ - 16d0 03000904 0001050b 00020401 03000904 ................ - 16e0 0001050a 00020401 03000904 00010302 ................ - 16f0 09020001 05010301 09040001 03030908 ................ - 1700 00010508 0301090a 00010507 03010904 ................ - 1710 00010509 03020904 00010508 03010902 ................ - 1720 0001050a 037f090a 0001050f 03000908 ................ - 1730 00010507 0303090a 00010506 03000908 ................ - 1740 00010516 00020401 0300090a 00010513 ................ - 1750 00020401 03000908 0001050c 0301090a ................ - 1760 00010511 03000908 0001050a 03000914 ................ - 1770 00010508 03010904 00010509 0303090a ................ - 1780 00010301 09020001 05100301 09100001 ................ - 1790 050c0300 090c0001 05130300 09060001 ................ - 17a0 05090300 09080001 050a037e 090a0001 ...........~.... - 17b0 05160305 090a0001 00020401 06030009 ................ - 17c0 08000100 02040203 00090a00 01050100 ................ - 17d0 02040506 03010904 00010908 00000101 ................ -Contents of section .debug_str: - 0000 474e5520 43393920 31312e31 2e30202d GNU C99 11.1.0 - - 0010 6d617263 683d7276 36346763 202d6d61 march=rv64gc -ma - 0020 62693d6c 70363464 202d6d63 6d6f6465 bi=lp64d -mcmode - 0030 6c3d6d65 64616e79 202d6d63 6d6f6465 l=medany -mcmode - 0040 6c3d6d65 64616e79 202d6d74 756e653d l=medany -mtune= - 0050 726f636b 6574202d 6d617263 683d7276 rocket -march=rv - 0060 3634696d 61666463 202d6720 2d4f3220 64imafdc -g -O2 - 0070 2d4f3020 2d737464 3d676e75 3939202d -O0 -std=gnu99 - - 0080 66666173 742d6d61 7468202d 666e6f2d ffast-math -fno- - 0090 636f6d6d 6f6e202d 666e6f2d 6275696c common -fno-buil - 00a0 74696e2d 7072696e 7466202d 666e6f2d tin-printf -fno- - 00b0 74726565 2d6c6f6f 702d6469 73747269 tree-loop-distri - 00c0 62757465 2d706174 7465726e 73006261 bute-patterns.ba - 00d0 72726965 7200636f 756e7400 5f5f7569 rrier.count.__ui - 00e0 6e747074 725f7400 696e736e 5f6c656e ntptr_t.insn_len - 00f0 00756e73 69676e65 64206368 6172006c .unsigned char.l - 0100 66737200 65787065 63746564 0073686f fsr.expected.sho - 0110 72742075 6e736967 6e656420 696e7400 rt unsigned int. - 0120 6e636f72 65730076 65726966 7900646f ncores.verify.do - 0130 75626c65 006d6169 6e007465 73740073 uble.main.test.s - 0140 686f7274 20696e74 005f5f75 696e7436 hort int.__uint6 - 0150 345f7400 74687265 61647365 6e736500 4_t.threadsense. - 0160 76657269 6679446f 75626c65 00637274 verifyDouble.crt - 0170 2e53002f 686f6d65 2f6a7374 696e652f .S./home/jstine/ - 0180 72697363 762d7761 6c6c792f 6578616d riscv-wally/exam - 0190 706c6573 2f432f73 696d706c 6500474e ples/C/simple.GN - 01a0 55204153 20322e33 37007374 726c656e U AS 2.37.strlen - 01b0 00737472 6e6c656e 0070726f 63657373 .strnlen.process - 01c0 5f707265 63697369 6f6e0074 64617461 _precision.tdata - 01d0 5f73697a 65005f74 64617461 5f656e64 _size._tdata_end - 01e0 00676574 75696e74 00707574 63686172 .getuint.putchar - 01f0 00726567 73007072 696e7473 74720074 .regs.printstr.t - 0200 68726561 645f656e 74727900 73747263 hread_entry.strc - 0210 70790062 61736500 7072696e 746e756d py.base.printnum - 0220 006c6f6e 67206c6f 6e672075 6e736967 .long long unsig - 0230 6e656420 696e7400 656e6162 6c650061 ned int.enable.a - 0240 626f7274 005f5f67 6e75635f 76615f6c bort.__gnuc_va_l - 0250 69737400 70616463 0073697a 655f7400 ist.padc.size_t. - 0260 7369676e 00776964 74680074 6f686f73 sign.width.tohos - 0270 745f6578 69740070 62756600 73747230 t_exit.pbuf.str0 - 0280 00636f75 6e746572 7300636f 6465006c .counters.code.l - 0290 6173745f 666d7400 6275666c 656e0072 ast_fmt.buflen.r - 02a0 65737769 74636800 64617461 00737472 eswitch.data.str - 02b0 636d7000 6c666c61 67006361 75736500 cmp.lflag.cause. - 02c0 6c6f6e67 206c6f6e 6720696e 74007073 long long int.ps - 02d0 7472006d 656d7365 74006172 67300061 tr.memset.arg0.a - 02e0 72673100 61726732 005f696e 69740073 rg1.arg2._init.s - 02f0 79736361 6c6c0067 6574696e 7400756e yscall.getint.un - 0300 7369676e 65645f6e 756d6265 72007075 signed_number.pu - 0310 74646174 00617267 63007768 69636800 tdat.argc.which. - 0320 61726776 00737072 696e7466 005f7464 argv.sprintf._td - 0330 6174615f 62656769 6e00616c 74666c61 ata_begin.altfla - 0340 67007462 73735f73 697a6500 74687265 g.tbss_size.thre - 0350 61645f70 6f696e74 65720063 6f756e74 ad_pointer.count - 0360 65725f6e 616d6573 00776f72 64005f74 er_names.word._t - 0370 6273735f 656e6400 746f686f 73740064 bss_end.tohost.d - 0380 69677300 73707269 6e74665f 70757463 igs.sprintf_putc - 0390 68006279 74650070 72696e74 68657800 h.byte.printhex. - 03a0 6d616769 635f6d65 6d006861 6e646c65 magic_mem.handle - 03b0 5f747261 70006672 6f6d686f 7374006d _trap.fromhost.m - 03c0 656d6370 79005f5f 746d7000 5f5f6275 emcpy.__tmp.__bu - 03d0 696c7469 6e5f7661 5f6c6973 74006174 iltin_va_list.at - 03e0 6f6c0073 65745374 61747300 696e6974 ol.setStats.init - 03f0 5f746c73 00646573 74007670 72696e74 _tls.dest.vprint - 0400 666d7400 fmt. -Contents of section .debug_line_str: - 0000 73696d70 6c652e63 002f686f 6d652f6a simple.c./home/j - 0010 7374696e 652f7269 7363762d 77616c6c stine/riscv-wall - 0020 792f6578 616d706c 65732f43 2f73696d y/examples/C/sim - 0030 706c6500 2e2e2f63 6f6d6d6f 6e002f68 ple.../common./h - 0040 6f6d652f 6a737469 6e652f72 69736376 ome/jstine/riscv - 0050 2f726973 63763634 2d756e6b 6e6f776e /riscv64-unknown - 0060 2d656c66 2f696e63 6c756465 2f6d6163 -elf/include/mac - 0070 68696e65 002f686f 6d652f6a 7374696e hine./home/jstin - 0080 652f7269 7363762f 72697363 7636342d e/riscv/riscv64- - 0090 756e6b6e 6f776e2d 656c662f 696e636c unknown-elf/incl - 00a0 7564652f 73797300 7574696c 2e68005f ude/sys.util.h._ - 00b0 64656661 756c745f 74797065 732e6800 default_types.h. - 00c0 5f737464 696e742e 68006372 742e5300 _stdint.h.crt.S. - 00d0 2e2e2f63 6f6d6d6f 6e2f7379 7363616c ../common/syscal - 00e0 6c732e63 002f686f 6d652f6a 7374696e ls.c./home/jstin - 00f0 652f7269 7363762f 72697363 7636342d e/riscv/riscv64- - 0100 756e6b6e 6f776e2d 656c662f 696e636c unknown-elf/incl - 0110 75646500 2f686f6d 652f6a73 74696e65 ude./home/jstine - 0120 2f726973 63762f6c 69622f67 63632f72 /riscv/lib/gcc/r - 0130 69736376 36342d75 6e6b6e6f 776e2d65 iscv64-unknown-e - 0140 6c662f31 312e312e 302f696e 636c7564 lf/11.1.0/includ - 0150 65007374 64696f2e 68007374 64646566 e.stdio.h.stddef - 0160 2e680073 74646172 672e6800 73747269 .h.stdarg.h.stri - 0170 6e672e68 00 ng.h. -Contents of section .comment: - 0000 4743433a 2028474e 55292031 312e312e GCC: (GNU) 11.1. - 0010 3000 0. -Contents of section .riscv.attributes: - 0000 41380000 00726973 63760001 2e000000 A8...riscv...... - 0010 04100572 76363469 3270305f 6d327030 ...rv64i2p0_m2p0 - 0020 5f613270 305f6632 70305f64 3270305f _a2p0_f2p0_d2p0_ - 0030 63327030 0008010a 0b c2p0..... -Contents of section .debug_frame: - 0000 0c000000 ffffffff 0300017c 010d0200 ...........|.... - 0010 2c000000 00000000 00200080 00000000 ,........ ...... - 0020 0e010000 00000000 420e5042 8802420c ........B.PB..B. - 0030 08000304 01c80c02 50420e00 00000000 ........PB...... - 0040 2c000000 00000000 0e210080 00000000 ,........!...... - 0050 24010000 00000000 420e6042 8802420c $.......B.`B..B. - 0060 0800031a 01c80c02 60420e00 00000000 ........`B...... - 0070 2c000000 00000000 32220080 00000000 ,.......2"...... - 0080 8a000000 00000000 420e2042 8802420c ........B. B..B. - 0090 08000280 c80c0220 420e0000 00000000 ....... B....... - 00a0 2c000000 00000000 bc220080 00000000 ,........"...... - 00b0 36000000 00000000 420e3042 8802420c 6.......B.0B..B. - 00c0 08006cc8 0c023042 0e000000 00000000 ..l...0B........ - 00d0 2c000000 00000000 f2220080 00000000 ,........"...... - 00e0 28000000 00000000 420e2042 8802420c (.......B. B..B. - 00f0 08005ec8 0c022042 0e000000 00000000 ..^... B........ - 0100 2c000000 00000000 1a230080 00000000 ,........#...... - 0110 1e000000 00000000 420e3042 8802420c ........B.0B..B. - 0120 080054c8 0c023042 0e000000 00000000 ..T...0B........ - 0130 2c000000 00000000 38230080 00000000 ,.......8#...... - 0140 4c000000 00000000 420e2044 81028804 L.......B. D.... - 0150 420c0800 023ec142 c80c0220 420e0000 B....>.B... B... - 0160 0c000000 ffffffff 0300017c 010d0200 ...........|.... - 0170 2c000000 60010000 84230080 00000000 ,...`....#...... - 0180 0e010000 00000000 420e5042 8802420c ........B.PB..B. - 0190 08000304 01c80c02 50420e00 00000000 ........PB...... - 01a0 2c000000 60010000 92240080 00000000 ,...`....$...... - 01b0 24010000 00000000 420e6042 8802420c $.......B.`B..B. - 01c0 0800031a 01c80c02 60420e00 00000000 ........`B...... - 01d0 2c000000 60010000 b6250080 00000000 ,...`....%...... - 01e0 8a000000 00000000 420e2042 8802420c ........B. B..B. - 01f0 08000280 c80c0220 420e0000 00000000 ....... B....... - 0200 2c000000 60010000 40260080 00000000 ,...`...@&...... - 0210 36000000 00000000 420e3042 8802420c 6.......B.0B..B. - 0220 08006cc8 0c023042 0e000000 00000000 ..l...0B........ - 0230 2c000000 60010000 76260080 00000000 ,...`...v&...... - 0240 28000000 00000000 420e2042 8802420c (.......B. B..B. - 0250 08005ec8 0c022042 0e000000 00000000 ..^... B........ - 0260 2c000000 60010000 9e260080 00000000 ,...`....&...... - 0270 7e000000 00000000 420eb001 42880242 ~.......B...B..B - 0280 0c080002 74c80c02 b001420e 00000000 ....t.....B..... - 0290 2c000000 60010000 1c270080 00000000 ,...`....'...... - 02a0 14010000 00000000 420e5042 8802420c ........B.PB..B. - 02b0 0800030a 01c80c02 50420e00 00000000 ........PB...... - 02c0 24000000 60010000 30280080 00000000 $...`...0(...... - 02d0 20000000 00000000 420e2042 8802420c .......B. B..B. - 02e0 08000000 00000000 24000000 60010000 ........$...`... - 02f0 50280080 00000000 1c000000 00000000 P(.............. - 0300 420e3044 81028804 420c0800 00000000 B.0D....B....... - 0310 24000000 60010000 6c280080 00000000 $...`...l(...... - 0320 18000000 00000000 420e2044 81028804 ........B. D.... - 0330 420c0800 00000000 24000000 60010000 B.......$...`... - 0340 84280080 00000000 10000000 00000000 .(.............. - 0350 420e1044 81028804 420c0800 00000000 B..D....B....... - 0360 34000000 60010000 94280080 00000000 4...`....(...... - 0370 36000000 00000000 420e3046 81028804 6.......B.0F.... - 0380 8906420c 080064c1 42c80c02 3042c942 ..B...d.B...0B.B - 0390 0e000000 00000000 2c000000 60010000 ........,...`... - 03a0 ca280080 00000000 28000000 00000000 .(......(....... - 03b0 420e2042 8802420c 08005ec8 0c022042 B. B..B...^... B - 03c0 0e000000 00000000 2c000000 60010000 ........,...`... - 03d0 f2280080 00000000 2a000000 00000000 .(......*....... - 03e0 420e2044 81028804 420c0800 5cc142c8 B. D....B...\.B. - 03f0 0c022042 0e000000 2c000000 60010000 .. B....,...`... - 0400 1c290080 00000000 66000000 00000000 .)......f....... - 0410 420e2044 81028804 420c0800 0258c142 B. D....B....X.B - 0420 c80c0220 420e0000 24000000 60010000 ... B...$...`... - 0430 82290080 00000000 e6000000 00000000 .).............. - 0440 420eb001 46810288 04890642 0c080000 B...F......B.... - 0450 2c000000 60010000 682a0080 00000000 ,...`...h*...... - 0460 72000000 00000000 420e2044 81028804 r.......B. D.... - 0470 420c0800 0264c142 c80c0220 420e0000 B....d.B... B... - 0480 2c000000 60010000 da2a0080 00000000 ,...`....*...... - 0490 8c000000 00000000 420e4044 81028804 ........B.@D.... - 04a0 420c0800 027ec142 c80c0240 420e0000 B....~.B...@B... - 04b0 34000000 60010000 662b0080 00000000 4...`...f+...... - 04c0 fc000000 00000000 420ed002 44810288 ........B...D... - 04d0 04420c08 0002eec1 42c80c02 d002420e .B......B.....B. - 04e0 00000000 00000000 2c000000 60010000 ........,...`... - 04f0 622c0080 00000000 6c000000 00000000 b,......l....... - 0500 420e2042 8802420c 08000262 c80c0220 B. B..B....b... - 0510 420e0000 00000000 2c000000 60010000 B.......,...`... - 0520 ce2c0080 00000000 68000000 00000000 .,......h....... - 0530 420e2042 8802420c 0800025e c80c0220 B. B..B....^... - 0540 420e0000 00000000 34000000 60010000 B.......4...`... - 0550 362d0080 00000000 60030000 00000000 6-......`....... - 0560 420e7048 81028804 89069208 420c0800 B.pH........B... - 0570 034a03c1 42c80c02 7042c942 d2420e00 .J..B...pB.B.B.. - 0580 2c000000 60010000 96300080 00000000 ,...`....0...... - 0590 56000000 00000000 420e7044 81128814 V.......B.pD.... - 05a0 420c0840 0248c142 c80c0270 420e0000 B..@.H.B...pB... - 05b0 2c000000 60010000 ec300080 00000000 ,...`....0...... - 05c0 46000000 00000000 420e4042 8802420c F.......B.@B..B. - 05d0 08007cc8 0c024042 0e000000 00000000 ..|...@B........ - 05e0 34000000 60010000 32310080 00000000 4...`...21...... - 05f0 c2000000 00000000 420e9002 44810e88 ........B...D... - 0600 10420c08 3002b4c1 42c80c02 9002420e .B..0...B.....B. - 0610 00000000 00000000 2c000000 60010000 ........,...`... - 0620 f4310080 00000000 b8000000 00000000 .1.............. - 0630 420e5042 8802420c 080002ae c80c0250 B.PB..B........P - 0640 420e0000 00000000 2c000000 60010000 B.......,...`... - 0650 ac320080 00000000 ce000000 00000000 .2.............. - 0660 420e5042 8802420c 080002c4 c80c0250 B.PB..B........P - 0670 420e0000 00000000 2c000000 60010000 B.......,...`... - 0680 7a330080 00000000 3c000000 00000000 z3......<....... - 0690 420e3042 8802420c 080072c8 0c023042 B.0B..B...r...0B - 06a0 0e000000 00000000 2c000000 60010000 ........,...`... - 06b0 b6330080 00000000 4e000000 00000000 .3......N....... - 06c0 420e3042 8802420c 08000244 c80c0230 B.0B..B....D...0 - 06d0 420e0000 00000000 2c000000 60010000 B.......,...`... - 06e0 04340080 00000000 72000000 00000000 .4......r....... - 06f0 420e3042 8802420c 08000268 c80c0230 B.0B..B....h...0 - 0700 420e0000 00000000 2c000000 60010000 B.......,...`... - 0710 76340080 00000000 4a000000 00000000 v4......J....... - 0720 420e3042 8802420c 08000240 c80c0230 B.0B..B....@...0 - 0730 420e0000 00000000 2c000000 60010000 B.......,...`... - 0740 c0340080 00000000 dc000000 00000000 .4.............. - 0750 420e3042 8802420c 080002d2 c80c0230 B.0B..B........0 - 0760 420e0000 00000000 B....... - -Disassembly of section .text.init: - -0000000080000000 <_start>: -_start(): -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:18 - 80000000: 4081 li ra,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:19 - 80000002: 4101 li sp,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:20 - 80000004: 4181 li gp,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:21 - 80000006: 4201 li tp,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:22 - 80000008: 4281 li t0,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:23 - 8000000a: 4301 li t1,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:24 - 8000000c: 4381 li t2,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:25 - 8000000e: 4401 li s0,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:26 - 80000010: 4481 li s1,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:27 - 80000012: 4501 li a0,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:28 - 80000014: 4581 li a1,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:29 - 80000016: 4601 li a2,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:30 - 80000018: 4681 li a3,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:31 - 8000001a: 4701 li a4,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:32 - 8000001c: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:33 - 8000001e: 4801 li a6,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:34 - 80000020: 4881 li a7,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:35 - 80000022: 4901 li s2,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:36 - 80000024: 4981 li s3,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:37 - 80000026: 4a01 li s4,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:38 - 80000028: 4a81 li s5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:39 - 8000002a: 4b01 li s6,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:40 - 8000002c: 4b81 li s7,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:41 - 8000002e: 4c01 li s8,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:42 - 80000030: 4c81 li s9,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:43 - 80000032: 4d01 li s10,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:44 - 80000034: 4d81 li s11,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:45 - 80000036: 4e01 li t3,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:46 - 80000038: 4e81 li t4,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:47 - 8000003a: 4f01 li t5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:48 - 8000003c: 4f81 li t6,0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:51 - 8000003e: 62f9 lui t0,0x1e -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:52 - 80000040: 3002a073 csrs mstatus,t0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:55 - 80000044: 4285 li t0,1 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:56 - 80000046: 02fe slli t0,t0,0x1f -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:58 - 80000048: 0002d863 bgez t0,80000058 <_start+0x58> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:63 - 8000004c: 4505 li a0,1 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:64 - 8000004e: 00001297 auipc t0,0x1 - 80000052: faa2a923 sw a0,-78(t0) # 80001000 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:65 - 80000056: bfdd j 8000004c <_start+0x4c> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:70 - 80000058: 00000297 auipc t0,0x0 - 8000005c: 09028293 addi t0,t0,144 # 800000e8 <_start+0xe8> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:71 - 80000060: 30529073 csrw mtvec,t0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:73 - 80000064: 00301073 fscsr zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:74 - 80000068: f0000053 fmv.w.x ft0,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:75 - 8000006c: f00000d3 fmv.w.x ft1,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:76 - 80000070: f0000153 fmv.w.x ft2,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:77 - 80000074: f00001d3 fmv.w.x ft3,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:78 - 80000078: f0000253 fmv.w.x ft4,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:79 - 8000007c: f00002d3 fmv.w.x ft5,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:80 - 80000080: f0000353 fmv.w.x ft6,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:81 - 80000084: f00003d3 fmv.w.x ft7,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:82 - 80000088: f0000453 fmv.w.x fs0,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:83 - 8000008c: f00004d3 fmv.w.x fs1,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:84 - 80000090: f0000553 fmv.w.x fa0,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:85 - 80000094: f00005d3 fmv.w.x fa1,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:86 - 80000098: f0000653 fmv.w.x fa2,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:87 - 8000009c: f00006d3 fmv.w.x fa3,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:88 - 800000a0: f0000753 fmv.w.x fa4,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:89 - 800000a4: f00007d3 fmv.w.x fa5,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:90 - 800000a8: f0000853 fmv.w.x fa6,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:91 - 800000ac: f00008d3 fmv.w.x fa7,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:92 - 800000b0: f0000953 fmv.w.x fs2,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:93 - 800000b4: f00009d3 fmv.w.x fs3,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:94 - 800000b8: f0000a53 fmv.w.x fs4,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:95 - 800000bc: f0000ad3 fmv.w.x fs5,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:96 - 800000c0: f0000b53 fmv.w.x fs6,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:97 - 800000c4: f0000bd3 fmv.w.x fs7,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:98 - 800000c8: f0000c53 fmv.w.x fs8,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:99 - 800000cc: f0000cd3 fmv.w.x fs9,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:100 - 800000d0: f0000d53 fmv.w.x fs10,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:101 - 800000d4: f0000dd3 fmv.w.x fs11,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:102 - 800000d8: f0000e53 fmv.w.x ft8,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:103 - 800000dc: f0000ed3 fmv.w.x ft9,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:104 - 800000e0: f0000f53 fmv.w.x ft10,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:105 - 800000e4: f0000fd3 fmv.w.x ft11,zero -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:110 - 800000e8: 00000297 auipc t0,0x0 - 800000ec: 03828293 addi t0,t0,56 # 80000120 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:111 - 800000f0: 30529073 csrw mtvec,t0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:116 - 800000f4: 00004197 auipc gp,0x4 - 800000f8: e5418193 addi gp,gp,-428 # 80003f48 <__global_pointer$> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:119 - 800000fc: 87718213 addi tp,gp,-1929 # 800037bf <_end+0x3f> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:120 - 80000100: fc027213 andi tp,tp,-64 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:123 - 80000104: f1402573 csrr a0,mhartid -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:125 - 80000108: 4585 li a1,1 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:126 - 8000010a: 00b57063 bgeu a0,a1,8000010a <_start+0x10a> -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:130 - 8000010e: 00150113 addi sp,a0,1 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:131 - 80000112: 0146 slli sp,sp,0x11 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:132 - 80000114: 9112 add sp,sp,tp -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:133 - 80000116: 01151613 slli a2,a0,0x11 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:134 - 8000011a: 9232 add tp,tp,a2 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:136 - 8000011c: 0670206f j 80002982 <_init> - -0000000080000120 : -trap_entry(): -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:140 - 80000120: 716d addi sp,sp,-272 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:142 - 80000122: e406 sd ra,8(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:143 - 80000124: e80a sd sp,16(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:144 - 80000126: ec0e sd gp,24(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:145 - 80000128: f012 sd tp,32(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:146 - 8000012a: f416 sd t0,40(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:147 - 8000012c: f81a sd t1,48(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:148 - 8000012e: fc1e sd t2,56(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:149 - 80000130: e0a2 sd s0,64(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:150 - 80000132: e4a6 sd s1,72(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:151 - 80000134: e8aa sd a0,80(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:152 - 80000136: ecae sd a1,88(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:153 - 80000138: f0b2 sd a2,96(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:154 - 8000013a: f4b6 sd a3,104(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:155 - 8000013c: f8ba sd a4,112(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:156 - 8000013e: fcbe sd a5,120(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:157 - 80000140: e142 sd a6,128(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:158 - 80000142: e546 sd a7,136(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:159 - 80000144: e94a sd s2,144(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:160 - 80000146: ed4e sd s3,152(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:161 - 80000148: f152 sd s4,160(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:162 - 8000014a: f556 sd s5,168(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:163 - 8000014c: f95a sd s6,176(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:164 - 8000014e: fd5e sd s7,184(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:165 - 80000150: e1e2 sd s8,192(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:166 - 80000152: e5e6 sd s9,200(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:167 - 80000154: e9ea sd s10,208(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:168 - 80000156: edee sd s11,216(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:169 - 80000158: f1f2 sd t3,224(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:170 - 8000015a: f5f6 sd t4,232(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:171 - 8000015c: f9fa sd t5,240(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:172 - 8000015e: fdfe sd t6,248(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:174 - 80000160: 34202573 csrr a0,mcause -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:175 - 80000164: 341025f3 csrr a1,mepc -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:176 - 80000168: 860a mv a2,sp -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:177 - 8000016a: 6e6020ef jal ra,80002850 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:178 - 8000016e: 34151073 csrw mepc,a0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:181 - 80000172: 6289 lui t0,0x2 - 80000174: 8002829b addiw t0,t0,-2048 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:182 - 80000178: 3002a073 csrs mstatus,t0 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:184 - 8000017c: 60a2 ld ra,8(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:185 - 8000017e: 6142 ld sp,16(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:186 - 80000180: 61e2 ld gp,24(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:187 - 80000182: 7202 ld tp,32(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:188 - 80000184: 72a2 ld t0,40(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:189 - 80000186: 7342 ld t1,48(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:190 - 80000188: 73e2 ld t2,56(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:191 - 8000018a: 6406 ld s0,64(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:192 - 8000018c: 64a6 ld s1,72(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:193 - 8000018e: 6546 ld a0,80(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:194 - 80000190: 65e6 ld a1,88(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:195 - 80000192: 7606 ld a2,96(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:196 - 80000194: 76a6 ld a3,104(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:197 - 80000196: 7746 ld a4,112(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:198 - 80000198: 77e6 ld a5,120(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:199 - 8000019a: 680a ld a6,128(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:200 - 8000019c: 68aa ld a7,136(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:201 - 8000019e: 694a ld s2,144(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:202 - 800001a0: 69ea ld s3,152(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:203 - 800001a2: 7a0a ld s4,160(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:204 - 800001a4: 7aaa ld s5,168(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:205 - 800001a6: 7b4a ld s6,176(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:206 - 800001a8: 7bea ld s7,184(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:207 - 800001aa: 6c0e ld s8,192(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:208 - 800001ac: 6cae ld s9,200(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:209 - 800001ae: 6d4e ld s10,208(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:210 - 800001b0: 6dee ld s11,216(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:211 - 800001b2: 7e0e ld t3,224(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:212 - 800001b4: 7eae ld t4,232(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:213 - 800001b6: 7f4e ld t5,240(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:214 - 800001b8: 7fee ld t6,248(sp) -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:216 - 800001ba: 6151 addi sp,sp,272 -/home/jstine/riscv-wally/examples/C/simple/../common/crt.S:217 - 800001bc: 30200073 mret - ... - -Disassembly of section .tohost: - -0000000080001000 : - ... - -0000000080001040 : - ... - -Disassembly of section .text: - -0000000080002000 : -verify(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:13 - 80002000: 715d addi sp,sp,-80 - 80002002: e4a2 sd s0,72(sp) - 80002004: 0880 addi s0,sp,80 - 80002006: 87aa mv a5,a0 - 80002008: fcb43023 sd a1,-64(s0) - 8000200c: fac43c23 sd a2,-72(s0) - 80002010: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 - 80002014: fe042623 sw zero,-20(s0) - 80002018: a841 j 800020a8 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:18 - 8000201a: fec42783 lw a5,-20(s0) - 8000201e: 078a slli a5,a5,0x2 - 80002020: fc043703 ld a4,-64(s0) - 80002024: 97ba add a5,a5,a4 - 80002026: 439c lw a5,0(a5) - 80002028: fef42423 sw a5,-24(s0) - 8000202c: fec42783 lw a5,-20(s0) - 80002030: 0785 addi a5,a5,1 - 80002032: 078a slli a5,a5,0x2 - 80002034: fc043703 ld a4,-64(s0) - 80002038: 97ba add a5,a5,a4 - 8000203a: 439c lw a5,0(a5) - 8000203c: fef42223 sw a5,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:19 - 80002040: fec42783 lw a5,-20(s0) - 80002044: 078a slli a5,a5,0x2 - 80002046: fb843703 ld a4,-72(s0) - 8000204a: 97ba add a5,a5,a4 - 8000204c: 439c lw a5,0(a5) - 8000204e: fef42023 sw a5,-32(s0) - 80002052: fec42783 lw a5,-20(s0) - 80002056: 0785 addi a5,a5,1 - 80002058: 078a slli a5,a5,0x2 - 8000205a: fb843703 ld a4,-72(s0) - 8000205e: 97ba add a5,a5,a4 - 80002060: 439c lw a5,0(a5) - 80002062: fcf42e23 sw a5,-36(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:20 - 80002066: fe842783 lw a5,-24(s0) - 8000206a: 873e mv a4,a5 - 8000206c: fe042783 lw a5,-32(s0) - 80002070: 2701 sext.w a4,a4 - 80002072: 2781 sext.w a5,a5 - 80002074: 00f70763 beq a4,a5,80002082 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:20 (discriminator 1) - 80002078: fec42783 lw a5,-20(s0) - 8000207c: 2785 addiw a5,a5,1 - 8000207e: 2781 sext.w a5,a5 - 80002080: a059 j 80002106 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:21 - 80002082: fe442783 lw a5,-28(s0) - 80002086: 873e mv a4,a5 - 80002088: fdc42783 lw a5,-36(s0) - 8000208c: 2701 sext.w a4,a4 - 8000208e: 2781 sext.w a5,a5 - 80002090: 00f70763 beq a4,a5,8000209e -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:21 (discriminator 1) - 80002094: fec42783 lw a5,-20(s0) - 80002098: 2789 addiw a5,a5,2 - 8000209a: 2781 sext.w a5,a5 - 8000209c: a0ad j 80002106 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 (discriminator 2) - 8000209e: fec42783 lw a5,-20(s0) - 800020a2: 2789 addiw a5,a5,2 - 800020a4: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 (discriminator 1) - 800020a8: fcc42783 lw a5,-52(s0) - 800020ac: 01f7d71b srliw a4,a5,0x1f - 800020b0: 9fb9 addw a5,a5,a4 - 800020b2: 4017d79b sraiw a5,a5,0x1 - 800020b6: 2781 sext.w a5,a5 - 800020b8: 0017979b slliw a5,a5,0x1 - 800020bc: 0007871b sext.w a4,a5 - 800020c0: fec42783 lw a5,-20(s0) - 800020c4: 2781 sext.w a5,a5 - 800020c6: f4e7cae3 blt a5,a4,8000201a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:23 - 800020ca: fcc42783 lw a5,-52(s0) - 800020ce: 8b85 andi a5,a5,1 - 800020d0: 2781 sext.w a5,a5 - 800020d2: cb8d beqz a5,80002104 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:23 (discriminator 1) - 800020d4: fcc42783 lw a5,-52(s0) - 800020d8: 078a slli a5,a5,0x2 - 800020da: 17f1 addi a5,a5,-4 - 800020dc: fc043703 ld a4,-64(s0) - 800020e0: 97ba add a5,a5,a4 - 800020e2: 439c lw a5,0(a5) - 800020e4: 0007869b sext.w a3,a5 - 800020e8: fcc42783 lw a5,-52(s0) - 800020ec: 078a slli a5,a5,0x2 - 800020ee: 17f1 addi a5,a5,-4 - 800020f0: fb843703 ld a4,-72(s0) - 800020f4: 97ba add a5,a5,a4 - 800020f6: 439c lw a5,0(a5) - 800020f8: 8736 mv a4,a3 - 800020fa: 00f70563 beq a4,a5,80002104 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:24 - 800020fe: fcc42783 lw a5,-52(s0) - 80002102: a011 j 80002106 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:25 - 80002104: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:26 - 80002106: 853e mv a0,a5 - 80002108: 6426 ld s0,72(sp) - 8000210a: 6161 addi sp,sp,80 - 8000210c: 8082 ret - -000000008000210e : -verifyDouble(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:29 - 8000210e: 711d addi sp,sp,-96 - 80002110: eca2 sd s0,88(sp) - 80002112: 1080 addi s0,sp,96 - 80002114: 87aa mv a5,a0 - 80002116: fab43823 sd a1,-80(s0) - 8000211a: fac43423 sd a2,-88(s0) - 8000211e: faf42e23 sw a5,-68(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 - 80002122: fe042623 sw zero,-20(s0) - 80002126: a06d j 800021d0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:34 - 80002128: fec42783 lw a5,-20(s0) - 8000212c: 078e slli a5,a5,0x3 - 8000212e: fb043703 ld a4,-80(s0) - 80002132: 97ba add a5,a5,a4 - 80002134: 239c fld fa5,0(a5) - 80002136: fef43027 fsd fa5,-32(s0) - 8000213a: fec42783 lw a5,-20(s0) - 8000213e: 0785 addi a5,a5,1 - 80002140: 078e slli a5,a5,0x3 - 80002142: fb043703 ld a4,-80(s0) - 80002146: 97ba add a5,a5,a4 - 80002148: 239c fld fa5,0(a5) - 8000214a: fcf43c27 fsd fa5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:35 - 8000214e: fec42783 lw a5,-20(s0) - 80002152: 078e slli a5,a5,0x3 - 80002154: fa843703 ld a4,-88(s0) - 80002158: 97ba add a5,a5,a4 - 8000215a: 239c fld fa5,0(a5) - 8000215c: fcf43827 fsd fa5,-48(s0) - 80002160: fec42783 lw a5,-20(s0) - 80002164: 0785 addi a5,a5,1 - 80002166: 078e slli a5,a5,0x3 - 80002168: fa843703 ld a4,-88(s0) - 8000216c: 97ba add a5,a5,a4 - 8000216e: 239c fld fa5,0(a5) - 80002170: fcf43427 fsd fa5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:36 - 80002174: fe043707 fld fa4,-32(s0) - 80002178: fd043787 fld fa5,-48(s0) - 8000217c: a2f727d3 feq.d a5,fa4,fa5 - 80002180: 00f037b3 snez a5,a5 - 80002184: 0ff7f793 zext.b a5,a5 - 80002188: fcf42223 sw a5,-60(s0) - 8000218c: fd843707 fld fa4,-40(s0) - 80002190: fc843787 fld fa5,-56(s0) - 80002194: a2f727d3 feq.d a5,fa4,fa5 - 80002198: 00f037b3 snez a5,a5 - 8000219c: 0ff7f793 zext.b a5,a5 - 800021a0: fcf42023 sw a5,-64(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:37 - 800021a4: fc442783 lw a5,-60(s0) - 800021a8: 873e mv a4,a5 - 800021aa: fc042783 lw a5,-64(s0) - 800021ae: 8ff9 and a5,a5,a4 - 800021b0: 2781 sext.w a5,a5 - 800021b2: eb91 bnez a5,800021c6 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:37 (discriminator 1) - 800021b4: fec42783 lw a5,-20(s0) - 800021b8: 2785 addiw a5,a5,1 - 800021ba: 2781 sext.w a5,a5 - 800021bc: fc442703 lw a4,-60(s0) - 800021c0: 9fb9 addw a5,a5,a4 - 800021c2: 2781 sext.w a5,a5 - 800021c4: a09d j 8000222a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 (discriminator 2) - 800021c6: fec42783 lw a5,-20(s0) - 800021ca: 2789 addiw a5,a5,2 - 800021cc: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 (discriminator 1) - 800021d0: fbc42783 lw a5,-68(s0) - 800021d4: 01f7d71b srliw a4,a5,0x1f - 800021d8: 9fb9 addw a5,a5,a4 - 800021da: 4017d79b sraiw a5,a5,0x1 - 800021de: 2781 sext.w a5,a5 - 800021e0: 0017979b slliw a5,a5,0x1 - 800021e4: 0007871b sext.w a4,a5 - 800021e8: fec42783 lw a5,-20(s0) - 800021ec: 2781 sext.w a5,a5 - 800021ee: f2e7cde3 blt a5,a4,80002128 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:39 - 800021f2: fbc42783 lw a5,-68(s0) - 800021f6: 8b85 andi a5,a5,1 - 800021f8: 2781 sext.w a5,a5 - 800021fa: c79d beqz a5,80002228 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:39 (discriminator 1) - 800021fc: fbc42783 lw a5,-68(s0) - 80002200: 078e slli a5,a5,0x3 - 80002202: 17e1 addi a5,a5,-8 - 80002204: fb043703 ld a4,-80(s0) - 80002208: 97ba add a5,a5,a4 - 8000220a: 2398 fld fa4,0(a5) - 8000220c: fbc42783 lw a5,-68(s0) - 80002210: 078e slli a5,a5,0x3 - 80002212: 17e1 addi a5,a5,-8 - 80002214: fa843703 ld a4,-88(s0) - 80002218: 97ba add a5,a5,a4 - 8000221a: 239c fld fa5,0(a5) - 8000221c: a2f727d3 feq.d a5,fa4,fa5 - 80002220: e781 bnez a5,80002228 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:40 - 80002222: fbc42783 lw a5,-68(s0) - 80002226: a011 j 8000222a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:41 - 80002228: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:42 - 8000222a: 853e mv a0,a5 - 8000222c: 6466 ld s0,88(sp) - 8000222e: 6125 addi sp,sp,96 - 80002230: 8082 ret - -0000000080002232 : -barrier(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:45 - 80002232: 1101 addi sp,sp,-32 - 80002234: ec22 sd s0,24(sp) - 80002236: 1000 addi s0,sp,32 - 80002238: 87aa mv a5,a0 - 8000223a: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:50 - 8000223e: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:52 - 80002242: 00022783 lw a5,0(tp) # 0 - 80002246: 0017b793 seqz a5,a5 - 8000224a: 0ff7f793 zext.b a5,a5 - 8000224e: 0007871b sext.w a4,a5 - 80002252: 00e22023 sw a4,0(tp) # 0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:53 - 80002256: 00001797 auipc a5,0x1 - 8000225a: 4f278793 addi a5,a5,1266 # 80003748 - 8000225e: 4705 li a4,1 - 80002260: 0f50000f fence iorw,ow - 80002264: 04e7a6af amoadd.w.aq a3,a4,(a5) - 80002268: 0006879b sext.w a5,a3 - 8000226c: 0007871b sext.w a4,a5 - 80002270: fec42783 lw a5,-20(s0) - 80002274: 37fd addiw a5,a5,-1 - 80002276: 2781 sext.w a5,a5 - 80002278: 02f71063 bne a4,a5,80002298 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:55 - 8000227c: 00001797 auipc a5,0x1 - 80002280: 4cc78793 addi a5,a5,1228 # 80003748 - 80002284: 0007a023 sw zero,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:56 - 80002288: 00022703 lw a4,0(tp) # 0 - 8000228c: 00001797 auipc a5,0x1 - 80002290: 4c078793 addi a5,a5,1216 # 8000374c - 80002294: c398 sw a4,0(a5) - 80002296: a829 j 800022b0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:58 - 80002298: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:58 (discriminator 1) - 8000229a: 00001797 auipc a5,0x1 - 8000229e: 4b278793 addi a5,a5,1202 # 8000374c - 800022a2: 439c lw a5,0(a5) - 800022a4: 0007871b sext.w a4,a5 - 800022a8: 00022783 lw a5,0(tp) # 0 - 800022ac: fef717e3 bne a4,a5,8000229a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:61 - 800022b0: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:62 - 800022b4: 0001 nop - 800022b6: 6462 ld s0,24(sp) - 800022b8: 6105 addi sp,sp,32 - 800022ba: 8082 ret - -00000000800022bc : -lfsr(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:65 - 800022bc: 7179 addi sp,sp,-48 - 800022be: f422 sd s0,40(sp) - 800022c0: 1800 addi s0,sp,48 - 800022c2: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:66 - 800022c6: fd843783 ld a5,-40(s0) - 800022ca: 0017d713 srli a4,a5,0x1 - 800022ce: fd843783 ld a5,-40(s0) - 800022d2: 8fb9 xor a5,a5,a4 - 800022d4: 8b85 andi a5,a5,1 - 800022d6: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:67 - 800022da: fd843783 ld a5,-40(s0) - 800022de: 0017d713 srli a4,a5,0x1 - 800022e2: fe843783 ld a5,-24(s0) - 800022e6: 17fa slli a5,a5,0x3e - 800022e8: 8fd9 or a5,a5,a4 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:68 - 800022ea: 853e mv a0,a5 - 800022ec: 7422 ld s0,40(sp) - 800022ee: 6145 addi sp,sp,48 - 800022f0: 8082 ret - -00000000800022f2 : -insn_len(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:71 - 800022f2: 1101 addi sp,sp,-32 - 800022f4: ec22 sd s0,24(sp) - 800022f6: 1000 addi s0,sp,32 - 800022f8: fea43423 sd a0,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 - 800022fc: fe843783 ld a5,-24(s0) - 80002300: 0007d783 lhu a5,0(a5) - 80002304: 2781 sext.w a5,a5 - 80002306: 8b8d andi a5,a5,3 - 80002308: 2781 sext.w a5,a5 - 8000230a: c399 beqz a5,80002310 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 (discriminator 1) - 8000230c: 4791 li a5,4 - 8000230e: a011 j 80002312 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 (discriminator 2) - 80002310: 4789 li a5,2 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:73 (discriminator 5) - 80002312: 853e mv a0,a5 - 80002314: 6462 ld s0,24(sp) - 80002316: 6105 addi sp,sp,32 - 80002318: 8082 ret - -000000008000231a : -sum(): -/home/jstine/riscv-wally/examples/C/simple/simple.c:9 - 8000231a: 7179 addi sp,sp,-48 - 8000231c: f422 sd s0,40(sp) - 8000231e: 1800 addi s0,sp,48 - 80002320: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/simple.c:19 - 80002324: 4785 li a5,1 - 80002326: 478d li a5,3 - 80002328: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/simple.c:27 - 8000232c: fec42783 lw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/simple.c:28 - 80002330: 853e mv a0,a5 - 80002332: 7422 ld s0,40(sp) - 80002334: 6145 addi sp,sp,48 - 80002336: 8082 ret - -0000000080002338
: -main(): -/home/jstine/riscv-wally/examples/C/simple/simple.c:30 - 80002338: 1101 addi sp,sp,-32 - 8000233a: ec06 sd ra,24(sp) - 8000233c: e822 sd s0,16(sp) - 8000233e: 1000 addi s0,sp,32 -/home/jstine/riscv-wally/examples/C/simple/simple.c:32 - 80002340: 4511 li a0,4 - 80002342: fd9ff0ef jal ra,8000231a - 80002346: 87aa mv a5,a0 - 80002348: 2781 sext.w a5,a5 - 8000234a: fef42423 sw a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/simple.c:33 - 8000234e: fe842783 lw a5,-24(s0) - 80002352: 85be mv a1,a5 - 80002354: 00001517 auipc a0,0x1 - 80002358: 24c50513 addi a0,a0,588 # 800035a0 - 8000235c: 53b000ef jal ra,80003096 -/home/jstine/riscv-wally/examples/C/simple/simple.c:34 - 80002360: 47a9 li a5,10 - 80002362: fef42023 sw a5,-32(s0) -/home/jstine/riscv-wally/examples/C/simple/simple.c:35 - 80002366: fe040713 addi a4,s0,-32 - 8000236a: fe840793 addi a5,s0,-24 - 8000236e: 863a mv a2,a4 - 80002370: 85be mv a1,a5 - 80002372: 4505 li a0,1 - 80002374: c8dff0ef jal ra,80002000 - 80002378: 87aa mv a5,a0 -/home/jstine/riscv-wally/examples/C/simple/simple.c:36 - 8000237a: 853e mv a0,a5 - 8000237c: 60e2 ld ra,24(sp) - 8000237e: 6442 ld s0,16(sp) - 80002380: 6105 addi sp,sp,32 - 80002382: 8082 ret - -0000000080002384 : -verify(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:13 - 80002384: 715d addi sp,sp,-80 - 80002386: e4a2 sd s0,72(sp) - 80002388: 0880 addi s0,sp,80 - 8000238a: 87aa mv a5,a0 - 8000238c: fcb43023 sd a1,-64(s0) - 80002390: fac43c23 sd a2,-72(s0) - 80002394: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 - 80002398: fe042623 sw zero,-20(s0) - 8000239c: a841 j 8000242c -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:18 - 8000239e: fec42783 lw a5,-20(s0) - 800023a2: 078a slli a5,a5,0x2 - 800023a4: fc043703 ld a4,-64(s0) - 800023a8: 97ba add a5,a5,a4 - 800023aa: 439c lw a5,0(a5) - 800023ac: fef42423 sw a5,-24(s0) - 800023b0: fec42783 lw a5,-20(s0) - 800023b4: 0785 addi a5,a5,1 - 800023b6: 078a slli a5,a5,0x2 - 800023b8: fc043703 ld a4,-64(s0) - 800023bc: 97ba add a5,a5,a4 - 800023be: 439c lw a5,0(a5) - 800023c0: fef42223 sw a5,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:19 - 800023c4: fec42783 lw a5,-20(s0) - 800023c8: 078a slli a5,a5,0x2 - 800023ca: fb843703 ld a4,-72(s0) - 800023ce: 97ba add a5,a5,a4 - 800023d0: 439c lw a5,0(a5) - 800023d2: fef42023 sw a5,-32(s0) - 800023d6: fec42783 lw a5,-20(s0) - 800023da: 0785 addi a5,a5,1 - 800023dc: 078a slli a5,a5,0x2 - 800023de: fb843703 ld a4,-72(s0) - 800023e2: 97ba add a5,a5,a4 - 800023e4: 439c lw a5,0(a5) - 800023e6: fcf42e23 sw a5,-36(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:20 - 800023ea: fe842783 lw a5,-24(s0) - 800023ee: 873e mv a4,a5 - 800023f0: fe042783 lw a5,-32(s0) - 800023f4: 2701 sext.w a4,a4 - 800023f6: 2781 sext.w a5,a5 - 800023f8: 00f70763 beq a4,a5,80002406 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:20 (discriminator 1) - 800023fc: fec42783 lw a5,-20(s0) - 80002400: 2785 addiw a5,a5,1 - 80002402: 2781 sext.w a5,a5 - 80002404: a059 j 8000248a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:21 - 80002406: fe442783 lw a5,-28(s0) - 8000240a: 873e mv a4,a5 - 8000240c: fdc42783 lw a5,-36(s0) - 80002410: 2701 sext.w a4,a4 - 80002412: 2781 sext.w a5,a5 - 80002414: 00f70763 beq a4,a5,80002422 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:21 (discriminator 1) - 80002418: fec42783 lw a5,-20(s0) - 8000241c: 2789 addiw a5,a5,2 - 8000241e: 2781 sext.w a5,a5 - 80002420: a0ad j 8000248a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 (discriminator 2) - 80002422: fec42783 lw a5,-20(s0) - 80002426: 2789 addiw a5,a5,2 - 80002428: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:16 (discriminator 1) - 8000242c: fcc42783 lw a5,-52(s0) - 80002430: 01f7d71b srliw a4,a5,0x1f - 80002434: 9fb9 addw a5,a5,a4 - 80002436: 4017d79b sraiw a5,a5,0x1 - 8000243a: 2781 sext.w a5,a5 - 8000243c: 0017979b slliw a5,a5,0x1 - 80002440: 0007871b sext.w a4,a5 - 80002444: fec42783 lw a5,-20(s0) - 80002448: 2781 sext.w a5,a5 - 8000244a: f4e7cae3 blt a5,a4,8000239e -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:23 - 8000244e: fcc42783 lw a5,-52(s0) - 80002452: 8b85 andi a5,a5,1 - 80002454: 2781 sext.w a5,a5 - 80002456: cb8d beqz a5,80002488 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:23 (discriminator 1) - 80002458: fcc42783 lw a5,-52(s0) - 8000245c: 078a slli a5,a5,0x2 - 8000245e: 17f1 addi a5,a5,-4 - 80002460: fc043703 ld a4,-64(s0) - 80002464: 97ba add a5,a5,a4 - 80002466: 439c lw a5,0(a5) - 80002468: 0007869b sext.w a3,a5 - 8000246c: fcc42783 lw a5,-52(s0) - 80002470: 078a slli a5,a5,0x2 - 80002472: 17f1 addi a5,a5,-4 - 80002474: fb843703 ld a4,-72(s0) - 80002478: 97ba add a5,a5,a4 - 8000247a: 439c lw a5,0(a5) - 8000247c: 8736 mv a4,a3 - 8000247e: 00f70563 beq a4,a5,80002488 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:24 - 80002482: fcc42783 lw a5,-52(s0) - 80002486: a011 j 8000248a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:25 - 80002488: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:26 - 8000248a: 853e mv a0,a5 - 8000248c: 6426 ld s0,72(sp) - 8000248e: 6161 addi sp,sp,80 - 80002490: 8082 ret - -0000000080002492 : -verifyDouble(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:29 - 80002492: 711d addi sp,sp,-96 - 80002494: eca2 sd s0,88(sp) - 80002496: 1080 addi s0,sp,96 - 80002498: 87aa mv a5,a0 - 8000249a: fab43823 sd a1,-80(s0) - 8000249e: fac43423 sd a2,-88(s0) - 800024a2: faf42e23 sw a5,-68(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 - 800024a6: fe042623 sw zero,-20(s0) - 800024aa: a06d j 80002554 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:34 - 800024ac: fec42783 lw a5,-20(s0) - 800024b0: 078e slli a5,a5,0x3 - 800024b2: fb043703 ld a4,-80(s0) - 800024b6: 97ba add a5,a5,a4 - 800024b8: 239c fld fa5,0(a5) - 800024ba: fef43027 fsd fa5,-32(s0) - 800024be: fec42783 lw a5,-20(s0) - 800024c2: 0785 addi a5,a5,1 - 800024c4: 078e slli a5,a5,0x3 - 800024c6: fb043703 ld a4,-80(s0) - 800024ca: 97ba add a5,a5,a4 - 800024cc: 239c fld fa5,0(a5) - 800024ce: fcf43c27 fsd fa5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:35 - 800024d2: fec42783 lw a5,-20(s0) - 800024d6: 078e slli a5,a5,0x3 - 800024d8: fa843703 ld a4,-88(s0) - 800024dc: 97ba add a5,a5,a4 - 800024de: 239c fld fa5,0(a5) - 800024e0: fcf43827 fsd fa5,-48(s0) - 800024e4: fec42783 lw a5,-20(s0) - 800024e8: 0785 addi a5,a5,1 - 800024ea: 078e slli a5,a5,0x3 - 800024ec: fa843703 ld a4,-88(s0) - 800024f0: 97ba add a5,a5,a4 - 800024f2: 239c fld fa5,0(a5) - 800024f4: fcf43427 fsd fa5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:36 - 800024f8: fe043707 fld fa4,-32(s0) - 800024fc: fd043787 fld fa5,-48(s0) - 80002500: a2f727d3 feq.d a5,fa4,fa5 - 80002504: 00f037b3 snez a5,a5 - 80002508: 0ff7f793 zext.b a5,a5 - 8000250c: fcf42223 sw a5,-60(s0) - 80002510: fd843707 fld fa4,-40(s0) - 80002514: fc843787 fld fa5,-56(s0) - 80002518: a2f727d3 feq.d a5,fa4,fa5 - 8000251c: 00f037b3 snez a5,a5 - 80002520: 0ff7f793 zext.b a5,a5 - 80002524: fcf42023 sw a5,-64(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:37 - 80002528: fc442783 lw a5,-60(s0) - 8000252c: 873e mv a4,a5 - 8000252e: fc042783 lw a5,-64(s0) - 80002532: 8ff9 and a5,a5,a4 - 80002534: 2781 sext.w a5,a5 - 80002536: eb91 bnez a5,8000254a -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:37 (discriminator 1) - 80002538: fec42783 lw a5,-20(s0) - 8000253c: 2785 addiw a5,a5,1 - 8000253e: 2781 sext.w a5,a5 - 80002540: fc442703 lw a4,-60(s0) - 80002544: 9fb9 addw a5,a5,a4 - 80002546: 2781 sext.w a5,a5 - 80002548: a09d j 800025ae -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 (discriminator 2) - 8000254a: fec42783 lw a5,-20(s0) - 8000254e: 2789 addiw a5,a5,2 - 80002550: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:32 (discriminator 1) - 80002554: fbc42783 lw a5,-68(s0) - 80002558: 01f7d71b srliw a4,a5,0x1f - 8000255c: 9fb9 addw a5,a5,a4 - 8000255e: 4017d79b sraiw a5,a5,0x1 - 80002562: 2781 sext.w a5,a5 - 80002564: 0017979b slliw a5,a5,0x1 - 80002568: 0007871b sext.w a4,a5 - 8000256c: fec42783 lw a5,-20(s0) - 80002570: 2781 sext.w a5,a5 - 80002572: f2e7cde3 blt a5,a4,800024ac -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:39 - 80002576: fbc42783 lw a5,-68(s0) - 8000257a: 8b85 andi a5,a5,1 - 8000257c: 2781 sext.w a5,a5 - 8000257e: c79d beqz a5,800025ac -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:39 (discriminator 1) - 80002580: fbc42783 lw a5,-68(s0) - 80002584: 078e slli a5,a5,0x3 - 80002586: 17e1 addi a5,a5,-8 - 80002588: fb043703 ld a4,-80(s0) - 8000258c: 97ba add a5,a5,a4 - 8000258e: 2398 fld fa4,0(a5) - 80002590: fbc42783 lw a5,-68(s0) - 80002594: 078e slli a5,a5,0x3 - 80002596: 17e1 addi a5,a5,-8 - 80002598: fa843703 ld a4,-88(s0) - 8000259c: 97ba add a5,a5,a4 - 8000259e: 239c fld fa5,0(a5) - 800025a0: a2f727d3 feq.d a5,fa4,fa5 - 800025a4: e781 bnez a5,800025ac -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:40 - 800025a6: fbc42783 lw a5,-68(s0) - 800025aa: a011 j 800025ae -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:41 - 800025ac: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:42 - 800025ae: 853e mv a0,a5 - 800025b0: 6466 ld s0,88(sp) - 800025b2: 6125 addi sp,sp,96 - 800025b4: 8082 ret - -00000000800025b6 : -barrier(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:45 - 800025b6: 1101 addi sp,sp,-32 - 800025b8: ec22 sd s0,24(sp) - 800025ba: 1000 addi s0,sp,32 - 800025bc: 87aa mv a5,a0 - 800025be: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:50 - 800025c2: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:52 - 800025c6: 04022783 lw a5,64(tp) # 40 - 800025ca: 0017b793 seqz a5,a5 - 800025ce: 0ff7f793 zext.b a5,a5 - 800025d2: 0007871b sext.w a4,a5 - 800025d6: 04e22023 sw a4,64(tp) # 40 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:53 - 800025da: 00001797 auipc a5,0x1 - 800025de: 19678793 addi a5,a5,406 # 80003770 - 800025e2: 4705 li a4,1 - 800025e4: 0f50000f fence iorw,ow - 800025e8: 04e7a6af amoadd.w.aq a3,a4,(a5) - 800025ec: 0006879b sext.w a5,a3 - 800025f0: 0007871b sext.w a4,a5 - 800025f4: fec42783 lw a5,-20(s0) - 800025f8: 37fd addiw a5,a5,-1 - 800025fa: 2781 sext.w a5,a5 - 800025fc: 02f71063 bne a4,a5,8000261c -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:55 - 80002600: 00001797 auipc a5,0x1 - 80002604: 17078793 addi a5,a5,368 # 80003770 - 80002608: 0007a023 sw zero,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:56 - 8000260c: 04022703 lw a4,64(tp) # 40 - 80002610: 00001797 auipc a5,0x1 - 80002614: 16478793 addi a5,a5,356 # 80003774 - 80002618: c398 sw a4,0(a5) - 8000261a: a829 j 80002634 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:58 - 8000261c: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:58 (discriminator 1) - 8000261e: 00001797 auipc a5,0x1 - 80002622: 15678793 addi a5,a5,342 # 80003774 - 80002626: 439c lw a5,0(a5) - 80002628: 0007871b sext.w a4,a5 - 8000262c: 04022783 lw a5,64(tp) # 40 - 80002630: fef717e3 bne a4,a5,8000261e -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:61 - 80002634: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:62 - 80002638: 0001 nop - 8000263a: 6462 ld s0,24(sp) - 8000263c: 6105 addi sp,sp,32 - 8000263e: 8082 ret - -0000000080002640 : -lfsr(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:65 - 80002640: 7179 addi sp,sp,-48 - 80002642: f422 sd s0,40(sp) - 80002644: 1800 addi s0,sp,48 - 80002646: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:66 - 8000264a: fd843783 ld a5,-40(s0) - 8000264e: 0017d713 srli a4,a5,0x1 - 80002652: fd843783 ld a5,-40(s0) - 80002656: 8fb9 xor a5,a5,a4 - 80002658: 8b85 andi a5,a5,1 - 8000265a: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:67 - 8000265e: fd843783 ld a5,-40(s0) - 80002662: 0017d713 srli a4,a5,0x1 - 80002666: fe843783 ld a5,-24(s0) - 8000266a: 17fa slli a5,a5,0x3e - 8000266c: 8fd9 or a5,a5,a4 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:68 - 8000266e: 853e mv a0,a5 - 80002670: 7422 ld s0,40(sp) - 80002672: 6145 addi sp,sp,48 - 80002674: 8082 ret - -0000000080002676 : -insn_len(): -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:71 - 80002676: 1101 addi sp,sp,-32 - 80002678: ec22 sd s0,24(sp) - 8000267a: 1000 addi s0,sp,32 - 8000267c: fea43423 sd a0,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 - 80002680: fe843783 ld a5,-24(s0) - 80002684: 0007d783 lhu a5,0(a5) - 80002688: 2781 sext.w a5,a5 - 8000268a: 8b8d andi a5,a5,3 - 8000268c: 2781 sext.w a5,a5 - 8000268e: c399 beqz a5,80002694 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 (discriminator 1) - 80002690: 4791 li a5,4 - 80002692: a011 j 80002696 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:72 (discriminator 2) - 80002694: 4789 li a5,2 -/home/jstine/riscv-wally/examples/C/simple/../common/util.h:73 (discriminator 5) - 80002696: 853e mv a0,a5 - 80002698: 6462 ld s0,24(sp) - 8000269a: 6105 addi sp,sp,32 - 8000269c: 8082 ret - -000000008000269e : -syscall(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:19 - 8000269e: 7171 addi sp,sp,-176 - 800026a0: f522 sd s0,168(sp) - 800026a2: 1900 addi s0,sp,176 - 800026a4: f6a43c23 sd a0,-136(s0) - 800026a8: f6b43823 sd a1,-144(s0) - 800026ac: f6c43423 sd a2,-152(s0) - 800026b0: f6d43023 sd a3,-160(s0) - 800026b4: ff040793 addi a5,s0,-16 - 800026b8: f4f43c23 sd a5,-168(s0) - 800026bc: f5843783 ld a5,-168(s0) - 800026c0: f9078793 addi a5,a5,-112 - 800026c4: 03f78793 addi a5,a5,63 - 800026c8: 8399 srli a5,a5,0x6 - 800026ca: 079a slli a5,a5,0x6 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:21 - 800026cc: f7843703 ld a4,-136(s0) - 800026d0: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:22 - 800026d2: f7043703 ld a4,-144(s0) - 800026d6: e798 sd a4,8(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:23 - 800026d8: f6843703 ld a4,-152(s0) - 800026dc: eb98 sd a4,16(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:24 - 800026de: f6043703 ld a4,-160(s0) - 800026e2: ef98 sd a4,24(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:25 - 800026e4: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:27 - 800026e8: 86be mv a3,a5 - 800026ea: fffff717 auipc a4,0xfffff - 800026ee: 91670713 addi a4,a4,-1770 # 80001000 - 800026f2: e314 sd a3,0(a4) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:28 - 800026f4: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:28 (discriminator 1) - 800026f6: fffff717 auipc a4,0xfffff - 800026fa: 94a70713 addi a4,a4,-1718 # 80001040 - 800026fe: 6318 ld a4,0(a4) - 80002700: db7d beqz a4,800026f6 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:30 - 80002702: fffff717 auipc a4,0xfffff - 80002706: 93e70713 addi a4,a4,-1730 # 80001040 - 8000270a: 00073023 sd zero,0(a4) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:32 - 8000270e: 0ff0000f fence -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:33 - 80002712: 639c ld a5,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:34 - 80002714: 853e mv a0,a5 - 80002716: 742a ld s0,168(sp) - 80002718: 614d addi sp,sp,176 - 8000271a: 8082 ret - -000000008000271c : -setStats(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:41 - 8000271c: 715d addi sp,sp,-80 - 8000271e: e4a2 sd s0,72(sp) - 80002720: 0880 addi s0,sp,80 - 80002722: 87aa mv a5,a0 - 80002724: faf42e23 sw a5,-68(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:42 - 80002728: fc042e23 sw zero,-36(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:50 - 8000272c: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:50 (discriminator 1) - 8000272e: fdc42783 lw a5,-36(s0) - 80002732: 0007871b sext.w a4,a5 - 80002736: 4785 li a5,1 - 80002738: fee7cbe3 blt a5,a4,8000272e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:50 (discriminator 2) - 8000273c: b00027f3 csrr a5,mcycle - 80002740: fcf43823 sd a5,-48(s0) - 80002744: fd043783 ld a5,-48(s0) - 80002748: fef43423 sd a5,-24(s0) - 8000274c: fbc42783 lw a5,-68(s0) - 80002750: 2781 sext.w a5,a5 - 80002752: ef8d bnez a5,8000278c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:50 (discriminator 3) - 80002754: 00001717 auipc a4,0x1 - 80002758: ffc70713 addi a4,a4,-4 # 80003750 - 8000275c: fdc42783 lw a5,-36(s0) - 80002760: 078e slli a5,a5,0x3 - 80002762: 97ba add a5,a5,a4 - 80002764: 639c ld a5,0(a5) - 80002766: fe843703 ld a4,-24(s0) - 8000276a: 40f707b3 sub a5,a4,a5 - 8000276e: fef43423 sd a5,-24(s0) - 80002772: 00001717 auipc a4,0x1 - 80002776: fee70713 addi a4,a4,-18 # 80003760 - 8000277a: fdc42783 lw a5,-36(s0) - 8000277e: 078e slli a5,a5,0x3 - 80002780: 97ba add a5,a5,a4 - 80002782: 00001717 auipc a4,0x1 - 80002786: e2670713 addi a4,a4,-474 # 800035a8 - 8000278a: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:50 (discriminator 5) - 8000278c: fdc42783 lw a5,-36(s0) - 80002790: 0017871b addiw a4,a5,1 - 80002794: fce42e23 sw a4,-36(s0) - 80002798: 00001717 auipc a4,0x1 - 8000279c: fb870713 addi a4,a4,-72 # 80003750 - 800027a0: 078e slli a5,a5,0x3 - 800027a2: 97ba add a5,a5,a4 - 800027a4: fe843703 ld a4,-24(s0) - 800027a8: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:51 (discriminator 5) - 800027aa: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:51 (discriminator 1) - 800027ac: fdc42783 lw a5,-36(s0) - 800027b0: 0007871b sext.w a4,a5 - 800027b4: 4785 li a5,1 - 800027b6: fee7cbe3 blt a5,a4,800027ac -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:51 (discriminator 2) - 800027ba: b02027f3 csrr a5,minstret - 800027be: fcf43423 sd a5,-56(s0) - 800027c2: fc843783 ld a5,-56(s0) - 800027c6: fef43023 sd a5,-32(s0) - 800027ca: fbc42783 lw a5,-68(s0) - 800027ce: 2781 sext.w a5,a5 - 800027d0: ef8d bnez a5,8000280a -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:51 (discriminator 3) - 800027d2: 00001717 auipc a4,0x1 - 800027d6: f7e70713 addi a4,a4,-130 # 80003750 - 800027da: fdc42783 lw a5,-36(s0) - 800027de: 078e slli a5,a5,0x3 - 800027e0: 97ba add a5,a5,a4 - 800027e2: 639c ld a5,0(a5) - 800027e4: fe043703 ld a4,-32(s0) - 800027e8: 40f707b3 sub a5,a4,a5 - 800027ec: fef43023 sd a5,-32(s0) - 800027f0: 00001717 auipc a4,0x1 - 800027f4: f7070713 addi a4,a4,-144 # 80003760 - 800027f8: fdc42783 lw a5,-36(s0) - 800027fc: 078e slli a5,a5,0x3 - 800027fe: 97ba add a5,a5,a4 - 80002800: 00001717 auipc a4,0x1 - 80002804: db070713 addi a4,a4,-592 # 800035b0 - 80002808: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:51 (discriminator 5) - 8000280a: fdc42783 lw a5,-36(s0) - 8000280e: 0017871b addiw a4,a5,1 - 80002812: fce42e23 sw a4,-36(s0) - 80002816: 00001717 auipc a4,0x1 - 8000281a: f3a70713 addi a4,a4,-198 # 80003750 - 8000281e: 078e slli a5,a5,0x3 - 80002820: 97ba add a5,a5,a4 - 80002822: fe043703 ld a4,-32(s0) - 80002826: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:54 (discriminator 5) - 80002828: 0001 nop - 8000282a: 6426 ld s0,72(sp) - 8000282c: 6161 addi sp,sp,80 - 8000282e: 8082 ret - -0000000080002830 : -tohost_exit(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:57 - 80002830: 1101 addi sp,sp,-32 - 80002832: ec22 sd s0,24(sp) - 80002834: 1000 addi s0,sp,32 - 80002836: fea43423 sd a0,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:58 - 8000283a: fe843783 ld a5,-24(s0) - 8000283e: 0786 slli a5,a5,0x1 - 80002840: 0017e713 ori a4,a5,1 - 80002844: ffffe797 auipc a5,0xffffe - 80002848: 7bc78793 addi a5,a5,1980 # 80001000 - 8000284c: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:59 (discriminator 1) - 8000284e: a001 j 8000284e - -0000000080002850 : -handle_trap(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:63 - 80002850: 7179 addi sp,sp,-48 - 80002852: f406 sd ra,40(sp) - 80002854: f022 sd s0,32(sp) - 80002856: 1800 addi s0,sp,48 - 80002858: fea43423 sd a0,-24(s0) - 8000285c: feb43023 sd a1,-32(s0) - 80002860: fcc43c23 sd a2,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:64 - 80002864: 53900513 li a0,1337 - 80002868: fc9ff0ef jal ra,80002830 - -000000008000286c : -exit(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:68 - 8000286c: 1101 addi sp,sp,-32 - 8000286e: ec06 sd ra,24(sp) - 80002870: e822 sd s0,16(sp) - 80002872: 1000 addi s0,sp,32 - 80002874: 87aa mv a5,a0 - 80002876: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:69 - 8000287a: fec42783 lw a5,-20(s0) - 8000287e: 853e mv a0,a5 - 80002880: fb1ff0ef jal ra,80002830 - -0000000080002884 : -abort(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:73 - 80002884: 1141 addi sp,sp,-16 - 80002886: e406 sd ra,8(sp) - 80002888: e022 sd s0,0(sp) - 8000288a: 0800 addi s0,sp,16 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:74 - 8000288c: 08600513 li a0,134 - 80002890: fddff0ef jal ra,8000286c - -0000000080002894 : -printstr(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:78 - 80002894: 7179 addi sp,sp,-48 - 80002896: f406 sd ra,40(sp) - 80002898: f022 sd s0,32(sp) - 8000289a: ec26 sd s1,24(sp) - 8000289c: 1800 addi s0,sp,48 - 8000289e: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:79 - 800028a2: fd843483 ld s1,-40(s0) - 800028a6: fd843503 ld a0,-40(s0) - 800028aa: 2d1000ef jal ra,8000337a - 800028ae: 87aa mv a5,a0 - 800028b0: 86be mv a3,a5 - 800028b2: 8626 mv a2,s1 - 800028b4: 4585 li a1,1 - 800028b6: 04000513 li a0,64 - 800028ba: de5ff0ef jal ra,8000269e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:80 - 800028be: 0001 nop - 800028c0: 70a2 ld ra,40(sp) - 800028c2: 7402 ld s0,32(sp) - 800028c4: 64e2 ld s1,24(sp) - 800028c6: 6145 addi sp,sp,48 - 800028c8: 8082 ret - -00000000800028ca : -thread_entry(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:83 - 800028ca: 1101 addi sp,sp,-32 - 800028cc: ec22 sd s0,24(sp) - 800028ce: 1000 addi s0,sp,32 - 800028d0: 87aa mv a5,a0 - 800028d2: 872e mv a4,a1 - 800028d4: fef42623 sw a5,-20(s0) - 800028d8: 87ba mv a5,a4 - 800028da: fef42423 sw a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:86 - 800028de: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:86 (discriminator 1) - 800028e0: fec42783 lw a5,-20(s0) - 800028e4: 2781 sext.w a5,a5 - 800028e6: ffed bnez a5,800028e0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:87 - 800028e8: 0001 nop - 800028ea: 0001 nop - 800028ec: 6462 ld s0,24(sp) - 800028ee: 6105 addi sp,sp,32 - 800028f0: 8082 ret -main(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:90 - 800028f2: 1101 addi sp,sp,-32 - 800028f4: ec06 sd ra,24(sp) - 800028f6: e822 sd s0,16(sp) - 800028f8: 1000 addi s0,sp,32 - 800028fa: 87aa mv a5,a0 - 800028fc: feb43023 sd a1,-32(s0) - 80002900: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:92 - 80002904: 00001517 auipc a0,0x1 - 80002908: cbc50513 addi a0,a0,-836 # 800035c0 - 8000290c: f89ff0ef jal ra,80002894 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:93 - 80002910: 57fd li a5,-1 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:94 - 80002912: 853e mv a0,a5 - 80002914: 60e2 ld ra,24(sp) - 80002916: 6442 ld s0,16(sp) - 80002918: 6105 addi sp,sp,32 - 8000291a: 8082 ret - -000000008000291c : -init_tls(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:97 - 8000291c: 1101 addi sp,sp,-32 - 8000291e: ec06 sd ra,24(sp) - 80002920: e822 sd s0,16(sp) - 80002922: 1000 addi s0,sp,32 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:100 - 80002924: 00001717 auipc a4,0x1 - 80002928: e5470713 addi a4,a4,-428 # 80003778 <_tdata_begin> - 8000292c: 00001797 auipc a5,0x1 - 80002930: e4c78793 addi a5,a5,-436 # 80003778 <_tdata_begin> - 80002934: 40f707b3 sub a5,a4,a5 - 80002938: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:101 - 8000293c: 8792 mv a5,tp - 8000293e: fe843603 ld a2,-24(s0) - 80002942: 00001597 auipc a1,0x1 - 80002946: e3658593 addi a1,a1,-458 # 80003778 <_tdata_begin> - 8000294a: 853e mv a0,a5 - 8000294c: 0a9000ef jal ra,800031f4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:102 - 80002950: 8fc18713 addi a4,gp,-1796 # 80003844 <_tbss_end> - 80002954: 00001797 auipc a5,0x1 - 80002958: e2478793 addi a5,a5,-476 # 80003778 <_tdata_begin> - 8000295c: 40f707b3 sub a5,a4,a5 - 80002960: fef43023 sd a5,-32(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:103 - 80002964: 8712 mv a4,tp - 80002966: fe843783 ld a5,-24(s0) - 8000296a: 97ba add a5,a5,a4 - 8000296c: fe043603 ld a2,-32(s0) - 80002970: 4581 li a1,0 - 80002972: 853e mv a0,a5 - 80002974: 139000ef jal ra,800032ac -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:104 - 80002978: 0001 nop - 8000297a: 60e2 ld ra,24(sp) - 8000297c: 6442 ld s0,16(sp) - 8000297e: 6105 addi sp,sp,32 - 80002980: 8082 ret - -0000000080002982 <_init>: -_init(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:107 - 80002982: 7171 addi sp,sp,-176 - 80002984: f506 sd ra,168(sp) - 80002986: f122 sd s0,160(sp) - 80002988: ed26 sd s1,152(sp) - 8000298a: 1900 addi s0,sp,176 - 8000298c: 87aa mv a5,a0 - 8000298e: 872e mv a4,a1 - 80002990: f4f42e23 sw a5,-164(s0) - 80002994: 87ba mv a5,a4 - 80002996: f4f42c23 sw a5,-168(s0) - 8000299a: fe040793 addi a5,s0,-32 - 8000299e: f4f43823 sd a5,-176(s0) - 800029a2: f5043783 ld a5,-176(s0) - 800029a6: f8078793 addi a5,a5,-128 - 800029aa: 03f78793 addi a5,a5,63 - 800029ae: 8399 srli a5,a5,0x6 - 800029b0: 00679493 slli s1,a5,0x6 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:108 - 800029b4: f69ff0ef jal ra,8000291c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:109 - 800029b8: f5842703 lw a4,-168(s0) - 800029bc: f5c42783 lw a5,-164(s0) - 800029c0: 85ba mv a1,a4 - 800029c2: 853e mv a0,a5 - 800029c4: f07ff0ef jal ra,800028ca -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:112 - 800029c8: 4581 li a1,0 - 800029ca: 4501 li a0,0 - 800029cc: 96dff0ef jal ra,80002338
- 800029d0: 87aa mv a5,a0 - 800029d2: fcf42823 sw a5,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:115 - 800029d6: fc943c23 sd s1,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:116 - 800029da: fc042a23 sw zero,-44(s0) - 800029de: a095 j 80002a42 <_init+0xc0> -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:117 - 800029e0: 00001717 auipc a4,0x1 - 800029e4: d7070713 addi a4,a4,-656 # 80003750 - 800029e8: fd442783 lw a5,-44(s0) - 800029ec: 078e slli a5,a5,0x3 - 800029ee: 97ba add a5,a5,a4 - 800029f0: 639c ld a5,0(a5) - 800029f2: c3b9 beqz a5,80002a38 <_init+0xb6> -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:118 - 800029f4: 00001717 auipc a4,0x1 - 800029f8: d6c70713 addi a4,a4,-660 # 80003760 - 800029fc: fd442783 lw a5,-44(s0) - 80002a00: 078e slli a5,a5,0x3 - 80002a02: 97ba add a5,a5,a4 - 80002a04: 6390 ld a2,0(a5) - 80002a06: 00001717 auipc a4,0x1 - 80002a0a: d4a70713 addi a4,a4,-694 # 80003750 - 80002a0e: fd442783 lw a5,-44(s0) - 80002a12: 078e slli a5,a5,0x3 - 80002a14: 97ba add a5,a5,a4 - 80002a16: 639c ld a5,0(a5) - 80002a18: 86be mv a3,a5 - 80002a1a: 00001597 auipc a1,0x1 - 80002a1e: bbe58593 addi a1,a1,-1090 # 800035d8 - 80002a22: fd843503 ld a0,-40(s0) - 80002a26: 70c000ef jal ra,80003132 - 80002a2a: 87aa mv a5,a0 - 80002a2c: 873e mv a4,a5 - 80002a2e: fd843783 ld a5,-40(s0) - 80002a32: 97ba add a5,a5,a4 - 80002a34: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:116 (discriminator 2) - 80002a38: fd442783 lw a5,-44(s0) - 80002a3c: 2785 addiw a5,a5,1 - 80002a3e: fcf42a23 sw a5,-44(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:116 (discriminator 1) - 80002a42: fd442783 lw a5,-44(s0) - 80002a46: 0007871b sext.w a4,a5 - 80002a4a: 4785 li a5,1 - 80002a4c: f8e7dae3 bge a5,a4,800029e0 <_init+0x5e> -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:119 - 80002a50: fd843783 ld a5,-40(s0) - 80002a54: 00f48563 beq s1,a5,80002a5e <_init+0xdc> -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:120 - 80002a58: 8526 mv a0,s1 - 80002a5a: e3bff0ef jal ra,80002894 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:122 - 80002a5e: fd042783 lw a5,-48(s0) - 80002a62: 853e mv a0,a5 - 80002a64: e09ff0ef jal ra,8000286c - -0000000080002a68 : -putchar(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:127 - 80002a68: 1101 addi sp,sp,-32 - 80002a6a: ec06 sd ra,24(sp) - 80002a6c: e822 sd s0,16(sp) - 80002a6e: 1000 addi s0,sp,32 - 80002a70: 87aa mv a5,a0 - 80002a72: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:131 - 80002a76: 0c022783 lw a5,192(tp) # c0 - 80002a7a: 0017871b addiw a4,a5,1 - 80002a7e: 0007069b sext.w a3,a4 - 80002a82: 0cd22023 sw a3,192(tp) # c0 - 80002a86: fec42703 lw a4,-20(s0) - 80002a8a: 0ff77713 zext.b a4,a4 - 80002a8e: 08020693 addi a3,tp,128 # 80 - 80002a92: 97b6 add a5,a5,a3 - 80002a94: 00e78023 sb a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:133 - 80002a98: fec42783 lw a5,-20(s0) - 80002a9c: 0007871b sext.w a4,a5 - 80002aa0: 47a9 li a5,10 - 80002aa2: 00f70963 beq a4,a5,80002ab4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:133 (discriminator 1) - 80002aa6: 0c022783 lw a5,192(tp) # c0 - 80002aaa: 873e mv a4,a5 - 80002aac: 04000793 li a5,64 - 80002ab0: 00f71f63 bne a4,a5,80002ace -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:135 - 80002ab4: 08020713 addi a4,tp,128 # 80 - 80002ab8: 0c022783 lw a5,192(tp) # c0 - 80002abc: 86be mv a3,a5 - 80002abe: 863a mv a2,a4 - 80002ac0: 4585 li a1,1 - 80002ac2: 04000513 li a0,64 - 80002ac6: bd9ff0ef jal ra,8000269e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:136 - 80002aca: 0c022023 sw zero,192(tp) # c0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:139 - 80002ace: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:140 - 80002ad0: 853e mv a0,a5 - 80002ad2: 60e2 ld ra,24(sp) - 80002ad4: 6442 ld s0,16(sp) - 80002ad6: 6105 addi sp,sp,32 - 80002ad8: 8082 ret - -0000000080002ada : -printhex(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:143 - 80002ada: 7139 addi sp,sp,-64 - 80002adc: fc06 sd ra,56(sp) - 80002ade: f822 sd s0,48(sp) - 80002ae0: 0080 addi s0,sp,64 - 80002ae2: fca43423 sd a0,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:146 - 80002ae6: fe042623 sw zero,-20(s0) - 80002aea: a899 j 80002b40 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:148 - 80002aec: fc843783 ld a5,-56(s0) - 80002af0: 0ff7f793 zext.b a5,a5 - 80002af4: 8bbd andi a5,a5,15 - 80002af6: 0ff7f713 zext.b a4,a5 - 80002afa: fc843783 ld a5,-56(s0) - 80002afe: 00f7f693 andi a3,a5,15 - 80002b02: 47a5 li a5,9 - 80002b04: 00d7e563 bltu a5,a3,80002b0e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:148 (discriminator 1) - 80002b08: 03000793 li a5,48 - 80002b0c: a019 j 80002b12 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:148 (discriminator 2) - 80002b0e: 05700793 li a5,87 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:148 (discriminator 4) - 80002b12: 46bd li a3,15 - 80002b14: fec42603 lw a2,-20(s0) - 80002b18: 9e91 subw a3,a3,a2 - 80002b1a: 2681 sext.w a3,a3 - 80002b1c: 9fb9 addw a5,a5,a4 - 80002b1e: 0ff7f713 zext.b a4,a5 - 80002b22: ff068793 addi a5,a3,-16 - 80002b26: 97a2 add a5,a5,s0 - 80002b28: fee78423 sb a4,-24(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:149 (discriminator 4) - 80002b2c: fc843783 ld a5,-56(s0) - 80002b30: 8391 srli a5,a5,0x4 - 80002b32: fcf43423 sd a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:146 (discriminator 4) - 80002b36: fec42783 lw a5,-20(s0) - 80002b3a: 2785 addiw a5,a5,1 - 80002b3c: fef42623 sw a5,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:146 (discriminator 2) - 80002b40: fec42783 lw a5,-20(s0) - 80002b44: 0007871b sext.w a4,a5 - 80002b48: 47bd li a5,15 - 80002b4a: fae7d1e3 bge a5,a4,80002aec -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:151 - 80002b4e: fe040423 sb zero,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:153 - 80002b52: fd840793 addi a5,s0,-40 - 80002b56: 853e mv a0,a5 - 80002b58: d3dff0ef jal ra,80002894 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:154 - 80002b5c: 0001 nop - 80002b5e: 70e2 ld ra,56(sp) - 80002b60: 7442 ld s0,48(sp) - 80002b62: 6121 addi sp,sp,64 - 80002b64: 8082 ret - -0000000080002b66 : -printnum(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:158 - 80002b66: 714d addi sp,sp,-336 - 80002b68: e686 sd ra,328(sp) - 80002b6a: e2a2 sd s0,320(sp) - 80002b6c: 0a80 addi s0,sp,336 - 80002b6e: eca43c23 sd a0,-296(s0) - 80002b72: ecb43823 sd a1,-304(s0) - 80002b76: ecc43423 sd a2,-312(s0) - 80002b7a: 8636 mv a2,a3 - 80002b7c: 86ba mv a3,a4 - 80002b7e: 873e mv a4,a5 - 80002b80: 87b2 mv a5,a2 - 80002b82: ecf42223 sw a5,-316(s0) - 80002b86: 87b6 mv a5,a3 - 80002b88: ecf42023 sw a5,-320(s0) - 80002b8c: 87ba mv a5,a4 - 80002b8e: eaf42e23 sw a5,-324(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:160 - 80002b92: fe042623 sw zero,-20(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:164 - 80002b96: ec446783 lwu a5,-316(s0) - 80002b9a: ec843703 ld a4,-312(s0) - 80002b9e: 02f776b3 remu a3,a4,a5 - 80002ba2: fec42783 lw a5,-20(s0) - 80002ba6: 0017871b addiw a4,a5,1 - 80002baa: fee42623 sw a4,-20(s0) - 80002bae: 0006871b sext.w a4,a3 - 80002bb2: 078a slli a5,a5,0x2 - 80002bb4: 17c1 addi a5,a5,-16 - 80002bb6: 97a2 add a5,a5,s0 - 80002bb8: eee7ac23 sw a4,-264(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:165 - 80002bbc: ec446783 lwu a5,-316(s0) - 80002bc0: ec843703 ld a4,-312(s0) - 80002bc4: 00f76b63 bltu a4,a5,80002bda -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:167 - 80002bc8: ec446783 lwu a5,-316(s0) - 80002bcc: ec843703 ld a4,-312(s0) - 80002bd0: 02f757b3 divu a5,a4,a5 - 80002bd4: ecf43423 sd a5,-312(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:164 - 80002bd8: bf7d j 80002b96 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:166 - 80002bda: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:170 - 80002bdc: a809 j 80002bee -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:171 - 80002bde: ebc42783 lw a5,-324(s0) - 80002be2: ed843703 ld a4,-296(s0) - 80002be6: ed043583 ld a1,-304(s0) - 80002bea: 853e mv a0,a5 - 80002bec: 9702 jalr a4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:170 - 80002bee: ec042783 lw a5,-320(s0) - 80002bf2: fff7871b addiw a4,a5,-1 - 80002bf6: ece42023 sw a4,-320(s0) - 80002bfa: fec42703 lw a4,-20(s0) - 80002bfe: 2701 sext.w a4,a4 - 80002c00: fcf74fe3 blt a4,a5,80002bde -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:173 - 80002c04: a089 j 80002c46 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:174 - 80002c06: fec42783 lw a5,-20(s0) - 80002c0a: 078a slli a5,a5,0x2 - 80002c0c: 17c1 addi a5,a5,-16 - 80002c0e: 97a2 add a5,a5,s0 - 80002c10: ef87a703 lw a4,-264(a5) - 80002c14: fec42783 lw a5,-20(s0) - 80002c18: 078a slli a5,a5,0x2 - 80002c1a: 17c1 addi a5,a5,-16 - 80002c1c: 97a2 add a5,a5,s0 - 80002c1e: ef87a783 lw a5,-264(a5) - 80002c22: 86be mv a3,a5 - 80002c24: 47a5 li a5,9 - 80002c26: 00d7f563 bgeu a5,a3,80002c30 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:174 (discriminator 1) - 80002c2a: 05700793 li a5,87 - 80002c2e: a019 j 80002c34 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:174 (discriminator 2) - 80002c30: 03000793 li a5,48 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:174 (discriminator 4) - 80002c34: 9fb9 addw a5,a5,a4 - 80002c36: 2781 sext.w a5,a5 - 80002c38: 2781 sext.w a5,a5 - 80002c3a: ed843703 ld a4,-296(s0) - 80002c3e: ed043583 ld a1,-304(s0) - 80002c42: 853e mv a0,a5 - 80002c44: 9702 jalr a4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:173 - 80002c46: fec42783 lw a5,-20(s0) - 80002c4a: fff7871b addiw a4,a5,-1 - 80002c4e: fee42623 sw a4,-20(s0) - 80002c52: faf04ae3 bgtz a5,80002c06 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:175 - 80002c56: 0001 nop - 80002c58: 0001 nop - 80002c5a: 60b6 ld ra,328(sp) - 80002c5c: 6416 ld s0,320(sp) - 80002c5e: 6171 addi sp,sp,336 - 80002c60: 8082 ret - -0000000080002c62 : -getuint(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:178 - 80002c62: 1101 addi sp,sp,-32 - 80002c64: ec22 sd s0,24(sp) - 80002c66: 1000 addi s0,sp,32 - 80002c68: fea43423 sd a0,-24(s0) - 80002c6c: 87ae mv a5,a1 - 80002c6e: fef42223 sw a5,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:179 - 80002c72: fe442783 lw a5,-28(s0) - 80002c76: 0007871b sext.w a4,a5 - 80002c7a: 4785 li a5,1 - 80002c7c: 00e7dc63 bge a5,a4,80002c94 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:180 - 80002c80: fe843783 ld a5,-24(s0) - 80002c84: 639c ld a5,0(a5) - 80002c86: 00878693 addi a3,a5,8 - 80002c8a: fe843703 ld a4,-24(s0) - 80002c8e: e314 sd a3,0(a4) - 80002c90: 639c ld a5,0(a5) - 80002c92: a815 j 80002cc6 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:181 - 80002c94: fe442783 lw a5,-28(s0) - 80002c98: 2781 sext.w a5,a5 - 80002c9a: cb99 beqz a5,80002cb0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:182 - 80002c9c: fe843783 ld a5,-24(s0) - 80002ca0: 639c ld a5,0(a5) - 80002ca2: 00878693 addi a3,a5,8 - 80002ca6: fe843703 ld a4,-24(s0) - 80002caa: e314 sd a3,0(a4) - 80002cac: 639c ld a5,0(a5) - 80002cae: a821 j 80002cc6 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:184 - 80002cb0: fe843783 ld a5,-24(s0) - 80002cb4: 639c ld a5,0(a5) - 80002cb6: 00878693 addi a3,a5,8 - 80002cba: fe843703 ld a4,-24(s0) - 80002cbe: e314 sd a3,0(a4) - 80002cc0: 439c lw a5,0(a5) - 80002cc2: 1782 slli a5,a5,0x20 - 80002cc4: 9381 srli a5,a5,0x20 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:185 - 80002cc6: 853e mv a0,a5 - 80002cc8: 6462 ld s0,24(sp) - 80002cca: 6105 addi sp,sp,32 - 80002ccc: 8082 ret - -0000000080002cce : -getint(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:188 - 80002cce: 1101 addi sp,sp,-32 - 80002cd0: ec22 sd s0,24(sp) - 80002cd2: 1000 addi s0,sp,32 - 80002cd4: fea43423 sd a0,-24(s0) - 80002cd8: 87ae mv a5,a1 - 80002cda: fef42223 sw a5,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:189 - 80002cde: fe442783 lw a5,-28(s0) - 80002ce2: 0007871b sext.w a4,a5 - 80002ce6: 4785 li a5,1 - 80002ce8: 00e7dc63 bge a5,a4,80002d00 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:190 - 80002cec: fe843783 ld a5,-24(s0) - 80002cf0: 639c ld a5,0(a5) - 80002cf2: 00878693 addi a3,a5,8 - 80002cf6: fe843703 ld a4,-24(s0) - 80002cfa: e314 sd a3,0(a4) - 80002cfc: 639c ld a5,0(a5) - 80002cfe: a805 j 80002d2e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:191 - 80002d00: fe442783 lw a5,-28(s0) - 80002d04: 2781 sext.w a5,a5 - 80002d06: cb99 beqz a5,80002d1c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:192 - 80002d08: fe843783 ld a5,-24(s0) - 80002d0c: 639c ld a5,0(a5) - 80002d0e: 00878693 addi a3,a5,8 - 80002d12: fe843703 ld a4,-24(s0) - 80002d16: e314 sd a3,0(a4) - 80002d18: 639c ld a5,0(a5) - 80002d1a: a811 j 80002d2e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:194 - 80002d1c: fe843783 ld a5,-24(s0) - 80002d20: 639c ld a5,0(a5) - 80002d22: 00878693 addi a3,a5,8 - 80002d26: fe843703 ld a4,-24(s0) - 80002d2a: e314 sd a3,0(a4) - 80002d2c: 439c lw a5,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:195 - 80002d2e: 853e mv a0,a5 - 80002d30: 6462 ld s0,24(sp) - 80002d32: 6105 addi sp,sp,32 - 80002d34: 8082 ret - -0000000080002d36 : -vprintfmt(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:198 - 80002d36: 7159 addi sp,sp,-112 - 80002d38: f486 sd ra,104(sp) - 80002d3a: f0a2 sd s0,96(sp) - 80002d3c: eca6 sd s1,88(sp) - 80002d3e: e8ca sd s2,80(sp) - 80002d40: 1880 addi s0,sp,112 - 80002d42: faa43423 sd a0,-88(s0) - 80002d46: fab43023 sd a1,-96(s0) - 80002d4a: f8c43c23 sd a2,-104(s0) - 80002d4e: f8d43823 sd a3,-112(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:207 - 80002d52: a831 j 80002d6e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:208 - 80002d54: 32048a63 beqz s1,80003088 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:210 - 80002d58: f9843783 ld a5,-104(s0) - 80002d5c: 0785 addi a5,a5,1 - 80002d5e: f8f43c23 sd a5,-104(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:211 - 80002d62: fa843783 ld a5,-88(s0) - 80002d66: fa043583 ld a1,-96(s0) - 80002d6a: 8526 mv a0,s1 - 80002d6c: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:207 - 80002d6e: f9843783 ld a5,-104(s0) - 80002d72: 0007c783 lbu a5,0(a5) - 80002d76: 0007849b sext.w s1,a5 - 80002d7a: 8726 mv a4,s1 - 80002d7c: 02500793 li a5,37 - 80002d80: fcf71ae3 bne a4,a5,80002d54 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:213 - 80002d84: f9843783 ld a5,-104(s0) - 80002d88: 0785 addi a5,a5,1 - 80002d8a: f8f43c23 sd a5,-104(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:216 - 80002d8e: f9843783 ld a5,-104(s0) - 80002d92: faf43c23 sd a5,-72(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:217 - 80002d96: 02000793 li a5,32 - 80002d9a: fcf403a3 sb a5,-57(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:218 - 80002d9e: 57fd li a5,-1 - 80002da0: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:219 - 80002da4: 57fd li a5,-1 - 80002da6: fcf42423 sw a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:220 - 80002daa: fc042823 sw zero,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:221 - 80002dae: fa042a23 sw zero,-76(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:223 - 80002db2: f9843783 ld a5,-104(s0) - 80002db6: 00178713 addi a4,a5,1 - 80002dba: f8e43c23 sd a4,-104(s0) - 80002dbe: 0007c783 lbu a5,0(a5) - 80002dc2: 0007849b sext.w s1,a5 - 80002dc6: fdd4869b addiw a3,s1,-35 - 80002dca: 0006871b sext.w a4,a3 - 80002dce: 05500793 li a5,85 - 80002dd2: 28e7ee63 bltu a5,a4,8000306e - 80002dd6: 02069793 slli a5,a3,0x20 - 80002dda: 9381 srli a5,a5,0x20 - 80002ddc: 00279713 slli a4,a5,0x2 - 80002de0: 00001797 auipc a5,0x1 - 80002de4: 81078793 addi a5,a5,-2032 # 800035f0 - 80002de8: 97ba add a5,a5,a4 - 80002dea: 439c lw a5,0(a5) - 80002dec: 0007871b sext.w a4,a5 - 80002df0: 00001797 auipc a5,0x1 - 80002df4: 80078793 addi a5,a5,-2048 # 800035f0 - 80002df8: 97ba add a5,a5,a4 - 80002dfa: 8782 jr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:227 - 80002dfc: 02d00793 li a5,45 - 80002e00: fcf403a3 sb a5,-57(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:228 - 80002e04: b77d j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:232 - 80002e06: 03000793 li a5,48 - 80002e0a: fcf403a3 sb a5,-57(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:233 - 80002e0e: b755 j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:245 - 80002e10: fc042423 sw zero,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:246 - 80002e14: fc842783 lw a5,-56(s0) - 80002e18: 873e mv a4,a5 - 80002e1a: 87ba mv a5,a4 - 80002e1c: 0027979b slliw a5,a5,0x2 - 80002e20: 9fb9 addw a5,a5,a4 - 80002e22: 0017979b slliw a5,a5,0x1 - 80002e26: 2781 sext.w a5,a5 - 80002e28: 9fa5 addw a5,a5,s1 - 80002e2a: 2781 sext.w a5,a5 - 80002e2c: fd07879b addiw a5,a5,-48 - 80002e30: fcf42423 sw a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:247 - 80002e34: f9843783 ld a5,-104(s0) - 80002e38: 0007c783 lbu a5,0(a5) - 80002e3c: 0007849b sext.w s1,a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:248 - 80002e40: 8726 mv a4,s1 - 80002e42: 02f00793 li a5,47 - 80002e46: 04e7d363 bge a5,a4,80002e8c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:248 (discriminator 1) - 80002e4a: 8726 mv a4,s1 - 80002e4c: 03900793 li a5,57 - 80002e50: 02e7ce63 blt a5,a4,80002e8c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:245 - 80002e54: f9843783 ld a5,-104(s0) - 80002e58: 0785 addi a5,a5,1 - 80002e5a: f8f43c23 sd a5,-104(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:246 - 80002e5e: bf5d j 80002e14 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:254 - 80002e60: f9043783 ld a5,-112(s0) - 80002e64: 00878713 addi a4,a5,8 - 80002e68: f8e43823 sd a4,-112(s0) - 80002e6c: 439c lw a5,0(a5) - 80002e6e: fcf42423 sw a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:255 - 80002e72: a831 j 80002e8e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:258 - 80002e74: fcc42783 lw a5,-52(s0) - 80002e78: 2781 sext.w a5,a5 - 80002e7a: f207dce3 bgez a5,80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:259 - 80002e7e: fc042623 sw zero,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:260 - 80002e82: bf05 j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:263 - 80002e84: 4785 li a5,1 - 80002e86: faf42a23 sw a5,-76(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:264 - 80002e8a: b725 j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:251 - 80002e8c: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:267 - 80002e8e: fcc42783 lw a5,-52(s0) - 80002e92: 2781 sext.w a5,a5 - 80002e94: f007dfe3 bgez a5,80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:268 - 80002e98: fc842783 lw a5,-56(s0) - 80002e9c: fcf42623 sw a5,-52(s0) - 80002ea0: 57fd li a5,-1 - 80002ea2: fcf42423 sw a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:269 - 80002ea6: b731 j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:273 - 80002ea8: fd042783 lw a5,-48(s0) - 80002eac: 2785 addiw a5,a5,1 - 80002eae: fcf42823 sw a5,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:274 - 80002eb2: b701 j 80002db2 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:278 - 80002eb4: f9043783 ld a5,-112(s0) - 80002eb8: 00878713 addi a4,a5,8 - 80002ebc: f8e43823 sd a4,-112(s0) - 80002ec0: 439c lw a5,0(a5) - 80002ec2: fa843703 ld a4,-88(s0) - 80002ec6: fa043583 ld a1,-96(s0) - 80002eca: 853e mv a0,a5 - 80002ecc: 9702 jalr a4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:279 - 80002ece: aa65 j 80003086 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:283 - 80002ed0: f9043783 ld a5,-112(s0) - 80002ed4: 00878713 addi a4,a5,8 - 80002ed8: f8e43823 sd a4,-112(s0) - 80002edc: 0007b903 ld s2,0(a5) - 80002ee0: 00091663 bnez s2,80002eec -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:284 - 80002ee4: 00000917 auipc s2,0x0 - 80002ee8: 70490913 addi s2,s2,1796 # 800035e8 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:285 - 80002eec: fcc42783 lw a5,-52(s0) - 80002ef0: 2781 sext.w a5,a5 - 80002ef2: 06f05a63 blez a5,80002f66 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:285 (discriminator 1) - 80002ef6: fc744783 lbu a5,-57(s0) - 80002efa: 0ff7f713 zext.b a4,a5 - 80002efe: 02d00793 li a5,45 - 80002f02: 06f70263 beq a4,a5,80002f66 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:286 - 80002f06: fcc42483 lw s1,-52(s0) - 80002f0a: fc842783 lw a5,-56(s0) - 80002f0e: 85be mv a1,a5 - 80002f10: 854a mv a0,s2 - 80002f12: 4a4000ef jal ra,800033b6 - 80002f16: 87aa mv a5,a0 - 80002f18: 2781 sext.w a5,a5 - 80002f1a: 40f487bb subw a5,s1,a5 - 80002f1e: 2781 sext.w a5,a5 - 80002f20: fcf42623 sw a5,-52(s0) - 80002f24: a839 j 80002f42 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:287 (discriminator 3) - 80002f26: fc744783 lbu a5,-57(s0) - 80002f2a: 2781 sext.w a5,a5 - 80002f2c: fa843703 ld a4,-88(s0) - 80002f30: fa043583 ld a1,-96(s0) - 80002f34: 853e mv a0,a5 - 80002f36: 9702 jalr a4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:286 (discriminator 3) - 80002f38: fcc42783 lw a5,-52(s0) - 80002f3c: 37fd addiw a5,a5,-1 - 80002f3e: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:286 (discriminator 1) - 80002f42: fcc42783 lw a5,-52(s0) - 80002f46: 2781 sext.w a5,a5 - 80002f48: fcf04fe3 bgtz a5,80002f26 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:288 - 80002f4c: a829 j 80002f66 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:289 (discriminator 5) - 80002f4e: fa843783 ld a5,-88(s0) - 80002f52: fa043583 ld a1,-96(s0) - 80002f56: 8526 mv a0,s1 - 80002f58: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:290 (discriminator 5) - 80002f5a: 0905 addi s2,s2,1 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:288 (discriminator 5) - 80002f5c: fcc42783 lw a5,-52(s0) - 80002f60: 37fd addiw a5,a5,-1 - 80002f62: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:288 (discriminator 1) - 80002f66: 00094783 lbu a5,0(s2) - 80002f6a: 0007849b sext.w s1,a5 - 80002f6e: cc8d beqz s1,80002fa8 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:288 (discriminator 2) - 80002f70: fc842783 lw a5,-56(s0) - 80002f74: 2781 sext.w a5,a5 - 80002f76: fc07cce3 bltz a5,80002f4e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:288 (discriminator 4) - 80002f7a: fc842783 lw a5,-56(s0) - 80002f7e: 37fd addiw a5,a5,-1 - 80002f80: fcf42423 sw a5,-56(s0) - 80002f84: fc842783 lw a5,-56(s0) - 80002f88: 2781 sext.w a5,a5 - 80002f8a: fc07d2e3 bgez a5,80002f4e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:292 - 80002f8e: a829 j 80002fa8 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:293 (discriminator 2) - 80002f90: fa843783 ld a5,-88(s0) - 80002f94: fa043583 ld a1,-96(s0) - 80002f98: 02000513 li a0,32 - 80002f9c: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:292 (discriminator 2) - 80002f9e: fcc42783 lw a5,-52(s0) - 80002fa2: 37fd addiw a5,a5,-1 - 80002fa4: fcf42623 sw a5,-52(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:292 (discriminator 1) - 80002fa8: fcc42783 lw a5,-52(s0) - 80002fac: 2781 sext.w a5,a5 - 80002fae: fef041e3 bgtz a5,80002f90 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:294 - 80002fb2: a8d1 j 80003086 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:298 - 80002fb4: fd042703 lw a4,-48(s0) - 80002fb8: f9040793 addi a5,s0,-112 - 80002fbc: 85ba mv a1,a4 - 80002fbe: 853e mv a0,a5 - 80002fc0: d0fff0ef jal ra,80002cce - 80002fc4: 87aa mv a5,a0 - 80002fc6: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:299 - 80002fca: fd843783 ld a5,-40(s0) - 80002fce: 0007df63 bgez a5,80002fec -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:300 - 80002fd2: fa843783 ld a5,-88(s0) - 80002fd6: fa043583 ld a1,-96(s0) - 80002fda: 02d00513 li a0,45 - 80002fde: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:301 - 80002fe0: fd843783 ld a5,-40(s0) - 80002fe4: 40f007b3 neg a5,a5 - 80002fe8: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:303 - 80002fec: 47a9 li a5,10 - 80002fee: fcf42a23 sw a5,-44(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:304 - 80002ff2: a0b9 j 80003040 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:308 - 80002ff4: 47a9 li a5,10 - 80002ff6: fcf42a23 sw a5,-44(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:309 - 80002ffa: a80d j 8000302c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:314 - 80002ffc: 47a1 li a5,8 - 80002ffe: fcf42a23 sw a5,-44(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:315 - 80003002: a02d j 8000302c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:320 - 80003004: 4785 li a5,1 - 80003006: fcf42823 sw a5,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:321 - 8000300a: fa843783 ld a5,-88(s0) - 8000300e: fa043583 ld a1,-96(s0) - 80003012: 03000513 li a0,48 - 80003016: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:322 - 80003018: fa843783 ld a5,-88(s0) - 8000301c: fa043583 ld a1,-96(s0) - 80003020: 07800513 li a0,120 - 80003024: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:327 - 80003026: 47c1 li a5,16 - 80003028: fcf42a23 sw a5,-44(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:329 - 8000302c: fd042703 lw a4,-48(s0) - 80003030: f9040793 addi a5,s0,-112 - 80003034: 85ba mv a1,a4 - 80003036: 853e mv a0,a5 - 80003038: c2bff0ef jal ra,80002c62 - 8000303c: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:331 - 80003040: fd442683 lw a3,-44(s0) - 80003044: fc744783 lbu a5,-57(s0) - 80003048: 2781 sext.w a5,a5 - 8000304a: fcc42703 lw a4,-52(s0) - 8000304e: fd843603 ld a2,-40(s0) - 80003052: fa043583 ld a1,-96(s0) - 80003056: fa843503 ld a0,-88(s0) - 8000305a: b0dff0ef jal ra,80002b66 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:332 - 8000305e: a025 j 80003086 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:336 - 80003060: fa843783 ld a5,-88(s0) - 80003064: fa043583 ld a1,-96(s0) - 80003068: 8526 mv a0,s1 - 8000306a: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:337 - 8000306c: a829 j 80003086 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:341 - 8000306e: fa843783 ld a5,-88(s0) - 80003072: fa043583 ld a1,-96(s0) - 80003076: 02500513 li a0,37 - 8000307a: 9782 jalr a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:342 - 8000307c: fb843783 ld a5,-72(s0) - 80003080: f8f43c23 sd a5,-104(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:343 - 80003084: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:207 (discriminator 1) - 80003086: b1e5 j 80002d6e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:209 - 80003088: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:346 - 8000308a: 70a6 ld ra,104(sp) - 8000308c: 7406 ld s0,96(sp) - 8000308e: 64e6 ld s1,88(sp) - 80003090: 6946 ld s2,80(sp) - 80003092: 6165 addi sp,sp,112 - 80003094: 8082 ret - -0000000080003096 : -printf(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:349 - 80003096: 7159 addi sp,sp,-112 - 80003098: f406 sd ra,40(sp) - 8000309a: f022 sd s0,32(sp) - 8000309c: 1800 addi s0,sp,48 - 8000309e: fca43c23 sd a0,-40(s0) - 800030a2: e40c sd a1,8(s0) - 800030a4: e810 sd a2,16(s0) - 800030a6: ec14 sd a3,24(s0) - 800030a8: f018 sd a4,32(s0) - 800030aa: f41c sd a5,40(s0) - 800030ac: 03043823 sd a6,48(s0) - 800030b0: 03143c23 sd a7,56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:351 - 800030b4: 04040793 addi a5,s0,64 - 800030b8: fcf43823 sd a5,-48(s0) - 800030bc: fd043783 ld a5,-48(s0) - 800030c0: fc878793 addi a5,a5,-56 - 800030c4: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:353 - 800030c8: fe843783 ld a5,-24(s0) - 800030cc: 86be mv a3,a5 - 800030ce: fd843603 ld a2,-40(s0) - 800030d2: 4581 li a1,0 - 800030d4: 00000517 auipc a0,0x0 - 800030d8: 99450513 addi a0,a0,-1644 # 80002a68 - 800030dc: c5bff0ef jal ra,80002d36 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:356 - 800030e0: 4781 li a5,0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:357 - 800030e2: 853e mv a0,a5 - 800030e4: 70a2 ld ra,40(sp) - 800030e6: 7402 ld s0,32(sp) - 800030e8: 6165 addi sp,sp,112 - 800030ea: 8082 ret - -00000000800030ec : -sprintf_putch(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:366 - 800030ec: 7139 addi sp,sp,-64 - 800030ee: fc22 sd s0,56(sp) - 800030f0: 0080 addi s0,sp,64 - 800030f2: 87aa mv a5,a0 - 800030f4: fcb43823 sd a1,-48(s0) - 800030f8: fcf42e23 sw a5,-36(s0) - 800030fc: fc743423 sd t2,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:367 - 80003100: fd043783 ld a5,-48(s0) - 80003104: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:368 - 80003108: fe843783 ld a5,-24(s0) - 8000310c: 639c ld a5,0(a5) - 8000310e: fdc42703 lw a4,-36(s0) - 80003112: 0ff77713 zext.b a4,a4 - 80003116: 00e78023 sb a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:369 - 8000311a: fe843783 ld a5,-24(s0) - 8000311e: 639c ld a5,0(a5) - 80003120: 00178713 addi a4,a5,1 - 80003124: fe843783 ld a5,-24(s0) - 80003128: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:370 - 8000312a: 0001 nop - 8000312c: 7462 ld s0,56(sp) - 8000312e: 6121 addi sp,sp,64 - 80003130: 8082 ret - -0000000080003132 : -sprintf(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:360 - 80003132: 716d addi sp,sp,-272 - 80003134: ed86 sd ra,216(sp) - 80003136: e9a2 sd s0,208(sp) - 80003138: 1180 addi s0,sp,224 - 8000313a: f2a43c23 sd a0,-200(s0) - 8000313e: f2b43823 sd a1,-208(s0) - 80003142: e010 sd a2,0(s0) - 80003144: e414 sd a3,8(s0) - 80003146: e818 sd a4,16(s0) - 80003148: ec1c sd a5,24(s0) - 8000314a: 03043023 sd a6,32(s0) - 8000314e: 03143423 sd a7,40(s0) -/home/jstine/riscv/riscv64-unknown-elf/include/stdio.h:244 - 80003152: 03040793 addi a5,s0,48 - 80003156: f2f43423 sd a5,-216(s0) - 8000315a: f2843783 ld a5,-216(s0) - 8000315e: fcf43c23 sd a5,-40(s0) - 80003162: f4840793 addi a5,s0,-184 - 80003166: f4840713 addi a4,s0,-184 - 8000316a: 39700693 li a3,919 - 8000316e: c394 sw a3,0(a5) - 80003170: 0183b6b7 lui a3,0x183b - 80003174: 28368693 addi a3,a3,643 # 183b283 - 80003178: c3d4 sw a3,4(a5) - 8000317a: 0103b6b7 lui a3,0x103b - 8000317e: 38368693 addi a3,a3,899 # 103b383 - 80003182: c794 sw a3,8(a5) - 80003184: 000286b7 lui a3,0x28 - 80003188: 06768693 addi a3,a3,103 # 28067 - 8000318c: c7d4 sw a3,12(a5) - 8000318e: eb98 sd a4,16(a5) - 80003190: 00000717 auipc a4,0x0 - 80003194: f5c70713 addi a4,a4,-164 # 800030ec - 80003198: ef98 sd a4,24(a5) - 8000319a: 0000100f fence.i -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:362 - 8000319e: f3843783 ld a5,-200(s0) - 800031a2: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:363 - 800031a6: 03040793 addi a5,s0,48 - 800031aa: f2f43423 sd a5,-216(s0) - 800031ae: f2843783 ld a5,-216(s0) - 800031b2: fd078793 addi a5,a5,-48 - 800031b6: fef43023 sd a5,-32(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:372 - 800031ba: fe043703 ld a4,-32(s0) - 800031be: f4840793 addi a5,s0,-184 - 800031c2: 853e mv a0,a5 - 800031c4: f3840793 addi a5,s0,-200 - 800031c8: 86ba mv a3,a4 - 800031ca: f3043603 ld a2,-208(s0) - 800031ce: 85be mv a1,a5 - 800031d0: b67ff0ef jal ra,80002d36 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:373 - 800031d4: f3843783 ld a5,-200(s0) - 800031d8: 00078023 sb zero,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:376 - 800031dc: f3843703 ld a4,-200(s0) - 800031e0: fe843783 ld a5,-24(s0) - 800031e4: 40f707b3 sub a5,a4,a5 - 800031e8: 2781 sext.w a5,a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:377 - 800031ea: 853e mv a0,a5 - 800031ec: 60ee ld ra,216(sp) - 800031ee: 644e ld s0,208(sp) - 800031f0: 6151 addi sp,sp,272 - 800031f2: 8082 ret - -00000000800031f4 : -memcpy(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:380 - 800031f4: 715d addi sp,sp,-80 - 800031f6: e4a2 sd s0,72(sp) - 800031f8: 0880 addi s0,sp,80 - 800031fa: fca43423 sd a0,-56(s0) - 800031fe: fcb43023 sd a1,-64(s0) - 80003202: fac43c23 sd a2,-72(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:381 - 80003206: fc843703 ld a4,-56(s0) - 8000320a: fc043783 ld a5,-64(s0) - 8000320e: 8f5d or a4,a4,a5 - 80003210: fb843783 ld a5,-72(s0) - 80003214: 8fd9 or a5,a5,a4 - 80003216: 8b9d andi a5,a5,7 - 80003218: e3b1 bnez a5,8000325c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:382 - 8000321a: fc043783 ld a5,-64(s0) - 8000321e: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:383 - 80003222: fc843783 ld a5,-56(s0) - 80003226: fef43023 sd a5,-32(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:384 - 8000322a: a839 j 80003248 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:385 - 8000322c: fe843703 ld a4,-24(s0) - 80003230: 00870793 addi a5,a4,8 - 80003234: fef43423 sd a5,-24(s0) - 80003238: fe043783 ld a5,-32(s0) - 8000323c: 00878693 addi a3,a5,8 - 80003240: fed43023 sd a3,-32(s0) - 80003244: 6318 ld a4,0(a4) - 80003246: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:384 - 80003248: fc843703 ld a4,-56(s0) - 8000324c: fb843783 ld a5,-72(s0) - 80003250: 97ba add a5,a5,a4 - 80003252: fe043703 ld a4,-32(s0) - 80003256: fcf76be3 bltu a4,a5,8000322c - 8000325a: a099 j 800032a0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:387 - 8000325c: fc043783 ld a5,-64(s0) - 80003260: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:388 - 80003264: fc843783 ld a5,-56(s0) - 80003268: fcf43823 sd a5,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:389 - 8000326c: a00d j 8000328e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:390 - 8000326e: fd843703 ld a4,-40(s0) - 80003272: 00170793 addi a5,a4,1 - 80003276: fcf43c23 sd a5,-40(s0) - 8000327a: fd043783 ld a5,-48(s0) - 8000327e: 00178693 addi a3,a5,1 - 80003282: fcd43823 sd a3,-48(s0) - 80003286: 00074703 lbu a4,0(a4) - 8000328a: 00e78023 sb a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:389 - 8000328e: fc843703 ld a4,-56(s0) - 80003292: fb843783 ld a5,-72(s0) - 80003296: 97ba add a5,a5,a4 - 80003298: fd043703 ld a4,-48(s0) - 8000329c: fcf769e3 bltu a4,a5,8000326e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:392 - 800032a0: fc843783 ld a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:393 - 800032a4: 853e mv a0,a5 - 800032a6: 6426 ld s0,72(sp) - 800032a8: 6161 addi sp,sp,80 - 800032aa: 8082 ret - -00000000800032ac : -memset(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:396 - 800032ac: 715d addi sp,sp,-80 - 800032ae: e4a2 sd s0,72(sp) - 800032b0: 0880 addi s0,sp,80 - 800032b2: fca43423 sd a0,-56(s0) - 800032b6: 87ae mv a5,a1 - 800032b8: fac43c23 sd a2,-72(s0) - 800032bc: fcf42223 sw a5,-60(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:397 - 800032c0: fc843703 ld a4,-56(s0) - 800032c4: fb843783 ld a5,-72(s0) - 800032c8: 8fd9 or a5,a5,a4 - 800032ca: 8b9d andi a5,a5,7 - 800032cc: e7bd bnez a5,8000333a -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:398 - 800032ce: fc442783 lw a5,-60(s0) - 800032d2: 0ff7f793 zext.b a5,a5 - 800032d6: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:399 - 800032da: fd843783 ld a5,-40(s0) - 800032de: 07a2 slli a5,a5,0x8 - 800032e0: fd843703 ld a4,-40(s0) - 800032e4: 8fd9 or a5,a5,a4 - 800032e6: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:400 - 800032ea: fd843783 ld a5,-40(s0) - 800032ee: 07c2 slli a5,a5,0x10 - 800032f0: fd843703 ld a4,-40(s0) - 800032f4: 8fd9 or a5,a5,a4 - 800032f6: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:401 - 800032fa: fd843783 ld a5,-40(s0) - 800032fe: 1782 slli a5,a5,0x20 - 80003300: fd843703 ld a4,-40(s0) - 80003304: 8fd9 or a5,a5,a4 - 80003306: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:403 - 8000330a: fc843783 ld a5,-56(s0) - 8000330e: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:404 - 80003312: a811 j 80003326 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:405 - 80003314: fe843783 ld a5,-24(s0) - 80003318: 00878713 addi a4,a5,8 - 8000331c: fee43423 sd a4,-24(s0) - 80003320: fd843703 ld a4,-40(s0) - 80003324: e398 sd a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:404 - 80003326: fc843703 ld a4,-56(s0) - 8000332a: fb843783 ld a5,-72(s0) - 8000332e: 97ba add a5,a5,a4 - 80003330: fe843703 ld a4,-24(s0) - 80003334: fef760e3 bltu a4,a5,80003314 - 80003338: a81d j 8000336e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:407 - 8000333a: fc843783 ld a5,-56(s0) - 8000333e: fef43023 sd a5,-32(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:408 - 80003342: a829 j 8000335c -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:409 - 80003344: fe043783 ld a5,-32(s0) - 80003348: 00178713 addi a4,a5,1 - 8000334c: fee43023 sd a4,-32(s0) - 80003350: fc442703 lw a4,-60(s0) - 80003354: 0ff77713 zext.b a4,a4 - 80003358: 00e78023 sb a4,0(a5) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:408 - 8000335c: fc843703 ld a4,-56(s0) - 80003360: fb843783 ld a5,-72(s0) - 80003364: 97ba add a5,a5,a4 - 80003366: fe043703 ld a4,-32(s0) - 8000336a: fcf76de3 bltu a4,a5,80003344 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:411 - 8000336e: fc843783 ld a5,-56(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:412 - 80003372: 853e mv a0,a5 - 80003374: 6426 ld s0,72(sp) - 80003376: 6161 addi sp,sp,80 - 80003378: 8082 ret - -000000008000337a : -strlen(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:415 - 8000337a: 7179 addi sp,sp,-48 - 8000337c: f422 sd s0,40(sp) - 8000337e: 1800 addi s0,sp,48 - 80003380: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:416 - 80003384: fd843783 ld a5,-40(s0) - 80003388: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:417 - 8000338c: a031 j 80003398 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:418 - 8000338e: fe843783 ld a5,-24(s0) - 80003392: 0785 addi a5,a5,1 - 80003394: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:417 - 80003398: fe843783 ld a5,-24(s0) - 8000339c: 0007c783 lbu a5,0(a5) - 800033a0: f7fd bnez a5,8000338e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:419 - 800033a2: fe843703 ld a4,-24(s0) - 800033a6: fd843783 ld a5,-40(s0) - 800033aa: 40f707b3 sub a5,a4,a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:420 - 800033ae: 853e mv a0,a5 - 800033b0: 7422 ld s0,40(sp) - 800033b2: 6145 addi sp,sp,48 - 800033b4: 8082 ret - -00000000800033b6 : -strnlen(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:423 - 800033b6: 7179 addi sp,sp,-48 - 800033b8: f422 sd s0,40(sp) - 800033ba: 1800 addi s0,sp,48 - 800033bc: fca43c23 sd a0,-40(s0) - 800033c0: fcb43823 sd a1,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:424 - 800033c4: fd843783 ld a5,-40(s0) - 800033c8: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:425 - 800033cc: a031 j 800033d8 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:426 - 800033ce: fe843783 ld a5,-24(s0) - 800033d2: 0785 addi a5,a5,1 - 800033d4: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:425 - 800033d8: fd043783 ld a5,-48(s0) - 800033dc: fff78713 addi a4,a5,-1 - 800033e0: fce43823 sd a4,-48(s0) - 800033e4: c791 beqz a5,800033f0 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:425 (discriminator 1) - 800033e6: fe843783 ld a5,-24(s0) - 800033ea: 0007c783 lbu a5,0(a5) - 800033ee: f3e5 bnez a5,800033ce -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:427 - 800033f0: fe843703 ld a4,-24(s0) - 800033f4: fd843783 ld a5,-40(s0) - 800033f8: 40f707b3 sub a5,a4,a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:428 - 800033fc: 853e mv a0,a5 - 800033fe: 7422 ld s0,40(sp) - 80003400: 6145 addi sp,sp,48 - 80003402: 8082 ret - -0000000080003404 : -strcmp(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:431 - 80003404: 7179 addi sp,sp,-48 - 80003406: f422 sd s0,40(sp) - 80003408: 1800 addi s0,sp,48 - 8000340a: fca43c23 sd a0,-40(s0) - 8000340e: fcb43823 sd a1,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:435 (discriminator 2) - 80003412: fd843783 ld a5,-40(s0) - 80003416: 00178713 addi a4,a5,1 - 8000341a: fce43c23 sd a4,-40(s0) - 8000341e: 0007c783 lbu a5,0(a5) - 80003422: fef407a3 sb a5,-17(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:436 (discriminator 2) - 80003426: fd043783 ld a5,-48(s0) - 8000342a: 00178713 addi a4,a5,1 - 8000342e: fce43823 sd a4,-48(s0) - 80003432: 0007c783 lbu a5,0(a5) - 80003436: fef40723 sb a5,-18(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:437 (discriminator 2) - 8000343a: fef44783 lbu a5,-17(s0) - 8000343e: 0ff7f793 zext.b a5,a5 - 80003442: cf81 beqz a5,8000345a -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:437 (discriminator 1) - 80003444: fef44783 lbu a5,-17(s0) - 80003448: 873e mv a4,a5 - 8000344a: fee44783 lbu a5,-18(s0) - 8000344e: 0ff77713 zext.b a4,a4 - 80003452: 0ff7f793 zext.b a5,a5 - 80003456: faf70ee3 beq a4,a5,80003412 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:439 - 8000345a: fef44783 lbu a5,-17(s0) - 8000345e: 0007871b sext.w a4,a5 - 80003462: fee44783 lbu a5,-18(s0) - 80003466: 2781 sext.w a5,a5 - 80003468: 40f707bb subw a5,a4,a5 - 8000346c: 2781 sext.w a5,a5 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:440 - 8000346e: 853e mv a0,a5 - 80003470: 7422 ld s0,40(sp) - 80003472: 6145 addi sp,sp,48 - 80003474: 8082 ret - -0000000080003476 : -strcpy(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:443 - 80003476: 7179 addi sp,sp,-48 - 80003478: f422 sd s0,40(sp) - 8000347a: 1800 addi s0,sp,48 - 8000347c: fca43c23 sd a0,-40(s0) - 80003480: fcb43823 sd a1,-48(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:444 - 80003484: fd843783 ld a5,-40(s0) - 80003488: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:445 - 8000348c: 0001 nop -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:445 (discriminator 1) - 8000348e: fd043703 ld a4,-48(s0) - 80003492: 00170793 addi a5,a4,1 - 80003496: fcf43823 sd a5,-48(s0) - 8000349a: fe843783 ld a5,-24(s0) - 8000349e: 00178693 addi a3,a5,1 - 800034a2: fed43423 sd a3,-24(s0) - 800034a6: 00074703 lbu a4,0(a4) - 800034aa: 00e78023 sb a4,0(a5) - 800034ae: 0007c783 lbu a5,0(a5) - 800034b2: fff1 bnez a5,8000348e -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:447 - 800034b4: fd843783 ld a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:448 - 800034b8: 853e mv a0,a5 - 800034ba: 7422 ld s0,40(sp) - 800034bc: 6145 addi sp,sp,48 - 800034be: 8082 ret - -00000000800034c0 : -atol(): -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:451 - 800034c0: 7179 addi sp,sp,-48 - 800034c2: f422 sd s0,40(sp) - 800034c4: 1800 addi s0,sp,48 - 800034c6: fca43c23 sd a0,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:452 - 800034ca: fe043423 sd zero,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:453 - 800034ce: fe042223 sw zero,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:455 - 800034d2: a031 j 800034de -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:456 - 800034d4: fd843783 ld a5,-40(s0) - 800034d8: 0785 addi a5,a5,1 - 800034da: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:455 - 800034de: fd843783 ld a5,-40(s0) - 800034e2: 0007c783 lbu a5,0(a5) - 800034e6: 873e mv a4,a5 - 800034e8: 02000793 li a5,32 - 800034ec: fef704e3 beq a4,a5,800034d4 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:458 - 800034f0: fd843783 ld a5,-40(s0) - 800034f4: 0007c783 lbu a5,0(a5) - 800034f8: 873e mv a4,a5 - 800034fa: 02d00793 li a5,45 - 800034fe: 00f70b63 beq a4,a5,80003514 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:458 (discriminator 1) - 80003502: fd843783 ld a5,-40(s0) - 80003506: 0007c783 lbu a5,0(a5) - 8000350a: 873e mv a4,a5 - 8000350c: 02b00793 li a5,43 - 80003510: 06f71263 bne a4,a5,80003574 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:459 - 80003514: fd843783 ld a5,-40(s0) - 80003518: 0007c783 lbu a5,0(a5) - 8000351c: 0007871b sext.w a4,a5 - 80003520: 02d00793 li a5,45 - 80003524: 40f707b3 sub a5,a4,a5 - 80003528: 0017b793 seqz a5,a5 - 8000352c: 0ff7f793 zext.b a5,a5 - 80003530: fef42223 sw a5,-28(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:460 - 80003534: fd843783 ld a5,-40(s0) - 80003538: 0785 addi a5,a5,1 - 8000353a: fcf43c23 sd a5,-40(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:463 - 8000353e: a81d j 80003574 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:464 - 80003540: fe843703 ld a4,-24(s0) - 80003544: 87ba mv a5,a4 - 80003546: 078a slli a5,a5,0x2 - 80003548: 97ba add a5,a5,a4 - 8000354a: 0786 slli a5,a5,0x1 - 8000354c: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:465 - 80003550: fd843783 ld a5,-40(s0) - 80003554: 00178713 addi a4,a5,1 - 80003558: fce43c23 sd a4,-40(s0) - 8000355c: 0007c783 lbu a5,0(a5) - 80003560: 2781 sext.w a5,a5 - 80003562: fd07879b addiw a5,a5,-48 - 80003566: 2781 sext.w a5,a5 - 80003568: 873e mv a4,a5 - 8000356a: fe843783 ld a5,-24(s0) - 8000356e: 97ba add a5,a5,a4 - 80003570: fef43423 sd a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:463 - 80003574: fd843783 ld a5,-40(s0) - 80003578: 0007c783 lbu a5,0(a5) - 8000357c: f3f1 bnez a5,80003540 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:468 - 8000357e: fe442783 lw a5,-28(s0) - 80003582: 2781 sext.w a5,a5 - 80003584: c791 beqz a5,80003590 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:468 (discriminator 1) - 80003586: fe843783 ld a5,-24(s0) - 8000358a: 40f007b3 neg a5,a5 - 8000358e: a019 j 80003594 -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:468 (discriminator 2) - 80003590: fe843783 ld a5,-24(s0) -/home/jstine/riscv-wally/examples/C/simple/../common/syscalls.c:469 (discriminator 5) - 80003594: 853e mv a0,a5 - 80003596: 7422 ld s0,40(sp) - 80003598: 6145 addi sp,sp,48 - 8000359a: 8082 ret - -Disassembly of section .rodata: - -00000000800035a0 <__global_pointer$-0x9a8>: - 800035a0: 203d2073 csrs 0x203,s10 - 800035a4: 6425 lui s0,0x9 - 800035a6: 000a c.slli zero,0x2 - 800035a8: 636d lui t1,0x1b - 800035aa: 6379 lui t1,0x1e - 800035ac: 656c ld a1,200(a0) - 800035ae: 0000 unimp - 800035b0: 696d lui s2,0x1b - 800035b2: 736e ld t1,248(sp) - 800035b4: 7274 ld a3,224(a2) - 800035b6: 7465 lui s0,0xffff9 - ... - 800035c0: 6d49 lui s10,0x12 - 800035c2: 6c70 ld a2,216(s0) - 800035c4: 6d65 lui s10,0x19 - 800035c6: 6e65 lui t3,0x19 - 800035c8: 2074 fld fa3,192(s0) - 800035ca: 616d addi sp,sp,240 - 800035cc: 6e69 lui t3,0x1a - 800035ce: 2928 fld fa0,80(a0) - 800035d0: 202c fld fa1,64(s0) - 800035d2: 6f66 ld t5,88(sp) - 800035d4: 000a216f jal sp,800a55d4 <__global_pointer$+0xa168c> - 800035d8: 7325 lui t1,0xfffe9 - 800035da: 3d20 fld fs0,120(a0) - 800035dc: 2520 fld fs0,72(a0) - 800035de: 0a64 addi s1,sp,284 - ... - 800035e8: 6e28 ld a0,88(a2) - 800035ea: 6c75 lui s8,0x1d - 800035ec: 296c fld fa1,208(a0) - 800035ee: 0000 unimp - 800035f0: f894 sd a3,48(s1) - 800035f2: ffff 0xffff - 800035f4: fa7e sd t6,304(sp) - 800035f6: ffff 0xffff - 800035f8: fa70 sd a2,240(a2) - 800035fa: ffff 0xffff - 800035fc: fa7e sd t6,304(sp) - 800035fe: ffff 0xffff - 80003600: fa7e sd t6,304(sp) - 80003602: ffff 0xffff - 80003604: fa7e sd t6,304(sp) - 80003606: ffff 0xffff - 80003608: fa7e sd t6,304(sp) - 8000360a: ffff 0xffff - 8000360c: f870 sd a2,240(s0) - 8000360e: ffff 0xffff - 80003610: fa7e sd t6,304(sp) - 80003612: ffff 0xffff - 80003614: fa7e sd t6,304(sp) - 80003616: ffff 0xffff - 80003618: f80c sd a1,48(s0) - 8000361a: ffff 0xffff - 8000361c: f884 sd s1,48(s1) - 8000361e: ffff 0xffff - 80003620: fa7e sd t6,304(sp) - 80003622: ffff 0xffff - 80003624: f816 sd t0,48(sp) - 80003626: ffff 0xffff - 80003628: f820 sd s0,112(s0) - 8000362a: ffff 0xffff - 8000362c: f820 sd s0,112(s0) - 8000362e: ffff 0xffff - 80003630: f820 sd s0,112(s0) - 80003632: ffff 0xffff - 80003634: f820 sd s0,112(s0) - 80003636: ffff 0xffff - 80003638: f820 sd s0,112(s0) - 8000363a: ffff 0xffff - 8000363c: f820 sd s0,112(s0) - 8000363e: ffff 0xffff - 80003640: f820 sd s0,112(s0) - 80003642: ffff 0xffff - 80003644: f820 sd s0,112(s0) - 80003646: ffff 0xffff - 80003648: f820 sd s0,112(s0) - 8000364a: ffff 0xffff - 8000364c: fa7e sd t6,304(sp) - 8000364e: ffff 0xffff - 80003650: fa7e sd t6,304(sp) - 80003652: ffff 0xffff - 80003654: fa7e sd t6,304(sp) - 80003656: ffff 0xffff - 80003658: fa7e sd t6,304(sp) - 8000365a: ffff 0xffff - 8000365c: fa7e sd t6,304(sp) - 8000365e: ffff 0xffff - 80003660: fa7e sd t6,304(sp) - 80003662: ffff 0xffff - 80003664: fa7e sd t6,304(sp) - 80003666: ffff 0xffff - 80003668: fa7e sd t6,304(sp) - 8000366a: ffff 0xffff - 8000366c: fa7e sd t6,304(sp) - 8000366e: ffff 0xffff - 80003670: fa7e sd t6,304(sp) - 80003672: ffff 0xffff - 80003674: fa7e sd t6,304(sp) - 80003676: ffff 0xffff - 80003678: fa7e sd t6,304(sp) - 8000367a: ffff 0xffff - 8000367c: fa7e sd t6,304(sp) - 8000367e: ffff 0xffff - 80003680: fa7e sd t6,304(sp) - 80003682: ffff 0xffff - 80003684: fa7e sd t6,304(sp) - 80003686: ffff 0xffff - 80003688: fa7e sd t6,304(sp) - 8000368a: ffff 0xffff - 8000368c: fa7e sd t6,304(sp) - 8000368e: ffff 0xffff - 80003690: fa7e sd t6,304(sp) - 80003692: ffff 0xffff - 80003694: fa7e sd t6,304(sp) - 80003696: ffff 0xffff - 80003698: fa7e sd t6,304(sp) - 8000369a: ffff 0xffff - 8000369c: fa7e sd t6,304(sp) - 8000369e: ffff 0xffff - 800036a0: fa7e sd t6,304(sp) - 800036a2: ffff 0xffff - 800036a4: fa7e sd t6,304(sp) - 800036a6: ffff 0xffff - 800036a8: fa7e sd t6,304(sp) - 800036aa: ffff 0xffff - 800036ac: fa7e sd t6,304(sp) - 800036ae: ffff 0xffff - 800036b0: fa7e sd t6,304(sp) - 800036b2: ffff 0xffff - 800036b4: fa7e sd t6,304(sp) - 800036b6: ffff 0xffff - 800036b8: fa7e sd t6,304(sp) - 800036ba: ffff 0xffff - 800036bc: fa7e sd t6,304(sp) - 800036be: ffff 0xffff - 800036c0: fa7e sd t6,304(sp) - 800036c2: ffff 0xffff - 800036c4: fa7e sd t6,304(sp) - 800036c6: ffff 0xffff - 800036c8: fa7e sd t6,304(sp) - 800036ca: ffff 0xffff - 800036cc: fa7e sd t6,304(sp) - 800036ce: ffff 0xffff - 800036d0: fa7e sd t6,304(sp) - 800036d2: ffff 0xffff - 800036d4: fa7e sd t6,304(sp) - 800036d6: ffff 0xffff - 800036d8: fa7e sd t6,304(sp) - 800036da: ffff 0xffff - 800036dc: fa7e sd t6,304(sp) - 800036de: ffff 0xffff - 800036e0: fa7e sd t6,304(sp) - 800036e2: ffff 0xffff - 800036e4: fa7e sd t6,304(sp) - 800036e6: ffff 0xffff - 800036e8: fa7e sd t6,304(sp) - 800036ea: ffff 0xffff - 800036ec: fa7e sd t6,304(sp) - 800036ee: ffff 0xffff - 800036f0: f8c4 sd s1,176(s1) - 800036f2: ffff 0xffff - 800036f4: f9c4 sd s1,176(a1) - 800036f6: ffff 0xffff - 800036f8: fa7e sd t6,304(sp) - 800036fa: ffff 0xffff - 800036fc: fa7e sd t6,304(sp) - 800036fe: ffff 0xffff - 80003700: fa7e sd t6,304(sp) - 80003702: ffff 0xffff - 80003704: fa7e sd t6,304(sp) - 80003706: ffff 0xffff - 80003708: fa7e sd t6,304(sp) - 8000370a: ffff 0xffff - 8000370c: fa7e sd t6,304(sp) - 8000370e: ffff 0xffff - 80003710: fa7e sd t6,304(sp) - 80003712: ffff 0xffff - 80003714: f8b8 sd a4,112(s1) - 80003716: ffff 0xffff - 80003718: fa7e sd t6,304(sp) - 8000371a: ffff 0xffff - 8000371c: fa7e sd t6,304(sp) - 8000371e: ffff 0xffff - 80003720: fa0c sd a1,48(a2) - 80003722: ffff 0xffff - 80003724: fa14 sd a3,48(a2) - 80003726: ffff 0xffff - 80003728: fa7e sd t6,304(sp) - 8000372a: ffff 0xffff - 8000372c: fa7e sd t6,304(sp) - 8000372e: ffff 0xffff - 80003730: f8e0 sd s0,240(s1) - 80003732: ffff 0xffff - 80003734: fa7e sd t6,304(sp) - 80003736: ffff 0xffff - 80003738: fa04 sd s1,48(a2) - 8000373a: ffff 0xffff - 8000373c: fa7e sd t6,304(sp) - 8000373e: ffff 0xffff - 80003740: fa7e sd t6,304(sp) - 80003742: ffff 0xffff - 80003744: fa36 sd a3,304(sp) - 80003746: ffff 0xffff - -Disassembly of section .bss: - -0000000080003748 : - 80003748: 0000 unimp - ... - -000000008000374c : - 8000374c: 0000 unimp - ... - -0000000080003750 : - ... - -0000000080003760 : - ... - -0000000080003770 : - 80003770: 0000 unimp - ... - -0000000080003774 : - 80003774: 0000 unimp - ... - -Disassembly of section .tbss: - -0000000080003780 : - ... - -Disassembly of section .debug_info: - -0000000000000000 <.debug_info>: - 0: 03b4 addi a3,sp,456 - 2: 0000 unimp - 4: 0005 c.nop 1 - 6: 0801 addi a6,a6,0 - 8: 0000 unimp - a: 0000 unimp - c: 000c 0xc - e: 0000 unimp - 10: 0c00 addi s0,sp,528 - 12: 0000 unimp - 14: 0000 unimp - 16: 0009 c.nop 2 - 18: 0000 unimp - 1a: 2000 fld fs0,0(s0) - 1c: 8000 0x8000 - 1e: 0000 unimp - 20: 0000 unimp - 22: 0384 addi s1,sp,448 - ... - 2c: 0000 unimp - 2e: 0102 c.slli64 sp - 30: f306 sd ra,416(sp) - 32: 0000 unimp - 34: 0200 addi s0,sp,256 - 36: 0801 addi a6,a6,0 - 38: 00f1 addi ra,ra,28 - 3a: 0000 unimp - 3c: 0202 c.slli64 tp - 3e: 3f05 addiw t5,t5,-31 - 40: 0001 nop - 42: 0200 addi s0,sp,256 - 44: 0702 c.slli64 a4 - 46: 010d addi sp,sp,3 - 48: 0000 unimp - 4a: 040d addi s0,s0,3 - 4c: 6905 lui s2,0x1 - 4e: 746e ld s0,248(sp) - 50: 0a00 addi s0,sp,272 - 52: 004a c.slli zero,0x12 - 54: 0000 unimp - 56: 5106 lw sp,96(sp) - 58: 0000 unimp - 5a: 0600 addi s0,sp,768 - 5c: 004a c.slli zero,0x12 - 5e: 0000 unimp - 60: 0402 c.slli64 s0 - 62: 00022b07 flw fs6,0(tp) # 0 - 66: 0200 addi s0,sp,256 - 68: 0508 addi a0,sp,640 - 6a: 02c5 addi t0,t0,17 - 6c: 0000 unimp - 6e: 00014907 flq fs2,0(sp) - 72: 0300 addi s0,sp,384 - 74: 1969 addi s2,s2,-6 - 76: 007a c.slli zero,0x1e - 78: 0000 unimp - 7a: 0802 c.slli64 a6 - 7c: 00022607 flw fa2,0(tp) # 0 - 80: 0700 addi s0,sp,896 - 82: 00dc addi a5,sp,68 - 84: 0000 unimp - 86: 7a1ae803 lwu a6,1953(s5) - 8a: 0000 unimp - 8c: 0700 addi s0,sp,896 - 8e: 0000014b fnmsub.s ft2,ft0,ft0,ft0,rne - 92: 3c04 fld fs1,56(s0) - 94: 6e14 ld a3,24(a2) - 96: 0000 unimp - 98: 0700 addi s0,sp,896 - 9a: 00de slli ra,ra,0x17 - 9c: 0000 unimp - 9e: 5204 lw s1,32(a2) - a0: 8115 srli a0,a0,0x5 - a2: 0000 unimp - a4: 0e00 addi s0,sp,784 - a6: 0326 slli t1,t1,0x9 - a8: 0000 unimp - aa: 0702 c.slli64 a4 - ac: 4a0c lw a1,16(a2) - ae: 0000 unimp - b0: bc00 fsd fs0,56(s0) - b2: 0000 unimp - b4: 0f00 addi s0,sp,912 - b6: 00bc addi a5,sp,72 - b8: 0000 unimp - ba: 0010 0x10 - bc: 0000c803 lbu a6,0(ra) - c0: 0200 addi s0,sp,256 - c2: 0801 addi a6,a6,0 - c4: 00fa slli ra,ra,0x1e - c6: 0000 unimp - c8: c106 sw ra,128(sp) - ca: 0000 unimp - cc: 1100 addi s0,sp,160 - ce: 0135 addi sp,sp,13 - d0: 0000 unimp - d2: 1e02 slli t3,t3,0x20 - d4: 4a05 li s4,1 - d6: 0000 unimp - d8: 3800 fld fs0,48(s0) - da: 00800023 sb s0,0(zero) # 0 - de: 0000 unimp - e0: 4c00 lw s0,24(s0) - e2: 0000 unimp - e4: 0000 unimp - e6: 0000 unimp - e8: 0100 addi s0,sp,128 - ea: 0c9c addi a5,sp,592 - ec: 0001 nop - ee: 0100 addi s0,sp,128 - f0: 1f020073 0x1f020073 - f4: 0c09 addi s8,s8,2 - f6: 0001 nop - f8: 0200 addi s0,sp,256 - fa: 6891 lui a7,0x4 - fc: 0409 addi s0,s0,2 - fe: 0001 nop - 100: 0200 addi s0,sp,256 - 102: 0f1f 010c 0000 0x10c0f1f - 108: 9102 jalr sp - 10a: 0060 addi s0,sp,12 - 10c: 4a12 lw s4,4(sp) - 10e: 0000 unimp - 110: 1c00 addi s0,sp,560 - 112: 0001 nop - 114: 1300 addi s0,sp,416 - 116: 007a c.slli zero,0x1e - 118: 0000 unimp - 11a: 0000 unimp - 11c: 7314 ld a3,32(a4) - 11e: 6d75 lui s10,0x1d - 120: 0200 addi s0,sp,256 - 122: 0609 addi a2,a2,2 - 124: 00000067 jr zero # 0 - 128: 231a fld ft6,384(sp) - 12a: 8000 0x8000 - 12c: 0000 unimp - 12e: 0000 unimp - 130: 001e c.slli zero,0x7 - 132: 0000 unimp - 134: 0000 unimp - 136: 0000 unimp - 138: 9c01 subw s0,s0,s0 - 13a: 0159 addi sp,sp,22 - 13c: 0000 unimp - 13e: 4e04 lw s1,24(a2) - 140: 0200 addi s0,sp,256 - 142: 0f09 addi t5,t5,2 - 144: 00000067 jr zero # 0 - 148: 9102 jalr sp - 14a: 0158 addi a4,sp,132 - 14c: 0061 c.nop 24 - 14e: 1102 slli sp,sp,0x20 - 150: 4a08 lw a0,16(a2) - 152: 0000 unimp - 154: 0200 addi s0,sp,256 - 156: 6c91 lui s9,0x4 - 158: 0800 addi s0,sp,16 - 15a: 00e8 addi a0,sp,76 - 15c: 0000 unimp - 15e: 1246 slli tp,tp,0x31 - 160: 0099 addi ra,ra,6 - 162: 0000 unimp - 164: 22f2 fld ft5,280(sp) - 166: 8000 0x8000 - 168: 0000 unimp - 16a: 0000 unimp - 16c: 0028 addi a0,sp,8 - 16e: 0000 unimp - 170: 0000 unimp - 172: 0000 unimp - 174: 9c01 subw s0,s0,s0 - 176: 0189 addi gp,gp,2 - 178: 0000 unimp - 17a: 7004 ld s1,32(s0) - 17c: 46010063 beqz sp,5dc - 180: 9925 andi a0,a0,-23 - 182: 0000 unimp - 184: 0200 addi s0,sp,256 - 186: 6891 lui a7,0x4 - 188: 0800 addi s0,sp,16 - 18a: 00ff 0xff - 18c: 0000 unimp - 18e: 1140 addi s0,sp,164 - 190: 008d addi ra,ra,3 - 192: 0000 unimp - 194: 22bc fld fa5,64(a3) - 196: 8000 0x8000 - 198: 0000 unimp - 19a: 0000 unimp - 19c: 0036 c.slli zero,0xd - 19e: 0000 unimp - 1a0: 0000 unimp - 1a2: 0000 unimp - 1a4: 9c01 subw s0,s0,s0 - 1a6: 000001c7 fmsub.s ft3,ft0,ft0,ft0,rne - 1aa: 7804 ld s1,48(s0) - 1ac: 0100 addi s0,sp,128 - 1ae: 1f40 addi s0,sp,948 - 1b0: 008d addi ra,ra,3 - 1b2: 0000 unimp - 1b4: 9102 jalr sp - 1b6: 0158 addi a4,sp,132 - 1b8: 6962 ld s2,24(sp) - 1ba: 0074 addi a3,sp,12 - 1bc: 4201 li tp,0 - 1be: 8d0c 0x8d0c - 1c0: 0000 unimp - 1c2: 0200 addi s0,sp,256 - 1c4: 6891 lui a7,0x4 - 1c6: 1500 addi s0,sp,672 - 1c8: 00ce slli ra,ra,0x13 - 1ca: 0000 unimp - 1cc: 2c01 sext.w s8,s8 - 1ce: 00223227 fsd ft2,4(tp) # 4 - 1d2: 0080 addi s0,sp,64 - 1d4: 0000 unimp - 1d6: 8a00 0x8a00 - 1d8: 0000 unimp - 1da: 0000 unimp - 1dc: 0000 unimp - 1de: 0100 addi s0,sp,128 - 1e0: 2c9c fld fa5,24(s1) - 1e2: 0002 c.slli64 zero - 1e4: 0500 addi s0,sp,640 - 1e6: 0120 addi s0,sp,136 - 1e8: 0000 unimp - 1ea: 332c fld fa1,96(a4) - 1ec: 004a c.slli zero,0x12 - 1ee: 0000 unimp - 1f0: 9102 jalr sp - 1f2: 096c addi a1,sp,156 - 1f4: 015a slli sp,sp,0x16 - 1f6: 0000 unimp - 1f8: 2e01 sext.w t3,t3 - 1fa: 00005117 auipc sp,0x5 - 1fe: 0900 addi s0,sp,144 - 200: 00374c03 lbu s8,3(a4) - 204: 0080 addi s0,sp,64 - 206: 0000 unimp - 208: 0900 addi s0,sp,144 - 20a: 00d6 slli ra,ra,0x15 - 20c: 0000 unimp - 20e: 2f01 sext.w t5,t5 - 210: 00005117 auipc sp,0x5 - 214: 0900 addi s0,sp,144 - 216: 00374803 lbu a6,3(a4) - 21a: 0080 addi s0,sp,64 - 21c: 0000 unimp - 21e: 1600 addi s0,sp,800 - 220: 0154 addi a3,sp,132 - 222: 0000 unimp - 224: 3001 0x3001 - 226: 00004a17 auipc s4,0x4 - 22a: 0000 unimp - 22c: 6008 ld a0,0(s0) - 22e: 0001 nop - 230: 1c00 addi s0,sp,560 - 232: 4a0c lw a1,16(a2) - 234: 0000 unimp - 236: 0e00 addi s0,sp,784 - 238: 0021 c.nop 8 - 23a: 0080 addi s0,sp,64 - 23c: 0000 unimp - 23e: 2400 fld fs0,8(s0) - 240: 0001 nop - 242: 0000 unimp - 244: 0000 unimp - 246: 0100 addi s0,sp,128 - 248: ef9c sd a5,24(a5) - 24a: 0002 c.slli64 zero - 24c: 0400 addi s0,sp,512 - 24e: 006e c.slli zero,0x1b - 250: 1c01 addi s8,s8,-32 - 252: 4a1d li s4,7 - 254: 0000 unimp - 256: 0300 addi s0,sp,384 - 258: bc91 j fffffffffffffcac <__global_pointer$+0xffffffff7fffbd64> - 25a: 057f 0x57f - 25c: 013a slli sp,sp,0xe - 25e: 0000 unimp - 260: 371c fld fa5,40(a4) - 262: 000002ef jal t0,262 - 266: 7fb09103 lh sp,2043(ra) - 26a: 2705 addiw a4,a4,1 - 26c: 0001 nop - 26e: 1c00 addi s0,sp,560 - 270: 0003054b fnmsub.s fa0,ft6,ft0,ft0,rne - 274: 0300 addi s0,sp,384 - 276: a891 j 2ca - 278: 017f 0x17f - 27a: 0069 c.nop 26 - 27c: 1e01 addi t3,t3,-32 - 27e: 00004a07 flq fs4,0(zero) # 0 - 282: 0200 addi s0,sp,256 - 284: 6c91 lui s9,0x4 - 286: 0021280b 0x21280b - 28a: 0080 addi s0,sp,64 - 28c: 0000 unimp - 28e: 9e00 0x9e00 - 290: 0000 unimp - 292: 0000 unimp - 294: 0000 unimp - 296: 0100 addi s0,sp,128 - 298: 3074 fld fa3,224(s0) - 29a: 0100 addi s0,sp,128 - 29c: 0c22 slli s8,s8,0x8 - 29e: 02f4 addi a3,sp,332 - 2a0: 0000 unimp - 2a2: 9102 jalr sp - 2a4: 0160 addi s0,sp,140 - 2a6: 3174 fld fa3,224(a0) - 2a8: 0100 addi s0,sp,128 - 2aa: 1a22 slli s4,s4,0x28 - 2ac: 02f4 addi a3,sp,332 - 2ae: 0000 unimp - 2b0: 9102 jalr sp - 2b2: 0158 addi a4,sp,132 - 2b4: 3076 fld ft0,376(sp) - 2b6: 0100 addi s0,sp,128 - 2b8: 02f40c23 sb a5,56(s0) # ffffffffffff9038 <__global_pointer$+0xffffffff7fff50f0> - 2bc: 0000 unimp - 2be: 9102 jalr sp - 2c0: 0150 addi a2,sp,132 - 2c2: 3176 fld ft2,376(sp) - 2c4: 0100 addi s0,sp,128 - 2c6: 02f41c23 sh a5,56(s0) - 2ca: 0000 unimp - 2cc: 9102 jalr sp - 2ce: 0148 addi a0,sp,132 - 2d0: 7165 addi sp,sp,-400 - 2d2: 0031 c.nop 12 - 2d4: 2401 sext.w s0,s0 - 2d6: 4a09 li s4,2 - 2d8: 0000 unimp - 2da: 0200 addi s0,sp,256 - 2dc: 4491 li s1,4 - 2de: 6501 0x6501 - 2e0: 3271 addiw tp,tp,-4 - 2e2: 0100 addi s0,sp,128 - 2e4: 1924 addi s1,sp,184 - 2e6: 004a c.slli zero,0x12 - 2e8: 0000 unimp - 2ea: 9102 jalr sp - 2ec: 0040 addi s0,sp,4 - 2ee: 0300 addi s0,sp,384 - 2f0: 0300 addi s0,sp,384 - 2f2: 0000 unimp - 2f4: 0802 c.slli64 a6 - 2f6: 2e04 fld fs1,24(a2) - 2f8: 0001 nop - 2fa: 0600 addi s0,sp,768 - 2fc: 02f4 addi a3,sp,332 - 2fe: 0000 unimp - 300: fb0a sd sp,432(sp) - 302: 0002 c.slli64 zero - 304: 0300 addi s0,sp,384 - 306: 000002fb 0x2fb - 30a: 2708 fld fa0,8(a4) - 30c: 0001 nop - 30e: 0c00 addi s0,sp,528 - 310: 4a0c lw a1,16(a2) - 312: 0000 unimp - 314: 0000 unimp - 316: 0020 addi s0,sp,8 - 318: 0080 addi s0,sp,64 - 31a: 0000 unimp - 31c: 0e00 addi s0,sp,784 - 31e: 0001 nop - 320: 0000 unimp - 322: 0000 unimp - 324: 0100 addi s0,sp,128 - 326: ad9c fsd fa5,24(a1) - 328: 04000003 lb zero,64(zero) # 40 - 32c: 006e c.slli zero,0x1b - 32e: 0c01 addi s8,s8,0 - 330: 00004a17 auipc s4,0x4 - 334: 0200 addi s0,sp,256 - 336: 4c91 li s9,4 - 338: 3a05 addiw s4,s4,-31 - 33a: 0001 nop - 33c: 0c00 addi s0,sp,528 - 33e: ad2e fsd fa1,152(sp) - 340: 02000003 lb zero,32(zero) # 20 - 344: 4091 li ra,4 - 346: 2705 addiw a4,a4,1 - 348: 0001 nop - 34a: 0c00 addi s0,sp,528 - 34c: 0003b23f b8910300 0xb89103000003b23f - 354: 017f 0x17f - 356: 0069 c.nop 26 - 358: 0e01 addi t3,t3,0 - 35a: 00004a07 flq fs4,0(zero) # 0 - 35e: 0200 addi s0,sp,256 - 360: 6c91 lui s9,0x4 - 362: 00201a0b 0x201a0b - 366: 0080 addi s0,sp,64 - 368: 0000 unimp - 36a: 8400 0x8400 - 36c: 0000 unimp - 36e: 0000 unimp - 370: 0000 unimp - 372: 0100 addi s0,sp,128 - 374: 3074 fld fa3,224(s0) - 376: 0100 addi s0,sp,128 - 378: 0912 slli s2,s2,0x4 - 37a: 004a c.slli zero,0x12 - 37c: 0000 unimp - 37e: 9102 jalr sp - 380: 0168 addi a0,sp,140 - 382: 3174 fld fa3,224(a0) - 384: 0100 addi s0,sp,128 - 386: 1712 slli a4,a4,0x24 - 388: 004a c.slli zero,0x12 - 38a: 0000 unimp - 38c: 9102 jalr sp - 38e: 0164 addi s1,sp,140 - 390: 3076 fld ft0,376(sp) - 392: 0100 addi s0,sp,128 - 394: 004a0913 addi s2,s4,4 # 4334 - 398: 0000 unimp - 39a: 9102 jalr sp - 39c: 0160 addi s0,sp,140 - 39e: 3176 fld ft2,376(sp) - 3a0: 0100 addi s0,sp,128 - 3a2: 004a1913 slli s2,s4,0x4 - 3a6: 0000 unimp - 3a8: 9102 jalr sp - 3aa: 005c addi a5,sp,4 - 3ac: 0300 addi s0,sp,384 - 3ae: 0056 c.slli zero,0x15 - 3b0: 0000 unimp - 3b2: 00005b03 lhu s6,0(zero) # 0 - 3b6: 0000 unimp - 3b8: 0025 c.nop 9 - 3ba: 0000 unimp - 3bc: 0005 c.nop 1 - 3be: 0801 addi a6,a6,0 - 3c0: 0152 slli sp,sp,0x14 - 3c2: 0000 unimp - 3c4: c701 beqz a4,3cc - 3c6: 00000003 lb zero,0(zero) # 0 - 3ca: 0000 unimp - 3cc: 0080 addi s0,sp,64 - 3ce: 0000 unimp - 3d0: c600 sw s0,8(a2) - 3d2: 00016d03 lwu s10,0(sp) # 5210 - 3d6: 7300 ld s0,32(a4) - 3d8: 0001 nop - 3da: 9e00 0x9e00 - 3dc: 0001 nop - 3de: 0100 addi s0,sp,128 - 3e0: 7980 ld s0,48(a1) - 3e2: 000e c.slli zero,0x3 - 3e4: 0500 addi s0,sp,640 - 3e6: 0100 addi s0,sp,128 - 3e8: 6608 ld a0,8(a2) - 3ea: 0001 nop - 3ec: 1d00 addi s0,sp,688 - 3ee: 0000 unimp - 3f0: 0000 unimp - 3f2: d00c sw a1,32(s0) - 3f4: 0000 unimp - 3f6: 0900 addi s0,sp,144 - 3f8: 0000 unimp - 3fa: 8400 0x8400 - 3fc: 00800023 sb s0,0(zero) # 0 - 400: 0000 unimp - 402: 1800 addi s0,sp,48 - 404: 0012 c.slli zero,0x4 - 406: 0000 unimp - 408: 0000 unimp - 40a: cf00 sw s0,24(a4) - 40c: 08000007 0x8000007 - 410: 0601 addi a2,a2,0 - 412: 000000f3 0xf3 - 416: 0108 addi a0,sp,128 - 418: f108 sd a0,32(a0) - 41a: 0000 unimp - 41c: 0800 addi s0,sp,16 - 41e: 0502 c.slli64 a0 - 420: 0000013f 0d070208 0xd0702080000013f - 428: 0001 nop - 42a: 1e00 addi s0,sp,816 - 42c: 0504 addi s1,sp,640 - 42e: 6e69 lui t3,0x1a - 430: 0074 addi a3,sp,12 - 432: 00004a13 xori s4,zero,0 - 436: 0f00 addi s0,sp,912 - 438: 0051 c.nop 20 - 43a: 0000 unimp - 43c: 00004a0f 0x4a0f - 440: 0800 addi s0,sp,16 - 442: 0704 addi s1,sp,896 - 444: 0000022b 0x22b - 448: 0808 addi a0,sp,16 - 44a: c505 beqz a0,472 - 44c: 0002 c.slli64 zero - 44e: 0a00 addi s0,sp,272 - 450: 0149 addi sp,sp,18 - 452: 0000 unimp - 454: 6904 ld s1,16(a0) - 456: 7a19 lui s4,0xfffe6 - 458: 0000 unimp - 45a: 0800 addi s0,sp,16 - 45c: 0708 addi a0,sp,896 - 45e: 0226 slli tp,tp,0x9 - 460: 0000 unimp - 462: dc0a sw sp,56(sp) - 464: 0000 unimp - 466: 0400 addi s0,sp,512 - 468: 1ae8 addi a0,sp,380 - 46a: 007a c.slli zero,0x1e - 46c: 0000 unimp - 46e: 4b0a lw s6,128(sp) - 470: 0001 nop - 472: 0500 addi s0,sp,640 - 474: 143c addi a5,sp,552 - 476: 006e c.slli zero,0x1b - 478: 0000 unimp - 47a: 00008d13 mv s10,ra - 47e: 0a00 addi s0,sp,272 - 480: 00de slli ra,ra,0x17 - 482: 0000 unimp - 484: 5205 li tp,-31 - 486: 8115 srli a0,a0,0x5 - 488: 0000 unimp - 48a: 0f00 addi s0,sp,912 - 48c: 009e slli ra,ra,0x7 - 48e: 0000 unimp - 490: 590a lw s2,160(sp) - 492: 0002 c.slli64 zero - 494: 0600 addi s0,sp,768 - 496: 17d1 addi a5,a5,-12 - 498: 007a c.slli zero,0x1e - 49a: 0000 unimp - 49c: 0808 addi a0,sp,16 - 49e: c005 beqz s0,4be - 4a0: 0002 c.slli64 zero - 4a2: 1f00 addi s0,sp,944 - 4a4: 2008 fld fa0,0(s0) - 4a6: cc08 sw a0,24(s0) - 4a8: 07000003 lb zero,112(zero) # 70 - 4ac: 000000cf fnmadd.s ft1,ft0,ft0,ft0,rne - 4b0: 0108 addi a0,sp,128 - 4b2: fa08 sd a0,48(a2) - 4b4: 0000 unimp - 4b6: 0f00 addi s0,sp,912 - 4b8: 000000cf fnmadd.s ft1,ft0,ft0,ft0,rne - 4bc: 0000d607 0xd607 - 4c0: 0800 addi s0,sp,16 - 4c2: 0708 addi a0,sp,896 - 4c4: 0221 addi tp,tp,8 - 4c6: 0000 unimp - 4c8: 450a lw a0,128(sp) - 4ca: 0002 c.slli64 zero - 4cc: 0700 addi s0,sp,896 - 4ce: 1b28 addi a0,sp,440 - 4d0: 00c4 addi s1,sp,68 - 4d2: 0000 unimp - 4d4: 4c0a lw s8,128(sp) - 4d6: 0002 c.slli64 zero - 4d8: 0700 addi s0,sp,896 - 4da: 00e71863 bne a4,a4,4ea - 4de: 0000 unimp - 4e0: 7810 ld a2,48(s0) - 4e2: 0f000003 lb zero,240(zero) # f0 - 4e6: 991a add s2,s2,t1 - 4e8: 0000 unimp - 4ea: 1000 addi s0,sp,32 - 4ec: 03b6 slli t2,t2,0xd - 4ee: 0000 unimp - 4f0: 1a10 addi a2,sp,304 - 4f2: 0099 addi ra,ra,6 - 4f4: 0000 unimp - 4f6: 9e0c 0x9e0c - 4f8: 0000 unimp - 4fa: 2500 fld fs0,8(a0) - 4fc: 0001 nop - 4fe: 0d00 addi s0,sp,656 - 500: 007a c.slli zero,0x1e - 502: 0000 unimp - 504: 0001 nop - 506: 00028103 lb sp,0(t0) # 2000 - 50a: 0200 addi s0,sp,256 - 50c: 1225 addi tp,tp,-23 - 50e: 0115 addi sp,sp,5 - 510: 0000 unimp - 512: 0309 addi t1,t1,2 - 514: 3750 fld fa2,168(a4) - 516: 8000 0x8000 - 518: 0000 unimp - 51a: 0000 unimp - 51c: ca0c sw a1,16(a2) - 51e: 0000 unimp - 520: 4b00 lw s0,16(a4) - 522: 0001 nop - 524: 0d00 addi s0,sp,656 - 526: 007a c.slli zero,0x1e - 528: 0000 unimp - 52a: 0001 nop - 52c: 00035b03 lhu s6,0(t1) # fffffffffffe9000 <__global_pointer$+0xffffffff7ffe50b8> - 530: 0200 addi s0,sp,256 - 532: 0e26 slli t3,t3,0x9 - 534: 0000013b addw sp,zero,zero - 538: 0309 addi t1,t1,2 - 53a: 3760 fld fs0,232(a4) - 53c: 8000 0x8000 - 53e: 0000 unimp - 540: 0000 unimp - 542: de21 beqz a2,49a - 544: 02000003 lb zero,32(zero) # 20 - 548: 01c2 slli gp,gp,0x10 - 54a: 6706 ld a4,64(sp) - 54c: 0000 unimp - 54e: c000 sw s0,0(s0) - 550: 0034 addi a3,sp,8 - 552: 0080 addi s0,sp,64 - 554: 0000 unimp - 556: dc00 sw s0,56(s0) - 558: 0000 unimp - 55a: 0000 unimp - 55c: 0000 unimp - 55e: 0100 addi s0,sp,128 - 560: b29c fsd fa5,32(a3) - 562: 0001 nop - 564: 0500 addi s0,sp,640 - 566: 00727473 csrrci s0,0x7,4 - 56a: 01c2 slli gp,gp,0x10 - 56c: 0000db17 auipc s6,0xd - 570: 0200 addi s0,sp,256 - 572: 5891 li a7,-28 - 574: 7206 ld tp,96(sp) - 576: 7365 lui t1,0xffff9 - 578: c400 sw s0,8(s0) - 57a: 0801 addi a6,a6,0 - 57c: 00000067 jr zero # 0 - 580: 9102 jalr sp - 582: 1468 addi a0,sp,556 - 584: 0260 addi s0,sp,268 - 586: 0000 unimp - 588: 01c5 addi gp,gp,17 - 58a: 00004a07 flq fs4,0(zero) # 0 - 58e: 0200 addi s0,sp,256 - 590: 6491 lui s1,0x4 - 592: 0e00 addi s0,sp,784 - 594: 020c addi a1,sp,256 - 596: 0000 unimp - 598: 0826 slli a6,a6,0x9 - 59a: 00ca slli ra,ra,0x12 - 59c: 0000 unimp - 59e: 3476 fld fs0,376(sp) - 5a0: 8000 0x8000 - 5a2: 0000 unimp - 5a4: 0000 unimp - 5a6: 004a c.slli zero,0x12 - 5a8: 0000 unimp - 5aa: 0000 unimp - 5ac: 0000 unimp - 5ae: 9c01 subw s0,s0,s0 - 5b0: 01ff 0x1ff - 5b2: 0000 unimp - 5b4: f511 bnez a0,4c0 - 5b6: ba000003 lb zero,-1120(zero) # fffffffffffffba0 <__global_pointer$+0xffffffff7fffbc58> - 5ba: 1401 addi s0,s0,-32 - 5bc: 00ca slli ra,ra,0x12 - 5be: 0000 unimp - 5c0: 9102 jalr sp - 5c2: 0558 addi a4,sp,644 - 5c4: 00637273 csrrci tp,0x6,6 - 5c8: 01ba slli gp,gp,0xe - 5ca: db26 sw s1,180(sp) - 5cc: 0000 unimp - 5ce: 0200 addi s0,sp,256 - 5d0: 5091 li ra,-28 - 5d2: 6406 ld s0,64(sp) - 5d4: bc00 fsd fs0,56(s0) - 5d6: 0901 addi s2,s2,0 - 5d8: 00ca slli ra,ra,0x12 - 5da: 0000 unimp - 5dc: 9102 jalr sp - 5de: 0068 addi a0,sp,12 - 5e0: ad0e fsd ft3,152(sp) - 5e2: 0002 c.slli64 zero - 5e4: 2400 fld fs0,8(s0) - 5e6: 4a06 lw s4,64(sp) - 5e8: 0000 unimp - 5ea: 0400 addi s0,sp,512 - 5ec: 0034 addi a3,sp,8 - 5ee: 0080 addi s0,sp,64 - 5f0: 0000 unimp - 5f2: 7200 ld s0,32(a2) - 5f4: 0000 unimp - 5f6: 0000 unimp - 5f8: 0000 unimp - 5fa: 0100 addi s0,sp,128 - 5fc: 599c lw a5,48(a1) - 5fe: 0002 c.slli64 zero - 600: 0500 addi s0,sp,640 - 602: ae003173 csrrc sp,0xae0,zero - 606: 1801 addi a6,a6,-32 - 608: 000000db 0xdb - 60c: 9102 jalr sp - 60e: 0558 addi a4,sp,644 - 610: ae003273 csrrc tp,0xae0,zero - 614: 2801 sext.w a6,a6 - 616: 000000db 0xdb - 61a: 9102 jalr sp - 61c: 0650 addi a2,sp,772 - 61e: b0003163 0xb0003163 - 622: 1101 addi sp,sp,-32 - 624: 0035 c.nop 13 - 626: 0000 unimp - 628: 9102 jalr sp - 62a: 3263066f jal a2,30950 - 62e: b000 fsd fs0,32(s0) - 630: 1501 addi a0,a0,-32 - 632: 0035 c.nop 13 - 634: 0000 unimp - 636: 9102 jalr sp - 638: 006e c.slli zero,0x1b - 63a: b10e fsd ft3,160(sp) - 63c: 0001 nop - 63e: 7700 ld s0,40(a4) - 640: af09 j d52 - 642: 0000 unimp - 644: b600 fsd fs0,40(a2) - 646: 00800033 add zero,zero,s0 - 64a: 0000 unimp - 64c: 4e00 lw s0,24(a2) - 64e: 0000 unimp - 650: 0000 unimp - 652: 0000 unimp - 654: 0100 addi s0,sp,128 - 656: a29c fsd fa5,0(a3) - 658: 0002 c.slli64 zero - 65a: 0500 addi s0,sp,640 - 65c: 01a60073 0x1a60073 - 660: db1c sw a5,48(a4) - 662: 0000 unimp - 664: 0200 addi s0,sp,256 - 666: 5891 li a7,-28 - 668: 6e05 lui t3,0x1 - 66a: a600 fsd fs0,8(a2) - 66c: 2601 sext.w a2,a2 - 66e: 000000af 0xaf - 672: 9102 jalr sp - 674: 0650 addi a2,sp,772 - 676: 0070 addi a2,sp,12 - 678: 01a8 addi a0,sp,200 - 67a: 0000db0f 0xdb0f - 67e: 0200 addi s0,sp,256 - 680: 6891 lui a7,0x4 - 682: 0e00 addi s0,sp,784 - 684: 01aa slli gp,gp,0xa - 686: 0000 unimp - 688: 0929 addi s2,s2,10 - 68a: 000000af 0xaf - 68e: 337a fld ft6,440(sp) - 690: 8000 0x8000 - 692: 0000 unimp - 694: 0000 unimp - 696: 003c addi a5,sp,8 - 698: 0000 unimp - 69a: 0000 unimp - 69c: 0000 unimp - 69e: 9c01 subw s0,s0,s0 - 6a0: 02de slli t0,t0,0x17 - 6a2: 0000 unimp - 6a4: 7305 lui t1,0xfffe1 - 6a6: 9e00 0x9e00 - 6a8: 1b01 addi s6,s6,-32 - 6aa: 000000db 0xdb - 6ae: 9102 jalr sp - 6b0: 0658 addi a4,sp,772 - 6b2: 0070 addi a2,sp,12 - 6b4: 01a0 addi s0,sp,200 - 6b6: 0000db0f 0xdb0f - 6ba: 0200 addi s0,sp,256 - 6bc: 6891 lui a7,0x4 - 6be: 0e00 addi s0,sp,784 - 6c0: 000002d3 fadd.s ft5,ft0,ft0,rne - 6c4: 0921 addi s2,s2,8 - 6c6: 00c2 slli ra,ra,0x10 - 6c8: 0000 unimp - 6ca: 32ac fld fa1,96(a3) - 6cc: 8000 0x8000 - 6ce: 0000 unimp - 6d0: 0000 unimp - 6d2: 00ce slli ra,ra,0x13 - 6d4: 0000 unimp - 6d6: 0000 unimp - 6d8: 0000 unimp - 6da: 9c01 subw s0,s0,s0 - 6dc: 037f 0x37f - 6de: 0000 unimp - 6e0: f511 bnez a0,5ec - 6e2: 8b000003 lb zero,-1872(zero) # fffffffffffff8b0 <__global_pointer$+0xffffffff7fffb968> - 6e6: 1401 addi s0,s0,-32 - 6e8: 00c2 slli ra,ra,0x10 - 6ea: 0000 unimp - 6ec: 9102 jalr sp - 6ee: 1148 addi a0,sp,164 - 6f0: 0392 slli t2,t2,0x4 - 6f2: 0000 unimp - 6f4: 4a1e018b 0x4a1e018b - 6f8: 0000 unimp - 6fa: 0200 addi s0,sp,256 - 6fc: 4491 li s1,4 - 6fe: 6c05 lui s8,0x1 - 700: 6e65 lui t3,0x19 - 702: 8b00 0x8b00 - 704: 2b01 sext.w s6,s6 - 706: 000000af 0xaf - 70a: 7fb89103 lh sp,2043(a7) # 47fb - 70e: ce15 beqz a2,74a - 710: 0032 c.slli zero,0xc - 712: 0080 addi s0,sp,64 - 714: 0000 unimp - 716: 6c00 ld s0,24(s0) - 718: 0000 unimp - 71a: 0000 unimp - 71c: 0000 unimp - 71e: 5f00 lw s0,56(a4) - 720: 14000003 lb zero,320(zero) # 140 - 724: 0369 addi t1,t1,26 - 726: 0000 unimp - 728: 018e slli gp,gp,0x3 - 72a: 00009e0f 0x9e0f - 72e: 0200 addi s0,sp,256 - 730: 5891 li a7,-28 - 732: 6406 ld s0,64(sp) - 734: 9300 0x9300 - 736: 1001 c.nop -32 - 738: 037f 0x37f - 73a: 0000 unimp - 73c: 9102 jalr sp - 73e: 0068 addi a0,sp,12 - 740: 3a09 addiw s4,s4,-30 - 742: 00800033 add zero,zero,s0 - 746: 0000 unimp - 748: 3400 fld fs0,40(s0) - 74a: 0000 unimp - 74c: 0000 unimp - 74e: 0000 unimp - 750: 0600 addi s0,sp,768 - 752: 0064 addi s1,sp,12 - 754: ca0b0197 auipc gp,0xca0b0 - 758: 0000 unimp - 75a: 0200 addi s0,sp,256 - 75c: 6091 lui ra,0x4 - 75e: 0000 unimp - 760: 00009e07 0x9e07 - 764: 0e00 addi s0,sp,784 - 766: 000003bf 00c2091f 0xc2091f000003bf - 76e: 0000 unimp - 770: 31f4 fld fa3,224(a1) - 772: 8000 0x8000 - 774: 0000 unimp - 776: 0000 unimp - 778: 00b8 addi a4,sp,72 - 77a: 0000 unimp - 77c: 0000 unimp - 77e: 0000 unimp - 780: 9c01 subw s0,s0,s0 - 782: 0430 addi a2,sp,520 - 784: 0000 unimp - 786: f511 bnez a0,692 - 788: 7b000003 lb zero,1968(zero) # 7b0 - 78c: 1401 addi s0,s0,-32 - 78e: 00c2 slli ra,ra,0x10 - 790: 0000 unimp - 792: 9102 jalr sp - 794: 0548 addi a0,sp,644 - 796: 00637273 csrrci tp,0x6,6 - 79a: 3026017b 0x3026017b - 79e: 0004 0x4 - 7a0: 0200 addi s0,sp,256 - 7a2: 4091 li ra,4 - 7a4: 6c05 lui s8,0x1 - 7a6: 6e65 lui t3,0x19 - 7a8: 7b00 ld s0,48(a4) - 7aa: 3201 addiw tp,tp,-32 - 7ac: 000000af 0xaf - 7b0: 7fb89103 lh sp,2043(a7) - 7b4: 1a15 addi s4,s4,-27 - 7b6: 0032 c.slli zero,0xc - 7b8: 0080 addi s0,sp,64 - 7ba: 0000 unimp - 7bc: 4200 lw s0,0(a2) - 7be: 0000 unimp - 7c0: 0000 unimp - 7c2: 0000 unimp - 7c4: 0300 addi s0,sp,384 - 7c6: 0004 0x4 - 7c8: 0600 addi s0,sp,768 - 7ca: 017e0073 0x17e0073 - 7ce: 3616 fld fa2,352(sp) - 7d0: 0004 0x4 - 7d2: 0200 addi s0,sp,256 - 7d4: 6891 lui a7,0x4 - 7d6: 6406 ld s0,64(sp) - 7d8: 7f00 ld s0,56(a4) - 7da: 1001 c.nop -32 - 7dc: 037f 0x37f - 7de: 0000 unimp - 7e0: 9102 jalr sp - 7e2: 0060 addi s0,sp,12 - 7e4: 5c09 li s8,-30 - 7e6: 0032 c.slli zero,0xc - 7e8: 0080 addi s0,sp,64 - 7ea: 0000 unimp - 7ec: 4400 lw s0,8(s0) - 7ee: 0000 unimp - 7f0: 0000 unimp - 7f2: 0000 unimp - 7f4: 0600 addi s0,sp,768 - 7f6: 01830073 0x1830073 - 7fa: db11 beqz a4,70e - 7fc: 0000 unimp - 7fe: 0200 addi s0,sp,256 - 800: 5891 li a7,-28 - 802: 6406 ld s0,64(sp) - 804: 8400 0x8400 - 806: 0b01 addi s6,s6,0 - 808: 00ca slli ra,ra,0x12 - 80a: 0000 unimp - 80c: 9102 jalr sp - 80e: 0050 addi a2,sp,4 - 810: 0700 addi s0,sp,896 - 812: 0435 addi s0,s0,13 - 814: 0000 unimp - 816: 0722 slli a4,a4,0x8 - 818: 00aa slli ra,ra,0xa - 81a: 0000 unimp - 81c: 2512 fld fa0,256(sp) - 81e: 03000003 lb zero,48(zero) # 30 - 822: 05f4 addi a3,sp,716 - 824: 004a c.slli zero,0x12 - 826: 0000 unimp - 828: 3132 fld ft2,296(sp) - 82a: 8000 0x8000 - 82c: 0000 unimp - 82e: 0000 unimp - 830: 00c2 slli ra,ra,0x10 - 832: 0000 unimp - 834: 0000 unimp - 836: 0000 unimp - 838: 9c01 subw s0,s0,s0 - 83a: 04ee slli s1,s1,0x1b - 83c: 0000 unimp - 83e: 7305 lui t1,0xfffe1 - 840: 7274 ld a3,224(a2) - 842: 6700 ld s0,8(a4) - 844: 1301 addi t1,t1,-32 - 846: 00ca slli ra,ra,0x12 - 848: 0000 unimp - 84a: 7e889103 lh sp,2024(a7) # 47e8 - 84e: 6605 lui a2,0x1 - 850: 746d lui s0,0xffffb - 852: 6700 ld s0,8(a4) - 854: 2401 sext.w s0,s0 - 856: 000000db 0xdb - 85a: 7e809103 lh sp,2024(ra) # 47e8 - 85e: 0618 addi a4,sp,768 - 860: 7061 c.lui zero,0xffff8 - 862: 6900 ld s0,16(a0) - 864: 0b01 addi s6,s6,0 - 866: 000000f3 0xf3 - 86a: 7fb09103 lh sp,2043(ra) - 86e: 7c14 ld a3,56(s0) - 870: 0002 c.slli64 zero - 872: 6a00 ld s0,16(a2) - 874: 0901 addi s2,s2,0 - 876: 00ca slli ra,ra,0x12 - 878: 0000 unimp - 87a: 7fb89103 lh sp,2043(a7) - 87e: 00038423 sb zero,8(t2) - 882: 0200 addi s0,sp,256 - 884: 016d addi sp,sp,27 - 886: ec08 sd a0,24(s0) - 888: 0030 addi a2,sp,8 - 88a: 0080 addi s0,sp,64 - 88c: 0000 unimp - 88e: 4600 lw s0,8(a2) - 890: 0000 unimp - 892: 0000 unimp - 894: 0000 unimp - 896: 0100 addi s0,sp,128 - 898: 079c addi a5,sp,960 - 89a: 4891 li a7,4 - 89c: 2306 fld ft6,64(sp) - 89e: 0190 addi a2,sp,192 - 8a0: 0506 slli a0,a0,0x1 - 8a2: 6d006863 bltu zero,a6,f72 - 8a6: 1a01 addi s4,s4,-32 - 8a8: 004a c.slli zero,0x12 - 8aa: 0000 unimp - 8ac: 9102 jalr sp - 8ae: 115c addi a5,sp,164 - 8b0: 02a8 addi a0,sp,328 - 8b2: 0000 unimp - 8b4: 016d addi sp,sp,27 - 8b6: ee25 bnez a2,92e - 8b8: 0004 0x4 - 8ba: 0200 addi s0,sp,256 - 8bc: 5091 li ra,-28 - 8be: ce14 sw a3,24(a2) - 8c0: 0002 c.slli64 zero - 8c2: 6f00 ld s0,24(a4) - 8c4: 0c01 addi s8,s8,0 - 8c6: 000004f3 0x4f3 - 8ca: 9102 jalr sp - 8cc: 0068 addi a0,sp,12 - 8ce: 0700 addi s0,sp,896 - 8d0: 00c2 slli ra,ra,0x10 - 8d2: 0000 unimp - 8d4: 0000ca07 flq fs4,0(ra) - 8d8: 1200 addi s0,sp,288 - 8da: 0326 slli t1,t1,0x9 - 8dc: 0000 unimp - 8de: 4a05c803 lbu a6,1184(a1) - 8e2: 0000 unimp - 8e4: 9600 0x9600 - 8e6: 0030 addi a2,sp,8 - 8e8: 0080 addi s0,sp,64 - 8ea: 0000 unimp - 8ec: 5600 lw s0,40(a2) - 8ee: 0000 unimp - 8f0: 0000 unimp - 8f2: 0000 unimp - 8f4: 0100 addi s0,sp,128 - 8f6: 3b9c fld fa5,48(a5) - 8f8: 0005 c.nop 1 - 8fa: 0500 addi s0,sp,640 - 8fc: 6d66 ld s10,88(sp) - 8fe: 0074 addi a3,sp,12 - 900: 015c addi a5,sp,132 - 902: db18 sw a4,48(a4) - 904: 0000 unimp - 906: 0300 addi s0,sp,384 - 908: 9891 andi s1,s1,-28 - 90a: 187f 0x187f - 90c: 6106 ld sp,64(sp) - 90e: 0070 addi a2,sp,12 - 910: 015e slli sp,sp,0x17 - 912: 0000f30b 0xf30b - 916: 0300 addi s0,sp,384 - 918: a891 j 96c - 91a: 007f 0x7f - 91c: fa19 bnez a2,832 - 91e: c5000003 lb zero,-944(zero) # fffffffffffffc50 <__global_pointer$+0xffffffff7fffbd08> - 922: 360d addiw a2,a2,-29 - 924: 002d c.nop 11 - 926: 0080 addi s0,sp,64 - 928: 0000 unimp - 92a: 6000 ld s0,0(s0) - 92c: 00000003 lb zero,0(zero) # 0 - 930: 0000 unimp - 932: 0100 addi s0,sp,128 - 934: 749c ld a5,40(s1) - 936: 0006 c.slli zero,0x1 - 938: 0100 addi s0,sp,128 - 93a: 038c addi a1,sp,448 - 93c: 0000 unimp - 93e: c502 sw zero,136(sp) - 940: 841e mv s0,t2 - 942: 0006 c.slli zero,0x1 - 944: 0300 addi s0,sp,384 - 946: a891 j 99a - 948: 017f 0x17f - 94a: 030e slli t1,t1,0x3 - 94c: 0000 unimp - 94e: c502 sw zero,136(sp) - 950: ee3a sd a4,280(sp) - 952: 0004 0x4 - 954: 0300 addi s0,sp,384 - 956: a091 j 99a - 958: 047f 0x47f - 95a: 6d66 ld s10,88(sp) - 95c: 0074 addi a3,sp,12 - 95e: c502 sw zero,136(sp) - 960: db4e sw s3,180(sp) - 962: 0000 unimp - 964: 0300 addi s0,sp,384 - 966: 9891 andi s1,s1,-28 - 968: 047f 0x47f - 96a: 7061 c.lui zero,0xffff8 - 96c: 0200 addi s0,sp,256 - 96e: 5bc5 li s7,-15 - 970: 000000f3 0xf3 - 974: 7f909103 lh sp,2041(ra) - 978: 7002 0x7002 - 97a: 0200 addi s0,sp,256 - 97c: 00db18c7 fmsub.s fa7,fs6,fa3,ft0,rtz - 980: 0000 unimp - 982: 6201 0x6201 - 984: 00028f03 lb t5,0(t0) - 988: 0200 addi s0,sp,256 - 98a: 0fc8 addi a0,sp,980 - 98c: 000000db 0xdb - 990: 7fb89103 lh sp,2043(a7) - 994: 6302 ld t1,0(sp) - 996: 0068 addi a0,sp,12 - 998: c902 sw zero,144(sp) - 99a: 4a10 lw a2,16(a2) - 99c: 0000 unimp - 99e: 0100 addi s0,sp,128 - 9a0: 2459 addiw s0,s0,22 - 9a2: 7265 lui tp,0xffff9 - 9a4: 0072 c.slli zero,0x1c - 9a6: c902 sw zero,144(sp) - 9a8: 4a14 lw a3,16(a2) - 9aa: 0000 unimp - 9ac: 0200 addi s0,sp,256 - 9ae: 756e ld a0,248(sp) - 9b0: 006d c.nop 27 - 9b2: ca02 sw zero,20(sp) - 9b4: e016 sd t0,0(sp) - 9b6: 0000 unimp - 9b8: 0200 addi s0,sp,256 - 9ba: 5891 li a7,-28 - 9bc: 00021303 lh t1,0(tp) # ffffffffffff9000 <__global_pointer$+0xffffffff7fff50b8> - 9c0: 0200 addi s0,sp,256 - 9c2: 004a07cb fnmsub.s fa5,fs4,ft4,ft0,rne - 9c6: 0000 unimp - 9c8: 9102 jalr sp - 9ca: 0354 addi a3,sp,388 - 9cc: 02b4 addi a3,sp,328 - 9ce: 0000 unimp - 9d0: cb02 sw zero,148(sp) - 9d2: 4a0d li s4,3 - 9d4: 0000 unimp - 9d6: 0200 addi s0,sp,256 - 9d8: 5091 li ra,-28 - 9da: 00026503 lwu a0,0(tp) # 0 - 9de: 0200 addi s0,sp,256 - 9e0: 004a14cb fnmsub.s fs1,fs4,ft4,ft0,rtz - 9e4: 0000 unimp - 9e6: 9102 jalr sp - 9e8: 034c addi a1,sp,388 - 9ea: 01c1 addi gp,gp,16 - 9ec: 0000 unimp - 9ee: cb02 sw zero,148(sp) - 9f0: 00004a1b 0x4a1b - 9f4: 0200 addi s0,sp,256 - 9f6: 4891 li a7,4 - 9f8: 00033a03 ld s4,0(t1) # fffffffffffe1000 <__global_pointer$+0xffffffff7ffdd0b8> - 9fc: 0200 addi s0,sp,256 - 9fe: 004a26cb fnmsub.s fa3,fs4,ft4,ft0,rdn - a02: 0000 unimp - a04: 7fb49103 lh sp,2043(s1) # 47fb - a08: 00025403 lhu s0,0(tp) # 0 - a0c: 0200 addi s0,sp,256 - a0e: 08cc addi a1,sp,84 - a10: 000000cf fnmadd.s ft1,ft0,ft0,ft0,rne - a14: 9102 jalr sp - a16: 029f2547 fmsub.d fa0,ft10,fs1,ft0,rdn - a1a: 0000 unimp - a1c: de02 sw zero,60(sp) - a1e: 002db203 ld tp,2(s11) - a22: 0080 addi s0,sp,64 - a24: 0000 unimp - a26: 1600 addi s0,sp,800 - a28: 01b9 addi gp,gp,14 - a2a: 0000 unimp - a2c: 010a slli sp,sp,0x2 - a2e: 2e8e fld ft9,192(sp) - a30: 8000 0x8000 - a32: 0000 unimp - a34: 0000 unimp - a36: 0016 c.slli zero,0x5 - a38: 4a000003 lb zero,1184(zero) # 4a0 - a3c: 4001 c.li zero,0 - a3e: 0030 addi a2,sp,8 - a40: 0080 addi s0,sp,64 - a42: 0000 unimp - a44: 1600 addi s0,sp,800 - a46: 02fe slli t0,t0,0x1f - a48: 0000 unimp - a4a: 0148 addi a0,sp,132 - a4c: 302c fld fa1,96(s0) - a4e: 8000 0x8000 - a50: 0000 unimp - a52: 0000 unimp - a54: 2600 fld fs0,8(a2) - a56: 0684 addi s1,sp,832 - a58: 0000 unimp - a5a: 4a1a lw s4,132(sp) - a5c: 0000 unimp - a5e: 1a00 addi s0,sp,304 - a60: 04ee slli s1,s1,0x1b - a62: 0000 unimp - a64: 0700 addi s0,sp,896 - a66: 0674 addi a3,sp,780 - a68: 0000 unimp - a6a: 0002f70b 0x2f70b - a6e: 0200 addi s0,sp,256 - a70: 00bb12bb sllw t0,s6,a1 - a74: 0000 unimp - a76: 2cce fld fs9,208(sp) - a78: 8000 0x8000 - a7a: 0000 unimp - a7c: 0000 unimp - a7e: 0068 addi a0,sp,12 - a80: 0000 unimp - a82: 0000 unimp - a84: 0000 unimp - a86: 9c01 subw s0,s0,s0 - a88: 06c9 addi a3,a3,18 - a8a: 0000 unimp - a8c: 6104 ld s1,0(a0) - a8e: 0070 addi a2,sp,12 - a90: bb02 fsd ft0,432(sp) - a92: c922 sw s0,144(sp) - a94: 0006 c.slli zero,0x1 - a96: 0200 addi s0,sp,256 - a98: 6891 lui a7,0x4 - a9a: b401 j 49a - a9c: 0002 c.slli64 zero - a9e: 0200 addi s0,sp,256 - aa0: 004a2abb 0x4a2abb - aa4: 0000 unimp - aa6: 9102 jalr sp - aa8: 0064 addi s1,sp,12 - aaa: 0000f307 0xf307 - aae: 0b00 addi s0,sp,400 - ab0: 01e1 addi gp,gp,24 - ab2: 0000 unimp - ab4: b102 fsd ft0,160(sp) - ab6: 0000e01b 0xe01b - aba: 6200 ld s0,0(a2) - abc: 002c addi a1,sp,8 - abe: 0080 addi s0,sp,64 - ac0: 0000 unimp - ac2: 6c00 ld s0,24(s0) - ac4: 0000 unimp - ac6: 0000 unimp - ac8: 0000 unimp - aca: 0100 addi s0,sp,128 - acc: 0e9c addi a5,sp,848 - ace: 04000007 0x4000007 - ad2: 7061 c.lui zero,0xffff8 - ad4: 0200 addi s0,sp,256 - ad6: 2cb1 addiw s9,s9,12 - ad8: 06c9 addi a3,a3,18 - ada: 0000 unimp - adc: 9102 jalr sp - ade: 0168 addi a0,sp,140 - ae0: 02b4 addi a3,sp,328 - ae2: 0000 unimp - ae4: b102 fsd ft0,160(sp) - ae6: 4a34 lw a3,80(a2) - ae8: 0000 unimp - aea: 0200 addi s0,sp,256 - aec: 6491 lui s1,0x4 - aee: 1900 addi s0,sp,176 - af0: 0218 addi a4,sp,256 - af2: 0000 unimp - af4: 149c addi a5,sp,608 - af6: 2b66 fld fs6,88(sp) - af8: 8000 0x8000 - afa: 0000 unimp - afc: 0000 unimp - afe: 00fc addi a5,sp,76 - b00: 0000 unimp - b02: 0000 unimp - b04: 0000 unimp - b06: 9c01 subw s0,s0,s0 - b08: 000007ab 0x7ab - b0c: 8c01 sub s0,s0,s0 - b0e: 02000003 lb zero,32(zero) # 20 - b12: 249c fld fa5,8(s1) - b14: 0684 addi s1,sp,832 - b16: 0000 unimp - b18: 7dd89103 lh sp,2013(a7) # 47dd - b1c: 0e01 addi t3,t3,0 - b1e: 02000003 lb zero,32(zero) # 20 - b22: 409c lw a5,0(s1) - b24: 04ee slli s1,s1,0x1b - b26: 0000 unimp - b28: 7dd09103 lh sp,2013(ra) - b2c: 6e04 ld s1,24(a2) - b2e: 6d75 lui s10,0x1d - b30: 0200 addi s0,sp,256 - b32: 289d addiw a7,a7,7 - b34: 00e0 addi s0,sp,76 - b36: 0000 unimp - b38: 7dc89103 lh sp,2012(a7) - b3c: 1301 addi t1,t1,-32 - b3e: 0002 c.slli64 zero - b40: 0200 addi s0,sp,256 - b42: 369d addiw a3,a3,-25 - b44: 0060 addi s0,sp,12 - b46: 0000 unimp - b48: 7dc49103 lh sp,2012(s1) # 47dc - b4c: 6501 0x6501 - b4e: 0002 c.slli64 zero - b50: 0200 addi s0,sp,256 - b52: 409d li ra,7 - b54: 004a c.slli zero,0x12 - b56: 0000 unimp - b58: 7dc09103 lh sp,2012(ra) - b5c: 5401 li s0,-32 - b5e: 0002 c.slli64 zero - b60: 0200 addi s0,sp,256 - b62: 4b9d li s7,7 - b64: 004a c.slli zero,0x12 - b66: 0000 unimp - b68: 7dbc9103 lh sp,2011(s9) # 47db - b6c: 00037f03 0x37f03 - b70: 0200 addi s0,sp,256 - b72: 0c9f 07ab 0000 0x7ab0c9f - b78: 7de89103 lh sp,2014(a7) - b7c: 7002 0x7002 - b7e: 0200736f jal t1,7b9e - b82: 07a0 addi s0,sp,968 - b84: 004a c.slli zero,0x12 - b86: 0000 unimp - b88: 9102 jalr sp - b8a: 006c addi a1,sp,12 - b8c: 600c ld a1,0(s0) - b8e: 0000 unimp - b90: bb00 fsd fs0,48(a4) - b92: 0d000007 0xd000007 - b96: 007a c.slli zero,0x1e - b98: 0000 unimp - b9a: 9717003f 8e000003 0x8e0000039717003f - ba2: 2ada fld fs5,400(sp) - ba4: 8000 0x8000 - ba6: 0000 unimp - ba8: 0000 unimp - baa: 008c addi a1,sp,64 - bac: 0000 unimp - bae: 0000 unimp - bb0: 0000 unimp - bb2: 9c01 subw s0,s0,s0 - bb4: 0801 addi a6,a6,0 - bb6: 0000 unimp - bb8: 7804 ld s1,48(s0) - bba: 0200 addi s0,sp,256 - bbc: 188e slli a7,a7,0x23 - bbe: 008d addi ra,ra,3 - bc0: 0000 unimp - bc2: 9102 jalr sp - bc4: 0248 addi a0,sp,260 - bc6: 00727473 csrrci s0,0x7,4 - bca: 9002 ebreak - bcc: 0108 addi a0,sp,128 - bce: 0008 0x8 - bd0: 0200 addi s0,sp,256 - bd2: 5891 li a7,-28 - bd4: 6902 ld s2,0(sp) - bd6: 0200 addi s0,sp,256 - bd8: 0791 addi a5,a5,4 - bda: 004a c.slli zero,0x12 - bdc: 0000 unimp - bde: 9102 jalr sp - be0: 006c addi a1,sp,12 - be2: cf0c sw a1,24(a4) - be4: 0000 unimp - be6: 1100 addi s0,sp,160 - be8: 0008 0x8 - bea: 0d00 addi s0,sp,656 - bec: 007a c.slli zero,0x1e - bee: 0000 unimp - bf0: 0010 0x10 - bf2: e912 sd tp,144(sp) - bf4: 0001 nop - bf6: 0300 addi s0,sp,384 - bf8: 05dc addi a5,sp,708 - bfa: 004a c.slli zero,0x12 - bfc: 0000 unimp - bfe: 2a68 fld fa0,208(a2) - c00: 8000 0x8000 - c02: 0000 unimp - c04: 0000 unimp - c06: 0072 c.slli zero,0x1c - c08: 0000 unimp - c0a: 0000 unimp - c0c: 0000 unimp - c0e: 9c01 subw s0,s0,s0 - c10: 085a slli a6,a6,0x16 - c12: 0000 unimp - c14: 6304 ld s1,0(a4) - c16: 0068 addi a0,sp,12 - c18: 7e02 ld t3,32(sp) - c1a: 4a11 li s4,4 - c1c: 0000 unimp - c1e: 0200 addi s0,sp,256 - c20: 6c91 lui s9,0x4 - c22: 66756227 0x66756227 - c26: 0200 addi s0,sp,256 - c28: 1880 addi s0,sp,112 - c2a: 085a slli a6,a6,0x16 - c2c: 0000 unimp - c2e: 1b40 addi s0,sp,436 - c30: 0298 addi a4,sp,320 - c32: 0000 unimp - c34: 8102 jr sp - c36: 004a c.slli zero,0x12 - c38: 0000 unimp - c3a: 0c00 addi s0,sp,528 - c3c: 000000cf fnmadd.s ft1,ft0,ft0,ft0,rne - c40: 086a slli a6,a6,0x1a - c42: 0000 unimp - c44: 7a0d lui s4,0xfffe3 - c46: 0000 unimp - c48: 3f00 fld fs0,56(a4) - c4a: 1700 addi s0,sp,928 - c4c: 02e9 addi t0,t0,26 - c4e: 0000 unimp - c50: 826a mv tp,s10 - c52: 0029 c.nop 10 - c54: 0080 addi s0,sp,64 - c56: 0000 unimp - c58: e600 sd s0,8(a2) - c5a: 0000 unimp - c5c: 0000 unimp - c5e: 0000 unimp - c60: 0100 addi s0,sp,128 - c62: f39c sd a5,32(a5) - c64: 0008 0x8 - c66: 0400 addi s0,sp,512 - c68: 00646963 bltu s0,t1,c7a - c6c: 6a02 ld s4,0(sp) - c6e: 4a10 lw a2,16(a2) - c70: 0000 unimp - c72: 0300 addi s0,sp,384 - c74: dc91 beqz s1,b90 - c76: 047e slli s0,s0,0x1f - c78: 636e ld t1,216(sp) - c7a: 0200 addi s0,sp,256 - c7c: 196a slli s2,s2,0x3a - c7e: 004a c.slli zero,0x12 - c80: 0000 unimp - c82: 7ed89103 lh sp,2029(a7) - c86: 7202 ld tp,32(sp) - c88: 7465 lui s0,0xffff9 - c8a: 0200 addi s0,sp,256 - c8c: 0770 addi a2,sp,908 - c8e: 004a c.slli zero,0x12 - c90: 0000 unimp - c92: 9102 jalr sp - c94: 2850 fld fa2,144(s0) - c96: 7562 ld a0,56(sp) - c98: 0066 c.slli zero,0x19 - c9a: 7202 ld tp,32(sp) - c9c: 5a08 lw a0,48(a2) - c9e: 0008 0x8 - ca0: 4000 lw s0,0(s0) - ca2: 7902 ld s2,32(sp) - ca4: 0300 addi s0,sp,384 - ca6: 00000277 0x277 - caa: 7302 ld t1,32(sp) - cac: ca09 beqz a2,cbe - cae: 0000 unimp - cb0: 0200 addi s0,sp,256 - cb2: 5891 li a7,-28 - cb4: da09 beqz a2,bc6 - cb6: 0029 c.nop 10 - cb8: 0080 addi s0,sp,64 - cba: 0000 unimp - cbc: 7600 ld s0,40(a2) - cbe: 0000 unimp - cc0: 0000 unimp - cc2: 0000 unimp - cc4: 0200 addi s0,sp,256 - cc6: 0069 c.nop 26 - cc8: 7402 ld s0,32(sp) - cca: 4a0c lw a1,16(a2) - ccc: 0000 unimp - cce: 0200 addi s0,sp,256 - cd0: 5491 li s1,-28 - cd2: 0000 unimp - cd4: ec29 bnez s0,d2e - cd6: 02000003 lb zero,32(zero) # 20 - cda: 0d60 addi s0,sp,668 - cdc: 291c fld fa5,16(a0) - cde: 8000 0x8000 - ce0: 0000 unimp - ce2: 0000 unimp - ce4: 0066 c.slli zero,0x19 - ce6: 0000 unimp - ce8: 0000 unimp - cea: 0000 unimp - cec: 9c01 subw s0,s0,s0 - cee: 095f 0000 4c03 0x4c030000095f - cf4: 02000003 lb zero,32(zero) # 20 - cf8: 1262 slli tp,tp,0x38 - cfa: 00c2 slli ra,ra,0x10 - cfc: 0000 unimp - cfe: 5401 li s0,-32 - d00: 2d10 fld fa2,24(a0) - d02: 63000003 lb zero,1584(zero) # 630 - d06: 0000cf0f 0xcf0f - d0a: 1000 addi s0,sp,32 - d0c: 01d6 slli gp,gp,0x15 - d0e: 0000 unimp - d10: 00cf1d63 bne t5,a2,d2a - d14: 0000 unimp - d16: 6e10 ld a2,24(a2) - d18: 63000003 lb zero,1584(zero) # 630 - d1c: cf29 beqz a4,d76 - d1e: 0000 unimp - d20: 0300 addi s0,sp,384 - d22: 000001cb fnmsub.s ft3,ft0,ft0,ft0,rne - d26: 6402 ld s0,0(sp) - d28: af0a fsd ft2,408(sp) - d2a: 0000 unimp - d2c: 0200 addi s0,sp,256 - d2e: 6891 lui a7,0x4 - d30: 00034203 lbu tp,0(t1) - d34: 0200 addi s0,sp,256 - d36: 0a66 slli s4,s4,0x19 - d38: 000000af 0xaf - d3c: 9102 jalr sp - d3e: 0060 addi s0,sp,12 - d40: 3512 fld fa0,288(sp) - d42: 0001 nop - d44: 0200 addi s0,sp,256 - d46: 1b59 addi s6,s6,-10 - d48: 004a c.slli zero,0x12 - d4a: 0000 unimp - d4c: 28f2 fld fa7,280(sp) - d4e: 8000 0x8000 - d50: 0000 unimp - d52: 0000 unimp - d54: 002a c.slli zero,0xa - d56: 0000 unimp - d58: 0000 unimp - d5a: 0000 unimp - d5c: 9c01 subw s0,s0,s0 - d5e: 09a0 addi s0,sp,216 - d60: 0000 unimp - d62: 1501 addi a0,a0,-32 - d64: 02000003 lb zero,32(zero) # 20 - d68: 2459 addiw s0,s0,22 - d6a: 004a c.slli zero,0x12 - d6c: 0000 unimp - d6e: 9102 jalr sp - d70: 016c addi a1,sp,140 - d72: 0320 addi s0,sp,392 - d74: 0000 unimp - d76: 5902 lw s2,32(sp) - d78: f331 bnez a4,cbc - d7a: 0004 0x4 - d7c: 0200 addi s0,sp,256 - d7e: 6091 lui ra,0x4 - d80: 1c00 addi s0,sp,560 - d82: 01ff 0x1ff - d84: 0000 unimp - d86: 1c52 slli s8,s8,0x34 - d88: 28ca fld fa7,144(sp) - d8a: 8000 0x8000 - d8c: 0000 unimp - d8e: 0000 unimp - d90: 0028 addi a0,sp,8 - d92: 0000 unimp - d94: 0000 unimp - d96: 0000 unimp - d98: 9c01 subw s0,s0,s0 - d9a: 000009db 0x9db - d9e: 6304 ld s1,0(a4) - da0: 6469 lui s0,0x1a - da2: 0200 addi s0,sp,256 - da4: 2d52 fld fs10,272(sp) - da6: 004a c.slli zero,0x12 - da8: 0000 unimp - daa: 9102 jalr sp - dac: 046c addi a1,sp,524 - dae: 636e ld t1,216(sp) - db0: 0200 addi s0,sp,256 - db2: 3652 fld fa2,304(sp) - db4: 004a c.slli zero,0x12 - db6: 0000 unimp - db8: 9102 jalr sp - dba: 0068 addi a0,sp,12 - dbc: 0001f617 auipc a2,0x1f - dc0: 4d00 lw s0,24(a0) - dc2: 2894 fld fa3,16(s1) - dc4: 8000 0x8000 - dc6: 0000 unimp - dc8: 0000 unimp - dca: 0036 c.slli zero,0xd - dcc: 0000 unimp - dce: 0000 unimp - dd0: 0000 unimp - dd2: 9c01 subw s0,s0,s0 - dd4: 0a05 addi s4,s4,1 - dd6: 0000 unimp - dd8: 7304 ld s1,32(a4) - dda: 0200 addi s0,sp,256 - ddc: 1b4d addi s6,s6,-13 - dde: 000000db 0xdb - de2: 9102 jalr sp - de4: 0058 addi a4,sp,4 - de6: 3f2a fld ft10,168(sp) - de8: 0002 c.slli64 zero - dea: 0200 addi s0,sp,256 - dec: 0648 addi a0,sp,772 - dee: 2884 fld fs1,16(s1) - df0: 8000 0x8000 - df2: 0000 unimp - df4: 0000 unimp - df6: 0010 0x10 - df8: 0000 unimp - dfa: 0000 unimp - dfc: 0000 unimp - dfe: 9c01 subw s0,s0,s0 - e00: 0002722b 0x2722b - e04: 0200 addi s0,sp,256 - e06: 286c0643 fmadd.s fa2,fs8,ft6,ft5,rne - e0a: 8000 0x8000 - e0c: 0000 unimp - e0e: 0000 unimp - e10: 0018 0x18 - e12: 0000 unimp - e14: 0000 unimp - e16: 0000 unimp - e18: 9c01 subw s0,s0,s0 - e1a: 0a4d addi s4,s4,19 - e1c: 0000 unimp - e1e: 8a01 andi a2,a2,0 - e20: 0002 c.slli64 zero - e22: 0200 addi s0,sp,256 - e24: 004a0f43 fmadd.s ft10,fs4,ft4,ft0,rne - e28: 0000 unimp - e2a: 9102 jalr sp - e2c: 006c addi a1,sp,12 - e2e: aa12 fsd ft4,272(sp) - e30: 02000003 lb zero,32(zero) # 20 - e34: 213e fld ft2,456(sp) - e36: 009e slli ra,ra,0x7 - e38: 0000 unimp - e3a: 2850 fld fa2,144(s0) - e3c: 8000 0x8000 - e3e: 0000 unimp - e40: 0000 unimp - e42: 001c 0x1c - e44: 0000 unimp - e46: 0000 unimp - e48: 0000 unimp - e4a: 9c01 subw s0,s0,s0 - e4c: 0a9d addi s5,s5,7 - e4e: 0000 unimp - e50: ba01 j 760 - e52: 0002 c.slli64 zero - e54: 0200 addi s0,sp,256 - e56: 373e fld fa4,488(sp) - e58: 009e slli ra,ra,0x7 - e5a: 0000 unimp - e5c: 9102 jalr sp - e5e: 0468 addi a0,sp,524 - e60: 7065 c.lui zero,0xffff9 - e62: 3e020063 beqz tp,1242 - e66: 9e48 0x9e48 - e68: 0000 unimp - e6a: 0200 addi s0,sp,256 - e6c: 6091 lui ra,0x4 - e6e: f101 bnez a0,d6e - e70: 0001 nop - e72: 0200 addi s0,sp,256 - e74: 573e lw a4,236(sp) - e76: 037f 0x37f - e78: 0000 unimp - e7a: 9102 jalr sp - e7c: 0058 addi a4,sp,4 - e7e: 6b2c ld a1,80(a4) - e80: 0002 c.slli64 zero - e82: 0200 addi s0,sp,256 - e84: 2038 fld fa4,64(s0) - e86: 2830 fld fa2,80(s0) - e88: 8000 0x8000 - e8a: 0000 unimp - e8c: 0000 unimp - e8e: 0020 addi s0,sp,8 - e90: 0000 unimp - e92: 0000 unimp - e94: 0000 unimp - e96: 9c01 subw s0,s0,s0 - e98: 00000acb fnmsub.s fs5,ft0,ft0,ft0,rne - e9c: 8a01 andi a2,a2,0 - e9e: 0002 c.slli64 zero - ea0: 0200 addi s0,sp,256 - ea2: 3638 fld fa4,104(a2) - ea4: 009e slli ra,ra,0x7 - ea6: 0000 unimp - ea8: 9102 jalr sp - eaa: 0068 addi a0,sp,12 - eac: e31c sd a5,0(a4) - eae: 28000003 lb zero,640(zero) # 280 - eb2: 1c06 slli s8,s8,0x21 - eb4: 00800027 0x800027 - eb8: 0000 unimp - eba: 1400 addi s0,sp,544 - ebc: 0001 nop - ebe: 0000 unimp - ec0: 0000 unimp - ec2: 0100 addi s0,sp,128 - ec4: 8e9c 0x8e9c - ec6: 0100000b 0x100000b - eca: 0238 addi a4,sp,264 - ecc: 0000 unimp - ece: 2802 fld fa6,0(sp) - ed0: 00004a13 xori s4,zero,0 - ed4: 0300 addi s0,sp,384 - ed6: bc91 j 92a - ed8: 027f 0x27f - eda: 0069 c.nop 26 - edc: 2a02 fld fs4,0(sp) - ede: 00004a07 flq fs4,0(zero) # 0 - ee2: 0200 addi s0,sp,256 - ee4: 5c91 li s9,-28 - ee6: 2c15 addiw s8,s8,5 - ee8: 00800027 0x800027 - eec: 0000 unimp - eee: 7e00 ld s0,56(a2) - ef0: 0000 unimp - ef2: 0000 unimp - ef4: 0000 unimp - ef6: 4b00 lw s0,16(a4) - ef8: 0200000b 0x200000b - efc: 00727363 bgeu tp,t2,f02 - f00: 3202 fld ft4,32(sp) - f02: 00009e03 lh t3,0(ra) # 4000 - f06: 0200 addi s0,sp,256 - f08: 6891 lui a7,0x4 - f0a: 3c09 addiw s8,s8,-30 - f0c: 00800027 0x800027 - f10: 0000 unimp - f12: 0c00 addi s0,sp,528 - f14: 0000 unimp - f16: 0000 unimp - f18: 0000 unimp - f1a: 0300 addi s0,sp,384 - f1c: 03c6 slli t2,t2,0x11 - f1e: 0000 unimp - f20: 3202 fld ft4,32(sp) - f22: 00007a03 0x7a03 - f26: 0200 addi s0,sp,256 - f28: 5091 li ra,-28 - f2a: 0000 unimp - f2c: aa09 j 103e - f2e: 00800027 0x800027 - f32: 0000 unimp - f34: 7e00 ld s0,56(a2) - f36: 0000 unimp - f38: 0000 unimp - f3a: 0000 unimp - f3c: 0200 addi s0,sp,256 - f3e: 00727363 bgeu tp,t2,f44 - f42: 3302 fld ft6,32(sp) - f44: 00009e03 lh t3,0(ra) - f48: 0200 addi s0,sp,256 - f4a: 6091 lui ra,0x4 - f4c: ba09 j 85e - f4e: 00800027 0x800027 - f52: 0000 unimp - f54: 0c00 addi s0,sp,528 - f56: 0000 unimp - f58: 0000 unimp - f5a: 0000 unimp - f5c: 0300 addi s0,sp,384 - f5e: 03c6 slli t2,t2,0x11 - f60: 0000 unimp - f62: 3302 fld ft6,32(sp) - f64: 00007a03 0x7a03 - f68: 0200 addi s0,sp,256 - f6a: 4891 li a7,4 - f6c: 0000 unimp - f6e: 0b00 addi s0,sp,400 - f70: 000002ef jal t0,f70 - f74: 1202 slli tp,tp,0x20 - f76: 9e12 add t3,t3,tp - f78: 0000 unimp - f7a: 9e00 0x9e00 - f7c: 0026 c.slli zero,0x9 - f7e: 0080 addi s0,sp,64 - f80: 0000 unimp - f82: 7e00 ld s0,56(a2) - f84: 0000 unimp - f86: 0000 unimp - f88: 0000 unimp - f8a: 0100 addi s0,sp,128 - f8c: 019c addi a5,sp,192 - f8e: 000c 0xc - f90: 0100 addi s0,sp,128 - f92: 031a slli t1,t1,0x6 - f94: 0000 unimp - f96: 1202 slli tp,tp,0x20 - f98: 9e24 0x9e24 - f9a: 0000 unimp - f9c: 0300 addi s0,sp,384 - f9e: f891 bnez s1,eb2 - fa0: 017e slli sp,sp,0x1f - fa2: 02da slli t0,t0,0x16 - fa4: 0000 unimp - fa6: 1202 slli tp,tp,0x20 - fa8: 8d34 0x8d34 - faa: 0000 unimp - fac: 0300 addi s0,sp,384 - fae: f091 bnez s1,eb2 - fb0: 017e slli sp,sp,0x1f - fb2: 02df 0000 1202 0x1202000002df - fb8: 00008d43 fmadd.s fs10,ft1,ft0,ft0,rne - fbc: 0300 addi s0,sp,384 - fbe: e891 bnez s1,fd2 - fc0: 017e slli sp,sp,0x1f - fc2: 02e4 addi s1,sp,332 - fc4: 0000 unimp - fc6: 1202 slli tp,tp,0x20 - fc8: 8d52 mv s10,s4 - fca: 0000 unimp - fcc: 0300 addi s0,sp,384 - fce: e091 bnez s1,fd2 - fd0: 2d7e fld fs10,472(sp) - fd2: 03a0 addi s0,sp,456 - fd4: 0000 unimp - fd6: 1402 slli s0,s0,0x20 - fd8: 1115 addi sp,sp,-27 - fda: 000c 0xc - fdc: 4000 lw s0,0(s0) - fde: 7f02 ld t5,32(sp) - fe0: 0000 unimp - fe2: 990c 0x990c - fe4: 0000 unimp - fe6: 1100 addi s0,sp,160 - fe8: 000c 0xc - fea: 0d00 addi s0,sp,656 - fec: 007a c.slli zero,0x1e - fee: 0000 unimp - ff0: 01130007 0x1130007 - ff4: 000c 0xc - ff6: 0b00 addi s0,sp,400 - ff8: 00e8 addi a0,sp,76 - ffa: 0000 unimp - ffc: 4601 li a2,0 - ffe: 9e12 add t3,t3,tp - 1000: 0000 unimp - 1002: 7600 ld s0,40(a2) - 1004: 0026 c.slli zero,0x9 - 1006: 0080 addi s0,sp,64 - 1008: 0000 unimp - 100a: 2800 fld fs0,16(s0) - 100c: 0000 unimp - 100e: 0000 unimp - 1010: 0000 unimp - 1012: 0100 addi s0,sp,128 - 1014: 479c lw a5,8(a5) - 1016: 000c 0xc - 1018: 0400 addi s0,sp,512 - 101a: 6370 ld a2,192(a4) - 101c: 0100 addi s0,sp,128 - 101e: 2546 fld fa0,80(sp) - 1020: 009e slli ra,ra,0x7 - 1022: 0000 unimp - 1024: 9102 jalr sp - 1026: 0068 addi a0,sp,12 - 1028: 0000ff0b 0xff0b - 102c: 0100 addi s0,sp,128 - 102e: 1140 addi s0,sp,164 - 1030: 008d addi ra,ra,3 - 1032: 0000 unimp - 1034: 2640 fld fs0,136(a2) - 1036: 8000 0x8000 - 1038: 0000 unimp - 103a: 0000 unimp - 103c: 0036 c.slli zero,0xd - 103e: 0000 unimp - 1040: 0000 unimp - 1042: 0000 unimp - 1044: 9c01 subw s0,s0,s0 - 1046: 0c86 slli s9,s9,0x1 - 1048: 0000 unimp - 104a: 7804 ld s1,48(s0) - 104c: 0100 addi s0,sp,128 - 104e: 1f40 addi s0,sp,948 - 1050: 008d addi ra,ra,3 - 1052: 0000 unimp - 1054: 9102 jalr sp - 1056: 0258 addi a4,sp,260 - 1058: 6962 ld s2,24(sp) - 105a: 0074 addi a3,sp,12 - 105c: 4201 li tp,0 - 105e: 8d0c 0x8d0c - 1060: 0000 unimp - 1062: 0200 addi s0,sp,256 - 1064: 6891 lui a7,0x4 - 1066: 2e00 fld fs0,24(a2) - 1068: 00ce slli ra,ra,0x13 - 106a: 0000 unimp - 106c: 2c01 sext.w s8,s8 - 106e: 0025b627 fsd ft2,12(a1) - 1072: 0080 addi s0,sp,64 - 1074: 0000 unimp - 1076: 8a00 0x8a00 - 1078: 0000 unimp - 107a: 0000 unimp - 107c: 0000 unimp - 107e: 0100 addi s0,sp,128 - 1080: eb9c sd a5,16(a5) - 1082: 000c 0xc - 1084: 0100 addi s0,sp,128 - 1086: 0120 addi s0,sp,136 - 1088: 0000 unimp - 108a: 2c01 sext.w s8,s8 - 108c: 00004a33 xor s4,zero,zero - 1090: 0200 addi s0,sp,256 - 1092: 6c91 lui s9,0x4 - 1094: 00015a03 lhu s4,0(sp) - 1098: 0100 addi s0,sp,128 - 109a: 172e slli a4,a4,0x2b - 109c: 0051 c.nop 20 - 109e: 0000 unimp - 10a0: 0309 addi t1,t1,2 - 10a2: 3774 fld fa3,232(a4) - 10a4: 8000 0x8000 - 10a6: 0000 unimp - 10a8: 0000 unimp - 10aa: 0000d603 lhu a2,0(ra) # 4000 - 10ae: 0100 addi s0,sp,128 - 10b0: 0051172f 0x51172f - 10b4: 0000 unimp - 10b6: 0309 addi t1,t1,2 - 10b8: 3770 fld fa2,232(a4) - 10ba: 8000 0x8000 - 10bc: 0000 unimp - 10be: 0000 unimp - 10c0: 0001541b srliw s0,sp,0x0 - 10c4: 0100 addi s0,sp,128 - 10c6: 4a30 lw a2,80(a2) - 10c8: 0000 unimp - 10ca: 0000 unimp - 10cc: 0001600b 0x1600b - 10d0: 0100 addi s0,sp,128 - 10d2: 0c1c addi a5,sp,528 - 10d4: 004a c.slli zero,0x12 - 10d6: 0000 unimp - 10d8: 2492 fld fs1,256(sp) - 10da: 8000 0x8000 - 10dc: 0000 unimp - 10de: 0000 unimp - 10e0: 0124 addi s1,sp,136 - 10e2: 0000 unimp - 10e4: 0000 unimp - 10e6: 0000 unimp - 10e8: 9c01 subw s0,s0,s0 - 10ea: 0db1 addi s11,s11,12 - 10ec: 0000 unimp - 10ee: 6e04 ld s1,24(a2) - 10f0: 0100 addi s0,sp,128 - 10f2: 1d1c addi a5,sp,688 - 10f4: 004a c.slli zero,0x12 - 10f6: 0000 unimp - 10f8: 7fbc9103 lh sp,2043(s9) # 47fb - 10fc: 3a01 addiw s4,s4,-32 - 10fe: 0001 nop - 1100: 0100 addi s0,sp,128 - 1102: 371c fld fa5,40(a4) - 1104: 0db1 addi s11,s11,12 - 1106: 0000 unimp - 1108: 7fb09103 lh sp,2043(ra) - 110c: 2701 sext.w a4,a4 - 110e: 0001 nop - 1110: 0100 addi s0,sp,128 - 1112: 4b1c lw a5,16(a4) - 1114: 00000dc7 fmsub.s fs11,ft0,ft0,ft0,rne - 1118: 7fa89103 lh sp,2042(a7) # 47fa - 111c: 6902 ld s2,0(sp) - 111e: 0100 addi s0,sp,128 - 1120: 071e slli a4,a4,0x7 - 1122: 004a c.slli zero,0x12 - 1124: 0000 unimp - 1126: 9102 jalr sp - 1128: 096c addi a1,sp,156 - 112a: 24ac fld fa1,72(s1) - 112c: 8000 0x8000 - 112e: 0000 unimp - 1130: 0000 unimp - 1132: 009e slli ra,ra,0x7 - 1134: 0000 unimp - 1136: 0000 unimp - 1138: 0000 unimp - 113a: 7402 ld s0,32(sp) - 113c: 0030 addi a2,sp,8 - 113e: 2201 sext.w tp,tp - 1140: b60c fsd fa1,40(a2) - 1142: 000d c.nop 3 - 1144: 0200 addi s0,sp,256 - 1146: 6091 lui ra,0x4 - 1148: 7402 ld s0,32(sp) - 114a: 0031 c.nop 12 - 114c: 2201 sext.w tp,tp - 114e: b61a fsd ft6,296(sp) - 1150: 000d c.nop 3 - 1152: 0200 addi s0,sp,256 - 1154: 5891 li a7,-28 - 1156: 7602 ld a2,32(sp) - 1158: 0030 addi a2,sp,8 - 115a: 2301 sext.w t1,t1 - 115c: b60c fsd fa1,40(a2) - 115e: 000d c.nop 3 - 1160: 0200 addi s0,sp,256 - 1162: 5091 li ra,-28 - 1164: 7602 ld a2,32(sp) - 1166: 0031 c.nop 12 - 1168: 2301 sext.w t1,t1 - 116a: b61c fsd fa5,40(a2) - 116c: 000d c.nop 3 - 116e: 0200 addi s0,sp,256 - 1170: 4891 li a7,4 - 1172: 6502 ld a0,0(sp) - 1174: 3171 addiw sp,sp,-4 - 1176: 0100 addi s0,sp,128 - 1178: 0924 addi s1,sp,152 - 117a: 004a c.slli zero,0x12 - 117c: 0000 unimp - 117e: 9102 jalr sp - 1180: 0244 addi s1,sp,260 - 1182: 7165 addi sp,sp,-400 - 1184: 0032 c.slli zero,0xc - 1186: 2401 sext.w s0,s0 - 1188: 4a19 li s4,6 - 118a: 0000 unimp - 118c: 0200 addi s0,sp,256 - 118e: 4091 li ra,4 - 1190: 0000 unimp - 1192: 000dc207 flq ft4,0(s11) - 1196: 0800 addi s0,sp,16 - 1198: 0408 addi a0,sp,512 - 119a: 012e slli sp,sp,0xb - 119c: 0000 unimp - 119e: 000db60f 0xdb60f - 11a2: 1300 addi s0,sp,416 - 11a4: 0dbd addi s11,s11,15 - 11a6: 0000 unimp - 11a8: 000dbd07 fld fs10,0(s11) - 11ac: 0b00 addi s0,sp,400 - 11ae: 00000127 0x127 - 11b2: 0c01 addi s8,s8,0 - 11b4: 4a0c lw a1,16(a2) - 11b6: 0000 unimp - 11b8: 8400 0x8400 - 11ba: 00800023 sb s0,0(zero) # 0 - 11be: 0000 unimp - 11c0: 0e00 addi s0,sp,784 - 11c2: 0001 nop - 11c4: 0000 unimp - 11c6: 0000 unimp - 11c8: 0100 addi s0,sp,128 - 11ca: 729c ld a5,32(a3) - 11cc: 000e c.slli zero,0x3 - 11ce: 0400 addi s0,sp,512 - 11d0: 006e c.slli zero,0x1b - 11d2: 0c01 addi s8,s8,0 - 11d4: 00004a17 auipc s4,0x4 - 11d8: 0200 addi s0,sp,256 - 11da: 4c91 li s9,4 - 11dc: 3a01 addiw s4,s4,-32 - 11de: 0001 nop - 11e0: 0100 addi s0,sp,128 - 11e2: 2e0c fld fa1,24(a2) - 11e4: 0e72 slli t3,t3,0x1c - 11e6: 0000 unimp - 11e8: 9102 jalr sp - 11ea: 0140 addi s0,sp,132 - 11ec: 00000127 0x127 - 11f0: 0c01 addi s8,s8,0 - 11f2: 000e773f b8910300 0xb8910300000e773f - 11fa: 027f 0x27f - 11fc: 0069 c.nop 26 - 11fe: 0e01 addi t3,t3,0 - 1200: 00004a07 flq fs4,0(zero) # 0 - 1204: 0200 addi s0,sp,256 - 1206: 6c91 lui s9,0x4 - 1208: 9e09 subw a2,a2,a0 - 120a: 00800023 sb s0,0(zero) # 0 - 120e: 0000 unimp - 1210: 8400 0x8400 - 1212: 0000 unimp - 1214: 0000 unimp - 1216: 0000 unimp - 1218: 0200 addi s0,sp,256 - 121a: 3074 fld fa3,224(s0) - 121c: 0100 addi s0,sp,128 - 121e: 0912 slli s2,s2,0x4 - 1220: 004a c.slli zero,0x12 - 1222: 0000 unimp - 1224: 9102 jalr sp - 1226: 0268 addi a0,sp,268 - 1228: 3174 fld fa3,224(a0) - 122a: 0100 addi s0,sp,128 - 122c: 1712 slli a4,a4,0x24 - 122e: 004a c.slli zero,0x12 - 1230: 0000 unimp - 1232: 9102 jalr sp - 1234: 0264 addi s1,sp,268 - 1236: 3076 fld ft0,376(sp) - 1238: 0100 addi s0,sp,128 - 123a: 004a0913 addi s2,s4,4 # 51d8 - 123e: 0000 unimp - 1240: 9102 jalr sp - 1242: 0260 addi s0,sp,268 - 1244: 3176 fld ft2,376(sp) - 1246: 0100 addi s0,sp,128 - 1248: 004a1913 slli s2,s4,0x4 - 124c: 0000 unimp - 124e: 9102 jalr sp - 1250: 005c addi a5,sp,4 - 1252: 0700 addi s0,sp,896 - 1254: 0056 c.slli zero,0x15 - 1256: 0000 unimp - 1258: 00005b07 0x5b07 - ... - -Disassembly of section .debug_abbrev: - -0000000000000000 <.debug_abbrev>: - 0: 3401 addiw s0,s0,-32 - 2: 0300 addi s0,sp,384 - 4: 3a08 fld fa0,48(a2) - 6: 390b3b0b 0x390b3b0b - a: 0213490b 0x213490b - e: 0018 0x18 - 10: 0200 addi s0,sp,256 - 12: 0024 addi s1,sp,8 - 14: 0b3e0b0b 0xb3e0b0b - 18: 00000e03 lb t3,0(zero) # 0 - 1c: 0b000f03 lb t5,176(zero) # b0 - 20: 0821 addi a6,a6,8 - 22: 1349 addi t1,t1,-14 - 24: 0000 unimp - 26: 0504 addi s1,sp,640 - 28: 0300 addi s0,sp,384 - 2a: 3a08 fld fa0,48(a2) - 2c: 390b3b0b 0x390b3b0b - 30: 0213490b 0x213490b - 34: 0018 0x18 - 36: 0500 addi s0,sp,640 - 38: 0005 c.nop 1 - 3a: 213a0e03 lb t3,531(s4) - 3e: 3b01 addiw s6,s6,-32 - 40: 490b390b 0x490b390b - 44: 00180213 addi tp,a6,1 - 48: 0600 addi s0,sp,768 - 4a: 0026 c.slli zero,0x9 - 4c: 1349 addi t1,t1,-14 - 4e: 0000 unimp - 50: 03001607 0x3001607 - 54: 3a0e fld fs4,224(sp) - 56: 390b3b0b 0x390b3b0b - 5a: 0013490b 0x13490b - 5e: 0800 addi s0,sp,16 - 60: 012e slli sp,sp,0xb - 62: 213a0e03 lb t3,531(s4) - 66: 3b01 addiw s6,s6,-32 - 68: 270b390b 0x270b390b - 6c: 4919 li s2,6 - 6e: 12011113 0x12011113 - 72: 7a184007 flq ft0,1953(a6) - 76: 0119 addi sp,sp,6 - 78: 09000013 li zero,144 - 7c: 0034 addi a3,sp,8 - 7e: 0b3a0e03 lb t3,179(s4) - 82: 0b390b3b 0xb390b3b - 86: 1349 addi t1,t1,-14 - 88: 1802 slli a6,a6,0x20 - 8a: 0000 unimp - 8c: 350a fld fa0,160(sp) - 8e: 4900 lw s0,16(a0) - 90: 0b000013 li zero,176 - 94: 0111010b 0x111010b - 98: 0712 slli a4,a4,0x4 - 9a: 0000 unimp - 9c: 110c addi a1,sp,160 - 9e: 2501 sext.w a0,a0 - a0: 130e slli t1,t1,0x23 - a2: 1b1f030b 0x1b1f030b - a6: 111f 1201 1007 0x10071201111f - ac: 0d000017 auipc zero,0xd000 - b0: 0024 addi s1,sp,8 - b2: 0b3e0b0b 0xb3e0b0b - b6: 00000803 lb a6,0(zero) # 0 - ba: 2e0e fld ft8,192(sp) - bc: 3f01 addiw t5,t5,-32 - be: 0319 addi t1,t1,6 - c0: 3a0e fld fs4,224(sp) - c2: 390b3b0b 0x390b3b0b - c6: 4919270b 0x4919270b - ca: 01193c13 sltiu s8,s2,17 - ce: 0f000013 li zero,240 - d2: 0005 c.nop 1 - d4: 1349 addi t1,t1,-14 - d6: 0000 unimp - d8: 1810 addi a2,sp,48 - da: 0000 unimp - dc: 1100 addi s0,sp,160 - de: 012e slli sp,sp,0xb - e0: 0e03193f 0b3b0b3a 0xb3b0b3a0e03193f - e8: 0b39 addi s6,s6,14 - ea: 13491927 0x13491927 - ee: 0111 addi sp,sp,4 - f0: 0712 slli a4,a4,0x4 - f2: 1840 addi s0,sp,52 - f4: 197c addi a5,sp,188 - f6: 1301 addi t1,t1,-32 - f8: 0000 unimp - fa: 0112 slli sp,sp,0x4 - fc: 4901 li s2,0 - fe: 00130113 addi sp,t1,1 - 102: 1300 addi s0,sp,416 - 104: 0021 c.nop 8 - 106: 1349 addi t1,t1,-14 - 108: 00000b2f 0xb2f - 10c: 2e14 fld fa3,24(a2) - 10e: 3f01 addiw t5,t5,-32 - 110: 0319 addi t1,t1,6 - 112: 3a08 fld fa0,48(a2) - 114: 390b3b0b 0x390b3b0b - 118: 4919270b 0x4919270b - 11c: 12011113 0x12011113 - 120: 7a184007 flq ft0,1953(a6) - 124: 0119 addi sp,sp,6 - 126: 15000013 li zero,336 - 12a: 012e slli sp,sp,0xb - 12c: 0b3a0e03 lb t3,179(s4) - 130: 0b390b3b 0xb390b3b - 134: 01111927 0x1111927 - 138: 0712 slli a4,a4,0x4 - 13a: 1840 addi s0,sp,52 - 13c: 197a slli s2,s2,0x3e - 13e: 1301 addi t1,t1,-32 - 140: 0000 unimp - 142: 3416 fld fs0,352(sp) - 144: 0300 addi s0,sp,384 - 146: 3a0e fld fs4,224(sp) - 148: 390b3b0b 0x390b3b0b - 14c: 0013490b 0x13490b - 150: 0000 unimp - 152: 1101 addi sp,sp,-32 - 154: 1000 addi s0,sp,32 - 156: 12011117 auipc sp,0x12011 - 15a: 1b0e030f 0x1b0e030f - 15e: 250e fld fa0,192(sp) - 160: 130e slli t1,t1,0x23 - 162: 0005 c.nop 1 - 164: 0000 unimp - 166: 0501 addi a0,a0,0 - 168: 0300 addi s0,sp,384 - 16a: 3a0e fld fs4,224(sp) - 16c: 390b3b0b 0x390b3b0b - 170: 0213490b 0x213490b - 174: 0018 0x18 - 176: 0200 addi s0,sp,256 - 178: 0034 addi a3,sp,8 - 17a: 0b3a0803 lb a6,179(s4) - 17e: 0b390b3b 0xb390b3b - 182: 1349 addi t1,t1,-14 - 184: 1802 slli a6,a6,0x20 - 186: 0000 unimp - 188: 03003403 ld s0,48(zero) # 30 - 18c: 3a0e fld fs4,224(sp) - 18e: 390b3b0b 0x390b3b0b - 192: 0213490b 0x213490b - 196: 0018 0x18 - 198: 0400 addi s0,sp,512 - 19a: 0005 c.nop 1 - 19c: 0b3a0803 lb a6,179(s4) - 1a0: 0b390b3b 0xb390b3b - 1a4: 1349 addi t1,t1,-14 - 1a6: 1802 slli a6,a6,0x20 - 1a8: 0000 unimp - 1aa: 0505 addi a0,a0,1 - 1ac: 0300 addi s0,sp,384 - 1ae: 3a08 fld fa0,48(a2) - 1b0: 0221 addi tp,tp,8 - 1b2: 0b39053b 0xb39053b - 1b6: 1349 addi t1,t1,-14 - 1b8: 1802 slli a6,a6,0x20 - 1ba: 0000 unimp - 1bc: 3406 fld fs0,96(sp) - 1be: 0300 addi s0,sp,384 - 1c0: 3a08 fld fa0,48(a2) - 1c2: 0221 addi tp,tp,8 - 1c4: 0b39053b 0xb39053b - 1c8: 1349 addi t1,t1,-14 - 1ca: 1802 slli a6,a6,0x20 - 1cc: 0000 unimp - 1ce: 0b000f07 0xb000f07 - 1d2: 0821 addi a6,a6,8 - 1d4: 1349 addi t1,t1,-14 - 1d6: 0000 unimp - 1d8: 2408 fld fa0,8(s0) - 1da: 0b00 addi s0,sp,400 - 1dc: 030b3e0b 0x30b3e0b - 1e0: 000e c.slli zero,0x3 - 1e2: 0900 addi s0,sp,144 - 1e4: 0111010b 0x111010b - 1e8: 0712 slli a4,a4,0x4 - 1ea: 0000 unimp - 1ec: 160a slli a2,a2,0x22 - 1ee: 0300 addi s0,sp,384 - 1f0: 3a0e fld fs4,224(sp) - 1f2: 390b3b0b 0x390b3b0b - 1f6: 0013490b 0x13490b - 1fa: 0b00 addi s0,sp,400 - 1fc: 012e slli sp,sp,0xb - 1fe: 0b3a0e03 lb t3,179(s4) - 202: 0b390b3b 0xb390b3b - 206: 13491927 0x13491927 - 20a: 0111 addi sp,sp,4 - 20c: 0712 slli a4,a4,0x4 - 20e: 1840 addi s0,sp,52 - 210: 197a slli s2,s2,0x3e - 212: 1301 addi t1,t1,-32 - 214: 0000 unimp - 216: 010c addi a1,sp,128 - 218: 4901 li s2,0 - 21a: 00130113 addi sp,t1,1 - 21e: 0d00 addi s0,sp,656 - 220: 0021 c.nop 8 - 222: 1349 addi t1,t1,-14 - 224: 00000b2f 0xb2f - 228: 2e0e fld ft8,192(sp) - 22a: 3f01 addiw t5,t5,-32 - 22c: 0319 addi t1,t1,6 - 22e: 3a0e fld fs4,224(sp) - 230: 0821 addi a6,a6,8 - 232: 0b390b3b 0xb390b3b - 236: 13491927 0x13491927 - 23a: 0111 addi sp,sp,4 - 23c: 0712 slli a4,a4,0x4 - 23e: 1840 addi s0,sp,52 - 240: 197a slli s2,s2,0x3e - 242: 1301 addi t1,t1,-32 - 244: 0000 unimp - 246: 4900260f 0x4900260f - 24a: 10000013 li zero,256 - 24e: 0034 addi a3,sp,8 - 250: 213a0e03 lb t3,531(s4) - 254: 3b02 fld fs6,32(sp) - 256: 490b390b 0x490b390b - 25a: 3c193f13 sltiu t5,s2,961 - 25e: 0019 c.nop 6 - 260: 1100 addi s0,sp,160 - 262: 0005 c.nop 1 - 264: 213a0e03 lb t3,531(s4) - 268: 3b02 fld fs6,32(sp) - 26a: 3905 addiw s2,s2,-31 - 26c: 0213490b 0x213490b - 270: 0018 0x18 - 272: 1200 addi s0,sp,288 - 274: 012e slli sp,sp,0xb - 276: 0e03193f 0b3b0b3a 0xb3b0b3a0e03193f - 27e: 0b39 addi s6,s6,14 - 280: 13491927 0x13491927 - 284: 0111 addi sp,sp,4 - 286: 0712 slli a4,a4,0x4 - 288: 1840 addi s0,sp,52 - 28a: 197c addi a5,sp,188 - 28c: 1301 addi t1,t1,-32 - 28e: 0000 unimp - 290: 49003513 sltiu a0,zero,1168 - 294: 14000013 li zero,320 - 298: 0034 addi a3,sp,8 - 29a: 213a0e03 lb t3,531(s4) - 29e: 3b02 fld fs6,32(sp) - 2a0: 3905 addiw s2,s2,-31 - 2a2: 0213490b 0x213490b - 2a6: 0018 0x18 - 2a8: 1500 addi s0,sp,672 - 2aa: 0111010b 0x111010b - 2ae: 0712 slli a4,a4,0x4 - 2b0: 1301 addi t1,t1,-32 - 2b2: 0000 unimp - 2b4: 0a16 slli s4,s4,0x5 - 2b6: 0300 addi s0,sp,384 - 2b8: 3a0e fld fs4,224(sp) - 2ba: 0221 addi tp,tp,8 - 2bc: 2139053b 0x2139053b - 2c0: 1105 addi sp,sp,-31 - 2c2: 0001 nop - 2c4: 1700 addi s0,sp,928 - 2c6: 012e slli sp,sp,0xb - 2c8: 0e03193f 3b02213a 0x3b02213a0e03193f - 2d0: 0621390b 0x621390b - 2d4: 01111927 0x1111927 - 2d8: 0712 slli a4,a4,0x4 - 2da: 1840 addi s0,sp,52 - 2dc: 197c addi a5,sp,188 - 2de: 1301 addi t1,t1,-32 - 2e0: 0000 unimp - 2e2: 1818 addi a4,sp,48 - 2e4: 0000 unimp - 2e6: 1900 addi s0,sp,176 - 2e8: 012e slli sp,sp,0xb - 2ea: 213a0e03 lb t3,531(s4) - 2ee: 3b02 fld fs6,32(sp) - 2f0: 270b390b 0x270b390b - 2f4: 1119 addi sp,sp,-26 - 2f6: 1201 addi tp,tp,-32 - 2f8: 7c184007 flq ft0,1985(a6) - 2fc: 0119 addi sp,sp,6 - 2fe: 1a000013 li zero,416 - 302: 0005 c.nop 1 - 304: 1349 addi t1,t1,-14 - 306: 0000 unimp - 308: 0300341b 0x300341b - 30c: 3a0e fld fs4,224(sp) - 30e: 390b3b0b 0x390b3b0b - 312: 1721 addi a4,a4,-24 - 314: 1349 addi t1,t1,-14 - 316: 0000 unimp - 318: 2e1c fld fa5,24(a2) - 31a: 3f01 addiw t5,t5,-32 - 31c: 0319 addi t1,t1,6 - 31e: 3a0e fld fs4,224(sp) - 320: 0221 addi tp,tp,8 - 322: 0b390b3b 0xb390b3b - 326: 01111927 0x1111927 - 32a: 0712 slli a4,a4,0x4 - 32c: 1840 addi s0,sp,52 - 32e: 197a slli s2,s2,0x3e - 330: 1301 addi t1,t1,-32 - 332: 0000 unimp - 334: 111d addi sp,sp,-25 - 336: 2501 sext.w a0,a0 - 338: 130e slli t1,t1,0x23 - 33a: 1b1f030b 0x1b1f030b - 33e: 111f 1201 1007 0x10071201111f - 344: 1e000017 auipc zero,0x1e000 - 348: 0024 addi s1,sp,8 - 34a: 0b3e0b0b 0xb3e0b0b - 34e: 00000803 lb a6,0(zero) # 0 - 352: 0f1f 0b00 000b 0xb0b000f1f - 358: 2000 fld fs0,0(s0) - 35a: 0b0b000f 0xb0b000f - 35e: 00000e03 lb t3,0(zero) # 0 - 362: 2e21 addiw t3,t3,8 - 364: 3f01 addiw t5,t5,-32 - 366: 0319 addi t1,t1,6 - 368: 3a0e fld fs4,224(sp) - 36a: 39053b0b 0x39053b0b - 36e: 4919270b 0x4919270b - 372: 12011113 0x12011113 - 376: 7a184007 flq ft0,1953(a6) - 37a: 0119 addi sp,sp,6 - 37c: 22000013 li zero,544 - 380: 0026 c.slli zero,0x9 - 382: 0000 unimp - 384: 03012e23 sw a6,60(sp) # 12011192 - 388: 3a0e fld fs4,224(sp) - 38a: 39053b0b 0x39053b0b - 38e: 1119270b 0x1119270b - 392: 1201 addi tp,tp,-32 - 394: 48184007 flq ft0,1153(a6) - 398: 7a18 ld a4,48(a2) - 39a: 0019 c.nop 6 - 39c: 2400 fld fs0,8(s0) - 39e: 0034 addi a3,sp,8 - 3a0: 0b3a0803 lb a6,179(s4) - 3a4: 0b390b3b 0xb390b3b - 3a8: 1349 addi t1,t1,-14 - 3aa: 0000 unimp - 3ac: 0a25 addi s4,s4,9 - 3ae: 0300 addi s0,sp,384 - 3b0: 3a0e fld fs4,224(sp) - 3b2: 390b3b0b 0x390b3b0b - 3b6: 0001110b 0x1110b - 3ba: 2600 fld fs0,8(a2) - 3bc: 0115 addi sp,sp,5 - 3be: 13011927 0x13011927 - 3c2: 0000 unimp - 3c4: 03003427 fsd fa6,40(zero) # 28 - 3c8: 3a08 fld fa0,48(a2) - 3ca: 390b3b0b 0x390b3b0b - 3ce: 8813490b 0x8813490b - 3d2: 0b01 addi s6,s6,0 - 3d4: 0000 unimp - 3d6: 3428 fld fa0,104(s0) - 3d8: 0300 addi s0,sp,384 - 3da: 3a08 fld fa0,48(a2) - 3dc: 390b3b0b 0x390b3b0b - 3e0: 8813490b 0x8813490b - 3e4: 0b01 addi s6,s6,0 - 3e6: 1802 slli a6,a6,0x20 - 3e8: 0000 unimp - 3ea: 2e29 addiw t3,t3,10 - 3ec: 0301 addi t1,t1,0 - 3ee: 3a0e fld fs4,224(sp) - 3f0: 390b3b0b 0x390b3b0b - 3f4: 1201110b 0x1201110b - 3f8: 7c184007 flq ft0,1985(a6) - 3fc: 0119 addi sp,sp,6 - 3fe: 2a000013 li zero,672 - 402: 002e c.slli zero,0xb - 404: 0e03193f 0b3b0b3a 0xb3b0b3a0e03193f - 40c: 0b39 addi s6,s6,14 - 40e: 0111 addi sp,sp,4 - 410: 0712 slli a4,a4,0x4 - 412: 1840 addi s0,sp,52 - 414: 197c addi a5,sp,188 - 416: 0000 unimp - 418: 3f012e2b 0x3f012e2b - 41c: 0319 addi t1,t1,6 - 41e: 3a0e fld fs4,224(sp) - 420: 390b3b0b 0x390b3b0b - 424: 8719270b 0x8719270b - 428: 1901 addi s2,s2,-32 - 42a: 0111 addi sp,sp,4 - 42c: 0712 slli a4,a4,0x4 - 42e: 1840 addi s0,sp,52 - 430: 197c addi a5,sp,188 - 432: 1301 addi t1,t1,-32 - 434: 0000 unimp - 436: 2e2c fld fa1,88(a2) - 438: 3f01 addiw t5,t5,-32 - 43a: 0319 addi t1,t1,6 - 43c: 3a0e fld fs4,224(sp) - 43e: 390b3b0b 0x390b3b0b - 442: 8719270b 0x8719270b - 446: 1901 addi s2,s2,-32 - 448: 0111 addi sp,sp,4 - 44a: 0712 slli a4,a4,0x4 - 44c: 1840 addi s0,sp,52 - 44e: 197a slli s2,s2,0x3e - 450: 1301 addi t1,t1,-32 - 452: 0000 unimp - 454: 342d addiw s0,s0,-21 - 456: 0300 addi s0,sp,384 - 458: 3a0e fld fs4,224(sp) - 45a: 390b3b0b 0x390b3b0b - 45e: 8813490b 0x8813490b - 462: 0b01 addi s6,s6,0 - 464: 1802 slli a6,a6,0x20 - 466: 0000 unimp - 468: 2e2e fld ft8,200(sp) - 46a: 0301 addi t1,t1,0 - 46c: 3a0e fld fs4,224(sp) - 46e: 390b3b0b 0x390b3b0b - 472: 1119270b 0x1119270b - 476: 1201 addi tp,tp,-32 - 478: 7a184007 flq ft0,1953(a6) - 47c: 0119 addi sp,sp,6 - 47e: 00000013 nop - -Disassembly of section .debug_aranges: - -0000000000000000 <.debug_aranges>: - 0: 002c addi a1,sp,8 - 2: 0000 unimp - 4: 0002 c.slli64 zero - 6: 0000 unimp - 8: 0000 unimp - a: 0008 0x8 - c: 0000 unimp - e: 0000 unimp - 10: 2000 fld fs0,0(s0) - 12: 8000 0x8000 - 14: 0000 unimp - 16: 0000 unimp - 18: 0384 addi s1,sp,448 - ... - 2e: 0000 unimp - 30: 002c addi a1,sp,8 - 32: 0000 unimp - 34: 0002 c.slli64 zero - 36: 03b8 addi a4,sp,456 - 38: 0000 unimp - 3a: 0008 0x8 - 3c: 0000 unimp - 3e: 0000 unimp - 40: 0000 unimp - 42: 8000 0x8000 - 44: 0000 unimp - 46: 0000 unimp - 48: 01c0 addi s0,sp,196 - ... - 5e: 0000 unimp - 60: 002c addi a1,sp,8 - 62: 0000 unimp - 64: 0002 c.slli64 zero - 66: 03e1 addi t2,t2,24 - 68: 0000 unimp - 6a: 0008 0x8 - 6c: 0000 unimp - 6e: 0000 unimp - 70: 2384 fld fs1,0(a5) - 72: 8000 0x8000 - 74: 0000 unimp - 76: 0000 unimp - 78: 1218 addi a4,sp,288 - ... - -Disassembly of section .debug_line: - -0000000000000000 <.debug_line>: - 0: 000003c3 fmadd.s ft7,ft0,ft0,ft0,rne - 4: 0005 c.nop 1 - 6: 0008 0x8 - 8: 0045 c.nop 17 - a: 0000 unimp - c: 0101 addi sp,sp,0 - e: fb01 bnez a4,ffffffffffffff1e <__global_pointer$+0xffffffff7fffbfd6> - 10: 0d0e slli s10,s10,0x3 - 12: 0100 addi s0,sp,128 - 14: 0101 addi sp,sp,0 - 16: 0001 nop - 18: 0000 unimp - 1a: 0001 nop - 1c: 0100 addi s0,sp,128 - 1e: 0101 addi sp,sp,0 - 20: 041f 0009 0000 0x9041f - 26: 0034 addi a3,sp,8 - 28: 0000 unimp - 2a: 003e c.slli zero,0xf - 2c: 0000 unimp - 2e: 0075 c.nop 29 - 30: 0000 unimp - 32: 0102 c.slli64 sp - 34: 021f 050f 0000 0x50f021f - 3a: 0000 unimp - 3c: a800 fsd fs0,16(s0) - 3e: 0000 unimp - 40: 0100 addi s0,sp,128 - 42: 0000 unimp - 44: 0000 unimp - 46: af00 fsd fs0,24(a4) - 48: 0000 unimp - 4a: 0200 addi s0,sp,256 - 4c: 00c0 addi s0,sp,68 - 4e: 0000 unimp - 50: 00010503 lb a0,0(sp) - 54: 0209 addi tp,tp,2 - 56: 2000 fld fs0,0(s0) - 58: 8000 0x8000 - 5a: 0000 unimp - 5c: 0000 unimp - 5e: 05010c03 lb s8,80(sp) - 62: 030a slli t1,t1,0x2 - 64: 00140903 lb s2,1(s0) # 1a001 - 68: 0501 addi a0,a0,0 - 6a: 09000303 lb t1,144(zero) # 90 - 6e: 0004 0x4 - 70: 0501 addi a0,a0,0 - 72: 0312 slli t1,t1,0x4 - 74: 0902 c.slli64 s2 - 76: 0002 c.slli64 zero - 78: 0501 addi a0,a0,0 - 7a: 0309 addi t1,t1,2 - 7c: 0900 addi s0,sp,144 - 7e: 000c 0xc - 80: 0501 addi a0,a0,0 - 82: 0320 addi s0,sp,392 - 84: 0900 addi s0,sp,144 - 86: 0006 c.slli zero,0x1 - 88: 0501 addi a0,a0,0 - 8a: 09000317 auipc t1,0x9000 - 8e: 000e c.slli zero,0x3 - 90: 0501 addi a0,a0,0 - 92: 0314 addi a3,sp,384 - 94: 0901 addi s2,s2,0 - 96: 0006 c.slli zero,0x1 - 98: 0501 addi a0,a0,0 - 9a: 0309 addi t1,t1,2 - 9c: 0900 addi s0,sp,144 - 9e: 000c 0xc - a0: 0501 addi a0,a0,0 - a2: 0324 addi s1,sp,392 - a4: 0900 addi s0,sp,144 - a6: 0006 c.slli zero,0x1 - a8: 0501 addi a0,a0,0 - aa: 0319 addi t1,t1,6 - ac: 0900 addi s0,sp,144 - ae: 000e c.slli zero,0x3 - b0: 0501 addi a0,a0,0 - b2: 0308 addi a0,sp,384 - b4: 0901 addi s2,s2,0 - b6: 0006 c.slli zero,0x1 - b8: 0501 addi a0,a0,0 - ba: 0402001b addiw zero,tp,64 - be: 0301 addi t1,t1,0 - c0: 0900 addi s0,sp,144 - c2: 0012 c.slli zero,0x4 - c4: 0501 addi a0,a0,0 - c6: 0308 addi a0,sp,384 - c8: 0901 addi s2,s2,0 - ca: 000a c.slli zero,0x2 - cc: 0501 addi a0,a0,0 - ce: 0402001b addiw zero,tp,64 - d2: 0301 addi t1,t1,0 - d4: 0900 addi s0,sp,144 - d6: 0012 c.slli zero,0x4 - d8: 0001 nop - da: 0402 c.slli64 s0 - dc: 0302 c.slli64 t1 - de: 000a097b 0xa097b - e2: 0501 addi a0,a0,0 - e4: 0014 0x14 - e6: 0402 c.slli64 s0 - e8: 0301 addi t1,t1,0 - ea: 0900 addi s0,sp,144 - ec: 000a c.slli zero,0x2 - ee: 0501 addi a0,a0,0 - f0: 0016 c.slli zero,0x5 - f2: 0402 c.slli64 s0 - f4: 0301 addi t1,t1,0 - f6: 0900 addi s0,sp,144 - f8: 0010 0x10 - fa: 0501 addi a0,a0,0 - fc: 0011 c.nop 4 - fe: 0402 c.slli64 s0 - 100: 0301 addi t1,t1,0 - 102: 0900 addi s0,sp,144 - 104: 0008 0x8 - 106: 0501 addi a0,a0,0 - 108: 030d addi t1,t1,3 - 10a: 000a0907 0xa0907 - 10e: 0501 addi a0,a0,0 - 110: 0306 slli t1,t1,0x1 - 112: 0900 addi s0,sp,144 - 114: 0008 0x8 - 116: 0501 addi a0,a0,0 - 118: 0019 c.nop 6 - 11a: 0402 c.slli64 s0 - 11c: 0301 addi t1,t1,0 - 11e: 0900 addi s0,sp,144 - 120: 0002 c.slli64 zero - 122: 0501 addi a0,a0,0 - 124: 0028 addi a0,sp,8 - 126: 0402 c.slli64 s0 - 128: 0301 addi t1,t1,0 - 12a: 0900 addi s0,sp,144 - 12c: 0014 0x14 - 12e: 0501 addi a0,a0,0 - 130: 001f 0402 0301 0x3010402001f - 136: 0900 addi s0,sp,144 - 138: 000e c.slli zero,0x3 - 13a: 0501 addi a0,a0,0 - 13c: 0012 c.slli zero,0x4 - 13e: 0402 c.slli64 s0 - 140: 0301 addi t1,t1,0 - 142: 0900 addi s0,sp,144 - 144: 0002 c.slli64 zero - 146: 0501 addi a0,a0,0 - 148: 030c addi a1,sp,384 - 14a: 0901 addi s2,s2,0 - 14c: 0006 c.slli zero,0x1 - 14e: 0501 addi a0,a0,0 - 150: 030a slli t1,t1,0x2 - 152: 0901 addi s2,s2,0 - 154: 0006 c.slli zero,0x1 - 156: 0501 addi a0,a0,0 - 158: 0301 addi t1,t1,0 - 15a: 0901 addi s2,s2,0 - 15c: 0002 c.slli64 zero - 15e: 0301 addi t1,t1,0 - 160: 00080903 lb s2,0(a6) - 164: 0501 addi a0,a0,0 - 166: 030a slli t1,t1,0x2 - 168: 00140903 lb s2,1(s0) - 16c: 0501 addi a0,a0,0 - 16e: 09000303 lb t1,144(zero) # 90 - 172: 0004 0x4 - 174: 0501 addi a0,a0,0 - 176: 0315 addi t1,t1,5 - 178: 0902 c.slli64 s2 - 17a: 0002 c.slli64 zero - 17c: 0501 addi a0,a0,0 - 17e: 030c addi a1,sp,384 - 180: 0900 addi s0,sp,144 - 182: 000c 0xc - 184: 0501 addi a0,a0,0 - 186: 09000323 sb a6,134(zero) # 86 - 18a: 0006 c.slli zero,0x1 - 18c: 0501 addi a0,a0,0 - 18e: 031a slli t1,t1,0x6 - 190: 0900 addi s0,sp,144 - 192: 000e c.slli zero,0x3 - 194: 0501 addi a0,a0,0 - 196: 09010317 auipc t1,0x9010 - 19a: 0006 c.slli zero,0x1 - 19c: 0501 addi a0,a0,0 - 19e: 030c addi a1,sp,384 - 1a0: 0900 addi s0,sp,144 - 1a2: 000c 0xc - 1a4: 0501 addi a0,a0,0 - 1a6: 09000327 0x9000327 - 1aa: 0006 c.slli zero,0x1 - 1ac: 0501 addi a0,a0,0 - 1ae: 031c addi a5,sp,384 - 1b0: 0900 addi s0,sp,144 - 1b2: 000e c.slli zero,0x3 - 1b4: 0501 addi a0,a0,0 - 1b6: 0312 slli t1,t1,0x4 - 1b8: 0901 addi s2,s2,0 - 1ba: 0006 c.slli zero,0x1 - 1bc: 0501 addi a0,a0,0 - 1be: 0309 addi t1,t1,2 - 1c0: 0900 addi s0,sp,144 - 1c2: 0014 0x14 - 1c4: 0501 addi a0,a0,0 - 1c6: 0322 slli t1,t1,0x8 - 1c8: 0900 addi s0,sp,144 - 1ca: 0004 0x4 - 1cc: 0501 addi a0,a0,0 - 1ce: 0319 addi t1,t1,6 - 1d0: 0900 addi s0,sp,144 - 1d2: 0014 0x14 - 1d4: 0501 addi a0,a0,0 - 1d6: 0901030f 0x901030f - 1da: 0004 0x4 - 1dc: 0501 addi a0,a0,0 - 1de: 0308 addi a0,sp,384 - 1e0: 0900 addi s0,sp,144 - 1e2: 000e c.slli zero,0x3 - 1e4: 0501 addi a0,a0,0 - 1e6: 001f 0402 0301 0x3010402001f - 1ec: 0900 addi s0,sp,144 - 1ee: 0002 c.slli64 zero - 1f0: 0501 addi a0,a0,0 - 1f2: 0021 c.nop 8 - 1f4: 0402 c.slli64 s0 - 1f6: 0301 addi t1,t1,0 - 1f8: 0900 addi s0,sp,144 - 1fa: 0008 0x8 - 1fc: 0501 addi a0,a0,0 - 1fe: 0402001b addiw zero,tp,64 - 202: 0302 c.slli64 t1 - 204: 000a097b 0xa097b - 208: 0501 addi a0,a0,0 - 20a: 0014 0x14 - 20c: 0402 c.slli64 s0 - 20e: 0301 addi t1,t1,0 - 210: 0900 addi s0,sp,144 - 212: 000a c.slli zero,0x2 - 214: 0501 addi a0,a0,0 - 216: 0016 c.slli zero,0x5 - 218: 0402 c.slli64 s0 - 21a: 0301 addi t1,t1,0 - 21c: 0900 addi s0,sp,144 - 21e: 0010 0x10 - 220: 0501 addi a0,a0,0 - 222: 0011 c.nop 4 - 224: 0402 c.slli64 s0 - 226: 0301 addi t1,t1,0 - 228: 0900 addi s0,sp,144 - 22a: 0008 0x8 - 22c: 0501 addi a0,a0,0 - 22e: 030d addi t1,t1,3 - 230: 000a0907 0xa0907 - 234: 0501 addi a0,a0,0 - 236: 0306 slli t1,t1,0x1 - 238: 0900 addi s0,sp,144 - 23a: 0008 0x8 - 23c: 0501 addi a0,a0,0 - 23e: 0019 c.nop 6 - 240: 0402 c.slli64 s0 - 242: 0301 addi t1,t1,0 - 244: 0900 addi s0,sp,144 - 246: 0002 c.slli64 zero - 248: 0501 addi a0,a0,0 - 24a: 0028 addi a0,sp,8 - 24c: 0402 c.slli64 s0 - 24e: 0301 addi t1,t1,0 - 250: 0900 addi s0,sp,144 - 252: 0010 0x10 - 254: 0501 addi a0,a0,0 - 256: 0012 c.slli zero,0x4 - 258: 0402 c.slli64 s0 - 25a: 0301 addi t1,t1,0 - 25c: 0900 addi s0,sp,144 - 25e: 0010 0x10 - 260: 0501 addi a0,a0,0 - 262: 030c addi a1,sp,384 - 264: 0901 addi s2,s2,0 - 266: 0006 c.slli zero,0x1 - 268: 0501 addi a0,a0,0 - 26a: 030a slli t1,t1,0x2 - 26c: 0901 addi s2,s2,0 - 26e: 0006 c.slli zero,0x1 - 270: 0501 addi a0,a0,0 - 272: 0301 addi t1,t1,0 - 274: 0901 addi s2,s2,0 - 276: 0002 c.slli64 zero - 278: 0301 addi t1,t1,0 - 27a: 00080903 lb s2,0(a6) - 27e: 0501 addi a0,a0,0 - 280: 09050303 lb t1,144(a0) - 284: 000c 0xc - 286: 0501 addi a0,a0,0 - 288: 0311 addi t1,t1,4 - 28a: 0902 c.slli64 s2 - 28c: 0004 0x4 - 28e: 0501 addi a0,a0,0 - 290: 0900030f 0x900030f - 294: 0010 0x10 - 296: 0501 addi a0,a0,0 - 298: 09010307 0x9010307 - 29c: 0004 0x4 - 29e: 0501 addi a0,a0,0 - 2a0: 0330 addi a2,sp,392 - 2a2: 0900 addi s0,sp,144 - 2a4: 001a c.slli zero,0x6 - 2a6: 0501 addi a0,a0,0 - 2a8: 0306 slli t1,t1,0x1 - 2aa: 0900 addi s0,sp,144 - 2ac: 0008 0x8 - 2ae: 0501 addi a0,a0,0 - 2b0: 0902030b 0x902030b - 2b4: 0004 0x4 - 2b6: 0301 addi t1,t1,0 - 2b8: 0901 addi s2,s2,0 - 2ba: 000c 0xc - 2bc: 0501 addi a0,a0,0 - 2be: 030d addi t1,t1,3 - 2c0: 0902 c.slli64 s2 - 2c2: 0010 0x10 - 2c4: 0501 addi a0,a0,0 - 2c6: 0014 0x14 - 2c8: 0402 c.slli64 s0 - 2ca: 0301 addi t1,t1,0 - 2cc: 0900 addi s0,sp,144 - 2ce: 0002 c.slli64 zero - 2d0: 0501 addi a0,a0,0 - 2d2: 09030303 lb t1,144(t1) # 9010226 - 2d6: 0016 c.slli zero,0x5 - 2d8: 0501 addi a0,a0,0 - 2da: 0301 addi t1,t1,0 - 2dc: 0901 addi s2,s2,0 - 2de: 0004 0x4 - 2e0: 0301 addi t1,t1,0 - 2e2: 00080903 lb s2,0(a6) - 2e6: 0501 addi a0,a0,0 - 2e8: 031a slli t1,t1,0x6 - 2ea: 0901 addi s2,s2,0 - 2ec: 000a c.slli zero,0x2 - 2ee: 0501 addi a0,a0,0 - 2f0: 0315 addi t1,t1,5 - 2f2: 0900 addi s0,sp,144 - 2f4: 0008 0x8 - 2f6: 0501 addi a0,a0,0 - 2f8: 030c addi a1,sp,384 - 2fa: 0900 addi s0,sp,144 - 2fc: 0006 c.slli zero,0x1 - 2fe: 0501 addi a0,a0,0 - 300: 030d addi t1,t1,3 - 302: 0901 addi s2,s2,0 - 304: 0006 c.slli zero,0x1 - 306: 0501 addi a0,a0,0 - 308: 031a slli t1,t1,0x6 - 30a: 0900 addi s0,sp,144 - 30c: 0008 0x8 - 30e: 0501 addi a0,a0,0 - 310: 09000313 li t1,144 - 314: 0006 c.slli zero,0x1 - 316: 0501 addi a0,a0,0 - 318: 0301 addi t1,t1,0 - 31a: 0901 addi s2,s2,0 - 31c: 0002 c.slli64 zero - 31e: 0301 addi t1,t1,0 - 320: 00080903 lb s2,0(a6) - 324: 0501 addi a0,a0,0 - 326: 030c addi a1,sp,384 - 328: 0901 addi s2,s2,0 - 32a: 000a c.slli zero,0x2 - 32c: 0501 addi a0,a0,0 - 32e: 0900030b 0x900030b - 332: 0004 0x4 - 334: 0501 addi a0,a0,0 - 336: 0320 addi s0,sp,392 - 338: 0900 addi s0,sp,144 - 33a: 0004 0x4 - 33c: 0501 addi a0,a0,0 - 33e: 0329 addi t1,t1,10 - 340: 0900 addi s0,sp,144 - 342: 0006 c.slli zero,0x1 - 344: 0001 nop - 346: 0402 c.slli64 s0 - 348: 0601 addi a2,a2,0 - 34a: 02090003 lb zero,32(s2) # 1020 - 34e: 0100 addi s0,sp,128 - 350: 0200 addi s0,sp,256 - 352: 0204 addi s1,sp,256 - 354: 04090003 lb zero,64(s2) - 358: 0100 addi s0,sp,128 - 35a: 0105 addi sp,sp,1 - 35c: 0200 addi s0,sp,256 - 35e: 0504 addi s1,sp,640 - 360: 0306 slli t1,t1,0x1 - 362: 0901 addi s2,s2,0 - 364: 0002 c.slli64 zero - 366: 0401 addi s0,s0,0 - 368: 0502 c.slli64 a0 - 36a: 0312 slli t1,t1,0x4 - 36c: 0940 addi s0,sp,148 - 36e: 0008 0x8 - 370: 0501 addi a0,a0,0 - 372: 0304 addi s1,sp,384 - 374: 090a slli s2,s2,0x2 - 376: 000a c.slli zero,0x2 - 378: 0501 addi a0,a0,0 - 37a: 0908030b 0x908030b - 37e: 0008 0x8 - 380: 0501 addi a0,a0,0 - 382: 0301 addi t1,t1,0 - 384: 0901 addi s2,s2,0 - 386: 0004 0x4 - 388: 0501 addi a0,a0,0 - 38a: 0310 addi a2,sp,384 - 38c: 0902 c.slli64 s2 - 38e: 0008 0x8 - 390: 0501 addi a0,a0,0 - 392: 030c addi a1,sp,384 - 394: 0902 c.slli64 s2 - 396: 0008 0x8 - 398: 0501 addi a0,a0,0 - 39a: 030a slli t1,t1,0x2 - 39c: 0900 addi s0,sp,144 - 39e: 0008 0x8 - 3a0: 0501 addi a0,a0,0 - 3a2: 0305 addi t1,t1,1 - 3a4: 0901 addi s2,s2,0 - 3a6: 0006 c.slli zero,0x1 - 3a8: 0501 addi a0,a0,0 - 3aa: 0311 addi t1,t1,4 - 3ac: 0901 addi s2,s2,0 - 3ae: 0012 c.slli zero,0x4 - 3b0: 0501 addi a0,a0,0 - 3b2: 030c addi a1,sp,384 - 3b4: 0901 addi s2,s2,0 - 3b6: 0006 c.slli zero,0x1 - 3b8: 0501 addi a0,a0,0 - 3ba: 0301 addi t1,t1,0 - 3bc: 0901 addi s2,s2,0 - 3be: 0014 0x14 - 3c0: 0901 addi s2,s2,0 - 3c2: 000a c.slli zero,0x2 - 3c4: 0100 addi s0,sp,128 - 3c6: 0401 addi s0,s0,0 - 3c8: 0004 0x4 - 3ca: 0500 addi s0,sp,640 - 3cc: 0800 addi s0,sp,16 - 3ce: 2e00 fld fs0,24(a2) - 3d0: 0000 unimp - 3d2: 0100 addi s0,sp,128 - 3d4: 0101 addi sp,sp,0 - 3d6: 000d0efb 0xd0efb - 3da: 0101 addi sp,sp,0 - 3dc: 0101 addi sp,sp,0 - 3de: 0000 unimp - 3e0: 0100 addi s0,sp,128 - 3e2: 0000 unimp - 3e4: 0101 addi sp,sp,0 - 3e6: 1f01 addi t5,t5,-32 - 3e8: 3402 fld fs0,32(sp) - 3ea: 0000 unimp - 3ec: 3400 fld fs0,40(s0) - 3ee: 0000 unimp - 3f0: 0200 addi s0,sp,256 - 3f2: 1f01 addi t5,t5,-32 - 3f4: 0f02 c.slli64 t5 - 3f6: ca02 sw zero,20(sp) - 3f8: 0000 unimp - 3fa: 0000 unimp - 3fc: 00ca slli ra,ra,0x12 - 3fe: 0000 unimp - 400: 0001 nop - 402: 0209 addi tp,tp,2 - 404: 0000 unimp - 406: 8000 0x8000 - 408: 0000 unimp - 40a: 0000 unimp - 40c: 03011103 lh sp,48(sp) - 410: 0901 addi s2,s2,0 - 412: 0002 c.slli64 zero - 414: 0301 addi t1,t1,0 - 416: 0901 addi s2,s2,0 - 418: 0002 c.slli64 zero - 41a: 0301 addi t1,t1,0 - 41c: 0901 addi s2,s2,0 - 41e: 0002 c.slli64 zero - 420: 0301 addi t1,t1,0 - 422: 0901 addi s2,s2,0 - 424: 0002 c.slli64 zero - 426: 0301 addi t1,t1,0 - 428: 0901 addi s2,s2,0 - 42a: 0002 c.slli64 zero - 42c: 0301 addi t1,t1,0 - 42e: 0901 addi s2,s2,0 - 430: 0002 c.slli64 zero - 432: 0301 addi t1,t1,0 - 434: 0901 addi s2,s2,0 - 436: 0002 c.slli64 zero - 438: 0301 addi t1,t1,0 - 43a: 0901 addi s2,s2,0 - 43c: 0002 c.slli64 zero - 43e: 0301 addi t1,t1,0 - 440: 0901 addi s2,s2,0 - 442: 0002 c.slli64 zero - 444: 0301 addi t1,t1,0 - 446: 0901 addi s2,s2,0 - 448: 0002 c.slli64 zero - 44a: 0301 addi t1,t1,0 - 44c: 0901 addi s2,s2,0 - 44e: 0002 c.slli64 zero - 450: 0301 addi t1,t1,0 - 452: 0901 addi s2,s2,0 - 454: 0002 c.slli64 zero - 456: 0301 addi t1,t1,0 - 458: 0901 addi s2,s2,0 - 45a: 0002 c.slli64 zero - 45c: 0301 addi t1,t1,0 - 45e: 0901 addi s2,s2,0 - 460: 0002 c.slli64 zero - 462: 0301 addi t1,t1,0 - 464: 0901 addi s2,s2,0 - 466: 0002 c.slli64 zero - 468: 0301 addi t1,t1,0 - 46a: 0901 addi s2,s2,0 - 46c: 0002 c.slli64 zero - 46e: 0301 addi t1,t1,0 - 470: 0901 addi s2,s2,0 - 472: 0002 c.slli64 zero - 474: 0301 addi t1,t1,0 - 476: 0901 addi s2,s2,0 - 478: 0002 c.slli64 zero - 47a: 0301 addi t1,t1,0 - 47c: 0901 addi s2,s2,0 - 47e: 0002 c.slli64 zero - 480: 0301 addi t1,t1,0 - 482: 0901 addi s2,s2,0 - 484: 0002 c.slli64 zero - 486: 0301 addi t1,t1,0 - 488: 0901 addi s2,s2,0 - 48a: 0002 c.slli64 zero - 48c: 0301 addi t1,t1,0 - 48e: 0901 addi s2,s2,0 - 490: 0002 c.slli64 zero - 492: 0301 addi t1,t1,0 - 494: 0901 addi s2,s2,0 - 496: 0002 c.slli64 zero - 498: 0301 addi t1,t1,0 - 49a: 0901 addi s2,s2,0 - 49c: 0002 c.slli64 zero - 49e: 0301 addi t1,t1,0 - 4a0: 0901 addi s2,s2,0 - 4a2: 0002 c.slli64 zero - 4a4: 0301 addi t1,t1,0 - 4a6: 0901 addi s2,s2,0 - 4a8: 0002 c.slli64 zero - 4aa: 0301 addi t1,t1,0 - 4ac: 0901 addi s2,s2,0 - 4ae: 0002 c.slli64 zero - 4b0: 0301 addi t1,t1,0 - 4b2: 0901 addi s2,s2,0 - 4b4: 0002 c.slli64 zero - 4b6: 0301 addi t1,t1,0 - 4b8: 0901 addi s2,s2,0 - 4ba: 0002 c.slli64 zero - 4bc: 0301 addi t1,t1,0 - 4be: 0901 addi s2,s2,0 - 4c0: 0002 c.slli64 zero - 4c2: 0301 addi t1,t1,0 - 4c4: 00020903 lb s2,0(tp) # 0 - 4c8: 0301 addi t1,t1,0 - 4ca: 0901 addi s2,s2,0 - 4cc: 0002 c.slli64 zero - 4ce: 0301 addi t1,t1,0 - 4d0: 00040903 lb s2,0(s0) - 4d4: 0301 addi t1,t1,0 - 4d6: 0901 addi s2,s2,0 - 4d8: 0002 c.slli64 zero - 4da: 0301 addi t1,t1,0 - 4dc: 0902 c.slli64 s2 - 4de: 0002 c.slli64 zero - 4e0: 0301 addi t1,t1,0 - 4e2: 0905 addi s2,s2,1 - 4e4: 0004 0x4 - 4e6: 0301 addi t1,t1,0 - 4e8: 0901 addi s2,s2,0 - 4ea: 0002 c.slli64 zero - 4ec: 0301 addi t1,t1,0 - 4ee: 0901 addi s2,s2,0 - 4f0: 0008 0x8 - 4f2: 0301 addi t1,t1,0 - 4f4: 0905 addi s2,s2,1 - 4f6: 0002 c.slli64 zero - 4f8: 0301 addi t1,t1,0 - 4fa: 0901 addi s2,s2,0 - 4fc: 0008 0x8 - 4fe: 0301 addi t1,t1,0 - 500: 0902 c.slli64 s2 - 502: 0004 0x4 - 504: 0301 addi t1,t1,0 - 506: 0901 addi s2,s2,0 - 508: 0004 0x4 - 50a: 0301 addi t1,t1,0 - 50c: 0901 addi s2,s2,0 - 50e: 0004 0x4 - 510: 0301 addi t1,t1,0 - 512: 0901 addi s2,s2,0 - 514: 0004 0x4 - 516: 0301 addi t1,t1,0 - 518: 0901 addi s2,s2,0 - 51a: 0004 0x4 - 51c: 0301 addi t1,t1,0 - 51e: 0901 addi s2,s2,0 - 520: 0004 0x4 - 522: 0301 addi t1,t1,0 - 524: 0901 addi s2,s2,0 - 526: 0004 0x4 - 528: 0301 addi t1,t1,0 - 52a: 0901 addi s2,s2,0 - 52c: 0004 0x4 - 52e: 0301 addi t1,t1,0 - 530: 0901 addi s2,s2,0 - 532: 0004 0x4 - 534: 0301 addi t1,t1,0 - 536: 0901 addi s2,s2,0 - 538: 0004 0x4 - 53a: 0301 addi t1,t1,0 - 53c: 0901 addi s2,s2,0 - 53e: 0004 0x4 - 540: 0301 addi t1,t1,0 - 542: 0901 addi s2,s2,0 - 544: 0004 0x4 - 546: 0301 addi t1,t1,0 - 548: 0901 addi s2,s2,0 - 54a: 0004 0x4 - 54c: 0301 addi t1,t1,0 - 54e: 0901 addi s2,s2,0 - 550: 0004 0x4 - 552: 0301 addi t1,t1,0 - 554: 0901 addi s2,s2,0 - 556: 0004 0x4 - 558: 0301 addi t1,t1,0 - 55a: 0901 addi s2,s2,0 - 55c: 0004 0x4 - 55e: 0301 addi t1,t1,0 - 560: 0901 addi s2,s2,0 - 562: 0004 0x4 - 564: 0301 addi t1,t1,0 - 566: 0901 addi s2,s2,0 - 568: 0004 0x4 - 56a: 0301 addi t1,t1,0 - 56c: 0901 addi s2,s2,0 - 56e: 0004 0x4 - 570: 0301 addi t1,t1,0 - 572: 0901 addi s2,s2,0 - 574: 0004 0x4 - 576: 0301 addi t1,t1,0 - 578: 0901 addi s2,s2,0 - 57a: 0004 0x4 - 57c: 0301 addi t1,t1,0 - 57e: 0901 addi s2,s2,0 - 580: 0004 0x4 - 582: 0301 addi t1,t1,0 - 584: 0901 addi s2,s2,0 - 586: 0004 0x4 - 588: 0301 addi t1,t1,0 - 58a: 0901 addi s2,s2,0 - 58c: 0004 0x4 - 58e: 0301 addi t1,t1,0 - 590: 0901 addi s2,s2,0 - 592: 0004 0x4 - 594: 0301 addi t1,t1,0 - 596: 0901 addi s2,s2,0 - 598: 0004 0x4 - 59a: 0301 addi t1,t1,0 - 59c: 0901 addi s2,s2,0 - 59e: 0004 0x4 - 5a0: 0301 addi t1,t1,0 - 5a2: 0901 addi s2,s2,0 - 5a4: 0004 0x4 - 5a6: 0301 addi t1,t1,0 - 5a8: 0901 addi s2,s2,0 - 5aa: 0004 0x4 - 5ac: 0301 addi t1,t1,0 - 5ae: 0901 addi s2,s2,0 - 5b0: 0004 0x4 - 5b2: 0301 addi t1,t1,0 - 5b4: 0901 addi s2,s2,0 - 5b6: 0004 0x4 - 5b8: 0301 addi t1,t1,0 - 5ba: 0901 addi s2,s2,0 - 5bc: 0004 0x4 - 5be: 0301 addi t1,t1,0 - 5c0: 0901 addi s2,s2,0 - 5c2: 0004 0x4 - 5c4: 0301 addi t1,t1,0 - 5c6: 0905 addi s2,s2,1 - 5c8: 0004 0x4 - 5ca: 0301 addi t1,t1,0 - 5cc: 0901 addi s2,s2,0 - 5ce: 0008 0x8 - 5d0: 0301 addi t1,t1,0 - 5d2: 0905 addi s2,s2,1 - 5d4: 0004 0x4 - 5d6: 0301 addi t1,t1,0 - 5d8: 00080903 lb s2,0(a6) - 5dc: 0301 addi t1,t1,0 - 5de: 0901 addi s2,s2,0 - 5e0: 0004 0x4 - 5e2: 0301 addi t1,t1,0 - 5e4: 00040903 lb s2,0(s0) - 5e8: 0301 addi t1,t1,0 - 5ea: 0902 c.slli64 s2 - 5ec: 0004 0x4 - 5ee: 0301 addi t1,t1,0 - 5f0: 0901 addi s2,s2,0 - 5f2: 0002 c.slli64 zero - 5f4: 0301 addi t1,t1,0 - 5f6: 0904 addi s1,sp,144 - 5f8: 0004 0x4 - 5fa: 0301 addi t1,t1,0 - 5fc: 0901 addi s2,s2,0 - 5fe: 0004 0x4 - 600: 0301 addi t1,t1,0 - 602: 0901 addi s2,s2,0 - 604: 0002 c.slli64 zero - 606: 0301 addi t1,t1,0 - 608: 0901 addi s2,s2,0 - 60a: 0002 c.slli64 zero - 60c: 0301 addi t1,t1,0 - 60e: 0901 addi s2,s2,0 - 610: 0004 0x4 - 612: 0301 addi t1,t1,0 - 614: 0902 c.slli64 s2 - 616: 0002 c.slli64 zero - 618: 0301 addi t1,t1,0 - 61a: 0904 addi s1,sp,144 - 61c: 0004 0x4 - 61e: 0301 addi t1,t1,0 - 620: 0902 c.slli64 s2 - 622: 0002 c.slli64 zero - 624: 0301 addi t1,t1,0 - 626: 0901 addi s2,s2,0 - 628: 0002 c.slli64 zero - 62a: 0301 addi t1,t1,0 - 62c: 0901 addi s2,s2,0 - 62e: 0002 c.slli64 zero - 630: 0301 addi t1,t1,0 - 632: 0901 addi s2,s2,0 - 634: 0002 c.slli64 zero - 636: 0301 addi t1,t1,0 - 638: 0901 addi s2,s2,0 - 63a: 0002 c.slli64 zero - 63c: 0301 addi t1,t1,0 - 63e: 0901 addi s2,s2,0 - 640: 0002 c.slli64 zero - 642: 0301 addi t1,t1,0 - 644: 0901 addi s2,s2,0 - 646: 0002 c.slli64 zero - 648: 0301 addi t1,t1,0 - 64a: 0901 addi s2,s2,0 - 64c: 0002 c.slli64 zero - 64e: 0301 addi t1,t1,0 - 650: 0901 addi s2,s2,0 - 652: 0002 c.slli64 zero - 654: 0301 addi t1,t1,0 - 656: 0901 addi s2,s2,0 - 658: 0002 c.slli64 zero - 65a: 0301 addi t1,t1,0 - 65c: 0901 addi s2,s2,0 - 65e: 0002 c.slli64 zero - 660: 0301 addi t1,t1,0 - 662: 0901 addi s2,s2,0 - 664: 0002 c.slli64 zero - 666: 0301 addi t1,t1,0 - 668: 0901 addi s2,s2,0 - 66a: 0002 c.slli64 zero - 66c: 0301 addi t1,t1,0 - 66e: 0901 addi s2,s2,0 - 670: 0002 c.slli64 zero - 672: 0301 addi t1,t1,0 - 674: 0901 addi s2,s2,0 - 676: 0002 c.slli64 zero - 678: 0301 addi t1,t1,0 - 67a: 0901 addi s2,s2,0 - 67c: 0002 c.slli64 zero - 67e: 0301 addi t1,t1,0 - 680: 0901 addi s2,s2,0 - 682: 0002 c.slli64 zero - 684: 0301 addi t1,t1,0 - 686: 0901 addi s2,s2,0 - 688: 0002 c.slli64 zero - 68a: 0301 addi t1,t1,0 - 68c: 0901 addi s2,s2,0 - 68e: 0002 c.slli64 zero - 690: 0301 addi t1,t1,0 - 692: 0901 addi s2,s2,0 - 694: 0002 c.slli64 zero - 696: 0301 addi t1,t1,0 - 698: 0901 addi s2,s2,0 - 69a: 0002 c.slli64 zero - 69c: 0301 addi t1,t1,0 - 69e: 0901 addi s2,s2,0 - 6a0: 0002 c.slli64 zero - 6a2: 0301 addi t1,t1,0 - 6a4: 0901 addi s2,s2,0 - 6a6: 0002 c.slli64 zero - 6a8: 0301 addi t1,t1,0 - 6aa: 0901 addi s2,s2,0 - 6ac: 0002 c.slli64 zero - 6ae: 0301 addi t1,t1,0 - 6b0: 0901 addi s2,s2,0 - 6b2: 0002 c.slli64 zero - 6b4: 0301 addi t1,t1,0 - 6b6: 0901 addi s2,s2,0 - 6b8: 0002 c.slli64 zero - 6ba: 0301 addi t1,t1,0 - 6bc: 0901 addi s2,s2,0 - 6be: 0002 c.slli64 zero - 6c0: 0301 addi t1,t1,0 - 6c2: 0901 addi s2,s2,0 - 6c4: 0002 c.slli64 zero - 6c6: 0301 addi t1,t1,0 - 6c8: 0901 addi s2,s2,0 - 6ca: 0002 c.slli64 zero - 6cc: 0301 addi t1,t1,0 - 6ce: 0901 addi s2,s2,0 - 6d0: 0002 c.slli64 zero - 6d2: 0301 addi t1,t1,0 - 6d4: 0901 addi s2,s2,0 - 6d6: 0002 c.slli64 zero - 6d8: 0301 addi t1,t1,0 - 6da: 0902 c.slli64 s2 - 6dc: 0002 c.slli64 zero - 6de: 0301 addi t1,t1,0 - 6e0: 0901 addi s2,s2,0 - 6e2: 0004 0x4 - 6e4: 0301 addi t1,t1,0 - 6e6: 0901 addi s2,s2,0 - 6e8: 0004 0x4 - 6ea: 0301 addi t1,t1,0 - 6ec: 0901 addi s2,s2,0 - 6ee: 0002 c.slli64 zero - 6f0: 0301 addi t1,t1,0 - 6f2: 0901 addi s2,s2,0 - 6f4: 0004 0x4 - 6f6: 0301 addi t1,t1,0 - 6f8: 00040903 lb s2,0(s0) - 6fc: 0301 addi t1,t1,0 - 6fe: 0901 addi s2,s2,0 - 700: 0006 c.slli zero,0x1 - 702: 0301 addi t1,t1,0 - 704: 0902 c.slli64 s2 - 706: 0004 0x4 - 708: 0301 addi t1,t1,0 - 70a: 0901 addi s2,s2,0 - 70c: 0002 c.slli64 zero - 70e: 0301 addi t1,t1,0 - 710: 0901 addi s2,s2,0 - 712: 0002 c.slli64 zero - 714: 0301 addi t1,t1,0 - 716: 0901 addi s2,s2,0 - 718: 0002 c.slli64 zero - 71a: 0301 addi t1,t1,0 - 71c: 0901 addi s2,s2,0 - 71e: 0002 c.slli64 zero - 720: 0301 addi t1,t1,0 - 722: 0901 addi s2,s2,0 - 724: 0002 c.slli64 zero - 726: 0301 addi t1,t1,0 - 728: 0901 addi s2,s2,0 - 72a: 0002 c.slli64 zero - 72c: 0301 addi t1,t1,0 - 72e: 0901 addi s2,s2,0 - 730: 0002 c.slli64 zero - 732: 0301 addi t1,t1,0 - 734: 0901 addi s2,s2,0 - 736: 0002 c.slli64 zero - 738: 0301 addi t1,t1,0 - 73a: 0901 addi s2,s2,0 - 73c: 0002 c.slli64 zero - 73e: 0301 addi t1,t1,0 - 740: 0901 addi s2,s2,0 - 742: 0002 c.slli64 zero - 744: 0301 addi t1,t1,0 - 746: 0901 addi s2,s2,0 - 748: 0002 c.slli64 zero - 74a: 0301 addi t1,t1,0 - 74c: 0901 addi s2,s2,0 - 74e: 0002 c.slli64 zero - 750: 0301 addi t1,t1,0 - 752: 0901 addi s2,s2,0 - 754: 0002 c.slli64 zero - 756: 0301 addi t1,t1,0 - 758: 0901 addi s2,s2,0 - 75a: 0002 c.slli64 zero - 75c: 0301 addi t1,t1,0 - 75e: 0901 addi s2,s2,0 - 760: 0002 c.slli64 zero - 762: 0301 addi t1,t1,0 - 764: 0901 addi s2,s2,0 - 766: 0002 c.slli64 zero - 768: 0301 addi t1,t1,0 - 76a: 0901 addi s2,s2,0 - 76c: 0002 c.slli64 zero - 76e: 0301 addi t1,t1,0 - 770: 0901 addi s2,s2,0 - 772: 0002 c.slli64 zero - 774: 0301 addi t1,t1,0 - 776: 0901 addi s2,s2,0 - 778: 0002 c.slli64 zero - 77a: 0301 addi t1,t1,0 - 77c: 0901 addi s2,s2,0 - 77e: 0002 c.slli64 zero - 780: 0301 addi t1,t1,0 - 782: 0901 addi s2,s2,0 - 784: 0002 c.slli64 zero - 786: 0301 addi t1,t1,0 - 788: 0901 addi s2,s2,0 - 78a: 0002 c.slli64 zero - 78c: 0301 addi t1,t1,0 - 78e: 0901 addi s2,s2,0 - 790: 0002 c.slli64 zero - 792: 0301 addi t1,t1,0 - 794: 0901 addi s2,s2,0 - 796: 0002 c.slli64 zero - 798: 0301 addi t1,t1,0 - 79a: 0901 addi s2,s2,0 - 79c: 0002 c.slli64 zero - 79e: 0301 addi t1,t1,0 - 7a0: 0901 addi s2,s2,0 - 7a2: 0002 c.slli64 zero - 7a4: 0301 addi t1,t1,0 - 7a6: 0901 addi s2,s2,0 - 7a8: 0002 c.slli64 zero - 7aa: 0301 addi t1,t1,0 - 7ac: 0901 addi s2,s2,0 - 7ae: 0002 c.slli64 zero - 7b0: 0301 addi t1,t1,0 - 7b2: 0901 addi s2,s2,0 - 7b4: 0002 c.slli64 zero - 7b6: 0301 addi t1,t1,0 - 7b8: 0901 addi s2,s2,0 - 7ba: 0002 c.slli64 zero - 7bc: 0301 addi t1,t1,0 - 7be: 0902 c.slli64 s2 - 7c0: 0002 c.slli64 zero - 7c2: 0301 addi t1,t1,0 - 7c4: 0901 addi s2,s2,0 - 7c6: 0002 c.slli64 zero - 7c8: 0901 addi s2,s2,0 - 7ca: 0004 0x4 - 7cc: 0100 addi s0,sp,128 - 7ce: 0d01 addi s10,s10,0 - 7d0: 0010 0x10 - 7d2: 0500 addi s0,sp,640 - 7d4: 0800 addi s0,sp,16 - 7d6: 6100 ld s0,0(a0) - 7d8: 0000 unimp - 7da: 0100 addi s0,sp,128 - 7dc: 0101 addi sp,sp,0 - 7de: 000d0efb 0xd0efb - 7e2: 0101 addi sp,sp,0 - 7e4: 0101 addi sp,sp,0 - 7e6: 0000 unimp - 7e8: 0100 addi s0,sp,128 - 7ea: 0000 unimp - 7ec: 0101 addi sp,sp,0 - 7ee: 1f01 addi t5,t5,-32 - 7f0: 0906 slli s2,s2,0x1 - 7f2: 0000 unimp - 7f4: 3400 fld fs0,40(s0) - 7f6: 0000 unimp - 7f8: e500 sd s0,8(a0) - 7fa: 0000 unimp - 7fc: 3e00 fld fs0,56(a2) - 7fe: 0000 unimp - 800: 7500 ld s0,40(a0) - 802: 0000 unimp - 804: 1400 addi s0,sp,544 - 806: 0001 nop - 808: 0200 addi s0,sp,256 - 80a: 1f01 addi t5,t5,-32 - 80c: 0f02 c.slli64 t5 - 80e: d009 beqz s0,710 - 810: 0000 unimp - 812: 0000 unimp - 814: 00a8 addi a0,sp,72 - 816: 0000 unimp - 818: da01 beqz a2,728 - 81a: 0000 unimp - 81c: 0100 addi s0,sp,128 - 81e: 0152 slli sp,sp,0x14 - 820: 0000 unimp - 822: af02 fsd ft0,408(sp) - 824: 0000 unimp - 826: 0300 addi s0,sp,384 - 828: 00c0 addi s0,sp,68 - 82a: 0000 unimp - 82c: 5a04 lw s1,48(a2) - 82e: 0001 nop - 830: 0500 addi s0,sp,640 - 832: 00000163 beqz zero,834 - 836: 6c05 lui s8,0x1 - 838: 0001 nop - 83a: 0200 addi s0,sp,256 - 83c: 0105 addi sp,sp,1 - 83e: 0900 addi s0,sp,144 - 840: 8402 jr s0 - 842: 00800023 sb s0,0(zero) # 0 - 846: 0000 unimp - 848: 0300 addi s0,sp,384 - 84a: 010c addi a1,sp,128 - 84c: 0a05 addi s4,s4,1 - 84e: 14090303 lb t1,320(s2) - 852: 0100 addi s0,sp,128 - 854: 0305 addi t1,t1,1 - 856: 04090003 lb zero,64(s2) - 85a: 0100 addi s0,sp,128 - 85c: 1205 addi tp,tp,-31 - 85e: 02090203 lb tp,32(s2) - 862: 0100 addi s0,sp,128 - 864: 0905 addi s2,s2,1 - 866: 0c090003 lb zero,192(s2) - 86a: 0100 addi s0,sp,128 - 86c: 2005 0x2005 - 86e: 06090003 lb zero,96(s2) - 872: 0100 addi s0,sp,128 - 874: 1705 addi a4,a4,-31 - 876: 0e090003 lb zero,224(s2) - 87a: 0100 addi s0,sp,128 - 87c: 1405 addi s0,s0,-31 - 87e: 06090103 lb sp,96(s2) - 882: 0100 addi s0,sp,128 - 884: 0905 addi s2,s2,1 - 886: 0c090003 lb zero,192(s2) - 88a: 0100 addi s0,sp,128 - 88c: 2405 addiw s0,s0,1 - 88e: 06090003 lb zero,96(s2) - 892: 0100 addi s0,sp,128 - 894: 1905 addi s2,s2,-31 - 896: 0e090003 lb zero,224(s2) - 89a: 0100 addi s0,sp,128 - 89c: 0805 addi a6,a6,1 - 89e: 06090103 lb sp,96(s2) - 8a2: 0100 addi s0,sp,128 - 8a4: 1b05 addi s6,s6,-31 - 8a6: 0200 addi s0,sp,256 - 8a8: 0104 addi s1,sp,128 - 8aa: 12090003 lb zero,288(s2) - 8ae: 0100 addi s0,sp,128 - 8b0: 0805 addi a6,a6,1 - 8b2: 0a090103 lb sp,160(s2) - 8b6: 0100 addi s0,sp,128 - 8b8: 1b05 addi s6,s6,-31 - 8ba: 0200 addi s0,sp,256 - 8bc: 0104 addi s1,sp,128 - 8be: 12090003 lb zero,288(s2) - 8c2: 0100 addi s0,sp,128 - 8c4: 0200 addi s0,sp,256 - 8c6: 0204 addi s1,sp,256 - 8c8: 0a097b03 0xa097b03 - 8cc: 0100 addi s0,sp,128 - 8ce: 1405 addi s0,s0,-31 - 8d0: 0200 addi s0,sp,256 - 8d2: 0104 addi s1,sp,128 - 8d4: 0a090003 lb zero,160(s2) - 8d8: 0100 addi s0,sp,128 - 8da: 1605 addi a2,a2,-31 - 8dc: 0200 addi s0,sp,256 - 8de: 0104 addi s1,sp,128 - 8e0: 10090003 lb zero,256(s2) - 8e4: 0100 addi s0,sp,128 - 8e6: 1105 addi sp,sp,-31 - 8e8: 0200 addi s0,sp,256 - 8ea: 0104 addi s1,sp,128 - 8ec: 08090003 lb zero,128(s2) - 8f0: 0100 addi s0,sp,128 - 8f2: 0d05 addi s10,s10,1 - 8f4: 0a090703 lb a4,160(s2) - 8f8: 0100 addi s0,sp,128 - 8fa: 0605 addi a2,a2,1 - 8fc: 08090003 lb zero,128(s2) - 900: 0100 addi s0,sp,128 - 902: 1905 addi s2,s2,-31 - 904: 0200 addi s0,sp,256 - 906: 0104 addi s1,sp,128 - 908: 02090003 lb zero,32(s2) - 90c: 0100 addi s0,sp,128 - 90e: 2805 addiw a6,a6,1 - 910: 0200 addi s0,sp,256 - 912: 0104 addi s1,sp,128 - 914: 14090003 lb zero,320(s2) - 918: 0100 addi s0,sp,128 - 91a: 1f05 addi t5,t5,-31 - 91c: 0200 addi s0,sp,256 - 91e: 0104 addi s1,sp,128 - 920: 0e090003 lb zero,224(s2) - 924: 0100 addi s0,sp,128 - 926: 1205 addi tp,tp,-31 - 928: 0200 addi s0,sp,256 - 92a: 0104 addi s1,sp,128 - 92c: 02090003 lb zero,32(s2) - 930: 0100 addi s0,sp,128 - 932: 0c05 addi s8,s8,1 - 934: 06090103 lb sp,96(s2) - 938: 0100 addi s0,sp,128 - 93a: 0a05 addi s4,s4,1 - 93c: 06090103 lb sp,96(s2) - 940: 0100 addi s0,sp,128 - 942: 0105 addi sp,sp,1 - 944: 02090103 lb sp,32(s2) - 948: 0100 addi s0,sp,128 - 94a: 08090303 lb t1,128(s2) - 94e: 0100 addi s0,sp,128 - 950: 0a05 addi s4,s4,1 - 952: 14090303 lb t1,320(s2) - 956: 0100 addi s0,sp,128 - 958: 0305 addi t1,t1,1 - 95a: 04090003 lb zero,64(s2) - 95e: 0100 addi s0,sp,128 - 960: 1505 addi a0,a0,-31 - 962: 02090203 lb tp,32(s2) - 966: 0100 addi s0,sp,128 - 968: 0c05 addi s8,s8,1 - 96a: 0c090003 lb zero,192(s2) - 96e: 0100 addi s0,sp,128 - 970: 2305 addiw t1,t1,1 - 972: 06090003 lb zero,96(s2) - 976: 0100 addi s0,sp,128 - 978: 1a05 addi s4,s4,-31 - 97a: 0e090003 lb zero,224(s2) - 97e: 0100 addi s0,sp,128 - 980: 1705 addi a4,a4,-31 - 982: 06090103 lb sp,96(s2) - 986: 0100 addi s0,sp,128 - 988: 0c05 addi s8,s8,1 - 98a: 0c090003 lb zero,192(s2) - 98e: 0100 addi s0,sp,128 - 990: 2705 addiw a4,a4,1 - 992: 06090003 lb zero,96(s2) - 996: 0100 addi s0,sp,128 - 998: 1c05 addi s8,s8,-31 - 99a: 0e090003 lb zero,224(s2) - 99e: 0100 addi s0,sp,128 - 9a0: 1205 addi tp,tp,-31 - 9a2: 06090103 lb sp,96(s2) - 9a6: 0100 addi s0,sp,128 - 9a8: 0905 addi s2,s2,1 - 9aa: 14090003 lb zero,320(s2) - 9ae: 0100 addi s0,sp,128 - 9b0: 2205 addiw tp,tp,1 - 9b2: 04090003 lb zero,64(s2) - 9b6: 0100 addi s0,sp,128 - 9b8: 1905 addi s2,s2,-31 - 9ba: 14090003 lb zero,320(s2) - 9be: 0100 addi s0,sp,128 - 9c0: 0f05 addi t5,t5,1 - 9c2: 04090103 lb sp,64(s2) - 9c6: 0100 addi s0,sp,128 - 9c8: 0805 addi a6,a6,1 - 9ca: 0e090003 lb zero,224(s2) - 9ce: 0100 addi s0,sp,128 - 9d0: 1f05 addi t5,t5,-31 - 9d2: 0200 addi s0,sp,256 - 9d4: 0104 addi s1,sp,128 - 9d6: 02090003 lb zero,32(s2) - 9da: 0100 addi s0,sp,128 - 9dc: 2105 addiw sp,sp,1 - 9de: 0200 addi s0,sp,256 - 9e0: 0104 addi s1,sp,128 - 9e2: 08090003 lb zero,128(s2) - 9e6: 0100 addi s0,sp,128 - 9e8: 1b05 addi s6,s6,-31 - 9ea: 0200 addi s0,sp,256 - 9ec: 0204 addi s1,sp,256 - 9ee: 0a097b03 0xa097b03 - 9f2: 0100 addi s0,sp,128 - 9f4: 1405 addi s0,s0,-31 - 9f6: 0200 addi s0,sp,256 - 9f8: 0104 addi s1,sp,128 - 9fa: 0a090003 lb zero,160(s2) - 9fe: 0100 addi s0,sp,128 - a00: 1605 addi a2,a2,-31 - a02: 0200 addi s0,sp,256 - a04: 0104 addi s1,sp,128 - a06: 10090003 lb zero,256(s2) - a0a: 0100 addi s0,sp,128 - a0c: 1105 addi sp,sp,-31 - a0e: 0200 addi s0,sp,256 - a10: 0104 addi s1,sp,128 - a12: 08090003 lb zero,128(s2) - a16: 0100 addi s0,sp,128 - a18: 0d05 addi s10,s10,1 - a1a: 0a090703 lb a4,160(s2) - a1e: 0100 addi s0,sp,128 - a20: 0605 addi a2,a2,1 - a22: 08090003 lb zero,128(s2) - a26: 0100 addi s0,sp,128 - a28: 1905 addi s2,s2,-31 - a2a: 0200 addi s0,sp,256 - a2c: 0104 addi s1,sp,128 - a2e: 02090003 lb zero,32(s2) - a32: 0100 addi s0,sp,128 - a34: 2805 addiw a6,a6,1 - a36: 0200 addi s0,sp,256 - a38: 0104 addi s1,sp,128 - a3a: 10090003 lb zero,256(s2) - a3e: 0100 addi s0,sp,128 - a40: 1205 addi tp,tp,-31 - a42: 0200 addi s0,sp,256 - a44: 0104 addi s1,sp,128 - a46: 10090003 lb zero,256(s2) - a4a: 0100 addi s0,sp,128 - a4c: 0c05 addi s8,s8,1 - a4e: 06090103 lb sp,96(s2) - a52: 0100 addi s0,sp,128 - a54: 0a05 addi s4,s4,1 - a56: 06090103 lb sp,96(s2) - a5a: 0100 addi s0,sp,128 - a5c: 0105 addi sp,sp,1 - a5e: 02090103 lb sp,32(s2) - a62: 0100 addi s0,sp,128 - a64: 08090303 lb t1,128(s2) - a68: 0100 addi s0,sp,128 - a6a: 0305 addi t1,t1,1 - a6c: 0c090503 lb a0,192(s2) - a70: 0100 addi s0,sp,128 - a72: 1105 addi sp,sp,-31 - a74: 04090203 lb tp,64(s2) - a78: 0100 addi s0,sp,128 - a7a: 0f05 addi t5,t5,1 - a7c: 10090003 lb zero,256(s2) - a80: 0100 addi s0,sp,128 - a82: 0705 addi a4,a4,1 - a84: 04090103 lb sp,64(s2) - a88: 0100 addi s0,sp,128 - a8a: 3005 0x3005 - a8c: 1a090003 lb zero,416(s2) - a90: 0100 addi s0,sp,128 - a92: 0605 addi a2,a2,1 - a94: 08090003 lb zero,128(s2) - a98: 0100 addi s0,sp,128 - a9a: 0b05 addi s6,s6,1 - a9c: 04090203 lb tp,64(s2) - aa0: 0100 addi s0,sp,128 - aa2: 0c090103 lb sp,192(s2) - aa6: 0100 addi s0,sp,128 - aa8: 0d05 addi s10,s10,1 - aaa: 10090203 lb tp,256(s2) - aae: 0100 addi s0,sp,128 - ab0: 1405 addi s0,s0,-31 - ab2: 0200 addi s0,sp,256 - ab4: 0104 addi s1,sp,128 - ab6: 02090003 lb zero,32(s2) - aba: 0100 addi s0,sp,128 - abc: 0305 addi t1,t1,1 - abe: 16090303 lb t1,352(s2) - ac2: 0100 addi s0,sp,128 - ac4: 0105 addi sp,sp,1 - ac6: 04090103 lb sp,64(s2) - aca: 0100 addi s0,sp,128 - acc: 08090303 lb t1,128(s2) - ad0: 0100 addi s0,sp,128 - ad2: 1a05 addi s4,s4,-31 - ad4: 0a090103 lb sp,160(s2) - ad8: 0100 addi s0,sp,128 - ada: 1505 addi a0,a0,-31 - adc: 08090003 lb zero,128(s2) - ae0: 0100 addi s0,sp,128 - ae2: 0c05 addi s8,s8,1 - ae4: 06090003 lb zero,96(s2) - ae8: 0100 addi s0,sp,128 - aea: 0d05 addi s10,s10,1 - aec: 06090103 lb sp,96(s2) - af0: 0100 addi s0,sp,128 - af2: 1a05 addi s4,s4,-31 - af4: 08090003 lb zero,128(s2) - af8: 0100 addi s0,sp,128 - afa: 1305 addi t1,t1,-31 - afc: 06090003 lb zero,96(s2) - b00: 0100 addi s0,sp,128 - b02: 0105 addi sp,sp,1 - b04: 02090103 lb sp,32(s2) - b08: 0100 addi s0,sp,128 - b0a: 08090303 lb t1,128(s2) - b0e: 0100 addi s0,sp,128 - b10: 0c05 addi s8,s8,1 - b12: 0a090103 lb sp,160(s2) - b16: 0100 addi s0,sp,128 - b18: 0b05 addi s6,s6,1 - b1a: 04090003 lb zero,64(s2) - b1e: 0100 addi s0,sp,128 - b20: 2005 0x2005 - b22: 04090003 lb zero,64(s2) - b26: 0100 addi s0,sp,128 - b28: 2905 addiw s2,s2,1 - b2a: 06090003 lb zero,96(s2) - b2e: 0100 addi s0,sp,128 - b30: 0200 addi s0,sp,256 - b32: 0104 addi s1,sp,128 - b34: 0306 slli t1,t1,0x1 - b36: 0900 addi s0,sp,144 - b38: 0002 c.slli64 zero - b3a: 0001 nop - b3c: 0402 c.slli64 s0 - b3e: 0302 c.slli64 t1 - b40: 0900 addi s0,sp,144 - b42: 0004 0x4 - b44: 0501 addi a0,a0,0 - b46: 0001 nop - b48: 0402 c.slli64 s0 - b4a: 0605 addi a2,a2,1 - b4c: 02090103 lb sp,32(s2) - b50: 0100 addi s0,sp,128 - b52: 0204 addi s1,sp,256 - b54: 08094a03 lbu s4,128(s2) - b58: 0100 addi s0,sp,128 - b5a: 1005 c.nop -31 - b5c: 2e090203 lb tp,736(s2) - b60: 0100 addi s0,sp,128 - b62: 06090103 lb sp,96(s2) - b66: 0100 addi s0,sp,128 - b68: 06090103 lb sp,96(s2) - b6c: 0100 addi s0,sp,128 - b6e: 06090103 lb sp,96(s2) - b72: 0100 addi s0,sp,128 - b74: 0305 addi t1,t1,1 - b76: 06090103 lb sp,96(s2) - b7a: 0100 addi s0,sp,128 - b7c: 0c05 addi s8,s8,1 - b7e: 04090203 lb tp,64(s2) - b82: 0100 addi s0,sp,128 - b84: 0a05 addi s4,s4,1 - b86: 02090003 lb zero,32(s2) - b8a: 0100 addi s0,sp,128 - b8c: 0905 addi s2,s2,1 - b8e: 0a090103 lb sp,160(s2) - b92: 0100 addi s0,sp,128 - b94: 1305 addi t1,t1,-31 - b96: 0200 addi s0,sp,256 - b98: 0104 addi s1,sp,128 - b9a: 02090003 lb zero,32(s2) - b9e: 0100 addi s0,sp,128 - ba0: 0c05 addi s8,s8,1 - ba2: 0c090203 lb tp,192(s2) - ba6: 0100 addi s0,sp,128 - ba8: 0305 addi t1,t1,1 - baa: 0c090203 lb tp,192(s2) - bae: 0100 addi s0,sp,128 - bb0: 1305 addi t1,t1,-31 - bb2: 04090103 lb sp,64(s2) - bb6: 0100 addi s0,sp,128 - bb8: 0105 addi sp,sp,1 - bba: 02090103 lb sp,32(s2) - bbe: 0100 addi s0,sp,128 - bc0: 08090703 lb a4,128(s2) - bc4: 0100 addi s0,sp,128 - bc6: 0705 addi a4,a4,1 - bc8: 0c090103 lb sp,192(s2) - bcc: 0100 addi s0,sp,128 - bce: 0305 addi t1,t1,1 - bd0: 04090803 lb a6,64(s2) - bd4: 0100 addi s0,sp,128 - bd6: 0200 addi s0,sp,256 - bd8: 0104 addi s1,sp,128 - bda: 0306 slli t1,t1,0x1 - bdc: 0900 addi s0,sp,144 - bde: 0002 c.slli64 zero - be0: 0001 nop - be2: 0402 c.slli64 s0 - be4: 0302 c.slli64 t1 - be6: 0900 addi s0,sp,144 - be8: 000e c.slli zero,0x3 - bea: 0001 nop - bec: 0402 c.slli64 s0 - bee: 09000303 lb t1,144(zero) # 90 - bf2: 0018 0x18 - bf4: 0001 nop - bf6: 0402 c.slli64 s0 - bf8: 0305 addi t1,t1,1 - bfa: 0900 addi s0,sp,144 - bfc: 0038 addi a4,sp,8 - bfe: 0001 nop - c00: 0402 c.slli64 s0 - c02: 0605 addi a2,a2,1 - c04: 1e090103 lb sp,480(s2) - c08: 0100 addi s0,sp,128 - c0a: 0200 addi s0,sp,256 - c0c: 0104 addi s1,sp,128 - c0e: 0306 slli t1,t1,0x1 - c10: 0900 addi s0,sp,144 - c12: 0002 c.slli64 zero - c14: 0001 nop - c16: 0402 c.slli64 s0 - c18: 0302 c.slli64 t1 - c1a: 0900 addi s0,sp,144 - c1c: 000e c.slli zero,0x3 - c1e: 0001 nop - c20: 0402 c.slli64 s0 - c22: 09000303 lb t1,144(zero) # 90 - c26: 0018 0x18 - c28: 0001 nop - c2a: 0402 c.slli64 s0 - c2c: 0305 addi t1,t1,1 - c2e: 0900 addi s0,sp,144 - c30: 0038 addi a4,sp,8 - c32: 0501 addi a0,a0,0 - c34: 0001 nop - c36: 0402 c.slli64 s0 - c38: 0605 addi a2,a2,1 - c3a: 1e090303 lb t1,480(s2) - c3e: 0100 addi s0,sp,128 - c40: 08090303 lb t1,128(s2) - c44: 0100 addi s0,sp,128 - c46: 1205 addi tp,tp,-31 - c48: 0a090103 lb sp,160(s2) - c4c: 0100 addi s0,sp,128 - c4e: 1805 addi a6,a6,-31 - c50: 06090003 lb zero,96(s2) - c54: 0100 addi s0,sp,128 - c56: 0a05 addi s4,s4,1 - c58: 04090003 lb zero,64(s2) - c5c: 0100 addi s0,sp,128 - c5e: 0905 addi s2,s2,1 - c60: 0200 addi s0,sp,256 - c62: 0104 addi s1,sp,128 - c64: 0a090103 lb sp,160(s2) - c68: 0100 addi s0,sp,128 - c6a: 0105 addi sp,sp,1 - c6c: 02090403 lb s0,32(s2) - c70: 0100 addi s0,sp,128 - c72: 0305 addi t1,t1,1 - c74: 14090103 lb sp,320(s2) - c78: 0100 addi s0,sp,128 - c7a: 0105 addi sp,sp,1 - c7c: 08090403 lb s0,128(s2) - c80: 0100 addi s0,sp,128 - c82: 0305 addi t1,t1,1 - c84: 0e090103 lb sp,224(s2) - c88: 0100 addi s0,sp,128 - c8a: 0105 addi sp,sp,1 - c8c: 0a090403 lb s0,160(s2) - c90: 0100 addi s0,sp,128 - c92: 0305 addi t1,t1,1 - c94: 08090103 lb sp,128(s2) - c98: 0100 addi s0,sp,128 - c9a: 0105 addi sp,sp,1 - c9c: 08090403 lb s0,128(s2) - ca0: 0100 addi s0,sp,128 - ca2: 0305 addi t1,t1,1 - ca4: 0e090103 lb sp,224(s2) - ca8: 0100 addi s0,sp,128 - caa: 0105 addi sp,sp,1 - cac: 1c090103 lb sp,448(s2) - cb0: 0100 addi s0,sp,128 - cb2: 0c090303 lb t1,192(s2) - cb6: 0100 addi s0,sp,128 - cb8: 0905 addi s2,s2,1 - cba: 14090303 lb t1,320(s2) - cbe: 0100 addi s0,sp,128 - cc0: 0e05 addi t3,t3,1 - cc2: 0200 addi s0,sp,256 - cc4: 0104 addi s1,sp,128 - cc6: 02090003 lb zero,32(s2) - cca: 0100 addi s0,sp,128 - ccc: 0105 addi sp,sp,1 - cce: 08090103 lb sp,128(s2) - cd2: 0100 addi s0,sp,128 - cd4: 0a090303 lb t1,160(s2) - cd8: 0100 addi s0,sp,128 - cda: 0305 addi t1,t1,1 - cdc: 12090203 lb tp,288(s2) - ce0: 0100 addi s0,sp,128 - ce2: 0a05 addi s4,s4,1 - ce4: 0c090103 lb sp,192(s2) - ce8: 0100 addi s0,sp,128 - cea: 0105 addi sp,sp,1 - cec: 02090103 lb sp,32(s2) - cf0: 0100 addi s0,sp,128 - cf2: 0a090303 lb t1,160(s2) - cf6: 0100 addi s0,sp,128 - cf8: 2305 addiw t1,t1,1 - cfa: 08090303 lb t1,128(s2) - cfe: 0100 addi s0,sp,128 - d00: 0a05 addi s4,s4,1 - d02: 14090003 lb zero,320(s2) - d06: 0100 addi s0,sp,128 - d08: 0305 addi t1,t1,1 - d0a: 04090103 lb sp,64(s2) - d0e: 0100 addi s0,sp,128 - d10: 2105 addiw sp,sp,1 - d12: 14090103 lb sp,320(s2) - d16: 0100 addi s0,sp,128 - d18: 0a05 addi s4,s4,1 - d1a: 10090003 lb zero,256(s2) - d1e: 0100 addi s0,sp,128 - d20: 0305 addi t1,t1,1 - d22: 04090103 lb sp,64(s2) - d26: 0100 addi s0,sp,128 - d28: 0105 addi sp,sp,1 - d2a: 14090103 lb sp,320(s2) - d2e: 0100 addi s0,sp,128 - d30: 0a090303 lb t1,160(s2) - d34: 0100 addi s0,sp,128 - d36: 0305 addi t1,t1,1 - d38: 32090103 lb sp,800(s2) - d3c: 0100 addi s0,sp,128 - d3e: 04090103 lb sp,64(s2) - d42: 0100 addi s0,sp,128 - d44: 0d05 addi s10,s10,1 - d46: 10090303 lb t1,256(s2) - d4a: 0100 addi s0,sp,128 - d4c: 0905 addi s2,s2,1 - d4e: 0e090303 lb t1,224(s2) - d52: 0100 addi s0,sp,128 - d54: 0c05 addi s8,s8,1 - d56: 04090103 lb sp,64(s2) - d5a: 0100 addi s0,sp,128 - d5c: 0305 addi t1,t1,1 - d5e: 04090003 lb zero,64(s2) - d62: 0100 addi s0,sp,128 - d64: 1105 addi sp,sp,-31 - d66: 02090103 lb sp,32(s2) - d6a: 0100 addi s0,sp,128 - d6c: 0805 addi a6,a6,1 - d6e: 12090003 lb zero,288(s2) - d72: 0100 addi s0,sp,128 - d74: 0f05 addi t5,t5,1 - d76: 02090103 lb sp,32(s2) - d7a: 0100 addi s0,sp,128 - d7c: 0c05 addi s8,s8,1 - d7e: 3a090003 lb zero,928(s2) - d82: 0100 addi s0,sp,128 - d84: 2605 addiw a2,a2,1 - d86: 0200 addi s0,sp,256 - d88: 0204 addi s1,sp,256 - d8a: 0a097e03 0xa097e03 - d8e: 0100 addi s0,sp,128 - d90: 1505 addi a0,a0,-31 - d92: 0200 addi s0,sp,256 - d94: 0104 addi s1,sp,128 - d96: 0a090003 lb zero,160(s2) - d9a: 0100 addi s0,sp,128 - d9c: 0605 addi a2,a2,1 - d9e: 0e090303 lb t1,224(s2) - da2: 0100 addi s0,sp,128 - da4: 0505 addi a0,a0,1 - da6: 08090103 lb sp,128(s2) - daa: 0100 addi s0,sp,128 - dac: 0305 addi t1,t1,1 - dae: 06090203 lb tp,96(s2) - db2: 0100 addi s0,sp,128 - db4: 0105 addi sp,sp,1 - db6: 0a090503 lb a0,160(s2) - dba: 0100 addi s0,sp,128 - dbc: 0d05 addi s10,s10,1 - dbe: 0e090403 lb s0,224(s2) - dc2: 0100 addi s0,sp,128 - dc4: 1105 addi sp,sp,-31 - dc6: 10090003 lb zero,256(s2) - dca: 0100 addi s0,sp,128 - dcc: 0605 addi a2,a2,1 - dce: 12090203 lb tp,288(s2) - dd2: 0100 addi s0,sp,128 - dd4: 1c05 addi s8,s8,-31 - dd6: 0200 addi s0,sp,256 - dd8: 0104 addi s1,sp,128 - dda: 0e090003 lb zero,224(s2) - dde: 0100 addi s0,sp,128 - de0: 1205 addi tp,tp,-31 - de2: 0200 addi s0,sp,256 - de4: 0104 addi s1,sp,128 - de6: 04090003 lb zero,64(s2) - dea: 0100 addi s0,sp,128 - dec: 0505 addi a0,a0,1 - dee: 0a090203 lb tp,160(s2) - df2: 0100 addi s0,sp,128 - df4: 0c05 addi s8,s8,1 - df6: 16090103 lb sp,352(s2) - dfa: 0100 addi s0,sp,128 - dfc: 0a05 addi s4,s4,1 - dfe: 04090303 lb t1,64(s2) - e02: 0100 addi s0,sp,128 - e04: 0105 addi sp,sp,1 - e06: 02090103 lb sp,32(s2) - e0a: 0100 addi s0,sp,128 - e0c: 0a090303 lb t1,160(s2) - e10: 0100 addi s0,sp,128 - e12: 0a05 addi s4,s4,1 - e14: 0c090303 lb t1,192(s2) - e18: 0100 addi s0,sp,128 - e1a: 0305 addi t1,t1,1 - e1c: 04090003 lb zero,64(s2) - e20: 0100 addi s0,sp,128 - e22: 1405 addi s0,s0,-31 - e24: 02090203 lb tp,32(s2) - e28: 0100 addi s0,sp,128 - e2a: 2105 addiw sp,sp,1 - e2c: 0e090003 lb zero,224(s2) - e30: 0100 addi s0,sp,128 - e32: 1b05 addi s6,s6,-31 - e34: 08090003 lb zero,128(s2) - e38: 0100 addi s0,sp,128 - e3a: 0200 addi s0,sp,256 - e3c: 0104 addi s1,sp,128 - e3e: 0306 slli t1,t1,0x1 - e40: 0900 addi s0,sp,144 - e42: 0006 c.slli zero,0x1 - e44: 0001 nop - e46: 0402 c.slli64 s0 - e48: 0302 c.slli64 t1 - e4a: 0900 addi s0,sp,144 - e4c: 0006 c.slli zero,0x1 - e4e: 0501 addi a0,a0,0 - e50: 0402000b 0x402000b - e54: 0604 addi s1,sp,768 - e56: 04090003 lb zero,64(s2) - e5a: 0100 addi s0,sp,128 - e5c: 1b05 addi s6,s6,-31 - e5e: 0200 addi s0,sp,256 - e60: 0404 addi s1,sp,512 - e62: 0a090003 lb zero,160(s2) - e66: 0100 addi s0,sp,128 - e68: 0f05 addi t5,t5,1 - e6a: 0200 addi s0,sp,256 - e6c: 0404 addi s1,sp,512 - e6e: 06090003 lb zero,96(s2) - e72: 0100 addi s0,sp,128 - e74: 0705 addi a4,a4,1 - e76: 0200 addi s0,sp,256 - e78: 0404 addi s1,sp,512 - e7a: 0a090103 lb sp,160(s2) - e7e: 0100 addi s0,sp,128 - e80: 1805 addi a6,a6,-31 - e82: 0200 addi s0,sp,256 - e84: 0404 addi s1,sp,512 - e86: 0a097d03 0xa097d03 - e8a: 0100 addi s0,sp,128 - e8c: 1105 addi sp,sp,-31 - e8e: 0200 addi s0,sp,256 - e90: 0204 addi s1,sp,256 - e92: 0a090003 lb zero,160(s2) - e96: 0100 addi s0,sp,128 - e98: 0b05 addi s6,s6,1 - e9a: 0e090503 lb a0,224(s2) - e9e: 0100 addi s0,sp,128 - ea0: 0305 addi t1,t1,1 - ea2: 04090203 lb tp,64(s2) - ea6: 0100 addi s0,sp,128 - ea8: 0105 addi sp,sp,1 - eaa: 0a090103 lb sp,160(s2) - eae: 0100 addi s0,sp,128 - eb0: 0a090403 lb s0,160(s2) - eb4: 0100 addi s0,sp,128 - eb6: 0705 addi a4,a4,1 - eb8: 2c090203 lb tp,704(s2) - ebc: 0100 addi s0,sp,128 - ebe: 1705 addi a4,a4,-31 - ec0: 04090403 lb s0,64(s2) - ec4: 0100 addi s0,sp,128 - ec6: 0d05 addi s10,s10,1 - ec8: 0c090003 lb zero,192(s2) - ecc: 0100 addi s0,sp,128 - ece: 1105 addi sp,sp,-31 - ed0: 0c090003 lb zero,192(s2) - ed4: 0100 addi s0,sp,128 - ed6: 0d05 addi s10,s10,1 - ed8: 0e090103 lb sp,224(s2) - edc: 0100 addi s0,sp,128 - ede: 0805 addi a6,a6,1 - ee0: 04090003 lb zero,64(s2) - ee4: 0100 addi s0,sp,128 - ee6: 0905 addi s2,s2,1 - ee8: 08090203 lb tp,128(s2) - eec: 0100 addi s0,sp,128 - eee: 1105 addi sp,sp,-31 - ef0: 10097d03 0x10097d03 - ef4: 0100 addi s0,sp,128 - ef6: 0705 addi a4,a4,1 - ef8: 02090203 lb tp,32(s2) - efc: 0100 addi s0,sp,128 - efe: 0905 addi s2,s2,1 - f00: 02090403 lb s0,32(s2) - f04: 0100 addi s0,sp,128 - f06: 0505 addi a0,a0,1 - f08: 02090103 lb sp,32(s2) - f0c: 0100 addi s0,sp,128 - f0e: 0f05 addi t5,t5,1 - f10: 10097f03 0x10097f03 - f14: 0100 addi s0,sp,128 - f16: 1205 addi tp,tp,-31 - f18: 0c090003 lb zero,192(s2) - f1c: 0100 addi s0,sp,128 - f1e: 0905 addi s2,s2,1 - f20: 0a090303 lb t1,160(s2) - f24: 0100 addi s0,sp,128 - f26: 0f05 addi t5,t5,1 - f28: 02090103 lb sp,32(s2) - f2c: 0100 addi s0,sp,128 - f2e: 1c05 addi s8,s8,-31 - f30: 0e090003 lb zero,224(s2) - f34: 0100 addi s0,sp,128 - f36: 3305 addiw t1,t1,-31 - f38: 0e090003 lb zero,224(s2) - f3c: 0100 addi s0,sp,128 - f3e: 0200 addi s0,sp,256 - f40: 0104 addi s1,sp,128 - f42: 0306 slli t1,t1,0x1 - f44: 0900 addi s0,sp,144 - f46: 0008 0x8 - f48: 0001 nop - f4a: 0402 c.slli64 s0 - f4c: 0302 c.slli64 t1 - f4e: 0900 addi s0,sp,144 - f50: 0006 c.slli zero,0x1 - f52: 0501 addi a0,a0,0 - f54: 0015 c.nop 5 - f56: 0402 c.slli64 s0 - f58: 0604 addi s1,sp,768 - f5a: 04090003 lb zero,64(s2) - f5e: 0100 addi s0,sp,128 - f60: 0505 addi a0,a0,1 - f62: 0200 addi s0,sp,256 - f64: 0404 addi s1,sp,512 - f66: 04090003 lb zero,64(s2) - f6a: 0100 addi s0,sp,128 - f6c: 0d05 addi s10,s10,1 - f6e: 0e097f03 0xe097f03 - f72: 0100 addi s0,sp,128 - f74: 1005 c.nop -31 - f76: 0c090003 lb zero,192(s2) - f7a: 0100 addi s0,sp,128 - f7c: 0105 addi sp,sp,1 - f7e: 04090203 lb tp,64(s2) - f82: 0100 addi s0,sp,128 - f84: 0c090303 lb t1,192(s2) - f88: 0100 addi s0,sp,128 - f8a: 0605 addi a2,a2,1 - f8c: 10090103 lb sp,256(s2) - f90: 0100 addi s0,sp,128 - f92: 0c05 addi s8,s8,1 - f94: 0e090103 lb sp,224(s2) - f98: 0100 addi s0,sp,128 - f9a: 0b05 addi s6,s6,1 - f9c: 14090103 lb sp,320(s2) - fa0: 0100 addi s0,sp,128 - fa2: 0c05 addi s8,s8,1 - fa4: 08090103 lb sp,128(s2) - fa8: 0100 addi s0,sp,128 - faa: 14090203 lb tp,320(s2) - fae: 0100 addi s0,sp,128 - fb0: 0105 addi sp,sp,1 - fb2: 16090103 lb sp,352(s2) - fb6: 0100 addi s0,sp,128 - fb8: 08090303 lb t1,128(s2) - fbc: 0100 addi s0,sp,128 - fbe: 0605 addi a2,a2,1 - fc0: 10090103 lb sp,256(s2) - fc4: 0100 addi s0,sp,128 - fc6: 0c05 addi s8,s8,1 - fc8: 0e090103 lb sp,224(s2) - fcc: 0100 addi s0,sp,128 - fce: 0b05 addi s6,s6,1 - fd0: 14090103 lb sp,320(s2) - fd4: 0100 addi s0,sp,128 - fd6: 0c05 addi s8,s8,1 - fd8: 08090103 lb sp,128(s2) - fdc: 0100 addi s0,sp,128 - fde: 14090203 lb tp,320(s2) - fe2: 0100 addi s0,sp,128 - fe4: 0105 addi sp,sp,1 - fe6: 12090103 lb sp,288(s2) - fea: 0100 addi s0,sp,128 - fec: 08090303 lb t1,128(s2) - ff0: 0100 addi s0,sp,128 - ff2: 0b05 addi s6,s6,1 - ff4: 1c090903 lb s2,448(s2) - ff8: 0100 addi s0,sp,128 - ffa: 0a05 addi s4,s4,1 - ffc: 02090103 lb sp,32(s2) - 1000: 0100 addi s0,sp,128 - 1002: 04090203 lb tp,64(s2) - 1006: 0100 addi s0,sp,128 - 1008: 0705 addi a4,a4,1 - 100a: 0a090103 lb sp,160(s2) - 100e: 0100 addi s0,sp,128 - 1010: 1205 addi tp,tp,-31 - 1012: 0c097c03 0xc097c03 - 1016: 0100 addi s0,sp,128 - 1018: 1005 c.nop -31 - 101a: 08090003 lb zero,128(s2) - 101e: 0100 addi s0,sp,128 - 1020: 2a05 addiw s4,s4,1 - 1022: 04090003 lb zero,64(s2) - 1026: 0100 addi s0,sp,128 - 1028: 0805 addi a6,a6,1 - 102a: 0a090603 lb a2,160(s2) - 102e: 0100 addi s0,sp,128 - 1030: 0e05 addi t3,t3,1 - 1032: 0a090303 lb t1,160(s2) - 1036: 0100 addi s0,sp,128 - 1038: 0a05 addi s4,s4,1 - 103a: 08090103 lb sp,128(s2) - 103e: 0100 addi s0,sp,128 - 1040: 0b05 addi s6,s6,1 - 1042: 08090103 lb sp,128(s2) - 1046: 0100 addi s0,sp,128 - 1048: 0f05 addi t5,t5,1 - 104a: 06090103 lb sp,96(s2) - 104e: 0100 addi s0,sp,128 - 1050: 0b05 addi s6,s6,1 - 1052: 06090103 lb sp,96(s2) - 1056: 0100 addi s0,sp,128 - 1058: 0d05 addi s10,s10,1 - 105a: 04090103 lb sp,64(s2) - 105e: 0100 addi s0,sp,128 - 1060: 1305 addi t1,t1,-31 - 1062: 04090203 lb tp,64(s2) - 1066: 0100 addi s0,sp,128 - 1068: 1205 addi tp,tp,-31 - 106a: 0c090003 lb zero,192(s2) - 106e: 0100 addi s0,sp,128 - 1070: 1005 c.nop -31 - 1072: 04090003 lb zero,64(s2) - 1076: 0100 addi s0,sp,128 - 1078: 0505 addi a0,a0,1 - 107a: 04090003 lb zero,64(s2) - 107e: 0100 addi s0,sp,128 - 1080: 0c05 addi s8,s8,1 - 1082: 36090403 lb s0,864(s2) - 1086: 0100 addi s0,sp,128 - 1088: 0705 addi a4,a4,1 - 108a: 08090103 lb sp,128(s2) - 108e: 0100 addi s0,sp,128 - 1090: 0c05 addi s8,s8,1 - 1092: 02090403 lb s0,32(s2) - 1096: 0100 addi s0,sp,128 - 1098: 0705 addi a4,a4,1 - 109a: 08090103 lb sp,128(s2) - 109e: 0100 addi s0,sp,128 - 10a0: 1605 addi a2,a2,-31 - 10a2: 02090c03 lb s8,32(s2) - 10a6: 0100 addi s0,sp,128 - 10a8: 1f05 addi t5,t5,-31 - 10aa: 04090103 lb sp,64(s2) - 10ae: 0100 addi s0,sp,128 - 10b0: 2405 addiw s0,s0,1 - 10b2: 14090003 lb zero,320(s2) - 10b6: 0100 addi s0,sp,128 - 10b8: 1305 addi t1,t1,-31 - 10ba: 04090003 lb zero,64(s2) - 10be: 0100 addi s0,sp,128 - 10c0: 0e05 addi t3,t3,1 - 10c2: 08090103 lb sp,128(s2) - 10c6: 0100 addi s0,sp,128 - 10c8: 0c05 addi s8,s8,1 - 10ca: 08090003 lb zero,128(s2) - 10ce: 0100 addi s0,sp,128 - 10d0: 04090103 lb sp,64(s2) - 10d4: 0100 addi s0,sp,128 - 10d6: 1605 addi a2,a2,-31 - 10d8: 0200 addi s0,sp,256 - 10da: 0104 addi s1,sp,128 - 10dc: 0a090003 lb zero,160(s2) - 10e0: 0100 addi s0,sp,128 - 10e2: 1d05 addi s10,s10,-31 - 10e4: 0a097d03 0xa097d03 - 10e8: 0100 addi s0,sp,128 - 10ea: 1305 addi t1,t1,-31 - 10ec: 0a090103 lb sp,160(s2) - 10f0: 0100 addi s0,sp,128 - 10f2: 1105 addi sp,sp,-31 - 10f4: 02090803 lb a6,32(s2) - 10f8: 0100 addi s0,sp,128 - 10fa: 0705 addi a4,a4,1 - 10fc: 12090103 lb sp,288(s2) - 1100: 0100 addi s0,sp,128 - 1102: 0a05 addi s4,s4,1 - 1104: 02090303 lb t1,32(s2) - 1108: 0100 addi s0,sp,128 - 110a: 0f05 addi t5,t5,1 - 110c: 0a090103 lb sp,160(s2) - 1110: 0100 addi s0,sp,128 - 1112: 0705 addi a4,a4,1 - 1114: 04090103 lb sp,64(s2) - 1118: 0100 addi s0,sp,128 - 111a: 0f05 addi t5,t5,1 - 111c: 02090303 lb t1,32(s2) - 1120: 0100 addi s0,sp,128 - 1122: 0705 addi a4,a4,1 - 1124: 06090103 lb sp,96(s2) - 1128: 0100 addi s0,sp,128 - 112a: 02097303 0x2097303 - 112e: 0100 addi s0,sp,128 - 1130: 0a05 addi s4,s4,1 - 1132: 02091003 lh zero,32(s2) - 1136: 0100 addi s0,sp,128 - 1138: 0f05 addi t5,t5,1 - 113a: 0a090103 lb sp,160(s2) - 113e: 0100 addi s0,sp,128 - 1140: 2605 addiw a2,a2,1 - 1142: 08090003 lb zero,128(s2) - 1146: 0100 addi s0,sp,128 - 1148: 0705 addi a4,a4,1 - 114a: 06090103 lb sp,96(s2) - 114e: 0100 addi s0,sp,128 - 1150: 0c05 addi s8,s8,1 - 1152: 02090403 lb s0,32(s2) - 1156: 0100 addi s0,sp,128 - 1158: 0705 addi a4,a4,1 - 115a: 0a090103 lb sp,160(s2) - 115e: 0100 addi s0,sp,128 - 1160: 02090403 lb s0,32(s2) - 1164: 0100 addi s0,sp,128 - 1166: 1a090103 lb sp,416(s2) - 116a: 0100 addi s0,sp,128 - 116c: 0e05 addi t3,t3,1 - 116e: 02090403 lb s0,32(s2) - 1172: 0100 addi s0,sp,128 - 1174: 0a05 addi s4,s4,1 - 1176: 10090003 lb zero,256(s2) - 117a: 0100 addi s0,sp,128 - 117c: 0b05 addi s6,s6,1 - 117e: 04090103 lb sp,64(s2) - 1182: 0100 addi s0,sp,128 - 1184: 0a05 addi s4,s4,1 - 1186: 08090103 lb sp,128(s2) - 118a: 0100 addi s0,sp,128 - 118c: 1505 addi a0,a0,-31 - 118e: 0200 addi s0,sp,256 - 1190: 0104 addi s1,sp,128 - 1192: 0a090003 lb zero,160(s2) - 1196: 0100 addi s0,sp,128 - 1198: 1405 addi s0,s0,-31 - 119a: 10090103 lb sp,256(s2) - 119e: 0100 addi s0,sp,128 - 11a0: 1705 addi a4,a4,-31 - 11a2: 04090003 lb zero,64(s2) - 11a6: 0100 addi s0,sp,128 - 11a8: 1405 addi s0,s0,-31 - 11aa: 0e090003 lb zero,224(s2) - 11ae: 0100 addi s0,sp,128 - 11b0: 0905 addi s2,s2,1 - 11b2: 0c090003 lb zero,192(s2) - 11b6: 0100 addi s0,sp,128 - 11b8: 0b05 addi s6,s6,1 - 11ba: 0200 addi s0,sp,256 - 11bc: 0304 addi s1,sp,384 - 11be: 02090103 lb sp,32(s2) - 11c2: 0100 addi s0,sp,128 - 11c4: 3e05 addiw t3,t3,-31 - 11c6: 0200 addi s0,sp,256 - 11c8: 0304 addi s1,sp,384 - 11ca: 12097f03 0x12097f03 - 11ce: 0100 addi s0,sp,128 - 11d0: 3405 addiw s0,s0,-31 - 11d2: 0200 addi s0,sp,256 - 11d4: 0104 addi s1,sp,128 - 11d6: 0a090003 lb zero,160(s2) - 11da: 0100 addi s0,sp,128 - 11dc: 0705 addi a4,a4,1 - 11de: 0a090203 lb tp,160(s2) - 11e2: 0100 addi s0,sp,128 - 11e4: 0905 addi s2,s2,1 - 11e6: 0200 addi s0,sp,256 - 11e8: 0504 addi s1,sp,640 - 11ea: 02090103 lb sp,32(s2) - 11ee: 0100 addi s0,sp,128 - 11f0: 0a05 addi s4,s4,1 - 11f2: 0200 addi s0,sp,256 - 11f4: 0504 addi s1,sp,640 - 11f6: 0c090103 lb sp,192(s2) - 11fa: 0100 addi s0,sp,128 - 11fc: 4d05 li s10,1 - 11fe: 0200 addi s0,sp,256 - 1200: 0504 addi s1,sp,640 - 1202: 02097e03 0x2097e03 - 1206: 0100 addi s0,sp,128 - 1208: 1405 addi s0,s0,-31 - 120a: 0200 addi s0,sp,256 - 120c: 0104 addi s1,sp,128 - 120e: 0a090003 lb zero,160(s2) - 1212: 0100 addi s0,sp,128 - 1214: 1205 addi tp,tp,-31 - 1216: 0200 addi s0,sp,256 - 1218: 0104 addi s1,sp,128 - 121a: 04090003 lb zero,64(s2) - 121e: 0100 addi s0,sp,128 - 1220: 2005 0x2005 - 1222: 0200 addi s0,sp,256 - 1224: 0104 addi s1,sp,128 - 1226: 04090003 lb zero,64(s2) - 122a: 0100 addi s0,sp,128 - 122c: 0200 addi s0,sp,256 - 122e: 0204 addi s1,sp,256 - 1230: 0306 slli t1,t1,0x1 - 1232: 0900 addi s0,sp,144 - 1234: 0002 c.slli64 zero - 1236: 0501 addi a0,a0,0 - 1238: 0032 c.slli zero,0xc - 123a: 0402 c.slli64 s0 - 123c: 0604 addi s1,sp,768 - 123e: 0a090003 lb zero,160(s2) - 1242: 0100 addi s0,sp,128 - 1244: 0705 addi a4,a4,1 - 1246: 14090403 lb s0,320(s2) - 124a: 0100 addi s0,sp,128 - 124c: 0905 addi s2,s2,1 - 124e: 0200 addi s0,sp,256 - 1250: 0204 addi s1,sp,256 - 1252: 02090103 lb sp,32(s2) - 1256: 0100 addi s0,sp,128 - 1258: 1e05 addi t3,t3,-31 - 125a: 0200 addi s0,sp,256 - 125c: 0204 addi s1,sp,256 - 125e: 0e097f03 0xe097f03 - 1262: 0100 addi s0,sp,128 - 1264: 1405 addi s0,s0,-31 - 1266: 0200 addi s0,sp,256 - 1268: 0104 addi s1,sp,128 - 126a: 0a090003 lb zero,160(s2) - 126e: 0100 addi s0,sp,128 - 1270: 0705 addi a4,a4,1 - 1272: 0a090203 lb tp,160(s2) - 1276: 0100 addi s0,sp,128 - 1278: 0d05 addi s10,s10,1 - 127a: 02090403 lb s0,32(s2) - 127e: 0100 addi s0,sp,128 - 1280: 0b05 addi s6,s6,1 - 1282: 12090003 lb zero,288(s2) - 1286: 0100 addi s0,sp,128 - 1288: 04090103 lb sp,64(s2) - 128c: 0100 addi s0,sp,128 - 128e: 0a05 addi s4,s4,1 - 1290: 04090003 lb zero,64(s2) - 1294: 0100 addi s0,sp,128 - 1296: 0905 addi s2,s2,1 - 1298: 04090103 lb sp,64(s2) - 129c: 0100 addi s0,sp,128 - 129e: 1005 c.nop -31 - 12a0: 0e090103 lb sp,224(s2) - 12a4: 0100 addi s0,sp,128 - 12a6: 0f05 addi t5,t5,1 - 12a8: 04090003 lb zero,64(s2) - 12ac: 0100 addi s0,sp,128 - 12ae: 0d05 addi s10,s10,1 - 12b0: 04090003 lb zero,64(s2) - 12b4: 0100 addi s0,sp,128 - 12b6: 0c05 addi s8,s8,1 - 12b8: 04090203 lb tp,64(s2) - 12bc: 0100 addi s0,sp,128 - 12be: 0705 addi a4,a4,1 - 12c0: 06090103 lb sp,96(s2) - 12c4: 0100 addi s0,sp,128 - 12c6: 0c05 addi s8,s8,1 - 12c8: 02090403 lb s0,32(s2) - 12cc: 0100 addi s0,sp,128 - 12ce: 0705 addi a4,a4,1 - 12d0: 06090103 lb sp,96(s2) - 12d4: 0100 addi s0,sp,128 - 12d6: 0c05 addi s8,s8,1 - 12d8: 02090503 lb a0,32(s2) - 12dc: 0100 addi s0,sp,128 - 12de: 0705 addi a4,a4,1 - 12e0: 06090103 lb sp,96(s2) - 12e4: 0100 addi s0,sp,128 - 12e6: 0d05 addi s10,s10,1 - 12e8: 02090503 lb a0,32(s2) - 12ec: 0100 addi s0,sp,128 - 12ee: 0705 addi a4,a4,1 - 12f0: 06090103 lb sp,96(s2) - 12f4: 0100 addi s0,sp,128 - 12f6: 0e090103 lb sp,224(s2) - 12fa: 0100 addi s0,sp,128 - 12fc: 0c05 addi s8,s8,1 - 12fe: 0e090503 lb a0,224(s2) - 1302: 0100 addi s0,sp,128 - 1304: 0d05 addi s10,s10,1 - 1306: 06090203 lb tp,96(s2) - 130a: 0100 addi s0,sp,128 - 130c: 0705 addi a4,a4,1 - 130e: 14090203 lb tp,320(s2) - 1312: 0100 addi s0,sp,128 - 1314: 1e090103 lb sp,480(s2) - 1318: 0100 addi s0,sp,128 - 131a: 02090403 lb s0,32(s2) - 131e: 0100 addi s0,sp,128 - 1320: 0c090103 lb sp,192(s2) - 1324: 0100 addi s0,sp,128 - 1326: 02090403 lb s0,32(s2) - 132a: 0100 addi s0,sp,128 - 132c: 0b05 addi s6,s6,1 - 132e: 0e090103 lb sp,224(s2) - 1332: 0100 addi s0,sp,128 - 1334: 0705 addi a4,a4,1 - 1336: 08090103 lb sp,128(s2) - 133a: 0100 addi s0,sp,128 - 133c: 0b05 addi s6,s6,1 - 133e: 0200 addi s0,sp,256 - 1340: 0104 addi s1,sp,128 - 1342: 097ef803 0x97ef803 - 1346: 0002 c.slli64 zero - 1348: 0501 addi a0,a0,0 - 134a: 0309 addi t1,t1,2 - 134c: 0902 c.slli64 s2 - 134e: 0002 c.slli64 zero - 1350: 0501 addi a0,a0,0 - 1352: 0301 addi t1,t1,0 - 1354: 0189 addi gp,gp,2 - 1356: 0209 addi tp,tp,2 - 1358: 0100 addi s0,sp,128 - 135a: 0c090303 lb t1,192(s2) - 135e: 0100 addi s0,sp,128 - 1360: 0305 addi t1,t1,1 - 1362: 1e090203 lb tp,480(s2) - 1366: 0100 addi s0,sp,128 - 1368: 14090203 lb tp,320(s2) - 136c: 0100 addi s0,sp,128 - 136e: 0a05 addi s4,s4,1 - 1370: 18090303 lb t1,384(s2) - 1374: 0100 addi s0,sp,128 - 1376: 0105 addi sp,sp,1 - 1378: 02090103 lb sp,32(s2) - 137c: 0100 addi s0,sp,128 - 137e: 0305 addi t1,t1,1 - 1380: 0a090903 lb s2,160(s2) - 1384: 0100 addi s0,sp,128 - 1386: 0c05 addi s8,s8,1 - 1388: 14090103 lb sp,320(s2) - 138c: 0100 addi s0,sp,128 - 138e: 0605 addi a2,a2,1 - 1390: 08090103 lb sp,128(s2) - 1394: 0100 addi s0,sp,128 - 1396: 0c05 addi s8,s8,1 - 1398: 06090003 lb zero,96(s2) - 139c: 0100 addi s0,sp,128 - 139e: 0605 addi a2,a2,1 - 13a0: 0c090103 lb sp,192(s2) - 13a4: 0100 addi s0,sp,128 - 13a6: 0c05 addi s8,s8,1 - 13a8: 06090003 lb zero,96(s2) - 13ac: 0100 addi s0,sp,128 - 13ae: 0305 addi t1,t1,1 - 13b0: 0a090103 lb sp,160(s2) - 13b4: 0100 addi s0,sp,128 - 13b6: 0105 addi sp,sp,1 - 13b8: 08097603 0x8097603 - 13bc: 0100 addi s0,sp,128 - 13be: 0304 addi s1,sp,384 - 13c0: 0505 addi a0,a0,1 - 13c2: 097f8c03 lb s8,151(t6) - 13c6: 0020 addi s0,sp,8 - 13c8: 0401 addi s0,s0,0 - 13ca: 0502 c.slli64 a0 - 13cc: 0309 addi t1,t1,2 - 13ce: 00f6 slli ra,ra,0x1d - 13d0: 4c09 li s8,2 - 13d2: 0100 addi s0,sp,128 - 13d4: 0305 addi t1,t1,1 - 13d6: 08090103 lb sp,128(s2) - 13da: 0100 addi s0,sp,128 - 13dc: 14090903 lb s2,320(s2) - 13e0: 0100 addi s0,sp,128 - 13e2: 1a090103 lb sp,416(s2) - 13e6: 0100 addi s0,sp,128 - 13e8: 0805 addi a6,a6,1 - 13ea: 04090003 lb zero,64(s2) - 13ee: 0100 addi s0,sp,128 - 13f0: 0e05 addi t3,t3,1 - 13f2: 04090303 lb t1,64(s2) - 13f6: 0100 addi s0,sp,128 - 13f8: 0105 addi sp,sp,1 - 13fa: 0e090103 lb sp,224(s2) - 13fe: 0100 addi s0,sp,128 - 1400: 0a090303 lb t1,160(s2) - 1404: 0100 addi s0,sp,128 - 1406: 0905 addi s2,s2,1 - 1408: 12090103 lb sp,288(s2) - 140c: 0100 addi s0,sp,128 - 140e: 1b05 addi s6,s6,-31 - 1410: 04090003 lb zero,64(s2) - 1414: 0100 addi s0,sp,128 - 1416: 1905 addi s2,s2,-31 - 1418: 04090003 lb zero,64(s2) - 141c: 0100 addi s0,sp,128 - 141e: 2a05 addiw s4,s4,1 - 1420: 02090003 lb zero,32(s2) - 1424: 0100 addi s0,sp,128 - 1426: 3105 addiw sp,sp,-31 - 1428: 06090003 lb zero,96(s2) - 142c: 0100 addi s0,sp,128 - 142e: 0605 addi a2,a2,1 - 1430: 02090003 lb zero,32(s2) - 1434: 0100 addi s0,sp,128 - 1436: 1605 addi a2,a2,-31 - 1438: 02090103 lb sp,32(s2) - 143c: 0100 addi s0,sp,128 - 143e: 1005 c.nop -31 - 1440: 08090103 lb sp,128(s2) - 1444: 0100 addi s0,sp,128 - 1446: 0b05 addi s6,s6,1 - 1448: 08090103 lb sp,128(s2) - 144c: 0100 addi s0,sp,128 - 144e: 1005 c.nop -31 - 1450: 02090103 lb sp,32(s2) - 1454: 0100 addi s0,sp,128 - 1456: 0905 addi s2,s2,1 - 1458: 0c090003 lb zero,192(s2) - 145c: 0100 addi s0,sp,128 - 145e: 0e05 addi t3,t3,1 - 1460: 0c090003 lb zero,192(s2) - 1464: 0100 addi s0,sp,128 - 1466: 0c05 addi s8,s8,1 - 1468: 02090003 lb zero,32(s2) - 146c: 0100 addi s0,sp,128 - 146e: 2205 addiw tp,tp,1 - 1470: 02097f03 0x2097f03 - 1474: 0100 addi s0,sp,128 - 1476: 0e05 addi t3,t3,1 - 1478: 0a090003 lb zero,160(s2) - 147c: 0100 addi s0,sp,128 - 147e: 1105 addi sp,sp,-31 - 1480: 0a090303 lb t1,160(s2) - 1484: 0100 addi s0,sp,128 - 1486: 0b05 addi s6,s6,1 - 1488: 08090103 lb sp,128(s2) - 148c: 0100 addi s0,sp,128 - 148e: 08090103 lb sp,128(s2) - 1492: 0100 addi s0,sp,128 - 1494: 1005 c.nop -31 - 1496: 02090103 lb sp,32(s2) - 149a: 0100 addi s0,sp,128 - 149c: 0905 addi s2,s2,1 - 149e: 0c090003 lb zero,192(s2) - 14a2: 0100 addi s0,sp,128 - 14a4: 0e05 addi t3,t3,1 - 14a6: 0c090003 lb zero,192(s2) - 14aa: 0100 addi s0,sp,128 - 14ac: 0c05 addi s8,s8,1 - 14ae: 04090003 lb zero,64(s2) - 14b2: 0100 addi s0,sp,128 - 14b4: 1d05 addi s10,s10,-31 - 14b6: 04097f03 0x4097f03 - 14ba: 0100 addi s0,sp,128 - 14bc: 0e05 addi t3,t3,1 - 14be: 0a090003 lb zero,160(s2) - 14c2: 0100 addi s0,sp,128 - 14c4: 0a05 addi s4,s4,1 - 14c6: 08090303 lb t1,128(s2) - 14ca: 0100 addi s0,sp,128 - 14cc: 0105 addi sp,sp,1 - 14ce: 04090103 lb sp,64(s2) - 14d2: 0100 addi s0,sp,128 - 14d4: 08090303 lb t1,128(s2) - 14d8: 0100 addi s0,sp,128 - 14da: 0905 addi s2,s2,1 - 14dc: 14090103 lb sp,320(s2) - 14e0: 0100 addi s0,sp,128 - 14e2: 1905 addi s2,s2,-31 - 14e4: 04090003 lb zero,64(s2) - 14e8: 0100 addi s0,sp,128 - 14ea: 2005 0x2005 - 14ec: 06090003 lb zero,96(s2) - 14f0: 0100 addi s0,sp,128 - 14f2: 0605 addi a2,a2,1 - 14f4: 02090003 lb zero,32(s2) - 14f8: 0100 addi s0,sp,128 - 14fa: 1b05 addi s6,s6,-31 - 14fc: 02090103 lb sp,32(s2) - 1500: 0100 addi s0,sp,128 - 1502: 0f05 addi t5,t5,1 - 1504: 04090003 lb zero,64(s2) - 1508: 0100 addi s0,sp,128 - 150a: 1205 addi tp,tp,-31 - 150c: 08090103 lb sp,128(s2) - 1510: 0100 addi s0,sp,128 - 1512: 0a05 addi s4,s4,1 - 1514: 06090003 lb zero,96(s2) - 1518: 0100 addi s0,sp,128 - 151a: 1205 addi tp,tp,-31 - 151c: 0a090103 lb sp,160(s2) - 1520: 0100 addi s0,sp,128 - 1522: 0a05 addi s4,s4,1 - 1524: 06090003 lb zero,96(s2) - 1528: 0100 addi s0,sp,128 - 152a: 1805 addi a6,a6,-31 - 152c: 0a090103 lb sp,160(s2) - 1530: 0100 addi s0,sp,128 - 1532: 0a05 addi s4,s4,1 - 1534: 06090003 lb zero,96(s2) - 1538: 0100 addi s0,sp,128 - 153a: 1005 c.nop -31 - 153c: 0a090203 lb tp,160(s2) - 1540: 0100 addi s0,sp,128 - 1542: 0b05 addi s6,s6,1 - 1544: 08090103 lb sp,128(s2) - 1548: 0100 addi s0,sp,128 - 154a: 0905 addi s2,s2,1 - 154c: 02090103 lb sp,32(s2) - 1550: 0100 addi s0,sp,128 - 1552: 0c05 addi s8,s8,1 - 1554: 0c090003 lb zero,192(s2) - 1558: 0100 addi s0,sp,128 - 155a: 2205 addiw tp,tp,1 - 155c: 06097f03 0x6097f03 - 1560: 0100 addi s0,sp,128 - 1562: 0e05 addi t3,t3,1 - 1564: 0a090003 lb zero,160(s2) - 1568: 0100 addi s0,sp,128 - 156a: 0b05 addi s6,s6,1 - 156c: 0a090303 lb t1,160(s2) - 1570: 0100 addi s0,sp,128 - 1572: 08090103 lb sp,128(s2) - 1576: 0100 addi s0,sp,128 - 1578: 0905 addi s2,s2,1 - 157a: 02090103 lb sp,32(s2) - 157e: 0100 addi s0,sp,128 - 1580: 0c05 addi s8,s8,1 - 1582: 0c090003 lb zero,192(s2) - 1586: 0100 addi s0,sp,128 - 1588: 1d05 addi s10,s10,-31 - 158a: 0c097f03 0xc097f03 - 158e: 0100 addi s0,sp,128 - 1590: 0e05 addi t3,t3,1 - 1592: 0a090003 lb zero,160(s2) - 1596: 0100 addi s0,sp,128 - 1598: 0a05 addi s4,s4,1 - 159a: 08090303 lb t1,128(s2) - 159e: 0100 addi s0,sp,128 - 15a0: 0105 addi sp,sp,1 - 15a2: 04090103 lb sp,64(s2) - 15a6: 0100 addi s0,sp,128 - 15a8: 08090303 lb t1,128(s2) - 15ac: 0100 addi s0,sp,128 - 15ae: 0f05 addi t5,t5,1 - 15b0: 0a090103 lb sp,160(s2) - 15b4: 0100 addi s0,sp,128 - 15b6: 0905 addi s2,s2,1 - 15b8: 08090103 lb sp,128(s2) - 15bc: 0100 addi s0,sp,128 - 15be: 0605 addi a2,a2,1 - 15c0: 02090103 lb sp,32(s2) - 15c4: 0100 addi s0,sp,128 - 15c6: 0a05 addi s4,s4,1 - 15c8: 0a097f03 0xa097f03 - 15cc: 0100 addi s0,sp,128 - 15ce: 0c05 addi s8,s8,1 - 15d0: 0a090203 lb tp,160(s2) - 15d4: 0100 addi s0,sp,128 - 15d6: 0105 addi sp,sp,1 - 15d8: 0c090103 lb sp,192(s2) - 15dc: 0100 addi s0,sp,128 - 15de: 08090303 lb t1,128(s2) - 15e2: 0100 addi s0,sp,128 - 15e4: 0f05 addi t5,t5,1 - 15e6: 0e090103 lb sp,224(s2) - 15ea: 0100 addi s0,sp,128 - 15ec: 0905 addi s2,s2,1 - 15ee: 08090103 lb sp,128(s2) - 15f2: 0100 addi s0,sp,128 - 15f4: 0605 addi a2,a2,1 - 15f6: 02090103 lb sp,32(s2) - 15fa: 0100 addi s0,sp,128 - 15fc: 0b05 addi s6,s6,1 - 15fe: 0a097f03 0xa097f03 - 1602: 0100 addi s0,sp,128 - 1604: 0e05 addi t3,t3,1 - 1606: 0c090003 lb zero,192(s2) - 160a: 0100 addi s0,sp,128 - 160c: 1105 addi sp,sp,-31 - 160e: 0200 addi s0,sp,256 - 1610: 0104 addi s1,sp,128 - 1612: 02090003 lb zero,32(s2) - 1616: 0100 addi s0,sp,128 - 1618: 0e05 addi t3,t3,1 - 161a: 0200 addi s0,sp,256 - 161c: 0104 addi s1,sp,128 - 161e: 08090003 lb zero,128(s2) - 1622: 0100 addi s0,sp,128 - 1624: 0c05 addi s8,s8,1 - 1626: 02090203 lb tp,32(s2) - 162a: 0100 addi s0,sp,128 - 162c: 0105 addi sp,sp,1 - 162e: 0c090103 lb sp,192(s2) - 1632: 0100 addi s0,sp,128 - 1634: 08090303 lb t1,128(s2) - 1638: 0100 addi s0,sp,128 - 163a: 0d05 addi s10,s10,1 - 163c: 0200 addi s0,sp,256 - 163e: 0204 addi s1,sp,256 - 1640: 0e090403 lb s0,224(s2) - 1644: 0100 addi s0,sp,128 - 1646: 0805 addi a6,a6,1 - 1648: 0200 addi s0,sp,256 - 164a: 0204 addi s1,sp,256 - 164c: 0c090003 lb zero,192(s2) - 1650: 0100 addi s0,sp,128 - 1652: 0d05 addi s10,s10,1 - 1654: 0200 addi s0,sp,256 - 1656: 0204 addi s1,sp,256 - 1658: 08090103 lb sp,128(s2) - 165c: 0100 addi s0,sp,128 - 165e: 0805 addi a6,a6,1 - 1660: 0200 addi s0,sp,256 - 1662: 0204 addi s1,sp,256 - 1664: 0c090003 lb zero,192(s2) - 1668: 0100 addi s0,sp,128 - 166a: 1405 addi s0,s0,-31 - 166c: 0200 addi s0,sp,256 - 166e: 0204 addi s1,sp,256 - 1670: 08090103 lb sp,128(s2) - 1674: 0100 addi s0,sp,128 - 1676: 0200 addi s0,sp,256 - 1678: 0104 addi s1,sp,128 - 167a: 0306 slli t1,t1,0x1 - 167c: 0900 addi s0,sp,144 - 167e: 000a c.slli zero,0x2 - 1680: 0501 addi a0,a0,0 - 1682: 060d addi a2,a2,3 - 1684: 16090203 lb tp,352(s2) - 1688: 0100 addi s0,sp,128 - 168a: 0105 addi sp,sp,1 - 168c: 14090103 lb sp,320(s2) - 1690: 0100 addi s0,sp,128 - 1692: 08090303 lb t1,128(s2) - 1696: 0100 addi s0,sp,128 - 1698: 0905 addi s2,s2,1 - 169a: 0e090103 lb sp,224(s2) - 169e: 0100 addi s0,sp,128 - 16a0: 08090103 lb sp,128(s2) - 16a4: 0100 addi s0,sp,128 - 16a6: 1605 addi a2,a2,-31 - 16a8: 0200 addi s0,sp,256 - 16aa: 0104 addi s1,sp,128 - 16ac: 02090003 lb zero,32(s2) - 16b0: 0100 addi s0,sp,128 - 16b2: 0d05 addi s10,s10,1 - 16b4: 0200 addi s0,sp,256 - 16b6: 0104 addi s1,sp,128 - 16b8: 0c090003 lb zero,192(s2) - 16bc: 0100 addi s0,sp,128 - 16be: 1205 addi tp,tp,-31 - 16c0: 0200 addi s0,sp,256 - 16c2: 0104 addi s1,sp,128 - 16c4: 0c090003 lb zero,192(s2) - 16c8: 0100 addi s0,sp,128 - 16ca: 1005 c.nop -31 - 16cc: 0200 addi s0,sp,256 - 16ce: 0104 addi s1,sp,128 - 16d0: 04090003 lb zero,64(s2) - 16d4: 0100 addi s0,sp,128 - 16d6: 0b05 addi s6,s6,1 - 16d8: 0200 addi s0,sp,256 - 16da: 0104 addi s1,sp,128 - 16dc: 04090003 lb zero,64(s2) - 16e0: 0100 addi s0,sp,128 - 16e2: 0a05 addi s4,s4,1 - 16e4: 0200 addi s0,sp,256 - 16e6: 0104 addi s1,sp,128 - 16e8: 04090003 lb zero,64(s2) - 16ec: 0100 addi s0,sp,128 - 16ee: 02090203 lb tp,32(s2) - 16f2: 0100 addi s0,sp,128 - 16f4: 0105 addi sp,sp,1 - 16f6: 04090103 lb sp,64(s2) - 16fa: 0100 addi s0,sp,128 - 16fc: 08090303 lb t1,128(s2) - 1700: 0100 addi s0,sp,128 - 1702: 0805 addi a6,a6,1 - 1704: 0a090103 lb sp,160(s2) - 1708: 0100 addi s0,sp,128 - 170a: 0705 addi a4,a4,1 - 170c: 04090103 lb sp,64(s2) - 1710: 0100 addi s0,sp,128 - 1712: 0905 addi s2,s2,1 - 1714: 04090203 lb tp,64(s2) - 1718: 0100 addi s0,sp,128 - 171a: 0805 addi a6,a6,1 - 171c: 02090103 lb sp,32(s2) - 1720: 0100 addi s0,sp,128 - 1722: 0a05 addi s4,s4,1 - 1724: 0a097f03 0xa097f03 - 1728: 0100 addi s0,sp,128 - 172a: 0f05 addi t5,t5,1 - 172c: 08090003 lb zero,128(s2) - 1730: 0100 addi s0,sp,128 - 1732: 0705 addi a4,a4,1 - 1734: 0a090303 lb t1,160(s2) - 1738: 0100 addi s0,sp,128 - 173a: 0605 addi a2,a2,1 - 173c: 08090003 lb zero,128(s2) - 1740: 0100 addi s0,sp,128 - 1742: 1605 addi a2,a2,-31 - 1744: 0200 addi s0,sp,256 - 1746: 0104 addi s1,sp,128 - 1748: 0a090003 lb zero,160(s2) - 174c: 0100 addi s0,sp,128 - 174e: 1305 addi t1,t1,-31 - 1750: 0200 addi s0,sp,256 - 1752: 0104 addi s1,sp,128 - 1754: 08090003 lb zero,128(s2) - 1758: 0100 addi s0,sp,128 - 175a: 0c05 addi s8,s8,1 - 175c: 0a090103 lb sp,160(s2) - 1760: 0100 addi s0,sp,128 - 1762: 1105 addi sp,sp,-31 - 1764: 08090003 lb zero,128(s2) - 1768: 0100 addi s0,sp,128 - 176a: 0a05 addi s4,s4,1 - 176c: 14090003 lb zero,320(s2) - 1770: 0100 addi s0,sp,128 - 1772: 0805 addi a6,a6,1 - 1774: 04090103 lb sp,64(s2) - 1778: 0100 addi s0,sp,128 - 177a: 0905 addi s2,s2,1 - 177c: 0a090303 lb t1,160(s2) - 1780: 0100 addi s0,sp,128 - 1782: 02090103 lb sp,32(s2) - 1786: 0100 addi s0,sp,128 - 1788: 1005 c.nop -31 - 178a: 10090103 lb sp,256(s2) - 178e: 0100 addi s0,sp,128 - 1790: 0c05 addi s8,s8,1 - 1792: 0c090003 lb zero,192(s2) - 1796: 0100 addi s0,sp,128 - 1798: 1305 addi t1,t1,-31 - 179a: 06090003 lb zero,96(s2) - 179e: 0100 addi s0,sp,128 - 17a0: 0905 addi s2,s2,1 - 17a2: 08090003 lb zero,128(s2) - 17a6: 0100 addi s0,sp,128 - 17a8: 0a05 addi s4,s4,1 - 17aa: 0a097e03 0xa097e03 - 17ae: 0100 addi s0,sp,128 - 17b0: 1605 addi a2,a2,-31 - 17b2: 0a090503 lb a0,160(s2) - 17b6: 0100 addi s0,sp,128 - 17b8: 0200 addi s0,sp,256 - 17ba: 0104 addi s1,sp,128 - 17bc: 0306 slli t1,t1,0x1 - 17be: 0900 addi s0,sp,144 - 17c0: 0008 0x8 - 17c2: 0001 nop - 17c4: 0402 c.slli64 s0 - 17c6: 0302 c.slli64 t1 - 17c8: 0900 addi s0,sp,144 - 17ca: 000a c.slli zero,0x2 - 17cc: 0501 addi a0,a0,0 - 17ce: 0001 nop - 17d0: 0402 c.slli64 s0 - 17d2: 0605 addi a2,a2,1 - 17d4: 04090103 lb sp,64(s2) - 17d8: 0100 addi s0,sp,128 - 17da: 0809 addi a6,a6,2 - 17dc: 0000 unimp - 17de: 0101 addi sp,sp,0 - -Disassembly of section .debug_str: - -0000000000000000 <.debug_str>: - 0: 20554e47 fmsub.s ft8,fa0,ft5,ft4,rmm - 4: 20393943 fmadd.s fs2,fs2,ft3,ft4,rup - 8: 3131 addiw sp,sp,-20 - a: 312e fld ft2,232(sp) - c: 302e fld ft0,232(sp) - e: 2d20 fld fs0,88(a0) - 10: 616d addi sp,sp,240 - 12: 6372 ld t1,280(sp) - 14: 3d68 fld fa0,248(a0) - 16: 7672 ld a2,312(sp) - 18: 3436 fld fs0,360(sp) - 1a: 2d206367 0x2d206367 - 1e: 616d addi sp,sp,240 - 20: 6962 ld s2,24(sp) - 22: 6c3d lui s8,0xf - 24: 3670 fld fa2,232(a2) - 26: 6434 ld a3,72(s0) - 28: 2d20 fld fs0,88(a0) - 2a: 636d lui t1,0x1b - 2c: 6f6d lui t5,0x1b - 2e: 6564 ld s1,200(a0) - 30: 3d6c fld fa1,248(a0) - 32: 656d lui a0,0x1b - 34: 6164 ld s1,192(a0) - 36: 796e ld s2,248(sp) - 38: 2d20 fld fs0,88(a0) - 3a: 636d lui t1,0x1b - 3c: 6f6d lui t5,0x1b - 3e: 6564 ld s1,200(a0) - 40: 3d6c fld fa1,248(a0) - 42: 656d lui a0,0x1b - 44: 6164 ld s1,192(a0) - 46: 796e ld s2,248(sp) - 48: 2d20 fld fs0,88(a0) - 4a: 746d lui s0,0xffffb - 4c: 6e75 lui t3,0x1d - 4e: 3d65 addiw s10,s10,-7 - 50: 6f72 ld t5,280(sp) - 52: 74656b63 bltu a0,t1,7a8 - 56: 2d20 fld fs0,88(a0) - 58: 616d addi sp,sp,240 - 5a: 6372 ld t1,280(sp) - 5c: 3d68 fld fa0,248(a0) - 5e: 7672 ld a2,312(sp) - 60: 3436 fld fs0,360(sp) - 62: 6d69 lui s10,0x1a - 64: 6661 lui a2,0x18 - 66: 6364 ld s1,192(a4) - 68: 2d20 fld fs0,88(a0) - 6a: 4f2d2067 0x4f2d2067 - 6e: 2032 fld ft0,264(sp) - 70: 4f2d li t5,11 - 72: 2030 fld fa2,64(s0) - 74: 732d lui t1,0xfffeb - 76: 6474 ld a3,200(s0) - 78: 673d lui a4,0xf - 7a: 756e ld a0,248(sp) - 7c: 3939 addiw s2,s2,-18 - 7e: 2d20 fld fs0,88(a0) - 80: 6666 ld a2,88(sp) - 82: 7361 lui t1,0xffff8 - 84: 2d74 fld fa3,216(a0) - 86: 616d addi sp,sp,240 - 88: 6874 ld a3,208(s0) - 8a: 2d20 fld fs0,88(a0) - 8c: 6e66 ld t3,88(sp) - 8e: 6f632d6f jal s10,32784 - 92: 6d6d lui s10,0x1b - 94: 2d206e6f jal t3,6366 - 98: 6e66 ld t3,88(sp) - 9a: 75622d6f jal s10,227f0 - 9e: 6c69 lui s8,0x1a - a0: 6974 ld a3,208(a0) - a2: 2d6e fld fs10,216(sp) - a4: 7270 ld a2,224(a2) - a6: 6e69 lui t3,0x1a - a8: 6674 ld a3,200(a2) - aa: 2d20 fld fs0,88(a0) - ac: 6e66 ld t3,88(sp) - ae: 72742d6f jal s10,42fd4 - b2: 6565 lui a0,0x19 - b4: 6c2d lui s8,0xb - b6: 2d706f6f jal t5,6b8c - ba: 6964 ld s1,208(a0) - bc: 69727473 csrrci s0,0x697,4 - c0: 7562 ld a0,56(sp) - c2: 6574 ld a3,200(a0) - c4: 702d c.lui zero,0xfffeb - c6: 7461 lui s0,0xffff8 - c8: 6574 ld a3,200(a0) - ca: 6e72 ld t3,280(sp) - cc: 61620073 0x61620073 - d0: 7272 ld tp,312(sp) - d2: 6569 lui a0,0x1a - d4: 0072 c.slli zero,0x1c - d6: 6e756f63 bltu a0,t2,7d4 - da: 0074 addi a3,sp,12 - dc: 5f5f 6975 746e 0x746e69755f5f - e2: 7470 ld a2,232(s0) - e4: 5f72 lw t5,60(sp) - e6: 0074 addi a3,sp,12 - e8: 6e69 lui t3,0x1a - ea: 6c5f6e73 csrrsi t3,0x6c5,30 - ee: 6e65 lui t3,0x19 - f0: 7500 ld s0,40(a0) - f2: 736e ld t1,248(sp) - f4: 6769 lui a4,0x1a - f6: 656e ld a0,216(sp) - f8: 2064 fld fs1,192(s0) - fa: 72616863 bltu sp,t1,82a - fe: 6c00 ld s0,24(s0) - 100: 7366 ld t1,120(sp) - 102: 0072 c.slli zero,0x1c - 104: 7865 lui a6,0xffff9 - 106: 6570 ld a2,200(a0) - 108: 64657463 bgeu a0,t1,750 - 10c: 7300 ld s0,32(a4) - 10e: 6f68 ld a0,216(a4) - 110: 7472 ld s0,312(sp) - 112: 7520 ld s0,104(a0) - 114: 736e ld t1,248(sp) - 116: 6769 lui a4,0x1a - 118: 656e ld a0,216(sp) - 11a: 2064 fld fs1,192(s0) - 11c: 6e69 lui t3,0x1a - 11e: 0074 addi a3,sp,12 - 120: 636e ld t1,216(sp) - 122: 7365726f jal tp,57858 - 126: 7600 ld s0,40(a2) - 128: 7265 lui tp,0xffff9 - 12a: 6669 lui a2,0x1a - 12c: 0079 c.nop 30 - 12e: 6f64 ld s1,216(a4) - 130: 6275 lui tp,0x1d - 132: 656c ld a1,200(a0) - 134: 6d00 ld s0,24(a0) - 136: 6961 lui s2,0x18 - 138: 006e c.slli zero,0x1b - 13a: 6574 ld a3,200(a0) - 13c: 73007473 csrrci s0,0x730,0 - 140: 6f68 ld a0,216(a4) - 142: 7472 ld s0,312(sp) - 144: 6920 ld s0,80(a0) - 146: 746e ld s0,248(sp) - 148: 5f00 lw s0,56(a4) - 14a: 755f 6e69 3674 0x36746e69755f - 150: 5f34 lw a3,120(a4) - 152: 0074 addi a3,sp,12 - 154: 6874 ld a3,208(s0) - 156: 6572 ld a0,280(sp) - 158: 6461 lui s0,0x18 - 15a: 736e6573 csrrsi a0,0x736,28 - 15e: 0065 c.nop 25 - 160: 6576 ld a0,344(sp) - 162: 6972 ld s2,280(sp) - 164: 7966 ld s2,120(sp) - 166: 6f44 ld s1,152(a4) - 168: 6275 lui tp,0x1d - 16a: 656c ld a1,200(a0) - 16c: 6300 ld s0,0(a4) - 16e: 7472 ld s0,312(sp) - 170: 532e lw t1,232(sp) - 172: 2f00 fld fs0,24(a4) - 174: 6f68 ld a0,216(a4) - 176: 656d lui a0,0x1b - 178: 74736a2f 0x74736a2f - 17c: 6e69 lui t3,0x1a - 17e: 2f65 addiw t5,t5,25 - 180: 6972 ld s2,280(sp) - 182: 2d766373 csrrsi t1,0x2d7,12 - 186: 6c6c6177 0x6c6c6177 - 18a: 2f79 addiw t5,t5,30 - 18c: 7865 lui a6,0xffff9 - 18e: 6d61 lui s10,0x18 - 190: 6c70 ld a2,216(s0) - 192: 7365 lui t1,0xffff9 - 194: 732f432f 0x732f432f - 198: 6d69 lui s10,0x1a - 19a: 6c70 ld a2,216(s0) - 19c: 0065 c.nop 25 - 19e: 20554e47 fmsub.s ft8,fa0,ft5,ft4,rmm - 1a2: 5341 li t1,-16 - 1a4: 3220 fld fs0,96(a2) - 1a6: 332e fld ft6,232(sp) - 1a8: 74730037 lui zero,0x74730 - 1ac: 6c72 ld s8,280(sp) - 1ae: 6e65 lui t3,0x19 - 1b0: 7300 ld s0,32(a4) - 1b2: 7274 ld a3,224(a2) - 1b4: 6c6e ld s8,216(sp) - 1b6: 6e65 lui t3,0x19 - 1b8: 7000 ld s0,32(s0) - 1ba: 6f72 ld t5,280(sp) - 1bc: 73736563 bltu t1,s7,8e6 - 1c0: 705f 6572 6963 0x69636572705f - 1c6: 6e6f6973 csrrsi s2,0x6e6,30 - 1ca: 7400 ld s0,40(s0) - 1cc: 6164 ld s1,192(a0) - 1ce: 6174 ld a3,192(a0) - 1d0: 735f 7a69 0065 0x657a69735f - 1d6: 745f 6164 6174 0x61746164745f - 1dc: 655f 646e 6700 0x6700646e655f - 1e2: 7465 lui s0,0xffff9 - 1e4: 6975 lui s2,0x1d - 1e6: 746e ld s0,248(sp) - 1e8: 7000 ld s0,32(s0) - 1ea: 7475 lui s0,0xffffd - 1ec: 72616863 bltu sp,t1,91c - 1f0: 7200 ld s0,32(a2) - 1f2: 6765 lui a4,0x19 - 1f4: 72700073 0x72700073 - 1f8: 6e69 lui t3,0x1a - 1fa: 7374 ld a3,224(a4) - 1fc: 7274 ld a3,224(a2) - 1fe: 7400 ld s0,40(s0) - 200: 7268 ld a0,224(a2) - 202: 6165 addi sp,sp,112 - 204: 5f64 lw s1,124(a4) - 206: 6e65 lui t3,0x19 - 208: 7274 ld a3,224(a2) - 20a: 0079 c.nop 30 - 20c: 63727473 csrrci s0,0x637,4 - 210: 7970 ld a2,240(a0) - 212: 6200 ld s0,0(a2) - 214: 7361 lui t1,0xffff8 - 216: 0065 c.nop 25 - 218: 7270 ld a2,224(a2) - 21a: 6e69 lui t3,0x1a - 21c: 6e74 ld a3,216(a2) - 21e: 6d75 lui s10,0x1d - 220: 6c00 ld s0,24(s0) - 222: 20676e6f jal t3,76428 - 226: 6f6c ld a1,216(a4) - 228: 676e ld a4,216(sp) - 22a: 7520 ld s0,104(a0) - 22c: 736e ld t1,248(sp) - 22e: 6769 lui a4,0x1a - 230: 656e ld a0,216(sp) - 232: 2064 fld fs1,192(s0) - 234: 6e69 lui t3,0x1a - 236: 0074 addi a3,sp,12 - 238: 6e65 lui t3,0x19 - 23a: 6261 lui tp,0x18 - 23c: 656c ld a1,200(a0) - 23e: 6100 ld s0,0(a0) - 240: 6f62 ld t5,24(sp) - 242: 7472 ld s0,312(sp) - 244: 5f00 lw s0,56(a4) - 246: 675f 756e 5f63 0x5f63756e675f - 24c: 6176 ld sp,344(sp) - 24e: 6c5f 7369 0074 0x7473696c5f - 254: 6170 ld a2,192(a0) - 256: 6364 ld s1,192(a4) - 258: 7300 ld s0,32(a4) - 25a: 7a69 lui s4,0xffffa - 25c: 5f65 li t5,-7 - 25e: 0074 addi a3,sp,12 - 260: 6e676973 csrrsi s2,0x6e6,14 - 264: 7700 ld s0,40(a4) - 266: 6469 lui s0,0x1a - 268: 6874 ld a3,208(s0) - 26a: 7400 ld s0,40(s0) - 26c: 736f686f jal a6,f69a2 - 270: 5f74 lw a3,124(a4) - 272: 7865 lui a6,0xffff9 - 274: 7469 lui s0,0xffffa - 276: 7000 ld s0,32(s0) - 278: 7562 ld a0,56(sp) - 27a: 0066 c.slli zero,0x19 - 27c: 30727473 csrrci s0,0x307,4 - 280: 6300 ld s0,0(a4) - 282: 746e756f jal a0,e79c8 - 286: 7265 lui tp,0xffff9 - 288: 6f630073 0x6f630073 - 28c: 6564 ld s1,200(a0) - 28e: 6c00 ld s0,24(s0) - 290: 7361 lui t1,0xffff8 - 292: 5f74 lw a3,124(a4) - 294: 6d66 ld s10,88(sp) - 296: 0074 addi a3,sp,12 - 298: 7562 ld a0,56(sp) - 29a: 6c66 ld s8,88(sp) - 29c: 6e65 lui t3,0x19 - 29e: 7200 ld s0,32(a2) - 2a0: 7365 lui t1,0xffff9 - 2a2: 63746977 0x63746977 - 2a6: 0068 addi a0,sp,12 - 2a8: 6164 ld s1,192(a0) - 2aa: 6174 ld a3,192(a0) - 2ac: 7300 ld s0,32(a4) - 2ae: 7274 ld a3,224(a2) - 2b0: 00706d63 bltu zero,t2,2ca - 2b4: 666c ld a1,200(a2) - 2b6: 616c ld a1,192(a0) - 2b8: 61630067 jr 1558(t1) # ffffffffffff9616 <__global_pointer$+0xffffffff7fff56ce> - 2bc: 7375 lui t1,0xffffd - 2be: 0065 c.nop 25 - 2c0: 6f6c ld a1,216(a4) - 2c2: 676e ld a4,216(sp) - 2c4: 6c20 ld s0,88(s0) - 2c6: 20676e6f jal t3,764cc - 2ca: 6e69 lui t3,0x1a - 2cc: 0074 addi a3,sp,12 - 2ce: 7370 ld a2,224(a4) - 2d0: 7274 ld a3,224(a2) - 2d2: 6d00 ld s0,24(a0) - 2d4: 6d65 lui s10,0x19 - 2d6: 00746573 csrrsi a0,0x7,8 - 2da: 7261 lui tp,0xffff8 - 2dc: 61003067 0x61003067 - 2e0: 6772 ld a4,280(sp) - 2e2: 0031 c.nop 12 - 2e4: 7261 lui tp,0xffff8 - 2e6: 5f003267 0x5f003267 - 2ea: 6e69 lui t3,0x1a - 2ec: 7469 lui s0,0xffffa - 2ee: 7300 ld s0,32(a4) - 2f0: 7379 lui t1,0xffffe - 2f2: 6c6c6163 bltu s8,t1,9b4 - 2f6: 6700 ld s0,8(a4) - 2f8: 7465 lui s0,0xffff9 - 2fa: 6e69 lui t3,0x1a - 2fc: 0074 addi a3,sp,12 - 2fe: 6e75 lui t3,0x1d - 300: 6e676973 csrrsi s2,0x6e6,14 - 304: 6465 lui s0,0x19 - 306: 6e5f 6d75 6562 0x65626d756e5f - 30c: 0072 c.slli zero,0x1c - 30e: 7570 ld a2,232(a0) - 310: 6474 ld a3,200(s0) - 312: 7461 lui s0,0xffff8 - 314: 6100 ld s0,0(a0) - 316: 6772 ld a4,280(sp) - 318: 68770063 beq a4,t2,998 - 31c: 6369 lui t1,0x1a - 31e: 0068 addi a0,sp,12 - 320: 7261 lui tp,0xffff8 - 322: 73007667 0x73007667 - 326: 7270 ld a2,224(a2) - 328: 6e69 lui t3,0x1a - 32a: 6674 ld a3,200(a2) - 32c: 5f00 lw s0,56(a4) - 32e: 6474 ld a3,200(s0) - 330: 7461 lui s0,0xffff8 - 332: 5f61 li t5,-8 - 334: 6562 ld a0,24(sp) - 336: 006e6967 0x6e6967 - 33a: 6c61 lui s8,0x18 - 33c: 6674 ld a3,200(a2) - 33e: 616c ld a1,192(a0) - 340: 62740067 jr 1575(s0) # ffffffffffff8627 <__global_pointer$+0xffffffff7fff46df> - 344: 735f7373 csrrci t1,0x735,30 - 348: 7a69 lui s4,0xffffa - 34a: 0065 c.nop 25 - 34c: 6874 ld a3,208(s0) - 34e: 6572 ld a0,280(sp) - 350: 6461 lui s0,0x18 - 352: 705f 696f 746e 0x746e696f705f - 358: 7265 lui tp,0xffff9 - 35a: 6300 ld s0,0(a4) - 35c: 746e756f jal a0,e7aa2 - 360: 7265 lui tp,0xffff9 - 362: 6e5f 6d61 7365 0x73656d616e5f - 368: 7700 ld s0,40(a4) - 36a: 0064726f jal tp,47370 - 36e: 745f 7362 5f73 0x5f737362745f - 374: 6e65 lui t3,0x19 - 376: 0064 addi s1,sp,12 - 378: 6f74 ld a3,216(a4) - 37a: 6f68 ld a0,216(a4) - 37c: 64007473 csrrci s0,0x640,0 - 380: 6769 lui a4,0x1a - 382: 70730073 0x70730073 - 386: 6972 ld s2,280(sp) - 388: 746e ld s0,248(sp) - 38a: 5f66 lw t5,120(sp) - 38c: 7570 ld a2,232(a0) - 38e: 6374 ld a3,192(a4) - 390: 0068 addi a0,sp,12 - 392: 7962 ld s2,56(sp) - 394: 6574 ld a3,200(a0) - 396: 7000 ld s0,32(s0) - 398: 6972 ld s2,280(sp) - 39a: 746e ld s0,248(sp) - 39c: 6568 ld a0,200(a0) - 39e: 0078 addi a4,sp,12 - 3a0: 616d addi sp,sp,240 - 3a2: 5f636967 0x5f636967 - 3a6: 656d lui a0,0x1b - 3a8: 006d c.nop 27 - 3aa: 6168 ld a0,192(a0) - 3ac: 646e ld s0,216(sp) - 3ae: 656c ld a1,200(a0) - 3b0: 745f 6172 0070 0x706172745f - 3b6: 7266 ld tp,120(sp) - 3b8: 6f686d6f jal s10,86aae - 3bc: 6d007473 csrrci s0,0x6d0,0 - 3c0: 6d65 lui s10,0x19 - 3c2: 00797063 bgeu s2,t2,3c2 - 3c6: 5f5f 6d74 0070 0x706d745f5f - 3cc: 5f5f 7562 6c69 0x6c6975625f5f - 3d2: 6974 ld a3,208(a0) - 3d4: 5f6e lw t5,248(sp) - 3d6: 6176 ld sp,344(sp) - 3d8: 6c5f 7369 0074 0x7473696c5f - 3de: 7461 lui s0,0xffff8 - 3e0: 73006c6f jal s8,6b10 - 3e4: 7465 lui s0,0xffff9 - 3e6: 74617453 0x74617453 - 3ea: 6e690073 0x6e690073 - 3ee: 7469 lui s0,0xffffa - 3f0: 745f 736c 6400 0x6400736c745f - 3f6: 7365 lui t1,0xffff9 - 3f8: 0074 addi a3,sp,12 - 3fa: 7076 0x7076 - 3fc: 6972 ld s2,280(sp) - 3fe: 746e ld s0,248(sp) - 400: 6d66 ld s10,88(sp) - 402: 0074 addi a3,sp,12 - -Disassembly of section .debug_line_str: - -0000000000000000 <.debug_line_str>: - 0: 706d6973 csrrsi s2,0x706,26 - 4: 656c ld a1,200(a0) - 6: 632e ld t1,200(sp) - 8: 2f00 fld fs0,24(a4) - a: 6f68 ld a0,216(a4) - c: 656d lui a0,0x1b - e: 74736a2f 0x74736a2f - 12: 6e69 lui t3,0x1a - 14: 2f65 addiw t5,t5,25 - 16: 6972 ld s2,280(sp) - 18: 2d766373 csrrsi t1,0x2d7,12 - 1c: 6c6c6177 0x6c6c6177 - 20: 2f79 addiw t5,t5,30 - 22: 7865 lui a6,0xffff9 - 24: 6d61 lui s10,0x18 - 26: 6c70 ld a2,216(s0) - 28: 7365 lui t1,0xffff9 - 2a: 732f432f 0x732f432f - 2e: 6d69 lui s10,0x1a - 30: 6c70 ld a2,216(s0) - 32: 0065 c.nop 25 - 34: 2e2e fld ft8,200(sp) - 36: 6d6f632f 0x6d6f632f - 3a: 6f6d lui t5,0x1b - 3c: 006e c.slli zero,0x1b - 3e: 6d6f682f 0x6d6f682f - 42: 2f65 addiw t5,t5,25 - 44: 736a ld t1,184(sp) - 46: 6974 ld a3,208(a0) - 48: 656e ld a0,216(sp) - 4a: 7369722f 0x7369722f - 4e: 722f7663 bgeu t5,sp,77a - 52: 7369 lui t1,0xffffa - 54: 34367663 bgeu a2,gp,3a0 - 58: 752d lui a0,0xfffeb - 5a: 6b6e ld s6,216(sp) - 5c: 6f6e ld t5,216(sp) - 5e: 652d6e77 0x652d6e77 - 62: 666c ld a1,200(a2) - 64: 636e692f 0x636e692f - 68: 756c ld a1,232(a0) - 6a: 6564 ld s1,200(a0) - 6c: 63616d2f 0x63616d2f - 70: 6968 ld a0,208(a0) - 72: 656e ld a0,216(sp) - 74: 2f00 fld fs0,24(a4) - 76: 6f68 ld a0,216(a4) - 78: 656d lui a0,0x1b - 7a: 74736a2f 0x74736a2f - 7e: 6e69 lui t3,0x1a - 80: 2f65 addiw t5,t5,25 - 82: 6972 ld s2,280(sp) - 84: 2f766373 csrrsi t1,0x2f7,12 - 88: 6972 ld s2,280(sp) - 8a: 36766373 csrrsi t1,0x367,12 - 8e: 2d34 fld fa3,88(a0) - 90: 6e75 lui t3,0x1d - 92: 776f6e6b 0x776f6e6b - 96: 2d6e fld fs10,216(sp) - 98: 6c65 lui s8,0x19 - 9a: 2f66 fld ft10,88(sp) - 9c: 6e69 lui t3,0x1a - 9e: 64756c63 bltu a0,t2,6f6 - a2: 2f65 addiw t5,t5,25 - a4: 00737973 csrrci s2,0x7,6 - a8: 7475 lui s0,0xffffd - aa: 6c69 lui s8,0x1a - ac: 682e ld a6,200(sp) - ae: 5f00 lw s0,56(a4) - b0: 6564 ld s1,200(a0) - b2: 6166 ld sp,88(sp) - b4: 6c75 lui s8,0x1d - b6: 5f74 lw a3,124(a4) - b8: 7974 ld a3,240(a0) - ba: 6570 ld a2,200(a0) - bc: 00682e73 csrrs t3,0x6,a6 - c0: 735f 6474 6e69 0x6e696474735f - c6: 2e74 fld fa3,216(a2) - c8: 0068 addi a0,sp,12 - ca: 2e747263 bgeu s0,t2,3ae - ce: 2e2e0053 fmin.q ft0,ft8,ft2 - d2: 6d6f632f 0x6d6f632f - d6: 6f6d lui t5,0x1b - d8: 2f6e fld ft10,216(sp) - da: 63737973 csrrci s2,0x637,6 - de: 6c61 lui s8,0x18 - e0: 736c ld a1,224(a4) - e2: 632e ld t1,200(sp) - e4: 2f00 fld fs0,24(a4) - e6: 6f68 ld a0,216(a4) - e8: 656d lui a0,0x1b - ea: 74736a2f 0x74736a2f - ee: 6e69 lui t3,0x1a - f0: 2f65 addiw t5,t5,25 - f2: 6972 ld s2,280(sp) - f4: 2f766373 csrrsi t1,0x2f7,12 - f8: 6972 ld s2,280(sp) - fa: 36766373 csrrsi t1,0x367,12 - fe: 2d34 fld fa3,88(a0) - 100: 6e75 lui t3,0x1d - 102: 776f6e6b 0x776f6e6b - 106: 2d6e fld fs10,216(sp) - 108: 6c65 lui s8,0x19 - 10a: 2f66 fld ft10,88(sp) - 10c: 6e69 lui t3,0x1a - 10e: 64756c63 bltu a0,t2,766 - 112: 0065 c.nop 25 - 114: 6d6f682f 0x6d6f682f - 118: 2f65 addiw t5,t5,25 - 11a: 736a ld t1,184(sp) - 11c: 6974 ld a3,208(a0) - 11e: 656e ld a0,216(sp) - 120: 7369722f 0x7369722f - 124: 6c2f7663 bgeu t5,sp,7f0 - 128: 6269 lui tp,0x1a - 12a: 6363672f 0x6363672f - 12e: 7369722f 0x7369722f - 132: 34367663 bgeu a2,gp,47e - 136: 752d lui a0,0xfffeb - 138: 6b6e ld s6,216(sp) - 13a: 6f6e ld t5,216(sp) - 13c: 652d6e77 0x652d6e77 - 140: 666c ld a1,200(a2) - 142: 2e31312f 0x2e31312f - 146: 2e31 addiw t3,t3,12 - 148: 2f30 fld fa2,88(a4) - 14a: 6e69 lui t3,0x1a - 14c: 64756c63 bltu a0,t2,7a4 - 150: 0065 c.nop 25 - 152: 69647473 csrrci s0,0x696,8 - 156: 00682e6f jal t3,8215c - 15a: 64647473 csrrci s0,0x646,8 - 15e: 6665 lui a2,0x19 - 160: 682e ld a6,200(sp) - 162: 7300 ld s0,32(a4) - 164: 6474 ld a3,200(s0) - 166: 7261 lui tp,0xffff8 - 168: 00682e67 0x682e67 - 16c: 69727473 csrrci s0,0x697,4 - 170: 676e ld a4,216(sp) - 172: 682e ld a6,200(sp) - ... - -Disassembly of section .comment: - -0000000000000000 <.comment>: - 0: 3a434347 fmsub.d ft6,ft6,ft4,ft7,rmm - 4: 2820 fld fs0,80(s0) - 6: 29554e47 fmsub.s ft8,fa0,fs5,ft5,rmm - a: 3120 fld fs0,96(a0) - c: 2e31 addiw t3,t3,12 - e: 2e31 addiw t3,t3,12 - 10: 0030 addi a2,sp,8 - -Disassembly of section .riscv.attributes: - -0000000000000000 <.riscv.attributes>: - 0: 3841 addiw a6,a6,-16 - 2: 0000 unimp - 4: 7200 ld s0,32(a2) - 6: 7369 lui t1,0xffffa - 8: 01007663 bgeu zero,a6,14 - c: 002e c.slli zero,0xb - e: 0000 unimp - 10: 1004 addi s1,sp,32 - 12: 7205 lui tp,0xfffe1 - 14: 3676 fld fa2,376(sp) - 16: 6934 ld a3,80(a0) - 18: 7032 0x7032 - 1a: 5f30 lw a2,120(a4) - 1c: 326d addiw tp,tp,-5 - 1e: 3070 fld fa2,224(s0) - 20: 615f 7032 5f30 0x5f307032615f - 26: 3266 fld ft4,120(sp) - 28: 3070 fld fa2,224(s0) - 2a: 645f 7032 5f30 0x5f307032645f - 30: 30703263 0x30703263 - 34: 0800 addi s0,sp,16 - 36: 0a01 addi s4,s4,0 - 38: 0b Address 0x0000000000000038 is out of bounds. - - -Disassembly of section .debug_frame: - -0000000000000000 <.debug_frame>: - 0: 000c 0xc - 2: 0000 unimp - 4: ffff 0xffff - 6: ffff 0xffff - 8: 7c010003 lb zero,1984(sp) - c: 0d01 addi s10,s10,0 - e: 0002 c.slli64 zero - 10: 002c addi a1,sp,8 - 12: 0000 unimp - 14: 0000 unimp - 16: 0000 unimp - 18: 2000 fld fs0,0(s0) - 1a: 8000 0x8000 - 1c: 0000 unimp - 1e: 0000 unimp - 20: 010e slli sp,sp,0x3 - 22: 0000 unimp - 24: 0000 unimp - 26: 0000 unimp - 28: 0e42 slli t3,t3,0x10 - 2a: 4250 lw a2,4(a2) - 2c: 0288 addi a0,sp,320 - 2e: 0c42 slli s8,s8,0x10 - 30: 0008 0x8 - 32: c8010403 lb s0,-896(sp) - 36: 020c addi a1,sp,256 - 38: 4250 lw a2,4(a2) - 3a: 000e c.slli zero,0x3 - 3c: 0000 unimp - 3e: 0000 unimp - 40: 002c addi a1,sp,8 - 42: 0000 unimp - 44: 0000 unimp - 46: 0000 unimp - 48: 210e fld ft2,192(sp) - 4a: 8000 0x8000 - 4c: 0000 unimp - 4e: 0000 unimp - 50: 0124 addi s1,sp,136 - 52: 0000 unimp - 54: 0000 unimp - 56: 0000 unimp - 58: 0e42 slli t3,t3,0x10 - 5a: 4260 lw s0,68(a2) - 5c: 0288 addi a0,sp,320 - 5e: 0c42 slli s8,s8,0x10 - 60: 0008 0x8 - 62: c8011a03 lh s4,-896(sp) - 66: 020c addi a1,sp,256 - 68: 4260 lw s0,68(a2) - 6a: 000e c.slli zero,0x3 - 6c: 0000 unimp - 6e: 0000 unimp - 70: 002c addi a1,sp,8 - 72: 0000 unimp - 74: 0000 unimp - 76: 0000 unimp - 78: 2232 fld ft4,264(sp) - 7a: 8000 0x8000 - 7c: 0000 unimp - 7e: 0000 unimp - 80: 008a slli ra,ra,0x2 - 82: 0000 unimp - 84: 0000 unimp - 86: 0000 unimp - 88: 0e42 slli t3,t3,0x10 - 8a: 4220 lw s0,64(a2) - 8c: 0288 addi a0,sp,320 - 8e: 0c42 slli s8,s8,0x10 - 90: 0008 0x8 - 92: 8002 0x8002 - 94: 0cc8 addi a0,sp,596 - 96: 2002 fld ft0,0(sp) - 98: 0e42 slli t3,t3,0x10 - 9a: 0000 unimp - 9c: 0000 unimp - 9e: 0000 unimp - a0: 002c addi a1,sp,8 - a2: 0000 unimp - a4: 0000 unimp - a6: 0000 unimp - a8: 22bc fld fa5,64(a3) - aa: 8000 0x8000 - ac: 0000 unimp - ae: 0000 unimp - b0: 0036 c.slli zero,0xd - b2: 0000 unimp - b4: 0000 unimp - b6: 0000 unimp - b8: 0e42 slli t3,t3,0x10 - ba: 4230 lw a2,64(a2) - bc: 0288 addi a0,sp,320 - be: 0c42 slli s8,s8,0x10 - c0: 0008 0x8 - c2: c86c sw a1,84(s0) - c4: 020c addi a1,sp,256 - c6: 4230 lw a2,64(a2) - c8: 000e c.slli zero,0x3 - ca: 0000 unimp - cc: 0000 unimp - ce: 0000 unimp - d0: 002c addi a1,sp,8 - d2: 0000 unimp - d4: 0000 unimp - d6: 0000 unimp - d8: 22f2 fld ft5,280(sp) - da: 8000 0x8000 - dc: 0000 unimp - de: 0000 unimp - e0: 0028 addi a0,sp,8 - e2: 0000 unimp - e4: 0000 unimp - e6: 0000 unimp - e8: 0e42 slli t3,t3,0x10 - ea: 4220 lw s0,64(a2) - ec: 0288 addi a0,sp,320 - ee: 0c42 slli s8,s8,0x10 - f0: 0008 0x8 - f2: c85e sw s7,16(sp) - f4: 020c addi a1,sp,256 - f6: 4220 lw s0,64(a2) - f8: 000e c.slli zero,0x3 - fa: 0000 unimp - fc: 0000 unimp - fe: 0000 unimp - 100: 002c addi a1,sp,8 - 102: 0000 unimp - 104: 0000 unimp - 106: 0000 unimp - 108: 231a fld ft6,384(sp) - 10a: 8000 0x8000 - 10c: 0000 unimp - 10e: 0000 unimp - 110: 001e c.slli zero,0x7 - 112: 0000 unimp - 114: 0000 unimp - 116: 0000 unimp - 118: 0e42 slli t3,t3,0x10 - 11a: 4230 lw a2,64(a2) - 11c: 0288 addi a0,sp,320 - 11e: 0c42 slli s8,s8,0x10 - 120: 0008 0x8 - 122: c854 sw a3,20(s0) - 124: 020c addi a1,sp,256 - 126: 4230 lw a2,64(a2) - 128: 000e c.slli zero,0x3 - 12a: 0000 unimp - 12c: 0000 unimp - 12e: 0000 unimp - 130: 002c addi a1,sp,8 - 132: 0000 unimp - 134: 0000 unimp - 136: 0000 unimp - 138: 2338 fld fa4,64(a4) - 13a: 8000 0x8000 - 13c: 0000 unimp - 13e: 0000 unimp - 140: 004c addi a1,sp,4 - 142: 0000 unimp - 144: 0000 unimp - 146: 0000 unimp - 148: 0e42 slli t3,t3,0x10 - 14a: 4420 lw s0,72(s0) - 14c: 0281 addi t0,t0,0 - 14e: 0488 addi a0,sp,576 - 150: 0c42 slli s8,s8,0x10 - 152: 0008 0x8 - 154: 3e02 fld ft8,32(sp) - 156: 42c1 li t0,16 - 158: 0cc8 addi a0,sp,596 - 15a: 2002 fld ft0,0(sp) - 15c: 0e42 slli t3,t3,0x10 - 15e: 0000 unimp - 160: 000c 0xc - 162: 0000 unimp - 164: ffff 0xffff - 166: ffff 0xffff - 168: 7c010003 lb zero,1984(sp) - 16c: 0d01 addi s10,s10,0 - 16e: 0002 c.slli64 zero - 170: 002c addi a1,sp,8 - 172: 0000 unimp - 174: 0160 addi s0,sp,140 - 176: 0000 unimp - 178: 2384 fld fs1,0(a5) - 17a: 8000 0x8000 - 17c: 0000 unimp - 17e: 0000 unimp - 180: 010e slli sp,sp,0x3 - 182: 0000 unimp - 184: 0000 unimp - 186: 0000 unimp - 188: 0e42 slli t3,t3,0x10 - 18a: 4250 lw a2,4(a2) - 18c: 0288 addi a0,sp,320 - 18e: 0c42 slli s8,s8,0x10 - 190: 0008 0x8 - 192: c8010403 lb s0,-896(sp) - 196: 020c addi a1,sp,256 - 198: 4250 lw a2,4(a2) - 19a: 000e c.slli zero,0x3 - 19c: 0000 unimp - 19e: 0000 unimp - 1a0: 002c addi a1,sp,8 - 1a2: 0000 unimp - 1a4: 0160 addi s0,sp,140 - 1a6: 0000 unimp - 1a8: 2492 fld fs1,256(sp) - 1aa: 8000 0x8000 - 1ac: 0000 unimp - 1ae: 0000 unimp - 1b0: 0124 addi s1,sp,136 - 1b2: 0000 unimp - 1b4: 0000 unimp - 1b6: 0000 unimp - 1b8: 0e42 slli t3,t3,0x10 - 1ba: 4260 lw s0,68(a2) - 1bc: 0288 addi a0,sp,320 - 1be: 0c42 slli s8,s8,0x10 - 1c0: 0008 0x8 - 1c2: c8011a03 lh s4,-896(sp) - 1c6: 020c addi a1,sp,256 - 1c8: 4260 lw s0,68(a2) - 1ca: 000e c.slli zero,0x3 - 1cc: 0000 unimp - 1ce: 0000 unimp - 1d0: 002c addi a1,sp,8 - 1d2: 0000 unimp - 1d4: 0160 addi s0,sp,140 - 1d6: 0000 unimp - 1d8: 25b6 fld fa1,328(sp) - 1da: 8000 0x8000 - 1dc: 0000 unimp - 1de: 0000 unimp - 1e0: 008a slli ra,ra,0x2 - 1e2: 0000 unimp - 1e4: 0000 unimp - 1e6: 0000 unimp - 1e8: 0e42 slli t3,t3,0x10 - 1ea: 4220 lw s0,64(a2) - 1ec: 0288 addi a0,sp,320 - 1ee: 0c42 slli s8,s8,0x10 - 1f0: 0008 0x8 - 1f2: 8002 0x8002 - 1f4: 0cc8 addi a0,sp,596 - 1f6: 2002 fld ft0,0(sp) - 1f8: 0e42 slli t3,t3,0x10 - 1fa: 0000 unimp - 1fc: 0000 unimp - 1fe: 0000 unimp - 200: 002c addi a1,sp,8 - 202: 0000 unimp - 204: 0160 addi s0,sp,140 - 206: 0000 unimp - 208: 2640 fld fs0,136(a2) - 20a: 8000 0x8000 - 20c: 0000 unimp - 20e: 0000 unimp - 210: 0036 c.slli zero,0xd - 212: 0000 unimp - 214: 0000 unimp - 216: 0000 unimp - 218: 0e42 slli t3,t3,0x10 - 21a: 4230 lw a2,64(a2) - 21c: 0288 addi a0,sp,320 - 21e: 0c42 slli s8,s8,0x10 - 220: 0008 0x8 - 222: c86c sw a1,84(s0) - 224: 020c addi a1,sp,256 - 226: 4230 lw a2,64(a2) - 228: 000e c.slli zero,0x3 - 22a: 0000 unimp - 22c: 0000 unimp - 22e: 0000 unimp - 230: 002c addi a1,sp,8 - 232: 0000 unimp - 234: 0160 addi s0,sp,140 - 236: 0000 unimp - 238: 2676 fld fa2,344(sp) - 23a: 8000 0x8000 - 23c: 0000 unimp - 23e: 0000 unimp - 240: 0028 addi a0,sp,8 - 242: 0000 unimp - 244: 0000 unimp - 246: 0000 unimp - 248: 0e42 slli t3,t3,0x10 - 24a: 4220 lw s0,64(a2) - 24c: 0288 addi a0,sp,320 - 24e: 0c42 slli s8,s8,0x10 - 250: 0008 0x8 - 252: c85e sw s7,16(sp) - 254: 020c addi a1,sp,256 - 256: 4220 lw s0,64(a2) - 258: 000e c.slli zero,0x3 - 25a: 0000 unimp - 25c: 0000 unimp - 25e: 0000 unimp - 260: 002c addi a1,sp,8 - 262: 0000 unimp - 264: 0160 addi s0,sp,140 - 266: 0000 unimp - 268: 269e fld fa3,448(sp) - 26a: 8000 0x8000 - 26c: 0000 unimp - 26e: 0000 unimp - 270: 007e c.slli zero,0x1f - 272: 0000 unimp - 274: 0000 unimp - 276: 0000 unimp - 278: 0e42 slli t3,t3,0x10 - 27a: 01b0 addi a2,sp,200 - 27c: 8842 mv a6,a6 - 27e: 4202 lw tp,0(sp) - 280: 080c addi a1,sp,16 - 282: 0200 addi s0,sp,256 - 284: c874 sw a3,84(s0) - 286: 020c addi a1,sp,256 - 288: 01b0 addi a2,sp,200 - 28a: 0e42 slli t3,t3,0x10 - 28c: 0000 unimp - 28e: 0000 unimp - 290: 002c addi a1,sp,8 - 292: 0000 unimp - 294: 0160 addi s0,sp,140 - 296: 0000 unimp - 298: 271c fld fa5,8(a4) - 29a: 8000 0x8000 - 29c: 0000 unimp - 29e: 0000 unimp - 2a0: 0114 addi a3,sp,128 - 2a2: 0000 unimp - 2a4: 0000 unimp - 2a6: 0000 unimp - 2a8: 0e42 slli t3,t3,0x10 - 2aa: 4250 lw a2,4(a2) - 2ac: 0288 addi a0,sp,320 - 2ae: 0c42 slli s8,s8,0x10 - 2b0: 0008 0x8 - 2b2: c8010a03 lb s4,-896(sp) - 2b6: 020c addi a1,sp,256 - 2b8: 4250 lw a2,4(a2) - 2ba: 000e c.slli zero,0x3 - 2bc: 0000 unimp - 2be: 0000 unimp - 2c0: 0024 addi s1,sp,8 - 2c2: 0000 unimp - 2c4: 0160 addi s0,sp,140 - 2c6: 0000 unimp - 2c8: 2830 fld fa2,80(s0) - 2ca: 8000 0x8000 - 2cc: 0000 unimp - 2ce: 0000 unimp - 2d0: 0020 addi s0,sp,8 - 2d2: 0000 unimp - 2d4: 0000 unimp - 2d6: 0000 unimp - 2d8: 0e42 slli t3,t3,0x10 - 2da: 4220 lw s0,64(a2) - 2dc: 0288 addi a0,sp,320 - 2de: 0c42 slli s8,s8,0x10 - 2e0: 0008 0x8 - 2e2: 0000 unimp - 2e4: 0000 unimp - 2e6: 0000 unimp - 2e8: 0024 addi s1,sp,8 - 2ea: 0000 unimp - 2ec: 0160 addi s0,sp,140 - 2ee: 0000 unimp - 2f0: 2850 fld fa2,144(s0) - 2f2: 8000 0x8000 - 2f4: 0000 unimp - 2f6: 0000 unimp - 2f8: 001c 0x1c - 2fa: 0000 unimp - 2fc: 0000 unimp - 2fe: 0000 unimp - 300: 0e42 slli t3,t3,0x10 - 302: 4430 lw a2,72(s0) - 304: 0281 addi t0,t0,0 - 306: 0488 addi a0,sp,576 - 308: 0c42 slli s8,s8,0x10 - 30a: 0008 0x8 - 30c: 0000 unimp - 30e: 0000 unimp - 310: 0024 addi s1,sp,8 - 312: 0000 unimp - 314: 0160 addi s0,sp,140 - 316: 0000 unimp - 318: 286c fld fa1,208(s0) - 31a: 8000 0x8000 - 31c: 0000 unimp - 31e: 0000 unimp - 320: 0018 0x18 - 322: 0000 unimp - 324: 0000 unimp - 326: 0000 unimp - 328: 0e42 slli t3,t3,0x10 - 32a: 4420 lw s0,72(s0) - 32c: 0281 addi t0,t0,0 - 32e: 0488 addi a0,sp,576 - 330: 0c42 slli s8,s8,0x10 - 332: 0008 0x8 - 334: 0000 unimp - 336: 0000 unimp - 338: 0024 addi s1,sp,8 - 33a: 0000 unimp - 33c: 0160 addi s0,sp,140 - 33e: 0000 unimp - 340: 2884 fld fs1,16(s1) - 342: 8000 0x8000 - 344: 0000 unimp - 346: 0000 unimp - 348: 0010 0x10 - 34a: 0000 unimp - 34c: 0000 unimp - 34e: 0000 unimp - 350: 0e42 slli t3,t3,0x10 - 352: 4410 lw a2,8(s0) - 354: 0281 addi t0,t0,0 - 356: 0488 addi a0,sp,576 - 358: 0c42 slli s8,s8,0x10 - 35a: 0008 0x8 - 35c: 0000 unimp - 35e: 0000 unimp - 360: 0034 addi a3,sp,8 - 362: 0000 unimp - 364: 0160 addi s0,sp,140 - 366: 0000 unimp - 368: 2894 fld fa3,16(s1) - 36a: 8000 0x8000 - 36c: 0000 unimp - 36e: 0000 unimp - 370: 0036 c.slli zero,0xd - 372: 0000 unimp - 374: 0000 unimp - 376: 0000 unimp - 378: 0e42 slli t3,t3,0x10 - 37a: 4630 lw a2,72(a2) - 37c: 0281 addi t0,t0,0 - 37e: 0488 addi a0,sp,576 - 380: 0689 addi a3,a3,2 - 382: 0c42 slli s8,s8,0x10 - 384: 0008 0x8 - 386: c164 sw s1,68(a0) - 388: c842 sw a6,16(sp) - 38a: 020c addi a1,sp,256 - 38c: 4230 lw a2,64(a2) - 38e: 42c9 li t0,18 - 390: 000e c.slli zero,0x3 - 392: 0000 unimp - 394: 0000 unimp - 396: 0000 unimp - 398: 002c addi a1,sp,8 - 39a: 0000 unimp - 39c: 0160 addi s0,sp,140 - 39e: 0000 unimp - 3a0: 28ca fld fa7,144(sp) - 3a2: 8000 0x8000 - 3a4: 0000 unimp - 3a6: 0000 unimp - 3a8: 0028 addi a0,sp,8 - 3aa: 0000 unimp - 3ac: 0000 unimp - 3ae: 0000 unimp - 3b0: 0e42 slli t3,t3,0x10 - 3b2: 4220 lw s0,64(a2) - 3b4: 0288 addi a0,sp,320 - 3b6: 0c42 slli s8,s8,0x10 - 3b8: 0008 0x8 - 3ba: c85e sw s7,16(sp) - 3bc: 020c addi a1,sp,256 - 3be: 4220 lw s0,64(a2) - 3c0: 000e c.slli zero,0x3 - 3c2: 0000 unimp - 3c4: 0000 unimp - 3c6: 0000 unimp - 3c8: 002c addi a1,sp,8 - 3ca: 0000 unimp - 3cc: 0160 addi s0,sp,140 - 3ce: 0000 unimp - 3d0: 28f2 fld fa7,280(sp) - 3d2: 8000 0x8000 - 3d4: 0000 unimp - 3d6: 0000 unimp - 3d8: 002a c.slli zero,0xa - 3da: 0000 unimp - 3dc: 0000 unimp - 3de: 0000 unimp - 3e0: 0e42 slli t3,t3,0x10 - 3e2: 4420 lw s0,72(s0) - 3e4: 0281 addi t0,t0,0 - 3e6: 0488 addi a0,sp,576 - 3e8: 0c42 slli s8,s8,0x10 - 3ea: 0008 0x8 - 3ec: c15c sw a5,4(a0) - 3ee: c842 sw a6,16(sp) - 3f0: 020c addi a1,sp,256 - 3f2: 4220 lw s0,64(a2) - 3f4: 000e c.slli zero,0x3 - 3f6: 0000 unimp - 3f8: 002c addi a1,sp,8 - 3fa: 0000 unimp - 3fc: 0160 addi s0,sp,140 - 3fe: 0000 unimp - 400: 291c fld fa5,16(a0) - 402: 8000 0x8000 - 404: 0000 unimp - 406: 0000 unimp - 408: 0066 c.slli zero,0x19 - 40a: 0000 unimp - 40c: 0000 unimp - 40e: 0000 unimp - 410: 0e42 slli t3,t3,0x10 - 412: 4420 lw s0,72(s0) - 414: 0281 addi t0,t0,0 - 416: 0488 addi a0,sp,576 - 418: 0c42 slli s8,s8,0x10 - 41a: 0008 0x8 - 41c: 5802 lw a6,32(sp) - 41e: 42c1 li t0,16 - 420: 0cc8 addi a0,sp,596 - 422: 2002 fld ft0,0(sp) - 424: 0e42 slli t3,t3,0x10 - 426: 0000 unimp - 428: 0024 addi s1,sp,8 - 42a: 0000 unimp - 42c: 0160 addi s0,sp,140 - 42e: 0000 unimp - 430: 2982 fld fs3,0(sp) - 432: 8000 0x8000 - 434: 0000 unimp - 436: 0000 unimp - 438: 00e6 slli ra,ra,0x19 - 43a: 0000 unimp - 43c: 0000 unimp - 43e: 0000 unimp - 440: 0e42 slli t3,t3,0x10 - 442: 01b0 addi a2,sp,200 - 444: 8146 mv sp,a7 - 446: 8802 jr a6 - 448: 8904 0x8904 - 44a: 4206 lw tp,64(sp) - 44c: 080c addi a1,sp,16 - 44e: 0000 unimp - 450: 002c addi a1,sp,8 - 452: 0000 unimp - 454: 0160 addi s0,sp,140 - 456: 0000 unimp - 458: 2a68 fld fa0,208(a2) - 45a: 8000 0x8000 - 45c: 0000 unimp - 45e: 0000 unimp - 460: 0072 c.slli zero,0x1c - 462: 0000 unimp - 464: 0000 unimp - 466: 0000 unimp - 468: 0e42 slli t3,t3,0x10 - 46a: 4420 lw s0,72(s0) - 46c: 0281 addi t0,t0,0 - 46e: 0488 addi a0,sp,576 - 470: 0c42 slli s8,s8,0x10 - 472: 0008 0x8 - 474: 6402 ld s0,0(sp) - 476: 42c1 li t0,16 - 478: 0cc8 addi a0,sp,596 - 47a: 2002 fld ft0,0(sp) - 47c: 0e42 slli t3,t3,0x10 - 47e: 0000 unimp - 480: 002c addi a1,sp,8 - 482: 0000 unimp - 484: 0160 addi s0,sp,140 - 486: 0000 unimp - 488: 2ada fld fs5,400(sp) - 48a: 8000 0x8000 - 48c: 0000 unimp - 48e: 0000 unimp - 490: 008c addi a1,sp,64 - 492: 0000 unimp - 494: 0000 unimp - 496: 0000 unimp - 498: 0e42 slli t3,t3,0x10 - 49a: 4440 lw s0,12(s0) - 49c: 0281 addi t0,t0,0 - 49e: 0488 addi a0,sp,576 - 4a0: 0c42 slli s8,s8,0x10 - 4a2: 0008 0x8 - 4a4: 7e02 ld t3,32(sp) - 4a6: 42c1 li t0,16 - 4a8: 0cc8 addi a0,sp,596 - 4aa: 4002 0x4002 - 4ac: 0e42 slli t3,t3,0x10 - 4ae: 0000 unimp - 4b0: 0034 addi a3,sp,8 - 4b2: 0000 unimp - 4b4: 0160 addi s0,sp,140 - 4b6: 0000 unimp - 4b8: 2b66 fld fs6,88(sp) - 4ba: 8000 0x8000 - 4bc: 0000 unimp - 4be: 0000 unimp - 4c0: 00fc addi a5,sp,76 - 4c2: 0000 unimp - 4c4: 0000 unimp - 4c6: 0000 unimp - 4c8: 0e42 slli t3,t3,0x10 - 4ca: 02d0 addi a2,sp,324 - 4cc: 8144 0x8144 - 4ce: 8802 jr a6 - 4d0: 4204 lw s1,0(a2) - 4d2: 080c addi a1,sp,16 - 4d4: 0200 addi s0,sp,256 - 4d6: c1ee sw s11,192(sp) - 4d8: c842 sw a6,16(sp) - 4da: 020c addi a1,sp,256 - 4dc: 02d0 addi a2,sp,324 - 4de: 0e42 slli t3,t3,0x10 - ... - 4e8: 002c addi a1,sp,8 - 4ea: 0000 unimp - 4ec: 0160 addi s0,sp,140 - 4ee: 0000 unimp - 4f0: 2c62 fld fs8,24(sp) - 4f2: 8000 0x8000 - 4f4: 0000 unimp - 4f6: 0000 unimp - 4f8: 006c addi a1,sp,12 - 4fa: 0000 unimp - 4fc: 0000 unimp - 4fe: 0000 unimp - 500: 0e42 slli t3,t3,0x10 - 502: 4220 lw s0,64(a2) - 504: 0288 addi a0,sp,320 - 506: 0c42 slli s8,s8,0x10 - 508: 0008 0x8 - 50a: 6202 ld tp,0(sp) - 50c: 0cc8 addi a0,sp,596 - 50e: 2002 fld ft0,0(sp) - 510: 0e42 slli t3,t3,0x10 - 512: 0000 unimp - 514: 0000 unimp - 516: 0000 unimp - 518: 002c addi a1,sp,8 - 51a: 0000 unimp - 51c: 0160 addi s0,sp,140 - 51e: 0000 unimp - 520: 2cce fld fs9,208(sp) - 522: 8000 0x8000 - 524: 0000 unimp - 526: 0000 unimp - 528: 0068 addi a0,sp,12 - 52a: 0000 unimp - 52c: 0000 unimp - 52e: 0000 unimp - 530: 0e42 slli t3,t3,0x10 - 532: 4220 lw s0,64(a2) - 534: 0288 addi a0,sp,320 - 536: 0c42 slli s8,s8,0x10 - 538: 0008 0x8 - 53a: 5e02 lw t3,32(sp) - 53c: 0cc8 addi a0,sp,596 - 53e: 2002 fld ft0,0(sp) - 540: 0e42 slli t3,t3,0x10 - 542: 0000 unimp - 544: 0000 unimp - 546: 0000 unimp - 548: 0034 addi a3,sp,8 - 54a: 0000 unimp - 54c: 0160 addi s0,sp,140 - 54e: 0000 unimp - 550: 2d36 fld fs10,328(sp) - 552: 8000 0x8000 - 554: 0000 unimp - 556: 0000 unimp - 558: 0360 addi s0,sp,396 - 55a: 0000 unimp - 55c: 0000 unimp - 55e: 0000 unimp - 560: 0e42 slli t3,t3,0x10 - 562: 4870 lw a2,84(s0) - 564: 0281 addi t0,t0,0 - 566: 0488 addi a0,sp,576 - 568: 0689 addi a3,a3,2 - 56a: 0892 slli a7,a7,0x4 - 56c: 0c42 slli s8,s8,0x10 - 56e: 0008 0x8 - 570: c1034a03 lbu s4,-1008(t1) # ffffffffffff9c10 <__global_pointer$+0xffffffff7fff5cc8> - 574: c842 sw a6,16(sp) - 576: 020c addi a1,sp,256 - 578: 4270 lw a2,68(a2) - 57a: 42c9 li t0,18 - 57c: 42d2 lw t0,20(sp) - 57e: 000e c.slli zero,0x3 - 580: 002c addi a1,sp,8 - 582: 0000 unimp - 584: 0160 addi s0,sp,140 - 586: 0000 unimp - 588: 3096 fld ft1,352(sp) - 58a: 8000 0x8000 - 58c: 0000 unimp - 58e: 0000 unimp - 590: 0056 c.slli zero,0x15 - 592: 0000 unimp - 594: 0000 unimp - 596: 0000 unimp - 598: 0e42 slli t3,t3,0x10 - 59a: 4470 lw a2,76(s0) - 59c: 1281 addi t0,t0,-32 - 59e: 1488 addi a0,sp,608 - 5a0: 0c42 slli s8,s8,0x10 - 5a2: 4008 lw a0,0(s0) - 5a4: 4802 lw a6,0(sp) - 5a6: 42c1 li t0,16 - 5a8: 0cc8 addi a0,sp,596 - 5aa: 7002 0x7002 - 5ac: 0e42 slli t3,t3,0x10 - 5ae: 0000 unimp - 5b0: 002c addi a1,sp,8 - 5b2: 0000 unimp - 5b4: 0160 addi s0,sp,140 - 5b6: 0000 unimp - 5b8: 30ec fld fa1,224(s1) - 5ba: 8000 0x8000 - 5bc: 0000 unimp - 5be: 0000 unimp - 5c0: 0046 c.slli zero,0x11 - 5c2: 0000 unimp - 5c4: 0000 unimp - 5c6: 0000 unimp - 5c8: 0e42 slli t3,t3,0x10 - 5ca: 4240 lw s0,4(a2) - 5cc: 0288 addi a0,sp,320 - 5ce: 0c42 slli s8,s8,0x10 - 5d0: 0008 0x8 - 5d2: c87c sw a5,84(s0) - 5d4: 020c addi a1,sp,256 - 5d6: 4240 lw s0,4(a2) - 5d8: 000e c.slli zero,0x3 - 5da: 0000 unimp - 5dc: 0000 unimp - 5de: 0000 unimp - 5e0: 0034 addi a3,sp,8 - 5e2: 0000 unimp - 5e4: 0160 addi s0,sp,140 - 5e6: 0000 unimp - 5e8: 3132 fld ft2,296(sp) - 5ea: 8000 0x8000 - 5ec: 0000 unimp - 5ee: 0000 unimp - 5f0: 00c2 slli ra,ra,0x10 - 5f2: 0000 unimp - 5f4: 0000 unimp - 5f6: 0000 unimp - 5f8: 0e42 slli t3,t3,0x10 - 5fa: 0290 addi a2,sp,320 - 5fc: 8144 0x8144 - 5fe: 880e mv a6,gp - 600: 4210 lw a2,0(a2) - 602: 080c addi a1,sp,16 - 604: 0230 addi a2,sp,264 - 606: c1b4 sw a3,64(a1) - 608: c842 sw a6,16(sp) - 60a: 020c addi a1,sp,256 - 60c: 0290 addi a2,sp,320 - 60e: 0e42 slli t3,t3,0x10 - ... - 618: 002c addi a1,sp,8 - 61a: 0000 unimp - 61c: 0160 addi s0,sp,140 - 61e: 0000 unimp - 620: 31f4 fld fa3,224(a1) - 622: 8000 0x8000 - 624: 0000 unimp - 626: 0000 unimp - 628: 00b8 addi a4,sp,72 - 62a: 0000 unimp - 62c: 0000 unimp - 62e: 0000 unimp - 630: 0e42 slli t3,t3,0x10 - 632: 4250 lw a2,4(a2) - 634: 0288 addi a0,sp,320 - 636: 0c42 slli s8,s8,0x10 - 638: 0008 0x8 - 63a: ae02 fsd ft0,280(sp) - 63c: 0cc8 addi a0,sp,596 - 63e: 5002 0x5002 - 640: 0e42 slli t3,t3,0x10 - 642: 0000 unimp - 644: 0000 unimp - 646: 0000 unimp - 648: 002c addi a1,sp,8 - 64a: 0000 unimp - 64c: 0160 addi s0,sp,140 - 64e: 0000 unimp - 650: 32ac fld fa1,96(a3) - 652: 8000 0x8000 - 654: 0000 unimp - 656: 0000 unimp - 658: 00ce slli ra,ra,0x13 - 65a: 0000 unimp - 65c: 0000 unimp - 65e: 0000 unimp - 660: 0e42 slli t3,t3,0x10 - 662: 4250 lw a2,4(a2) - 664: 0288 addi a0,sp,320 - 666: 0c42 slli s8,s8,0x10 - 668: 0008 0x8 - 66a: c402 sw zero,8(sp) - 66c: 0cc8 addi a0,sp,596 - 66e: 5002 0x5002 - 670: 0e42 slli t3,t3,0x10 - 672: 0000 unimp - 674: 0000 unimp - 676: 0000 unimp - 678: 002c addi a1,sp,8 - 67a: 0000 unimp - 67c: 0160 addi s0,sp,140 - 67e: 0000 unimp - 680: 337a fld ft6,440(sp) - 682: 8000 0x8000 - 684: 0000 unimp - 686: 0000 unimp - 688: 003c addi a5,sp,8 - 68a: 0000 unimp - 68c: 0000 unimp - 68e: 0000 unimp - 690: 0e42 slli t3,t3,0x10 - 692: 4230 lw a2,64(a2) - 694: 0288 addi a0,sp,320 - 696: 0c42 slli s8,s8,0x10 - 698: 0008 0x8 - 69a: c872 sw t3,16(sp) - 69c: 020c addi a1,sp,256 - 69e: 4230 lw a2,64(a2) - 6a0: 000e c.slli zero,0x3 - 6a2: 0000 unimp - 6a4: 0000 unimp - 6a6: 0000 unimp - 6a8: 002c addi a1,sp,8 - 6aa: 0000 unimp - 6ac: 0160 addi s0,sp,140 - 6ae: 0000 unimp - 6b0: 33b6 fld ft7,360(sp) - 6b2: 8000 0x8000 - 6b4: 0000 unimp - 6b6: 0000 unimp - 6b8: 004e c.slli zero,0x13 - 6ba: 0000 unimp - 6bc: 0000 unimp - 6be: 0000 unimp - 6c0: 0e42 slli t3,t3,0x10 - 6c2: 4230 lw a2,64(a2) - 6c4: 0288 addi a0,sp,320 - 6c6: 0c42 slli s8,s8,0x10 - 6c8: 0008 0x8 - 6ca: 4402 lw s0,0(sp) - 6cc: 0cc8 addi a0,sp,596 - 6ce: 3002 fld ft0,32(sp) - 6d0: 0e42 slli t3,t3,0x10 - 6d2: 0000 unimp - 6d4: 0000 unimp - 6d6: 0000 unimp - 6d8: 002c addi a1,sp,8 - 6da: 0000 unimp - 6dc: 0160 addi s0,sp,140 - 6de: 0000 unimp - 6e0: 3404 fld fs1,40(s0) - 6e2: 8000 0x8000 - 6e4: 0000 unimp - 6e6: 0000 unimp - 6e8: 0072 c.slli zero,0x1c - 6ea: 0000 unimp - 6ec: 0000 unimp - 6ee: 0000 unimp - 6f0: 0e42 slli t3,t3,0x10 - 6f2: 4230 lw a2,64(a2) - 6f4: 0288 addi a0,sp,320 - 6f6: 0c42 slli s8,s8,0x10 - 6f8: 0008 0x8 - 6fa: 6802 ld a6,0(sp) - 6fc: 0cc8 addi a0,sp,596 - 6fe: 3002 fld ft0,32(sp) - 700: 0e42 slli t3,t3,0x10 - 702: 0000 unimp - 704: 0000 unimp - 706: 0000 unimp - 708: 002c addi a1,sp,8 - 70a: 0000 unimp - 70c: 0160 addi s0,sp,140 - 70e: 0000 unimp - 710: 3476 fld fs0,376(sp) - 712: 8000 0x8000 - 714: 0000 unimp - 716: 0000 unimp - 718: 004a c.slli zero,0x12 - 71a: 0000 unimp - 71c: 0000 unimp - 71e: 0000 unimp - 720: 0e42 slli t3,t3,0x10 - 722: 4230 lw a2,64(a2) - 724: 0288 addi a0,sp,320 - 726: 0c42 slli s8,s8,0x10 - 728: 0008 0x8 - 72a: 4002 0x4002 - 72c: 0cc8 addi a0,sp,596 - 72e: 3002 fld ft0,32(sp) - 730: 0e42 slli t3,t3,0x10 - 732: 0000 unimp - 734: 0000 unimp - 736: 0000 unimp - 738: 002c addi a1,sp,8 - 73a: 0000 unimp - 73c: 0160 addi s0,sp,140 - 73e: 0000 unimp - 740: 34c0 fld fs0,168(s1) - 742: 8000 0x8000 - 744: 0000 unimp - 746: 0000 unimp - 748: 00dc addi a5,sp,68 - 74a: 0000 unimp - 74c: 0000 unimp - 74e: 0000 unimp - 750: 0e42 slli t3,t3,0x10 - 752: 4230 lw a2,64(a2) - 754: 0288 addi a0,sp,320 - 756: 0c42 slli s8,s8,0x10 - 758: 0008 0x8 - 75a: d202 sw zero,36(sp) - 75c: 0cc8 addi a0,sp,596 - 75e: 3002 fld ft0,32(sp) - 760: 0e42 slli t3,t3,0x10 - 762: 0000 unimp - 764: 0000 unimp - ... diff --git a/examples/C/simple/simple_orig.c b/examples/C/simple/simple_orig.c deleted file mode 100644 index edf37b209..000000000 --- a/examples/C/simple/simple_orig.c +++ /dev/null @@ -1,35 +0,0 @@ -// simple.C -// David_Harris@hmc.edu 24 December 2021 -// Simple illustration of compiling C code - -//#include -#include "util.h" -extern int printf(const char* fmt, ...); - -long sum(long N) { -/* long result, i; - result = 0; - for (i=1; i<=N; i++) { - result = result + i; - } - return result; */ - - int a; -// asm volatile ("li s0, 10;"); - asm volatile( - "li %0, 10" -// "csrrs %0, 0xF14, zero" //CSSRS rd, mhartid, 0 - : "=r"(a) //output - : //input - : //clobbered - ); - return a; -} - -int main(void) { - int s[1], expected[1]; - s[0] = sum(4); - printf("s = %d\n", s[0]); - expected[0] = 10; - return verify(1, s, expected); // 0 means success -} \ No newline at end of file diff --git a/examples/C/sum/Makefile b/examples/C/sum/Makefile index 655afbbea..7c21cce23 100644 --- a/examples/C/sum/Makefile +++ b/examples/C/sum/Makefile @@ -1,27 +1,32 @@ TARGET = sum $(TARGET).objdump: $(TARGET) - riscv64-unknown-elf-objdump -S $(TARGET) > $(TARGET).objdump + riscv64-unknown-elf-objdump -S -D $(TARGET) > $(TARGET).objdump $(TARGET): $(TARGET).c Makefile - riscv64-unknown-elf-gcc -o $(TARGET) -g -O \ + riscv64-unknown-elf-gcc -o $(TARGET) -g -O\ -march=rv64gc -mabi=lp64d -mcmodel=medany \ - -nostartfiles -T../common/test.ld -I../common \ + -nostdlib -static -lm -fno-tree-loop-distribute-patterns \ + -T../common/test.ld -I../common \ $(TARGET).c ../common/crt.S ../common/syscalls.c # Compiler flags: # -o $(TARGET) defines the name of the output file # -g generates debugging symbols for gdb -# -O turns on basic optimization +# -O turns on basic optimization; -O3 turns on heavy optimization; omit for no optimization # -march=rv64gc -mabi=lp64d =mcmodel=medany generates code for RV64GC with doubles and long/ptrs = 64 bits -# -nostartfiles avoids inserting standard startup files because we are using crt.s +# -static forces static linking (no dynamic shared libraries on bare metal) +# -lm links the math library if necessary (when #include math.h) +# -nostdlib avoids inserting standard startup files and default libraries +# because we are using crt.s on bare metal +# -fno-tree-loop-distribute-patterns turns replacing loops with memcpy/memset in the std library # -T specifies the linker file # -I specifies the include path (e.g. for util.h) # The last line defines the C files to compile. # crt.S is needed as our startup file to initialize the processor # syscalls.c implements printf through the HTIF for Spike # other flags from riscv-tests makefiles that don't seem to be important -# -ffast-math -DPREALLOCATE=1 -std=gnu99 -fno-tree-loop-distribute-patterns -# -fno-common -static -fno-builtin-printf -nostdlib -lm -lgcc +# -ffast-math -DPREALLOCATE=1 -std=gnu99 \ +# -fno-common -fno-builtin-printf -nostartfiles -lgcc \ clean: rm -f $(TARGET) $(TARGET).objdump diff --git a/examples/C/sum/sum b/examples/C/sum/sum new file mode 100755 index 0000000000000000000000000000000000000000..f806b0a0584350e66f34983fecd14cb4d0d2590c GIT binary patch literal 40008 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 N&G9}nnlhIEzX9V>i*o<~ literal 0 HcmV?d00001 diff --git a/examples/C/sum/sum.c b/examples/C/sum/sum.c index 4cc308679..96615fbf9 100644 --- a/examples/C/sum/sum.c +++ b/examples/C/sum/sum.c @@ -1,4 +1,4 @@ -// sum.C +// sum.c // David_Harris@hmc.edu 24 December 2021 // Simple illustration of compiling C code @@ -16,7 +16,9 @@ long sum(long N) { int main(void) { int s[1], expected[1]; + setStats(1); s[0] = sum(4); + setStats(0); printf("s = %d\n", s[0]); expected[0] = 10; return verify(1, s, expected); // 0 means success diff --git a/examples/C/sum_mixed/Makefile b/examples/C/sum_mixed/Makefile new file mode 100644 index 000000000..ebe1a4898 --- /dev/null +++ b/examples/C/sum_mixed/Makefile @@ -0,0 +1,32 @@ +TARGET = sum_mixed + +$(TARGET).objdump: $(TARGET) + riscv64-unknown-elf-objdump -S -D $(TARGET) > $(TARGET).objdump + +$(TARGET): $(TARGET).c Makefile + riscv64-unknown-elf-gcc -o $(TARGET) -g -O\ + -march=rv64gc -mabi=lp64d -mcmodel=medany \ + -nostdlib -static -lm -fno-tree-loop-distribute-patterns \ + -T../common/test.ld -I../common \ + $(TARGET).c ../common/crt.S ../common/syscalls.c ../../asm/sumtest/sum.S +# Compiler flags: +# -o $(TARGET) defines the name of the output file +# -g generates debugging symbols for gdb +# -O turns on basic optimization; -O3 turns on heavy optimization; omit for no optimization +# -march=rv64gc -mabi=lp64d =mcmodel=medany generates code for RV64GC with doubles and long/ptrs = 64 bits +# -static forces static linking (no dynamic shared libraries on bare metal) +# -lm links the math library if necessary (when #include math.h) +# -nostdlib avoids inserting standard startup files and default libraries +# because we are using crt.s on bare metal +# -fno-tree-loop-distribute-patterns turns replacing loops with memcpy/memset in the std library +# -T specifies the linker file +# -I specifies the include path (e.g. for util.h) +# The last line defines the C files to compile. +# crt.S is needed as our startup file to initialize the processor +# syscalls.c implements printf through the HTIF for Spike +# other flags from riscv-tests makefiles that don't seem to be important +# -ffast-math -DPREALLOCATE=1 -std=gnu99 \ +# -fno-common -fno-builtin-printf -nostartfiles -lgcc \ + +clean: + rm -f $(TARGET) $(TARGET).objdump diff --git a/examples/C/sum_mixed/sum_mixed b/examples/C/sum_mixed/sum_mixed new file mode 100755 index 0000000000000000000000000000000000000000..5e4c7a35488f731b4854acf4816044734363ddf1 GIT binary patch literal 67720 zcmeHw34B!5_5XeIGVje~Bgup$tOkZ%2wMb1#1Mf5R8(*cO9+z$Vnc{YSVVyYNCMWP z5)~B`D%K+Xm8vMXF9?X%T6ff+wQ3X)aYIE)f&9Pc-h19mW`ec9w!csN|7AYOymQYz z`#tyE``*mFw`9!uV_k+J_~jDc3f-zETo%3Iwa2BfZopY$m@x64DpDjZ;Y0$x$yasg zafcShN2VjRO@!(6hF5~94n0Qok}c6oADNGMqUb+Y^=A!Je0)?`Ax3K;ixI8I)(Esl zpfv)m5onD-YXn*&&>Df(2((6^H3F>>XpO-C;Rw`Z8KY`O8QC@2#8{9@ZW#Wu|GYt#wA3#rilY869$M$LVW!O{wEnY;(wA0NBmDRam4?m zC>-%W$&DlaCs{b+f0B(O{wH~G#Q!8Oj`*JxjU)ai#o&nlNwGNMe^MNd_@5MyBmO6~ z!4dz;o~0()vt|@*t1-UuEq$=wSK&Hd**)u<+A)FhM}*I4E5;g0H~UiB8iQ8P88E%` z?5nL$q7TF$O8PqGyY@#rAHV0r`##xxV9TM0zTWoT<42!9p8e6-Pse{Y;fsmiT=sq5 zU#6Y-_@jNF9{lXfFAjfm%K}K(7iIDZRW}uYnQsJDQ@>n z&o215z*TWiMRw)Kl~&<>g=35M6Tj;zWLF!HqRPgaTyk+irAQy}e>inpU2ly*YXn*&&>Df(2((6^H3F>>XpKN?1X?4| z8iCdbv__yc0<95fjX-MzS|iXJfz}ALMxZqUtr2LAKx+hABhVUwkO-_R@K^s@tShLs z*L}3K+U(_uYOq~m$C@jzUTdWZfBNfD)bF#uG4Idu&9{#Syx)rkTSNtFj|gK-QNhw` zYISU^&FQ$`XSqbe=gD8;wabEXxYqNb(!fY_B z?S`mVUEWQ-Uq~ycb^FB+q9g3@_|dW#+@eFhEgEmJo6Hy6iiVYK#Vd6U(ZaRp@sJl>*+6*p()H$x zDPl_<(K27-(UZqJ7Q9mHueJ@P@tW-&Z0`w0xfW1|7_SHve(NI4+SH!nvGr@$q>3l% zXBunW-V?PJtdlg2H} z`RqF3udau$4Rxs^`J;{1^R?f}Gltg<{-KB2;2kAubB8}0__9a4t#9`*Z}yI@ukAJX zuRTovmXfB%A9^$e-p@7GTG5bmIXpNqgre5?(mN-k?dUZPp68m{ZCYDrnf~g%kbHHj z?5#U+F!|iZxo@0YTQ|@Br|o1#U}usMsP-f$&*)eX*kL6Puj@T-l=Pyu*Ot1Hr$&wI zSU_}*JClBBTmGY1c}5p2u-r-tT$1Gt+;(TwvKK5-`$FJc+p}nBApQqq z*)X@LwH6KcS08mo)DoY5+jvPb@uy>7u!eE3VbUuX5M2> zA^Efic~bB3jIZ}sr-I*YKVf~AB{MD87H3^Q#Av+5bF%T=tRJr2+K_Xs>BO3?^N$G{ zwGP+Y$emG7q-A$3=wiWg?ayOR7&(p4W`8#7spRa}9_cdfqo;b0d+jNI^&0eVwO-8{ zUPsbF)|u&y7RE|(MoNwt6lFtHR1Zk^RvF{@`TSYw)-<{a(&h}KHog+xPQRS zx&9Gda(wYF;U6|I$DcVW$3NiW9RG-dG5%p!j{)r%(2Vhq_~p3`ZLGejO-)U{Hoto| z6|>W4_uRS0he$39^znJEs0Noyn7MAu@{3$+JsuH=KkDi|z9C*j)sAoQUgQd_^mvx_ za7DS@YwJ_Q;oJP_hfyOeBd|Qz9ay^8O}xa{*m2m2Ww~vIFQ%=?Tj9ejJaO5HX*DFn z{j2lV*1sd?qR*Ws0-yfHbG>~x=HlI$i~a#`_w#37*3Um|cR&A#BYkDH7|>*N4Co5- znEfc>mJPM~QWY8XjEP7r%QSM$Gi!2|ooVEl!)wMa8*Yp>&#D=->?~u9IihCtvJu8; z^X!^)5xH?otH)lyEH_Q`SwY&_lE$XL99h=W73FiI`glatTFkP;YpD8B70jz`yv_P5 z`D4_%eXz_({!-cXN8#A@l)Z&;9cPeLd9`z&T3hEq1W3=?de4atHz1au{MAL6wQG8a zM|5qdH#*dMPPjd5>rfj&)A;poPBy+4|K+w-CocQ!DaHTdQ_?cj#fG3|vNqdB$gUC6u1=5KGKysW(%ol8$ul&L@YR%3F`8SwAHZ80Pp=X9 zd1_9F6+O^)xwl#;Q3XB1=c%^kSl^O*wtv8pgxazG%(oMuHxVP1Kw27XE5SdYDHxT9 z?7IoSY>1UmlS7etF4woBR@_psqxQ^AwK)U_c3y4-Rz?rGrGUH)ykZU6QG0*x)?+EM zqPcS~dp58y<&3Rwr=X%`|J>b+di-0iL`6$!3S9b*y|yl1GzG5qOC$X7)7mc32LusDBaU7UZ|kU0N{x8uk@|9~aIh&^hrCfs#0 zVkd^wr^WSr=y&+Xlo!kwbdl9+S z?tS%v6~$(tZm4;6T4QbW?}@*0_It+_rDX;w*Vf01#=D1}@DCW`g>_#4uoUkUJ(?l5 zJ#Mcc+onj{YI0_8r_rqK(`Ut^2cOHW9V_z$F>QSIvdh*ycTr6J;)DozuSyKmUy-;hCrz9f>Gn|d3#_n{0=q5GD|L-; zTF1Ao{A_!}3n!^U{%}&r8L-O6y!hg2%0P3ITilxG=_jhyR6u|UrCa&m4z_8X7d^9YX$(Tg%}Tdn))C+gx2?a_G+ z@m9Kb6Itu_Jh8$WMfSe<{IcHgYehS8+a1!c>c5CU)Kx~~T~}a4F6-jYoY%!a?6P$K zh?FiQ+dtsXDql$719rLAmrnYoZdV+)fn#@Es__byAj{6V$WSF4lTF zl4UhH7d&H}*O>dxAL5?4Wz@LG)Lgvvv0vuCyY>Fu7q_mhO%+=`Cy}`iK?l|V_p2^{ z^`kh_j&Hl5HR{#}G4s>pD5ODeJB&ga>A)zYH5-LT>}gten$k_&ogNHa@hWIvb)}|Z zU+0;1f1u+r>^ZAlzUXRK$yUftmQ^JgvfDy-vX-6PO!jvB3N1SsS&zDcjImLh#7RLF zr8Z~Gwzb#Ciyie_z3+&X`v%Hg!BA&cu(jSE^~9=US&f&!`kIV6&12-d)eZ3;*?2?z zD^xkC`iEAIp@{d8?*7c;?y#-9f5edPWP^V|elXro*b}r}-8kOL&jWXof8^)X2P=Du z2e2&^4fXbm#%H$#Qn8QmS!3_G>GQTX-riW*GyMTzXDV#*?Kgb|?0)RCQ?aAnpDI!* z#`@R(i*U4H#d_LPgcMWNIc<)HLx)J=eokgCln?Za2 znw)pHCq8FvSXw>z>V~;EBe1@4|0;*%XVm%Za(Cd9?Ko!;=D_t0myZz}V?GkTqd$mW zjmfU}S;7o_?mmNhYK1?%=S%lM>e(eWMu+iyS5lwU_TQMk>2L`aWIiaQQu9l0I>Fk~&-)?XaHx z?sig#%OBoz(A}1LcDXiMVLV^B6Qv&0AKvq!yN%RiZghw7G`eG?9@CGWX1>hYX2F-J zZ-no%U1s;3LA4F!;Z-k0oqg8;;g9;I@W&eBA!pQsV}8@Yn{Nyq^j z?XGIn$H_Cja`#-E0hGHV^))Vh;pndIKC9f_vXzZXwte@m(?2G{zsAGvZ(nr!-4T&# z{NDXlus<@UjYr*|2m5OyMx*hs?)}03F%jd~c+%Y%>~}|GK;t*=kI=7t56hdzBj3Lt z^sP1`+ZwOk_D-;WOhleS_gf*lBQhMi-w5_c&W*;66BuAgtUc8PDE4=i{q-nXKy*lN2+`RpT2 z4cq4n-_UyD%Sjats6BtVk^> z7;JCI>h$vlYrgnxZo?1Xw`p)=_w;Rw@!PS1eQ%`&Ty~mYd@pLpHn`hj|Fk!1BU&rb z>MjDVy-|MSd+`gj&Jcl^y{?UD-Hg^4>`3;y{I2iCt!Q0}nCulB(Ygz*A`wX0i*L=ZnBm%e_&;^&)T>_$b1!A^GM;3ICepquvpIJIP1YAovB6Z}=^O z_mX^LBVeqM-y_azYQ^CFh(M}sOuZ5BuBkURR=S%u*Zfh^TiWB-ReD-)#HotpKV^Au`;Rl>Dmc(*7se%dHeY4 z>%aQ?oY#DH#)`q#*ikiO2GI9`kz_; z*)!%4uc3O2+7m8+H}P-v-YY));I-|vvakGoa6KPf`|GTw)y5d)qxFc`T)*;Dc{OCk z5n;Yyi$#A`{ex@o(^SM?>vp@%7rt-0kX-cJwQkDvxqn?+ zy=*MzpDi#m0&Dh(WxHt?(fEsfCw+7_QN1t9XFuQy)b4ZDjJa#KF{ak`rFIt`>Z}vX zc4M!<#>xVr)F-F&p4ve`~ z^th!q>eFYs*18JsDI8@itsa%=9%Fsd^~0~ezVY+KF^I~EKFbmHuYY&&p4wEz(&w%< z5#I;zneKBJHn|E1pRqwGKGoYjiuOsr`|_UYi!LQRT@I~GKRdm9VYKK~Hn+62w-B=f z*91z7a4adStg0xg;!CFEW|x;1%`PgdN}pX&Qr4??-}K@+bGk%}?koU=0}eGcz5jVr z(=dG`nE%Iy;C2H4-508l;6p#*pXK~JAEUp7Pa%G`Wb2WT{$8M;7}8GDG3iTkbnFCh z-=RGN|Ht)_VE!NbRS+Hz{L|m4Ho*`4gnyRv?|gg{KD{2|XG^xGXuqj1?_0z*gnoqX zn+81drUTa#ztwXK!$Ub9eJ{!527tk9)MwCrL43C@c5@dMnKB|RxVI)KyqJ!c2BMwnZ@aC=~gvaiVLtFvuGWWPi z%ohAxKgV0VXj3_NwlHj|XD6YlUnIoi&1J>C?O+mdh9wNIWPdnQ-6d!kQ1mj^ZNd$R zT$RFz_7arTk&w}C2=+aSxA!$eEa4MlM*)R%HN5?a-tYrPkxX4}_X85b^Q(Z_QAVj+n zcyq19FuJSG-L!I=HF^2v?GqU{}>ZfRf2I4_KeV z&I8uhPKH*vCxXs>Iob(Brh-+ zVSV?i)ThxmGK6RyMD>WzkVI*kX!NB(8aoW@5)k**IixZH_;tSqaU#|#vBOBE`9%3S zu%f6^>@+;Y@f-XPIs_5B44DK&K`+`p2!z$cL;Blmk@yX-d>QM00Lhqsr1fzlnMjPh z#L9|*c--hg8tTzKuuwc{c&TrTly?@qv%1MSd3>-+jm}aUnK%)m5-SISG>!OAfFrST z5SqQHxd^?T0|UhaM&dv;jr`7mL1?s2+BD|Y$jmg%hZN^fShz2 zdFIWVmbi_{=0;<(+nD0I`69%MA|6jBwWF$UtEzvnzo-UE^q@DqjCFTIo-}xhN})5L zMjAYg4c@fG=h5m0Cn|LtjXbDx-JF~I2-pq$W_oBg_;$q^C7As70r<14^ECwafbLzx z$$?~w%B~3%lw`zX*JKJur*iRv%v|rIAlxGptrG(9VgmW!si>ktyqGM(GOSTArMwBO zw-~B^FK3*04K)2ejtIQJCs5LQClc5}Vh0m#4+*{v?8~0#K|Ag>C^J4VyNw4b+UQ2< zGT!L+GaPaaF`f(`Ml8d~ZV^vDb^it|Pb6(Zdn20U!4q8xvdM%e`VhH@Czra@9DlF_ zS^5V}`Cwm%^1)0=IrMz!T9<4NvUIrCb#ubCE=z`s9KNd;iLuGyyN1vXz$P#6$|4yy z`E%EK1bSBkTpvrqI+f3<6dPo4L@IG)11SsTIU@Z_kgc+^`ig3Fh|Q2nFJoPrjf_|z zR;5vK&j-3ERlS=$gg0+Ky0}Y;xLJx!Mm(b1W4ZaDpOQf*Wp|iHPoRDa;(`*wlTK{PWvq-V z&zJftJW?O_8@+BpXe(uD-w4_ZE=1Ha03f_oa?4>teAk<_)&(GrMK7keYZ=}rd(B+E zeG$F~LWqc9K^TE(OQx~|2LP9vTOiCN&>D?5;}Tan4%gw|buHd*!hi1z=`D}mityHT zh}LokwjMWWQ);1U3JemyT-|#QdSQdRRxA@;VJDRXF<}*)o2My|0`g@nG!HVD zg#zDonxGAan%uYsWL+=P$VO0D_*WfNZ3f)^z2C80TfYRz)r~4>FRaB6HK4hCQ zJ78g}Pp>cs_3XAc<0B#hO2gJx+*_hn-M#O&P<+SV@Q=|bA60*#RWWbrItHT#U z&am_zXi5Wy4IwEaoxJR2RcYNr2#1%kjw(&xXJB0~p9&#nT^~77W8uRjX5g*WMv!+2 zR91*VCdnNKntn`!k(94qc`$X5ITMWq=m*7Wtu{sWqa2Wg!BT=T&FO8%KUnhLAo)f2 z3OJRNL>l{{!r9ZIAgLQQ?bl#>QYIB>`%=Q5E5ZLJ>_h@DNvF6aw>=wtxRET45rMKO z+9HF*#k~g-ksh86mFP-2K-_sL-_l{S)g%uhj>>AhW|#+FdKv3z(_sul*9KTEOL(@X zp#`VjElc>f=#wSfi%1$&!aEZ{WxN1@Nu;WbFD9vRv=3RX#SDUadKv3z!;vEQ7H}aMHs`K00QAN;c3fEiCIUF?JOJ${;ca0TQBAhA&qHGmHww_WtgGtrY=)XBTI>Hy z+rJw0=Nb0TV2I~k;Eeo*@pdR=6sboKOs)) zm7IjuI=5-g+tAn7@V0BCojk^z@t9dA^-9iea-PZPJgqrjLf;$qL}nZY3Tf>5#7Lcz zkrL^BnLG6VG-4_?8?<7Xuog$Bx#bK1N&zq_4bu{SlG=0t6mfj%3tF zYSINDO)>0?iIm3rOi*|zK}_nArVvVV-JrQ%L0=cc`*Y^H03{lG0Av6#sn<0Rt!&9T zfn`BW%Wt(43)2C6e=w+-sNfthfNxPZ2shX6u10z+F zt=P-RYI0Tw08~x(0|-`=yE=welax*%qG~b>%Z98bFAzZ0WO+IOswTe$5UeJ*br;nF zFIi3Q?4cV}OD$sa@bN;nWsd6O99}uD{Dc zAnWg)1W^6`9RXB-pC?`-mG#%W?pdfuI>=(*O>4#w1c!N7|ISBrWK9^dkF4Qi-I6r7y7%QmX6NOH>m}JJ_k!O(HF% zZZWI-H36jV72+jQt*#nk*gGBlY3RjV{|&4Ao>&MOOS^;&P1S?=@G`W{7{Aupg#e1E z#E{M*z^KLSI^vL_JgLRhKrZTMJ1V*4+j!8Lgp|r|>Z5!cM0|L$vbn76=d4U(NZAHf zhLLlDMQZD;bLn0PM$N5fZ4Z++LP~AJHC4E_?^s)OH|?6lkhar+;YdntRKY5=oX-HG zf;~jqsDce9cB)`G08|BAtVuJlmZ5_EiAdLgVmgsh1*?~&lzgi+=?svfg5{v-dnjTi zA*B7AbtVj6s*Abf5=#7M?72PCGy- zS<}M=kfuGvOQbyJQj<=yRlP+uDHb@1L&^VwU3;IH2q_ibsj2)xXoZJKJdKa1r*=(Z zNMR>nOd@61Oj00oI!VusvFOEaU^10$@^2uq5K`tu<|$^-6jDVxD+r))N(|}5Hyl`9 zHK~)U(g#}3LI}pHbSr72RcS4;)2j3)0F!#5l3fq zFKZGA&?J*+k)xBk5=g%6P2Er8L>!%0eylN9I2`*)C|%Mq^5g{_rf7uF3(a4VJi4IM z0C^_i zvF-+}&?#x?!skHUa2O0GV*r4?0M4e%yVYJSw6u<2j>g%202BZibUIl@GE)Ys2P;_ie0W3|919V0Wbdq~-aE*QB3hi?4< z(%xwUfV1f;_rox9FB$m*8de5G#geF(2PxYKK`&fDmweN4rCv(HM@qsV$#(-7Ngt?$ zv$*~YgGS^ATFRYam7XWb0gDTh#CA&{dtiB^O-+MK&X3RLO%jP)YN?VMvis~V#?QSDtx_Ah(+!A5C#Xz(? zxyB-6iO&FtlRPtico)}MU1F7t=tQG?yf4N)t;1=TrY0H*n9(s>A+k313@Ilr!#JlM z_@w5Z?Z){=v?F2hlqPLtpSCL4m(ZL=F(fuej`JlNNp@D+LMbf?&S@3og0GV?&^OVz zH1&#@D`PH?A$`d)Xkr1$lwPGMuW)e_Kdz9@rFDU|{V{3VWf&}qEJ~N$?csVz@H)iM zAQ*`v0d6O?G2=VLBM?}&u((0K3yKhK1(-^4lw(pC<4U)($<1S6Nn%6jRpL2jM_AK?Mg22QiI<85|?yn%S%aA0X0P7y=n$Xfub^#KG_5XhNRZ+%(7^ z9v19+qn!@WSv1;M`9l+^%X-)4UEt!`F-YZ0Q)zrh5~#d8Cqqy!l*LofJZE)*Em@JJ zX;iQ@Wn%(B+PQR~+Bn+DA$Uu(K6L2ENZVu76rq5RrP7_F%YNB$XE=@)9|mp+;RAqE{EH%W?%R0#x5xsCht#zGwx<(uEfm0ldP$$s&;< zZ;JkOuqb+TRa5t~RAXCsjR4LiE(y}7EBf1T=0mUW4-FJH_^$24r3IzWSvrFx&7iZ< za%)jS;;eyoqeVt?5VQGuPFBOqH_o2!o&1Lrg1A`L8H#B~~2tdGLt>!4eh zgs+?O6@iu=qkIAFX8F)m|U1jv7d3L>~?CQCMu# zLu}i9TF)j{yhQ_#>!Yxkb{q3BEt6VI%a`_q#k7wz&vNbR_4;Vtq=8$U81O~RXPIY* z242=jVe#e4L2PZN2C^J$*#-`}#TTmiXid>kDb+`a)es-8OpV~HiWZO5b&j>%m8D4? zJy$T|pa%G|oi$A}&(KG!Py?I~!n#58+{8j|(ZJn|@MxZB7Lufaj*RG`fxe6wqyb!~ zsg{$+;;WaNStlKZ7T_3H(4Cw1;Ru2tiFk*-XhBIP>1|~9MwFY+TqllE+OLsX^ndfPThc5*t zX^gc=U-mkzkHU%|*{!<{IV8-T!cyAn3q3vb(Hf+I^BHkS1IHMFlS(*ywuCJb7I&>? z9+r#h2sWVdFp0Kv(AJrhy*%C@j7@=kR=|c{)2JeBF(Y)^Oc5ULUOq8koq4 z%QSEmBNk}jI!07$fZY)mU%ks^lGPe`Tpuwy+U0vVgEnb^V}US*lRT{v2lY`{9CZ%5 z#Zk}T=<|iPQjHK6Uotz!Bque%M`7_$CGpUuX<&vv3X89gIV2gnE6*X}D^UA1#`;Z8TqOX`)uivVNz8%WkkO)DG{?&2PcyMj_C=!;bo_0hUS z1AN8F%FtJevh`6|=WFO9eY7soz)Si{kabK0{2dx4~R@7kSNUT0u@ft{BM4AS0 z!A8x~ZW`#rhyfbN)kk6R7iFvTLXNhNmxQ}Sa|bl@oqEf3?2MN zti!bHr0ud{7=MkAqXX@!@eklMTqwe682(4&-({TUY7-?dkI6UsX1h^G9qt6-b@86I zJ$`y);1Zi*y6D}VV3~^~;5JRKix6njk=jwhut1H2JJvFVq9cq4{D#+(@A2{-vZ7q> zM01HGGEJL~QHC1=u9cw6on*R6G9iJ3P~1WVendqnH_7T2-E@(Q^etpX(I&461t zRO4TmiDVF@|A)QHm}{G5yfy5SzPKq$jz<)989`tOcIjS4^Pl?8J}U3X3sa|;g6W+- zrSXkw=5^?ZE6N~^is64^RcIUt9>V|WsDn=F^WH+;cjMof3%pDI$mJ$LQFqYWJ$REp^l|?Nkic&@FvD~S zHotIDy;EgTzPl|hcd?QX-4TV*1OqA{Rk&X)rs;}`86ra0*EklG2tgP<)V}K^TO2Z( zml-dbdo7_HT)fCS1A>E|8?kp?&l@gzM zhctv707}Kvl!0)3Lom;jj`Xq2Xm0|%jmD9p+D7Yf>!`+>?eI~d;f^!^Yl)N} zfB}0KQ(vgBEx>Ad)LG%~qy4dUB&5d_ZkvXUj77%Wt#T*Y{8;4!`jk$$xh^C#!q!qU z-w6*K`(UwjF^Qv}0M$f8CeRV_QF#H1Xc-@mIgfjI4G9~|Q2*Q>%UmG&qIIx1crjSL z;fi($den}<$D>P=hAc45zX~sweR3Wtmc+3nH&lLcn0!IY)R0P9GEKECh&UqTP`S8%siV^q2%3mq%UrGo+tC7)B97;1`pj9<2TBm~Rpp#R=L|$A z+82?t;8dw_nx@5vq1d=!%yi0i(uD9t`RLUyL|WlUkJJZlpVa4MRvT@44=olHa@VA# z!>&1U6xk!&>`fk7<{o8++dQqMc>e8z21PfhI3{w`fKr(ZttxjCvBRVA_{;)1EVh}h zv_C7g!)6-g!TLz~5FA^#nGwE)@^}xynyq#okZYJ zMIugTQ>vE9%Y$RQBOB9P?vdmQMU``BXe=E^97YF|WIm?qP^|fa8a;>tN){1wmqAll zThrDupH|MtnmbfDBIPBRPqI9iK>lNe07}VITx~caH1axD&&jR`O^Ez)wJe!tgDM-y zx93#6Eb|#PGZ6+A*%+1_X&5AZuCyUnb}0eT<`XK1si={KAet$&1}R)D$2k@SNB1aq zFkvr{J+?Vm8ILwO0p5d3foUF8ae}6&)JP^$4J0bdeB?)LmX$eJ=pnLEWfkmUlT~>| zmvY%D1#Lk=mZnolCLo!4(sd8M56(4E6+^fAij=Cu?o6U+^C4yA1tt&XtIkNNF?13L z$^4+2j6_URgVfP6LO&2{I|D^8D`UZpc*q5H@t``2L7bBhBBkPj4unMp}d-pE9+9>3YN+Pk3DALP53XN5_+bOhZH>V@()F zKxB0Pj`57v27!hBZI(|z;%_u14OtXx{?SQFpvWf9qoALZ$mCx#@`osFa~jXmxpK@f z8{#AdX6Ix%9Jbk=h#qd-2Y(!gz|Nv%Og%}&xl zLma0ERBGEjc z{KDjcW5gV?MzsL9ytzj7m94zh4d41&<~HR+f_ak+C`6M>eay#H1xM@@#)+L%Oc7rs zAx-CK%1dIC)RZD7%|~Z4BlU^Q84zBYY4C`e+i+IZX{W3t=>h6vQN<$_j!WULAW8mr zcJX=>Py1am2zqBqFXZl2rLi>CGB+)en|hPZ2%TVro%4~1=I4b!5u-!pj0=LNM(U@Y zDLT7pc!2XmQtQl3!+c$>dKghG#)CNj{;?Ah)BKIB|2lt9krheWvp8LUIXfs@Xdmlj z3D%C+)Q%y^{GBc`oIyVtbIQ5DKjz^2XUCijabg~0zM=*YC2WJ5mCg_WrTUz`4WFd^ z|9{$Lnh*SgS<_;TaS932Usav|z?{MK#K}I*iht3WrD;C%4+fv=3Qu8Y>N>#(MpbRw z+^*)bsZX3vT_mW+^19zlGIcnTf7-A{7F!DDPbdyLXPnu~YxzI54C7p_pB!DNnIzXx zc$L8zwX`DzzSD(~&-$F@Gm*~zDEt41XMb3+-%&gEXmgV)Kylh}sO>D*4AXowGDF;; zq9y;|?TjC@=Vct3DZ`e7ccO0M*enFAc8d+Ruosjm&gPCG@BW zk_Ndu_(|m^GB1B3Mi0+FZClW6iAplNs(k{^DX0U%=_&zSrHGOz7l{ZCSvuG}T_!*r z+Oj<9jc9_oTEg+w|cvJ(ktRv(<|7a4a7H(9`2 zNzCnDQV^ZPQb)5ZET`1qj4<25ouHkPh9&?LQpItbuvP0kX@*F+Gy z8T6q8U7G)i*9c(x7fPLNHmH@sGQUz6Olady`gm<7ujB|ZC5*>KzpyzBYpD=BYZs4^ zZQiWpCy{)Ti$ zno_e7CZ8fkSmq(c?w_59KW!{pjB{k+~|BbZ|n*XJF zA$K)2C0o2?sXhe1cZt4Erxpg@PGX+jua?agx5dr3DWt-gsj{FG#%tcAhQ!&IAWz>@ zAGZCSiTdwU@Zg^*SAj_Xu>6$EE@zta$20sN*r<81kHNc z8cC}@IZ7YRP>G3gO3X+9XG=^peMT)4Ph80BsE0z2I+nrg3e~Vq*qBM=oEV0l81@`g!30-^!L1i z)et|8m-*#fRe>T3=FHeD3 z4jUF0`8{C%9<{rJ{)PyBubLdDeln(m9s&CL4Sip$4Z==%EJSJ`()5?V!!sxl_xuV*wU1uY-t_azZt*QInrWfh{!+emsJ@{ zEGSU|C@6J+tL@+j)6}u)b zIwpQ60X>#EUsgo`@+XguUX#`s)+>Lw2>Db$<#(`Y*>M(=NPB2`(tf+!@lwZMU>gV> zB&ZY4i%AZBb(Pxqh)S|sV~`Q#!f)Lxw^^oJdag3irI22pBRK}wDI|CKV_ zXMMgyF`|J+(1M;*yy;tabmSjBa8&6l^%P~Shb?e&bcvHWoHJ<3K_b9dt7PDhrTC21 zjh~Lh$h`=CJf#ODMhzM9P!W^sa0&qD>OPICcA@!b{^wBOie4~>wckNsvO>L;QKj&5 zb~|1=@s^(f(T*;jCjy_ew$iHV)Eb9V#epxqps1@kio#nV3qk0o6pGvVNP{olIa`#L zdnjvhCZjSvgh!q}Xm$L%1FlQWW=6BBf-!WPt--! zz>oaY$4siI%Ec01Drs6K?k_40pwCLk5dI;S^E0O&q?BS4PT_o}KqAN)$X7puKTk?R zaMgFrP*m0W?+h}PeOfyqTYVPKvN=JVkMEs9w?RoEb!5;j4M;{T93kye76B|P!V^Su zGk@YQ(@%$hl7(F-6{kMcL{{jtQCK5~i4k(7AcS3QzT@J&lc%+0V?0z-Ou2MAb=NH~ zMJkWv1xg-r`c0sN`DlQvHMf@z9`F1L_H zDeM(!=hMW|qN6btWtu7<$rB*9N*nD0Ueoj6d0 zG5&lWpk@!9Z%}0P`3Fw|&J*-O-tBZZ0NiEe)VCkmh8qUZzqi)l|@yPstT$q1w92=6fGz(3RD#p ziXhS4vdWT~WkrSQL_M#lqNMm5ku%}a^m7LeO&>TgV_?RB^nSAoDgv|4u9!C@b7p{A zGfK`bEgzCu2ski%PGM2$*|UoZ3(BrRyJ~J((b*Mq0zWIN3gs)AT~J&I-kItBE*zZR zuefYZKRm3ss9))vIpzHdOYmH@k{NTWiu#ooR8o>okwDg+(MGFe(*~pds z&+U&VwC2w)S%83$%cCZx56T!kRKS`tdX8c_{3xod%rCDf3Y1iq%qbIi@)&jG=g*j1 zQd(6~mOr~_cA)$kP(m*~+^w=?VNpIFRW`Ru+MQogR#GJjOJ-Jz(&EyBnPOH!Sz#$C zD)68?&<|)X3WFtz$_mJvf{K{|F~6j+Y8HV5M0r7BfS^I5QYtIXmpYW@Sw#!P%%ZBf z78%%x_2S;1^P?-K!_XyQOIEG+;pJ1$-yLb6-5~Qa(ZMPlI`zKOD91y z0wN=$e_+n+*+|3wbIPk!O6$bNkoT*aGp7_uS5l^MLo)l#E&Ey7ocU$_ib{+7my`uc z=VHL-R+W@y%tFiyOXlFHrivrEzaGj;sQaHQ=|8(5Fsr1j=pPXQL;eB z-5!nm0?St{-kb0;g>jt`=MvpCp6|s);^~zgpD?z@wIXW9b7S|6jmQ1JfeYoM+u}-E zeZLxz$QQ{Ye7wfbQ)qF1e0gznyvUAmWl2)Hff&&(*L3*0uY6_4KkJ&X!nHDLwbkIc zCHmIb+u~hS(R;FA%zi!ljqEqG-^zYFo5WnA`M2qNYVvb}M#tae&0XQjT^ThiC}B;) z?MZhe-5E&XYGHLKnyXkiK(p zn&yYz@info&%sssV!H6hie|^(WS9pGM-$V9KY}(pe){;Dq)Q^?g+FVT=vE};*2G`& z+~_?RIrcmJSrLp6e>?--SDEsJZ=d(LG9UT*fHD4-*zpa~xht*Jo{K0~Z-s9xhi_`v zUehx^{6PtfKdx_vhbKYF7vsYp2F>`sI=)wFdOQNaxgE33ox?Sek!LeFg;Du7gQXf} zE?KhP=ElMx9fM09I%B=fjTJ#U25$INvwoP&U^%OpW;3{e zQF%6lY-Q9!aoT#DTXi8S*giG|YJ;|15kkneun=SNPm?zg^4e=T-Ppp(HiLZ~RFJGA zKkCfCI$yH>WUzlgPUwK$deg9PR1B8cb3C# zGZ;dd2THCgHdE%=46;=+Zo=j|HA~+y6h;bt+s_1jbT1U=cVBP6s+;fYqcO#1kZ&#u zW(N5_qoDdkGxXKB5v6It@F0x?XO;#hFlvfDtiKw~@%pGNi8PudvI9%CBd&p%%o<+D zxIyb}hPN?p@Oqo!R~eTHcQt&Fac8Wz8RiJNhOBp@)n0q)8oJ(QIFoV1*4qqEVBDGO zZH8wtZaDnV@KVN|1wS;rj&UR4hlaN??riv>VIC^i$l$Q?D7em9A2}jfkt0HMJUToy zB#&VpCZc0_3Xd>sVYrNO;AQwa#=#GUS1}H}46kDxV!-eg#(|gNCmDzMG5iYSz{~La zj6>`h{*rOvW%xMbFm4RT>l}1}m*I|#!aMeYX<`CRLov^493_4^e{|vJ@(~|`y;aJS{AkxJ{wVB-q=I?cp42L_5kzCExJuo--mRa{{+$SRCLP=2{4 zqjJYE--ejV9V_KK5fhGKR^`GFGt9b39>c6x2DPJB$hSi#V@7IR4%>{NvJq^6aiy>i z>E-oEaG7P0?|Q5Q&6Iy-%E>l^A(RwoK6$uF-|w0XXZSwG!D)v1qykP0dx0jnO&^VE zHiJy(H9f;rk_O3HzA;TW^emrnd_p!-pKu|e7|hlv>8H)D>L4M5e6pqk!p{_0tSMF6 zhhyakF>*Q!ooX{UOQT$i(`<%WqPN=cq<8bA_dr}&1ozP_VS{$C*vU479|lnj9%59$ zX7DJZrrHdqchU2Ivdv&OMoqODE3Alz@&wep-p7AZ3er8P!JYaTZ6@ejpkt-gIDT-6G1X>}A7Nt5uo=t< z+Q{G#4#Q$7=SFUjj(yppQK8Bi=lD58*qq-^&IFvCd6jb^VDm#_ma>-to4wogL@d2Z@;O*1B{wxGsqLr$af~*aZP0{6`rQ{>uq+2^B>9E zO}oR-(_zwy8o!X;Ew-z*Pj&ieEm2bM(d~P~@IpK6(MP6F*X`kquTgSF>NW?=(s+&% z50J(SXX3rXHcqu8=Gau5SFtjyEku40C{u z0w-VYW8(^J2DygND$O}`kq#a>FVW!iAc`x1lW7G`roA4d;=r-Tki|}O42^ z^%0f8yHqR|9hZr&>upY=Y)-C4LgKld$3tG|)KDijg*Jl^Xez0V8=QYe;VELs%hqTe zFv<*u%Q%SBYz8Yd%3N~MdYcii_bIAEk;k!YPEbq)P!n`i?RtqTJVh!Oc3C?hwv;4A1UI9Wx@=630msF>0 zKqM~^{75-6FdRpO=%9Gl%?Ur;c4BE)MSn6yl{Z)4wP*_O82 zaiq{r)~Gan#CC)qlE^*+#cr-+->?DXRCNM1)d>Onjf~^88N_Kb)n<^NBBxF?xK$n` zWRUYr5(bBsO9yTC80PpGMb2>ZGZ}$mkRO{!TN|F4Jk3DH*z4{1L_`?N(;s^I7>x9QGma#CkXb#)vjM!9X z#5!}vPIXH9bd931X1Gw}%$kdE_MjW9g1ij!1dwML+_*bP#|y%vK@?Z|?}8}K9T(Sy zsZQ$fOhCGG>hNPRspjgGac0<5XNG0)q?>9pID=6Eo5AIb3aQ_W3fNpM`C+HHw9eD- zIFHp-C%bU@e^L<-anjBo?1nWa-lQIyr$E3*;(L+ z=wPAda45NG0mV~|ixyB^q_{!>#f5kkSCT?!E|qa1M*RwZ3@*}_b8)9rh=qfDTI19O zX{KbXi~u7yGdp%xjAKIMQeku0ILp+=Is93;N>MmgDhfxE(D29NA`m>Soz#HW;m^4x zElv(C)d{0ihm%qP;%s9|X-+sHA{kCcyZ8vQOC!nP2(M$jn^V!r&@=H8eN-lfW2HIa zNQw^6-p+dV%B17W-=Pylow!9}>4Ud$tke{aBu%V=*BCmVizxXL$!dAlsWZRf+QL%D zQc@p|mFmNhq@JJq8(gR&an^?4_~hvquYFDdYiYd_5p_=UJ9Wlc&{*zfU7kMFM>SaC zSm^^J_i#naw;6nyxv#t3jq{)|ndB_5*<3ZOC;VZ= zD$wCr8R&2%U2*594)eo?g#EOx zKnI&uqHwHK6poaWPtW8GXGZtKw@-9~pH{4{n=rQ6A*Fd1j+L6ik)(-tU*lQ#WEcK-XI9ZEmoS=CwAy zdZj5iq<<^A>_4szL^zGmMmU}4IQ=jixCBmf<4KLg=YS0Ebm$NVZg4z6$Kaa|9YVv6 z_k;2n{KTO{w79`hgFFVmbLbF2ZX6HFV=#(ix&$%h2FDii7))Tg#qgIKPVAS2#GW%3 zbD2RW%=wXF#w=qoJYzy8Pghn;7st54qfFT!!HciSYMyj`#0R(xvIKJpwo%-0#Gxc| z%9k?lWSha4^@G#ZJm%J`8Vj2lJkpGiTStS04D$D)q{N`^W2}3M%^+)2^OIXF2NRh= ze!9CNUkdDFE9XezxH{K4?_0gjAO*x>5M zmLMI2+Z?)Be0f(l9uLwnxWl1~TW@n?caV<3mzZu5^5BSW@FYWJJEl?2%t9ICY02a? z+Ze~S;Z$WJNa=7xB6GdN22Qpabja{|^(VUfAd}_U3_4_}ZTyAAR|o6M^?5dfuWJ;_ zMjqyeZoL^KWRQQHA_;>ccLpgLWFe@&46+c!kHIi`-26HykHNzlrA*}3ksu+1N1G9H z>sXMG!Q+fVY*;ZLF-{DAsL9N0u`S~UTNRBx`9jh4TKcL4WREFvwKpsd=K(+Ah2P>4RdqNiZek!rLQ8m42>o$! zD32+k1pkh&IUYYI*I!?2j<>`mE#htAe8Dt?!NgC}v-pdr&G6okRuD8rbg&TunSy_f z7=i?7%3m2a$5G1^agj)g=U>e=?>2?}#JV|B(kDdV2w{rEQ{aoh)1k2~Y92cGouD@y}6;ny_Vd@4`FEuMrSbd&CLW=!8qX)Q{JY7n7#NbnU;pnR^$GDLjtTG}Dy#XpyrSjs zue8&zj$dm$FM0es$0HhF zrBBZJ_o$R;B!}xL`(?u}+|3KU&Hakkao{cZliL2a5+AG^^jk}Mwb%4q$@q7XT{ND5 zo`s)1%2#iV=ig~fYE>$eE<+p`=LG;4EiP%aG}}#CDiR2 z)Ga8S+kil%ytf5@0AEm1CBRBIosc&N(RV-4E(h-{q3;YqH#2bVn9%%g5%Rtd&2Ik? zyxjt%(oG(k-JL;XR9-W?s$d3=RTb(ui=nEb1yvdHwiy}fei9;sQ0g7@uzGH}$f%e@ z_l6+;ff>WNDKc<>3sB1U!lD^-XTtm9IU+;B1v6$;6wPy56$NE8aTf~RSy48VZkXY; zOX&s%x(`|yBs5}&HrxdYvFZ;=e#xJ2E<#F0>3fxBEdd~*UyeCQnbpTHf!gw#f5 zbY9gG(uIEqb%wm6LSO=^4iSl-{xtck(G((GzKdLSaNe^VNCC9YHPfH2`3I=}hv^5{ zAusHZn!TtVh4S-$=;6_d?4oAWv_>|6Wur;_gEX4=O`b6dF;3(8z;%Uq=yfsv31+#x zzq&;8KfoPCj8}O4t^|%`a{PEbj?#fkM_=fR^)qf70LiZfbA4rg9R?;BSq`LtLLAta z&@Sfh)hQGkNn3sj{=P+uuP7w32otVraSJ%2+we1b7vfcQaNZLfNCCgVAzUW)l$Wah z?O|KeaN4_0!QXSf;&+WzM}80IzhCnYU;=&Y{geXM^T296^Yigx;0X@r-}9_uc!dd7 z)A5zjJArSB|F#{9f!90D9>Me|Y{L zIt72$ZjvHIJKk`pW`r)%?b3arhv~;u>wsGw+v3m_|E! +#include "util.h" +extern int sum(int); + +int main(void) { + int s[1], expected[1]; + + setStats(1); + s[0] = sum(4); + setStats(0); + printf("s = %d\n", s[0]); + expected[0] = 10; + return verify(1, s, expected); // 0 means success +} diff --git a/examples/asm/sumtest/sum.S b/examples/asm/sumtest/sum.S index 08afefb04d35dd9c4fbe9379b99e871d1c24b2b2..ab87eb0ec5243a1378b2b7ed6c72636f5a2b7fdb 100644 GIT binary patch delta 36 ocmbQmwt;N}CnKZvW=_VZjDm?NDVYkz1v+4CXr`br`6ZJ90Kk_DW&i*H delta 18 ZcmdnMHj8ZoC*x)=#;1&vS(&vN82~g|1bhGh diff --git a/pipelined/srt/sim-srt-batch b/pipelined/srt/sim-srt-batch new file mode 100755 index 000000000..c7c4724bf --- /dev/null +++ b/pipelined/srt/sim-srt-batch @@ -0,0 +1 @@ +vsim -c -do srt.do diff --git a/pipelined/srt/srt.do b/pipelined/srt/srt.do index 6f925a54c..401cc8950 100644 --- a/pipelined/srt/srt.do +++ b/pipelined/srt/srt.do @@ -17,7 +17,7 @@ if [file exists work] { } vlib work -vlog srt.sv +vlog +incdir+../config/rv64gc +incdir+../config/shared srt.sv ../src/generic/flop/flop*.sv ../src/generic/mux.sv vopt +acc work.testbench -o workopt vsim workopt diff --git a/pipelined/srt/srt.sv b/pipelined/srt/srt.sv index ce0417f56..9c73aae94 100644 --- a/pipelined/srt/srt.sv +++ b/pipelined/srt/srt.sv @@ -1,65 +1,113 @@ -/////////////////////////////////////////////////////// -// srt.sv // -// // -// Written 10/31/96 by David Harris harrisd@leland // -// Updated 10/19/21 David_Harris@hmc.edu // -// // -// This file models a simple Radix 2 SRT divider. // -// // -/////////////////////////////////////////////////////// +/////////////////////////////////////////// +// srt.sv +// +// Written: David_Harris@hmc.edu 13 January 2022 +// Modified: +// +// Purpose: Combined Divide and Square Root Floating Point and Integer Unit +// +// A component of the Wally configurable RISC-V project. +// +// Copyright (C) 2021 Harvey Mudd College & Oklahoma State University +// +// MIT LICENSE +// Permission is hereby granted, free of charge, to any person obtaining a copy of this +// software and associated documentation files (the "Software"), to deal in the Software +// without restriction, including without limitation the rights to use, copy, modify, merge, +// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons +// to whom the Software is furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in all copies or +// substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS +// BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +// OR OTHER DEALINGS IN THE SOFTWARE. +//////////////////////////////////////////////////////////////////////////////////////////////// -// This Verilog file models a radix 2 SRT divider which -// produces one quotient digit per cycle. The divider -// keeps the partial remainder in carry-save form. - -///////// -// srt // -///////// -module srt(input logic clk, - input logic req, - input logic sqrt, // 1 to compute sqrt(a), 0 to compute a/b - input logic [51:0] a, b, - output logic [54:0] rp, rm); - - // A simple Radix 2 SRT divider/sqrt +`include "wally-config.vh" - - // Internal signals +module srt #(parameter Nf=52) ( + input logic clk, + input logic Start, + input logic Stall, // *** multiple pipe stages + input logic Flush, // *** multiple pipe stages + // Floating Point Inputs + // later add exponents, signs, special cases + input logic [Nf-1:0] SrcXFrac, SrcYFrac, + input logic [`XLEN-1:0] SrcA, SrcB, + input logic [1:0] Fmt, // Floats: 00 = 16 bit, 01 = 32 bit, 10 = 64 bit, 11 = 128 bit + input logic W64, // 32-bit ints on XLEN=64 + input logic Signed, // Interpret integers as signed 2's complement + input logic Int, // Choose integer inputss + input logic Sqrt, // perform square root, not divide + output logic [Nf-1:0] Quot, Rem, // *** later handle integers + output logic [3:0] Flags +); - logic [55:0] ps, pc; // partial remainder in carry-save form - logic [55:0] d; // divisor - logic [55:0] psa, pca; // partial remainder result of csa - logic [55:0] psn, pcn; // partial remainder for next cycle - logic [55:0] dn; // divisor for next cycle - logic [55:0] dsel; // selected divisor multiple logic qp, qz, qm; // quotient is +1, 0, or -1 - logic [55:0] d_b; // inverse of divisor + logic [Nf-1:0] X, Dpreproc; + logic [Nf+3:0] WS, WSA, WSN, WC, WCA, WCN, D, Db, Dsel; + logic [Nf+2:0] rp, rm; + srtpreproc #(Nf) preproc(SrcA, SrcB, SrcXFrac, SrcYFrac, Fmt, W64, Signed, Int, Sqrt, X, Dpreproc); + // Top Muxes and Registers // When start is asserted, the inputs are loaded into the divider. // Otherwise, the divisor is retained and the partial remainder // is fed back for the next iteration. - mux2 psmux({psa[54:0], 1'b0}, {4'b0001, a}, req, psn); - flop psflop(clk, psn, ps); - mux2 pcmux({pca[54:0], 1'b0}, 56'b0, req, pcn); - flop pcflop(clk, pcn, pc); - mux2 dmux(d, {4'b0001, b}, req, dn); - flop dflop(clk, dn, d); + mux2 #(Nf+4) wsmux({WSA[54:0], 1'b0}, {4'b0001, X}, Start, WSN); + flop #(Nf+4) wsflop(clk, WSN, WS); + mux2 #(Nf+4) wcmux({WCA[54:0], 1'b0}, 56'b0, Start, WCN); + flop #(Nf+4) wcflop(clk, WCN, WC); + flopen #(Nf+4) dflop(clk, Start, {4'b0001, Dpreproc}, D); // Quotient Selection logic // Given partial remainder, select quotient of +1, 0, or -1 (qp, qz, pm) // Accumulate quotient digits in a shift register - qsel qsel(ps[55:52], pc[55:52], qp, qz, qm); - qacc qacc(clk, req, qp, qz, qm, rp, rm); + qsel #(Nf) qsel(WS[55:52], WC[55:52], qp, qz, qm); + qacc #(Nf+3) qacc(clk, Start, qp, qz, qm, rp, rm); // Divisor Selection logic - inv dinv(d, d_b); - mux3 divisorsel(d_b, 56'b0, d, qp, qz, qm, dsel); + inv dinv(D, Db); + mux3onehot divisorsel(Db, 56'b0, D, qp, qz, qm, Dsel); // Partial Product Generation - csa csa(ps, pc, dsel, qp, psa, pca); + csa csa(WS, WC, Dsel, qp, WSA, WCA); + + srtpostproc postproc(rp, rm, Quot); endmodule +module srtpostproc #(parameter N=52) ( + input [N+2:0] rp, rm, + output [N-1:0] Quot +); + + //assign Quot = rp - rm; + finaladd finaladd(rp, rm, Quot); +endmodule + +module srtpreproc #(parameter Nf=52) ( + input logic [`XLEN-1:0] SrcA, SrcB, + input logic [Nf-1:0] SrcXFrac, SrcYFrac, + input logic [1:0] Fmt, // Floats: 00 = 16 bit, 01 = 32 bit, 10 = 64 bit, 11 = 128 bit + input logic W64, // 32-bit ints on XLEN=64 + input logic Signed, // Interpret integers as signed 2's complement + input logic Int, // Choose integer inputss + input logic Sqrt, // perform square root, not divide + output logic [Nf-1:0] X, D +); + + // Initial: just pass X and Y through for simple fp division + assign X = SrcXFrac; + assign D = SrcYFrac; +endmodule + +/* + ////////// // mux2 // ////////// @@ -86,13 +134,17 @@ module flop(clk, in, out); assign #1 out = state; endmodule +*/ + ////////// // qsel // ////////// -module qsel(input logic [55:52] ps, pc, - output logic qp, qz, qm); +module qsel #(parameter Nf=52) ( // *** eventually just change to 4 bits + input logic [Nf+3:Nf] ps, pc, + output logic qp, qz, qm +); - logic [55:52] p, g; + logic [Nf+3:Nf] p, g; logic magnitude, sign, cout; // The quotient selection logic is presented for simplicity, not @@ -122,19 +174,16 @@ endmodule ////////// // qacc // ////////// -module qacc(clk, req, qp, qz, qm, rp, rm); - input clk; - input req; - input qp; - input qz; - input qm; - output [54:0] rp; - output [54:0] rm; +module qacc #(parameter N=55) ( + input logic clk, + input logic req, + input logic qp, qz, qm, + output logic [N-1:0] rp, rm +); - logic [54:0] rp, rm; // quotient bit is +/- 1; - logic [7:0] count; - - always @(posedge clk) + flopr #(N) rmreg(clk, req, {rm[53:0], qm}, rm); + flopr #(N) rpreg(clk, req, {rp[53:0], qp}, rp); +/* always @(posedge clk) begin if (req) begin @@ -143,10 +192,10 @@ module qacc(clk, req, qp, qz, qm, rp, rm); end else begin - rp <= #1 {rp[54:0], qp}; rm <= #1 {rm[54:0], qm}; + rp <= #1 {rp[54:0], qp}; end - end + end */ endmodule ///////// @@ -161,7 +210,7 @@ endmodule ////////// // mux3 // ////////// -module mux3(in0, in1, in2, sel0, sel1, sel2, out); +module mux3onehot(in0, in1, in2, sel0, sel1, sel2, out); input [55:0] in0; input [55:0] in1; input [55:0] in2; @@ -175,16 +224,15 @@ module mux3(in0, in1, in2, sel0, sel1, sel2, out); assign #1 out = sel0 ? in0 : (sel1 ? in1 : in2); endmodule + ///////// // csa // ///////// -module csa(in1, in2, in3, cin, out1, out2); - input [55:0] in1; - input [55:0] in2; - input [55:0] in3; - input cin; - output [55:0] out1; - output [55:0] out2; +module csa #(parameter N=56) ( + input logic [N-1:0] in1, in2, in3, + input logic cin, + output logic [N-1:0] out1, out2 +); // This block adds in1, in2, in3, and cin to produce // a result out1 / out2 in carry-save redundant form. @@ -202,10 +250,10 @@ endmodule ////////////// // finaladd // ////////////// -module finaladd(rp, rm, r); - input [54:0] rp; - input [54:0] rm; - output [51:0] r; +module finaladd( + input logic [54:0] rp, rm, + output logic [51:0] r +); logic [54:0] diff; @@ -284,14 +332,16 @@ module testbench; logic [MEM_WIDTH-1:0] Tests [0:MEM_SIZE]; // Space for input file logic [MEM_WIDTH-1:0] Vec; // Verilog doesn't allow direct access to a // bit field of an array - logic [51:0] correctr, nextr; + logic [51:0] correctr, nextr, diffn, diffp; integer testnum, errors; // Divider - srt srt(clk, req, a, b, rp, rm); - - // Final adder converts quotient digits to 2's complement & normalizes - finaladd finaladd(rp, rm, r); + srt #(52) srt(.clk, .Start(req), + .Stall(1'b0), .Flush(1'b0), + .SrcXFrac(a), .SrcYFrac(b), + .SrcA('0), .SrcB('0), .Fmt(2'b00), + .W64(1'b0), .Signed(1'b0), .Int(1'b0), .Sqrt(1'b0), + .Quot(r), .Rem(), .Flags()); // Counter counter counter(clk, req, done); @@ -325,16 +375,18 @@ module testbench; if (done) begin req <= #5 1; - $display("result was %h, should be %h\n", r, correctr); - if ((correctr - r) > 1) // check if accurate to 1 ulp + diffp = correctr - r; + diffn = r - correctr; + if (($signed(diffn) > 1) | ($signed(diffp) > 1)) // check if accurate to 1 ulp begin errors = errors+1; + $display("result was %h, should be %h %h %h\n", r, correctr, diffn, diffp); $display("failed\n"); $stop; end if (a === 52'hxxxxxxxxxxxxx) begin - $display("Tests completed successfully"); + $display("%d Tests completed successfully", testnum); $stop; end end diff --git a/pipelined/srt/srt_stanford.sv b/pipelined/srt/srt_stanford.sv new file mode 100644 index 000000000..ce0417f56 --- /dev/null +++ b/pipelined/srt/srt_stanford.sv @@ -0,0 +1,355 @@ +/////////////////////////////////////////////////////// +// srt.sv // +// // +// Written 10/31/96 by David Harris harrisd@leland // +// Updated 10/19/21 David_Harris@hmc.edu // +// // +// This file models a simple Radix 2 SRT divider. // +// // +/////////////////////////////////////////////////////// + +// This Verilog file models a radix 2 SRT divider which +// produces one quotient digit per cycle. The divider +// keeps the partial remainder in carry-save form. + +///////// +// srt // +///////// +module srt(input logic clk, + input logic req, + input logic sqrt, // 1 to compute sqrt(a), 0 to compute a/b + input logic [51:0] a, b, + output logic [54:0] rp, rm); + + // A simple Radix 2 SRT divider/sqrt + + + // Internal signals + + logic [55:0] ps, pc; // partial remainder in carry-save form + logic [55:0] d; // divisor + logic [55:0] psa, pca; // partial remainder result of csa + logic [55:0] psn, pcn; // partial remainder for next cycle + logic [55:0] dn; // divisor for next cycle + logic [55:0] dsel; // selected divisor multiple + logic qp, qz, qm; // quotient is +1, 0, or -1 + logic [55:0] d_b; // inverse of divisor + + // Top Muxes and Registers + // When start is asserted, the inputs are loaded into the divider. + // Otherwise, the divisor is retained and the partial remainder + // is fed back for the next iteration. + mux2 psmux({psa[54:0], 1'b0}, {4'b0001, a}, req, psn); + flop psflop(clk, psn, ps); + mux2 pcmux({pca[54:0], 1'b0}, 56'b0, req, pcn); + flop pcflop(clk, pcn, pc); + mux2 dmux(d, {4'b0001, b}, req, dn); + flop dflop(clk, dn, d); + + // Quotient Selection logic + // Given partial remainder, select quotient of +1, 0, or -1 (qp, qz, pm) + // Accumulate quotient digits in a shift register + qsel qsel(ps[55:52], pc[55:52], qp, qz, qm); + qacc qacc(clk, req, qp, qz, qm, rp, rm); + + // Divisor Selection logic + inv dinv(d, d_b); + mux3 divisorsel(d_b, 56'b0, d, qp, qz, qm, dsel); + + // Partial Product Generation + csa csa(ps, pc, dsel, qp, psa, pca); +endmodule + +////////// +// mux2 // +////////// +module mux2(input logic [55:0] in0, in1, + input logic sel, + output logic [55:0] out); + + assign #1 out = sel ? in1 : in0; +endmodule + +////////// +// flop // +////////// +module flop(clk, in, out); + input clk; + input [55:0] in; + output [55:0] out; + + logic [55:0] state; + + always @(posedge clk) + state <= #1 in; + + assign #1 out = state; +endmodule + +////////// +// qsel // +////////// +module qsel(input logic [55:52] ps, pc, + output logic qp, qz, qm); + + logic [55:52] p, g; + logic magnitude, sign, cout; + + // The quotient selection logic is presented for simplicity, not + // for efficiency. You can probably optimize your logic to + // select the proper divisor with less delay. + + // Quotient equations from EE371 lecture notes 13-20 + assign p = ps ^ pc; + assign g = ps & pc; + + assign #1 magnitude = ~(&p[54:52]); + assign #1 cout = g[54] | (p[54] & (g[53] | p[53] & g[52])); + assign #1 sign = p[55] ^ cout; +/* assign #1 magnitude = ~((ps[54]^pc[54]) & (ps[53]^pc[53]) & + (ps[52]^pc[52])); + assign #1 sign = (ps[55]^pc[55])^ + (ps[54] & pc[54] | ((ps[54]^pc[54]) & + (ps[53]&pc[53] | ((ps[53]^pc[53]) & + (ps[52]&pc[52]))))); */ + + // Produce quotient = +1, 0, or -1 + assign #1 qp = magnitude & ~sign; + assign #1 qz = ~magnitude; + assign #1 qm = magnitude & sign; +endmodule + +////////// +// qacc // +////////// +module qacc(clk, req, qp, qz, qm, rp, rm); + input clk; + input req; + input qp; + input qz; + input qm; + output [54:0] rp; + output [54:0] rm; + + logic [54:0] rp, rm; // quotient bit is +/- 1; + logic [7:0] count; + + always @(posedge clk) + begin + if (req) + begin + rp <= #1 0; + rm <= #1 0; + end + else + begin + rp <= #1 {rp[54:0], qp}; + rm <= #1 {rm[54:0], qm}; + end + end +endmodule + +///////// +// inv // +///////// +module inv(input logic [55:0] in, + output logic [55:0] out); + + assign #1 out = ~in; +endmodule + +////////// +// mux3 // +////////// +module mux3(in0, in1, in2, sel0, sel1, sel2, out); + input [55:0] in0; + input [55:0] in1; + input [55:0] in2; + input sel0; + input sel1; + input sel2; + output [55:0] out; + + // lazy inspection of the selects + // really we should make sure selects are mutually exclusive + assign #1 out = sel0 ? in0 : (sel1 ? in1 : in2); +endmodule + +///////// +// csa // +///////// +module csa(in1, in2, in3, cin, out1, out2); + input [55:0] in1; + input [55:0] in2; + input [55:0] in3; + input cin; + output [55:0] out1; + output [55:0] out2; + + // This block adds in1, in2, in3, and cin to produce + // a result out1 / out2 in carry-save redundant form. + // cin is just added to the least significant bit and + // is required to handle adding a negative divisor. + // Fortunately, the carry (out2) is shifted left by one + // bit, leaving room in the least significant bit to + // insert cin. + + assign #1 out1 = in1 ^ in2 ^ in3; + assign #1 out2 = {in1[54:0] & (in2[54:0] | in3[54:0]) | + (in2[54:0] & in3[54:0]), cin}; +endmodule + +////////////// +// finaladd // +////////////// +module finaladd(rp, rm, r); + input [54:0] rp; + input [54:0] rm; + output [51:0] r; + + logic [54:0] diff; + + // this magic block performs the final addition for you + // to convert the positive and negative quotient digits + // into a normalized mantissa. It returns the 52 bit + // mantissa after shifting to guarantee a leading 1. + // You can assume this block operates in one cycle + // and do not need to budget it in your area and power + // calculations. + + // Since no rounding is performed, the result may be too + // small by one unit in the least significant place (ulp). + // The checker ignores such an error. + + assign #1 diff = rp - rm; + assign #1 r = diff[54] ? diff[53:2] : diff[52:1]; +endmodule + +///////////// +// counter // +///////////// +module counter(input logic clk, + input logic req, + output logic done); + + logic [5:0] count; + + // This block of control logic sequences the divider + // through its iterations. You may modify it if you + // build a divider which completes in fewer iterations. + // You are not responsible for the (trivial) circuit + // design of the block. + + always @(posedge clk) + begin + if (count == 54) done <= #1 1; + else if (done | req) done <= #1 0; + if (req) count <= #1 0; + else count <= #1 count+1; + end +endmodule + +/////////// +// clock // +/////////// +module clock(clk); + output clk; + + // Internal clk signal + logic clk; + +endmodule + +////////// +// testbench // +////////// +module testbench; + logic clk; + logic req; + logic done; + logic [51:0] a; + logic [51:0] b; + logic [51:0] r; + logic [54:0] rp, rm; // positive quotient digits + + // Test parameters + parameter MEM_SIZE = 40000; + parameter MEM_WIDTH = 52+52+52; + + `define memr 51:0 + `define memb 103:52 + `define mema 155:104 + + // Test logicisters + logic [MEM_WIDTH-1:0] Tests [0:MEM_SIZE]; // Space for input file + logic [MEM_WIDTH-1:0] Vec; // Verilog doesn't allow direct access to a + // bit field of an array + logic [51:0] correctr, nextr; + integer testnum, errors; + + // Divider + srt srt(clk, req, a, b, rp, rm); + + // Final adder converts quotient digits to 2's complement & normalizes + finaladd finaladd(rp, rm, r); + + // Counter + counter counter(clk, req, done); + + + initial + forever + begin + clk = 1; #17; + clk = 0; #16; + end + + + // Read test vectors from disk + initial + begin + testnum = 0; + errors = 0; + $readmemh ("testvectors", Tests); + Vec = Tests[testnum]; + a = Vec[`mema]; + b = Vec[`memb]; + nextr = Vec[`memr]; + req <= #5 1; + end + + // Apply directed test vectors read from file. + + always @(posedge clk) + begin + if (done) + begin + req <= #5 1; + $display("result was %h, should be %h\n", r, correctr); + if ((correctr - r) > 1) // check if accurate to 1 ulp + begin + errors = errors+1; + $display("failed\n"); + $stop; + end + if (a === 52'hxxxxxxxxxxxxx) + begin + $display("Tests completed successfully"); + $stop; + end + end + if (req) + begin + req <= #5 0; + correctr = nextr; + testnum = testnum+1; + Vec = Tests[testnum]; + $display("a = %h b = %h",a,b); + a = Vec[`mema]; + b = Vec[`memb]; + nextr = Vec[`memr]; + end + end + +endmodule +