From 4edb665d52e9ba9e55c4c43f84c40ed122058d84 Mon Sep 17 00:00:00 2001 From: onur Date: Mon, 13 Jul 2026 11:08:12 +0300 Subject: [PATCH] Add GPS integrity checks and GPS IMU ESKF fusion tools --- soc/software/bsp/drivers/plic.c | 16 +- soc/software/bsp/include/bsp/plic.h | 2 + soc/software/common/start.S | 2 + soc/software/fusion/.gitignore | 4 + soc/software/fusion/README.md | 367 + soc/software/fusion/compare_eskf_models.py | 419 + soc/software/fusion/compare_firmware_logs.py | 208 + soc/software/fusion/fusion_eskf.py | 655 + .../fusion/logs/gps_live_5min_20260713.csv | Bin 0 -> 258488 bytes .../fusion/logs/imu_live_5min_20260713.csv | 618 + soc/software/fusion/map_player.py | 526 + .../model_comparison.csv | 988 + .../model_comparison_scatter.png | Bin 0 -> 115754 bytes .../model_comparison_timeseries.png | Bin 0 -> 291454 bytes .../model_compare_5min_20260713/summary.txt | 19 + soc/software/fusion/requirements.txt | 4 + soc/software/fusion/serial_capture.py | 73 + soc/software/fusion/synthetic_firmware_ab.py | 144 + soc/software/fusion/tests/Makefile | 24 + .../tests/standalone_gps_integrity_test.c | 864 + soc/software/gps_system/Makefile | 10 + soc/software/gps_system/gps_test.c | 2 +- soc/software/gps_system/header/NavEquations.h | 52 +- .../header/gps_interrupt_handlers.h | 15 + .../gps_system/header/gps_ip_defines.h | 23 +- soc/software/gps_system/header/gps_macros.h | 4 +- .../gps_system/header/gps_time_anchor.h | 34 + soc/software/gps_system/header/linked_list.h | 11 +- soc/software/gps_system/src/NavEquations.c | 588 +- .../gps_system/src/gps_interrupt_handlers.c | 175 +- soc/software/gps_system/src/gps_ip.c | 342 +- soc/software/gps_system/src/gps_time_anchor.c | 88 + soc/software/gps_system/src/linked_list.c | 7 +- soc/software/gps_system/src/matrixLib.c | 10 +- soc/software/pmod_spi_test/Makefile | 7 +- soc/software/pmod_spi_test/build/bsp_init.c.o | Bin 1488 -> 1488 bytes soc/software/pmod_spi_test/build/bsp_irq.c.o | Bin 1736 -> 0 bytes soc/software/pmod_spi_test/build/bsp_plic.c.o | Bin 1528 -> 0 bytes .../pmod_spi_test/build/bsp_pmod_spi.c.o | Bin 8400 -> 8432 bytes .../pmod_spi_test/build/bsp_spi_flash.c.o | Bin 3640 -> 0 bytes .../pmod_spi_test/build/build_config.txt | 6 +- .../pmod_spi_test/build/common_start.S.o | Bin 2216 -> 2216 bytes .../pmod_spi_test/build/pmod_spi_test.c.o | Bin 7896 -> 24888 bytes .../pmod_spi_test/build/pmod_spi_test.dump | 28425 ++++++++-------- .../pmod_spi_test/build/pmod_spi_test.elf | Bin 104824 -> 107936 bytes .../pmod_spi_test/build/pmod_spi_test.img | Bin 42648 -> 45136 bytes .../pmod_spi_test/build/pmod_spi_test.map | 627 +- soc/software/pmod_spi_test/pmod_spi_test.c | 570 +- .../genesys2/flow/debug/gdb_load_and_run.gdb | 5 +- .../genesys2/tools/gen_genesys2_wrapper.py | 4 +- 50 files changed, 21581 insertions(+), 14357 deletions(-) create mode 100644 soc/software/fusion/.gitignore create mode 100644 soc/software/fusion/README.md create mode 100644 soc/software/fusion/compare_eskf_models.py create mode 100644 soc/software/fusion/compare_firmware_logs.py create mode 100644 soc/software/fusion/fusion_eskf.py create mode 100644 soc/software/fusion/logs/gps_live_5min_20260713.csv create mode 100644 soc/software/fusion/logs/imu_live_5min_20260713.csv create mode 100644 soc/software/fusion/map_player.py create mode 100644 soc/software/fusion/output/model_compare_5min_20260713/model_comparison.csv create mode 100644 soc/software/fusion/output/model_compare_5min_20260713/model_comparison_scatter.png create mode 100644 soc/software/fusion/output/model_compare_5min_20260713/model_comparison_timeseries.png create mode 100644 soc/software/fusion/output/model_compare_5min_20260713/summary.txt create mode 100644 soc/software/fusion/requirements.txt create mode 100644 soc/software/fusion/serial_capture.py create mode 100644 soc/software/fusion/synthetic_firmware_ab.py create mode 100644 soc/software/fusion/tests/Makefile create mode 100644 soc/software/fusion/tests/standalone_gps_integrity_test.c create mode 100644 soc/software/gps_system/header/gps_time_anchor.h create mode 100644 soc/software/gps_system/src/gps_time_anchor.c delete mode 100644 soc/software/pmod_spi_test/build/bsp_irq.c.o delete mode 100644 soc/software/pmod_spi_test/build/bsp_plic.c.o delete mode 100644 soc/software/pmod_spi_test/build/bsp_spi_flash.c.o diff --git a/soc/software/bsp/drivers/plic.c b/soc/software/bsp/drivers/plic.c index b67118e..d6db367 100644 --- a/soc/software/bsp/drivers/plic.c +++ b/soc/software/bsp/drivers/plic.c @@ -15,7 +15,21 @@ void bsp_plic_set_priority(uint32_t irq_id, uint32_t priority) void bsp_plic_enable(uint32_t irq_id) { - bsp_write32(PLIC_ENABLE0, bsp_read32(PLIC_ENABLE0) | (1u << irq_id)); + if (irq_id < 32u) { + bsp_write32(PLIC_ENABLE0, bsp_read32(PLIC_ENABLE0) | (1u << irq_id)); + } +} + +void bsp_plic_disable(uint32_t irq_id) +{ + if (irq_id < 32u) { + bsp_write32(PLIC_ENABLE0, bsp_read32(PLIC_ENABLE0) & ~(1u << irq_id)); + } +} + +void bsp_plic_disable_all(void) +{ + bsp_write32(PLIC_ENABLE0, 0u); } void bsp_plic_set_threshold(uint32_t threshold) diff --git a/soc/software/bsp/include/bsp/plic.h b/soc/software/bsp/include/bsp/plic.h index dcfa6fb..9bf7fd3 100644 --- a/soc/software/bsp/include/bsp/plic.h +++ b/soc/software/bsp/include/bsp/plic.h @@ -5,6 +5,8 @@ void bsp_plic_set_priority(uint32_t irq_id, uint32_t priority); void bsp_plic_enable(uint32_t irq_id); +void bsp_plic_disable(uint32_t irq_id); +void bsp_plic_disable_all(void); void bsp_plic_set_threshold(uint32_t threshold); uint32_t bsp_plic_claim(void); void bsp_plic_complete(uint32_t irq_id); diff --git a/soc/software/common/start.S b/soc/software/common/start.S index cf5a92a..a3e635a 100644 --- a/soc/software/common/start.S +++ b/soc/software/common/start.S @@ -1,6 +1,8 @@ .section .text.start, "ax", @progbits .globl _start _start: + /* Debug/JTAG may replace the RAM image without resetting Rocket's I-cache. */ + fence.i csrw mie, zero li t0, 0x8 csrc mstatus, t0 diff --git a/soc/software/fusion/.gitignore b/soc/software/fusion/.gitignore new file mode 100644 index 0000000..8121590 --- /dev/null +++ b/soc/software/fusion/.gitignore @@ -0,0 +1,4 @@ +__pycache__/ +*.py[cod] +*.swp +output/osm_tile_cache/ diff --git a/soc/software/fusion/README.md b/soc/software/fusion/README.md new file mode 100644 index 0000000..1a10403 --- /dev/null +++ b/soc/software/fusion/README.md @@ -0,0 +1,367 @@ +# Stationary GPS / ICM-4268x fusion + +Bu klasör Genesys2 kartından UART ile alınan GPS WLS konumlarını ve PMOD SPI +üzerindeki ICM-42686/ICM-42688 ölçümlerini Python'da işler. Filtre 15 hata +durumlu bir ESKF'dir: ENU konum/hız, quaternion tutum, ivmeölçer biası ve +jiroskop biası. Kartın durağan olduğu deneyde zero-velocity update (ZUPT) +uygulanır ve GPS innovation değerlerine aykırı-ölçüm kapısı konur. + +## Çalıştırma + +UART kaydı: + +```sh +python3 serial_capture.py --duration 60 --output logs/gps_60s.csv +python3 serial_capture.py --duration 75 --stop-text 'Complete:' \ + --output logs/imu_60s.csv +``` + +Mevcut logları işleme: + +```sh +python3 fusion_eskf.py +``` + +Sabit-kısıtlı ve hareket-kabiliyetli modelleri aynı kayıt üzerinde +karşılaştırma: + +```sh +python3 compare_eskf_models.py \ + --gps logs/gps_live_5min_20260713.csv \ + --imu logs/imu_live_5min_20260713.csv \ + --output output/model_compare_5min +``` + +Sabit model her IMU penceresinde zero-velocity ve zero-gyro ölçümü uygular. +Hareket-kabiliyetli model bunları sürekli uygulamaz; ivme normu ve gyro +normundan üç ardışık durağan pencere algıladığında etkinleştirir. PMOD testinin +UART çıktısı 500 ms pencere ortalaması olduğundan bu deney durağan gürültü ve +model davranışı karşılaştırmasıdır. Gerçek hareketli kullanım için ham veya +yüksek hızlı IMU örnekleri ile GPS ölçümleri aynı CPU sayacıyla firmware içinde +zaman damgalanmalıdır. + +Linux masaüstü OpenStreetMap oynatıcısını açma: + +```sh +python3 map_player.py +``` + +5 dakikalık sabit/adaptif model karşılaştırmasını doğrudan açma: + +```sh +python3 map_player.py \ + --comparison output/model_compare_5min_20260713/model_comparison.csv \ + --model adaptive +``` + +`--model fixed` aynı kaydı sürekli-stationary modelle gösterir. + +Pencerede oynat/duraklat, sample sürgüsü, 0.5–4x hız, zoom/pan, ham GPS ve +ESKF izleri bulunur. Tile'lar `output/osm_tile_cache/` altında cache edilir; +ilk açılışta harita tabanı için internet bağlantısı gerekir. + +## Deney sınırı + +İstenen akışta GPS ve IMU UART logları peş peşe toplandı. Kart durağan olduğu +için iki 0–60 s ekseni offline modellemede üst üste bindirilmiştir. Bu sonuç +durağan bias/noise ve konum kararlılığı deneyidir. Hareketli bir sistemde aynı +ESKF'nin anlamlı olması için GPS ve ham/decimate edilmiş IMU örnekleri aynı +firmware çalışmasında ortak donanım zaman damgasıyla kaydedilmelidir; 500 ms +ortalamalar hızlı dinamiği korumaz. + +## Standalone GPS WLS bütünlük çalışması (2026-07-12) + +Bu bölüm, standalone GPS konumundaki 20--30 m ve daha büyük sıçramaları +araştırmak için yapılan firmware karşılaştırmasını kaydeder. Karşılaştırılan +eski kaynak commit'i `07ddf29` (`first draft`) idi. Yeni kaynakta residual, +chi-square, covariance, validity, leave-one-out FDE, çalışma süresi ve ISR +tanıları bulunuyordu. + +### Karşılaştırma yöntemi + +GDB ile çalışan DTIM imajının üzerine başka bir ELF yazıldığında Rocket +I-cache'in eski firmware satırlarını yürütmeye devam ettiği gözlendi. Örneğin +`0x80002f58` adresi eski ELF'te `gps_pps_init`, yeni ELF'te ise +`gps_process_isr_events` içindeydi; access-fault anındaki return address yeni +ELF anlamına uyuyordu. `fence.i` stub'ı çalıştırılması da bu kart/akışta +güvenilir bir hot-load sağlamadı. + +Bu nedenle aşağıdaki A/B ölçümlerinde GDB hot-load kullanılmadı: + +1. İlgili ELF bootloader formatındaki application flash image'a çevrildi. +2. Image `0x01800000` application flash bölgesine yazıldı. +3. FPGA SRAM aynı bitstream ile yeniden programlandı. +4. Bootloader ELF'i flash'tan DTIM'e kopyaladı; ilk I-cache dolumu ile RAM + imajının aynı firmware olması sağlandı. +5. İlk konum çözümü acquisition süresinden sonra beklendi. +6. Kart ve anten sabitken 300 saniyelik UART kaydı alındı. + +Sapmalar surveyed bir koordinata göre değil, her koşunun kendi medyan +konumuna göre hesaplandı. Bu nedenle aşağıdaki değerler mutlak doğruluktan +çok durağan konum dağılımını/hassasiyetini gösterir. Farklı koşulardaki uydu +sayısı ve DOP ayrıca belirtilmiştir. + +### Kullanılan imajlar ve loglar + +- Exact eski ELF: `artifacts/firmware_ab/gps_old.elf` +- FDE açık yeni ELF: `artifacts/firmware_ab/gps_new.elf` +- FDE kapalı yeni ELF: `artifacts/firmware_ab/gps_new_fde_off.elf` +- Eski log: `logs/ab_live_old_5min.csv` +- FDE açık yeni log: `logs/ab_live_new_5min.csv` +- FDE kapalı yeni log: `logs/ab_live_new_fde_off_5min.csv` +- Uydu/FDE gruplu sonuç: `output/firmware_ab_live_5min_by_satellites.csv` +- FDE kapalı karşılaştırma: `output/firmware_ab_live_fde_off_5min_by_satellites.csv` +- Analiz programı: `compare_firmware_logs.py` + +FDE kapalı ELF SHA-256: + +```text +23e2d5be11ab0bf23213c5253b4213277f11e5785d90484c9d624b4fcae944dc +``` + +FDE kapalı 5 dakika log SHA-256: + +```text +c2815c0cf3e7f76dd0a19db9526421355d6699c4bc1edc6407fde496e09bafc8 +``` + +### Canlı A/B sonuçları + +| Firmware/çözüm | Kullanılabilir uydu | Örnek | Yatay ort. | Yatay P95 | Yatay maks. | Düşey mutlak ort. | 3B P95 | 3B maks. | +|---|---:|---:|---:|---:|---:|---:|---:|---:| +| Eski firmware | 8 | 485 | 6.01 m | 11.70 m | 20.79 m | 9.60 m | 25.05 m | 38.97 m | +| Yeni, FDE açık, tümü | çoğunlukla 7 | 300 | 9.71 m | 30.34 m | 44.90 m | 16.43 m | 78.95 m | 128.96 m | +| Yeni, FDE açık ama FDE seçilmeyen epoch | 7 | 231 | 6.84 m | 13.41 m | 17.33 m | 10.85 m | 28.03 m | 37.80 m | +| Yeni, FDE tarafından 7'den 6'ya düşürülen epoch | 7 -> 6 | 68 | 19.22 m | 37.09 m | 44.90 m | 34.52 m | 108.30 m | 128.96 m | +| Yeni, FDE compile-time kapalı | 7 | 300 | 8.64 m | 16.74 m | 22.56 m | 14.34 m | 40.90 m | 88.73 m | + +DOP medyanları aynı değildi: + +| Koşu | HDOP | VDOP | +|---|---:|---:| +| Eski, 8 uydu | 1.222 | 1.991 | +| Yeni, FDE açık | 1.339 | 2.102 | +| Yeni, FDE kapalı | 1.642 | 2.852 | + +FDE kapalı koşu daha kötü geometriye rağmen FDE açık toplam sonuçtan daha +kararlıydı. Yatay P95 `30.34 m`den `16.74 m`ye, yatay maksimum `44.90 m`den +`22.56 m`ye ve 3B P95 `78.95 m`den `40.90 m`ye düştü. + +### FDE teşhisi ve alınan karar + +FDE açık koşuda 300 epoch'un 68'inde (%22.7) leave-one-out FDE uygulandı. +99% chi-square kapısının nominal false-alarm oranı yaklaşık %1 olmalıydı. +Çıkarılan uydu tek bir SVID değildi: SVID 13, 19, 20, 21, 6 ve 29 farklı +epoch'larda seçildi. Bu davranış tek ve sürekli arızalı bir uydudan çok, +measurement sigma/covariance modelinin gerçek tracking gürültüsü ve +multipath'i küçümsemesiyle uyumludur. + +FDE açık koşuda exclusion içeren ardışık konum çiftlerinin 3B step ortalaması +`47.40 m`, FDE içermeyen çiftlerde `18.45 m` idi. Bazı kötü FDE seçimleri +integrity-valid olarak işaretlendi. Altı uydu için FDE daha önce sentetik +testte ayrıca engellenmişti; çünkü 6 -> 5 leave-one-out çözümü yalnız bir +residual serbestlik derecesi bırakıp 123 m hatalı bir çözümü geçerli +gösterebilmişti. + +Ürün firmware'inde otomatik FDE seçimi şu anda compile-time kapalıdır: + +```c +#define GPS_NAV_ENABLE_FDE 0u +``` + +Full-WLS konumu üretilmeye devam eder. Post-fit residual, chi-square, DOF, +threshold, covariance, hAcc/vAcc ve validity hesapları/logları korunur. +Chi-square fail eden çözüm konum olarak görülebilir fakat `valid=0` olur; +PPS ve sonraki WLS seed'i invalid çözümle güncellenmez. + +FDE kapalı koşuda: + +- 300/300 epoch'ta `fde=0` ve `fde_trials=0`; +- 235/300 epoch integrity-valid (%78.3); +- ISR overflow, PLIC repeat, drain-limit, coalesced event, satellite loss ve + period overrun sayaçları sıfır; +- maksimum foreground süresi 288.74 ms; +- maksimum WLS süresi 28.11 ms; +- 1 saniyelik/50 milyon cycle bütçe hiç aşılmadı. + +FDE ancak C/N0, tracking variance, URA, elevation ve multipath bileşenlerinden +kalibre edilmiş absolute measurement sigma üretildikten; normalized residual, +solution separation, exclusion uniqueness ve zaman hysteresis'i eklendikten +sonra yeniden açılmalıdır. + +## Eski firmware'deki kalıcı 0.2 s TOW faz hatası + +### Ölçüm kanıtı + +Eski firmware acquisition logunun ilk çözümü 5 uyduyla yapıldı ve bu ilk +epoch'ta bütün TOW değerleri `64620.200 s` idi. SVID 6 daha sonra tracking +kanalı 7'ye bağlandı. Sekiz uydulu 5 dakika kaydında: + +- 485 epoch'un 485'i TOW-incoherent idi; +- çoğunluk TOW ile SVID 6 arasındaki fark her epoch'ta tam `-0.200 s` idi; +- ilk epoch: çoğunluk `64634.200`, SVID 6 `64634.000`; +- son epoch: çoğunluk `64933.400`, SVID 6 `64933.200`; +- sonraki subframe/HOW alımları farkı düzeltmedi. + +Dolayısıyla hata geçici değildi. SVID 6 çözümde kaldığı sürece uydu konumu +0.2 saniye yanlış epoch için hesaplandı. Bunun alıcı WLS konumuna etkisi uydu +geometrisine bağlıdır; iki firmware medyanı arasındaki 3B fark bu nedenle +mutlak doğruluk ölçümü olarak yorumlanamaz. + +Yeni 1 saniyelik koşuların her ikisinde de 300/300 epoch TOW-coherent idi; +`tow_aligned=0` ve `tow_rejected=0` kaldı. Bu, eski hatanın her bootta zorunlu +olmadığını fakat kanal geç katıldığında kalıcı olabildiğini gösterir. + +### Kök mekanizma + +Mevcut yazılım her tracking kanalı için ayrı TOW state'i yürütüyor: + +1. Kanal önce LNAV HOW alanından TOW alıyor. +2. İlk nav-solve interrupt'ında TOW ownership `HOW` kaynağından + `NAV_SOLVE` kaynağına geçiriliyor. +3. Bundan sonra kanal TOW'u recursively + `tow += event_count * NAV_SOLVE_TIMER * 20 ms` ile artırılıyor. +4. Ownership geçtikten sonra daha sonraki HOW değerleri TOW'u yeniden + anchor etmiyor. + +Kanalın enable/ilk interrupt sınırında bir tick off-by-one oluşursa bütün +sonraki artışlar doğru miktarda fakat yanlış başlangıçtan yapılır; sabit faz +hatası bu yüzden kalıcı olur. Log, SVID 6'nın geç katıldığını ve hatanın tam +bir eski nav periodu olduğunu kanıtlıyor. İlk yanlış tick'in enable/flag +sıralamasından mı yoksa aynı olayda HOW ve nav-solve işlenmesinden mi geldiği +geçiş anı iki UART dosyası arasındaki kısa boşlukta kaldığı için logdan tek +başına kesinleştirilemiyor. Ancak recursive kanal-bağımsız TOW mimarisinin +hatayı kendi kendine düzeltemediği kesindir. + +IS-GPS-200N'e göre HOW içindeki TOW sayacı bir sonraki subframe'in başlangıç +zamanını ifade eder. Kodun `(HOW >> 13) * 6` dönüşümü bu 6 saniyelik değeri +üretir. Kalıcı düzeltme, bu absolute yayın zamanını yalnız ilk başlangıç için +değil sürekli time anchor olarak kullanmalıdır. Referans: +, bölüm 3.3.4 ve +20.3.3.2. + +### Uygulanan kalıcı TOW mimarisi + +2026-07-12'de kanal başına recursive TOW artışı kaldırıldı ve aşağıdaki +HOW/receiver-sample anchor modeli ürün firmware'ine uygulandı. Snapshot'ta +azınlık TOW'unu çoğunluğa kopyalayan geçici recovery yolu da kaldırıldı: + +1. Her geçerli LNAV subframe sonunda kanal için şu anchor saklanır: + `how_tow`, `how_week`, `how_abs_sample_raw`, düzeltilmiş + `how_abs_sample` ve anchor-valid bilgisi. +2. HOW TOW bir sonraki subframe başlangıcını gösterdiği ve nav-bits event'i + alınan subframe'in sonuna karşılık geldiği için bu ikisi aynı zaman + sınırında anchor edilir. RTL incelemesinde `bit_gen.sv` içindeki + `absolute_sample_o` değerinin geçerli 20 ms bit sınırında üretildiği ve + `tracking_wrapper.sv` içindeki `load_sigs` yolunun geçerli/pariteli + subframe'de `ABS_SAMPLE` ile `REM_CODE_PHASE`'ı birlikte latch ettiği + doğrulandı. +3. Her nav-solve ölçümünün TOW'u önceki nav-solve TOW'una ekleme yapılarak + değil, son HOW anchor'ından tekrar hesaplanır: + + ```text + delta_samples = signed_wrap(nav_abs_sample - how_abs_sample) + measurement_tow = normalize(how_tow + delta_samples / 16_368_000) + ``` + + `REM_CODE_PHASE` düzeltmesi iki uçta da hesaba katılmalıdır. 32-bit + `ABS_SAMPLE` farkı signed/wrapped alınmalıdır; anchor 6 saniyede bir + yenilendiği için wrap belirsizliği oluşmaz. +4. Aynı interrupt'ta hem nav-bits hem nav-solve flag varsa önce HOW anchor + güncellenir; nav-solve için `delta_samples=0` olur. Eski koddaki koşulsuz + `+period` off-by-one riski ortadan kalkar. +5. Anchor yaşı, subframe/parity geçerliliği ve finite/range kontrolleri + zorunlu yapıldı. Geçerli anchor olmayan veya 12 saniyeden eski anchor'a + sahip kanalın nav-solve ölçümü kabul edilmez. +6. `gps_tow_source` ownership state'i ve + `gps_advance_tow_from_nav_timer()` kaldırılır. Interrupt count yalnız event + kaybı tanısı için tutulur, absolute GPS zamanının kaynağı olmaz. +7. Coherent snapshot kontrolü son savunma olarak kalır; fark görülürse epoch + veya problemli kanal reject edilir. TOW değeri sessizce başka kanalın + değeriyle değiştirilmez. + +Üretim kodu `header/gps_time_anchor.h` ve `src/gps_time_anchor.c` içindedir. +`parse_subframe()` artık TOW state'ini değiştirmez; yalnız HOW TOW değerini +dışarı verir. `gps_time_from_sample_anchor()` her nav-solve için GPS zamanını +son HOW ve iki receiver-sample latch'i arasındaki farktan baştan üretir. + +Uygulanan birim testler: + +- HOW ile aynı anda gelen ilk nav-solve (`delta=0`); +- 200 ms ve 1 s sonraki nav-solve; +- geç enable edilen kanal; +- bir veya birkaç coalesced/missed interrupt; +- 32-bit `ABS_SAMPLE` wrap; +- GPS week rollover; +- stale HOW anchor; +- aynı coherent epoch'ta bütün kanalların TOW farkının tolerans içinde olması. + +Host testleri normal optimizasyonla ve AddressSanitizer/UndefinedBehaviorSanitizer +ile geçti. 50 MHz Rocket ürün build'i de başarılı oldu. Yeni anchor fonksiyonları +ELF'te toplam yaklaşık 264 bayt text alanı kullanıyor; 1 Hz'de kanal başına bir +kez çalıştığı için WLS yanında CPU etkisi ihmal edilebilir düzeydedir. + +### Flash-boot donanım doğrulaması + +GDB hot-load kullanılmadan yeni ELF application flash bölgesine yazıldı ve +FPGA yeniden programlanarak bootloader üzerinden temiz DTIM/I-cache başlangıcı +yapıldı. Kullanılan dosyalar: + +- `artifacts/firmware_ab/gps_new_how_anchor_fde_off.elf` +- `artifacts/firmware_ab/gps_new_how_anchor_fde_off.flash.bin` +- `logs/how_anchor_acquisition.csv` +- `logs/how_anchor_fde_off_5min.csv` +- `output/firmware_ab_how_anchor_fde_off_5min_by_satellites.csv` + +ELF SHA-256: + +```text +fb1de03aafacf46d95bde375f3f744635472e9893a9aff6f3c3db9a16444c5ce +``` + +5 dakika log SHA-256: + +```text +82b08bd35d4452f92db6af609b2a03db2ff7b8f78443414ca7a0238c3cb603ed +``` + +Acquisition sırasında bir kanal diğerlerinden altı nav-solve epoch daha geç +katıldı (`seq=8`, diğer kanallar `seq=14`). Buna rağmen ortak ölçüm epoch'unda +bütün kanallar `67640.000 s` TOW üretti; eski yazılımdaki `-0.200 s` kalıcı +faz farkı yeniden oluşmadı. + +5 dakikalık sabit anten ölçümü: + +| Metrik | Sonuç | +|---|---:| +| NAV çözümü | 300 | +| Kanal zaman ölçümü | 2100 | +| TOW yayılımı P95 | 19 us | +| TOW yayılımı maksimum | 33 us | +| 1 ms üstü TOW epoch'u | 0 | +| `tow_mismatch` / `tow_rejected` | 0 / 0 | +| ISR overflow / PLIC repeat / drain limit | 0 / 0 / 0 | +| Coalesced / lost / period overrun | 0 / 0 / 0 | +| Integrity-valid | 270/300 (%90.0) | +| FDE uygulanması | 0/300 | +| Maksimum foreground / WLS | 290.13 ms / 28.34 ms | +| HDOP / VDOP medyan | 1.511 / 2.407 | +| Yatay ortalama / P95 / maksimum | 8.34 m / 16.36 m / 24.93 m | +| 3B P95 | 32.64 m | + +FDE kapalı önceki yeni-firmware koşusu yatay ortalama/P95 olarak +`8.64/16.74 m`, HOW-anchor koşusu `8.34/16.36 m` verdi. Dolayısıyla FDE +kapatılınca full-WLS dağılımı eski firmware'e yakın seviyeye döndü. Eski +firmware 8 uydu ve daha iyi geometriyle `6.01/11.70 m`, yeni koşu çoğunlukla +7 uyduyla `8.34/16.36 m` üretti. Bu farkın tamamı algoritma farkı sayılamaz; +koşuların uydu sayıları/DOP'ları farklıdır ve surveyed ground truth yoktur. +FDE açık yeni koşunun `9.71/30.34 m` toplam sonucu ise belirgin daha kötüydü. + +Not: Eski logdaki hata `0.2 ms` değil, `0.2 s = 200 ms` idi. Yeni ölçümdeki +en büyük kanallar arası TOW farkı 33 us, yani 0.033 ms oldu. + +### Son savunma + +Anchor düzeltmesine rağmen TOW farkı görülürse epoch invalid/reject edilir. +SVID'e özel `+0.2 s` eklenmez ve azınlık TOW'u çoğunluğa kopyalanmaz; böylece +başka kanal veya başka nav periodundaki gerçek zaman hatası gizlenmez. diff --git a/soc/software/fusion/compare_eskf_models.py b/soc/software/fusion/compare_eskf_models.py new file mode 100644 index 0000000..9e72264 --- /dev/null +++ b/soc/software/fusion/compare_eskf_models.py @@ -0,0 +1,419 @@ +#!/usr/bin/env python3 +"""Compare fixed-stationary and motion-capable ESKF models on UART logs. + +The current board applications emit GPS and IMU in separate runs. Their +firmware/host elapsed axes are therefore replayed from t=0 for this explicitly +stationary experiment. This is useful for noise/model comparison, but it is +not a synchronized moving-platform fusion data set. +""" + +from __future__ import annotations + +import argparse +import csv +import math +import re +from dataclasses import dataclass +from pathlib import Path + +import matplotlib + +matplotlib.use("Agg") +import matplotlib.pyplot as plt +import numpy as np + +from fusion_eskf import ( + G, + StationaryEskf, + align_quat, + geodetic_to_ecef, + robust_sigma, +) + + +POSITION_RE = re.compile( + r"position\s+lat=(?P[-+0-9.eE]+)\s+lon=(?P[-+0-9.eE]+)" + r"(?:\s+height=(?P[-+0-9.eE]+))?" +) +GDOP_RE = re.compile(r"(?:DOP\s+)?GDOP=(?P[-+0-9.eE]+)") +TRACKED_RE = re.compile(r"tracked satellites=(?P[0-9]+)") +IMU_RE = re.compile( + r"(?P[0-9]+\.[0-9]+)\s+s\s+\|\s+samples=\s*(?P[0-9]+)\s+" + r"total=\s*(?P[0-9]+)\s+\|\s+Temp=\s*(?P[-+0-9.]+)\s+C\s+\|\s+" + r"Accel\[g\]\s+X=\s*(?P[-+0-9.]+)\s+Y=\s*(?P[-+0-9.]+)\s+" + r"Z=\s*(?P[-+0-9.]+)\s+\|\s+Gyro\[dps\]\s+" + r"X=\s*(?P[-+0-9.]+)\s+Y=\s*(?P[-+0-9.]+)\s+Z=\s*(?P[-+0-9.]+)" +) + + +@dataclass +class Gps: + t: float + unix_s: float + lat: float + lon: float + height: float + gdop: float + tracked: int + + +@dataclass +class Imu: + t: float + unix_s: float + samples: int + accel: np.ndarray + gyro: np.ndarray + + +def rows(path: Path): + with path.open(newline="", encoding="utf-8") as stream: + yield from csv.DictReader(stream) + + +def parse_gps(path: Path) -> list[Gps]: + result: list[Gps] = [] + gdop = math.nan + tracked = 0 + for row in rows(path): + line = row["uart_line"] + match = GDOP_RE.search(line) + if match: + gdop = float(match["gdop"]) + match = TRACKED_RE.search(line) + if match: + tracked = int(match["tracked"]) + match = POSITION_RE.search(line) + if not match: + continue + height_text = match["height"] + result.append( + Gps( + t=float(row["host_monotonic_s"]), + unix_s=float(row["host_unix_s"]), + lat=float(match["lat"]), + lon=float(match["lon"]), + height=float(height_text) if height_text is not None else 0.0, + gdop=gdop, + tracked=tracked, + ) + ) + if len(result) < 4: + raise ValueError(f"only {len(result)} GPS positions found in {path}") + start = result[0].t + for sample in result: + sample.t -= start + return result + + +def parse_imu(path: Path) -> list[Imu]: + result: list[Imu] = [] + for row in rows(path): + line = row["uart_line"] + # A GDB restart can leave a few lines from the previous run in the + # host UART buffer. The firmware's capture banner is the unambiguous + # beginning of the data set; discard anything seen before the latest + # banner. + if "Starting " in line and " s capture:" in line: + result.clear() + continue + match = IMU_RE.search(line) + if not match: + continue + result.append( + Imu( + t=float(match["t"]), + unix_s=float(row["host_unix_s"]), + samples=int(match["n"]), + accel=G + * np.array( + [float(match["ax"]), float(match["ay"]), float(match["az"])] + ), + gyro=np.deg2rad( + [float(match["gx"]), float(match["gy"]), float(match["gz"])] + ), + ) + ) + if len(result) < 4: + raise ValueError(f"only {len(result)} IMU windows found in {path}") + start = result[0].t + for sample in result: + sample.t -= start + return result + + +def gps_to_enu(gps: list[Gps]): + lat0 = float(np.median([x.lat for x in gps])) + lon0 = float(np.median([x.lon for x in gps])) + # The current level-2 firmware omits height, so this comparison is 2-D. + h0 = float(np.median([x.height for x in gps])) + origin = geodetic_to_ecef([lat0], [lon0], [h0])[0] + xyz = geodetic_to_ecef( + [x.lat for x in gps], [x.lon for x in gps], [x.height for x in gps] + ) + lat = math.radians(lat0) + lon = math.radians(lon0) + rotation = np.array( + [ + [-math.sin(lon), math.cos(lon), 0.0], + [ + -math.sin(lat) * math.cos(lon), + -math.sin(lat) * math.sin(lon), + math.cos(lat), + ], + [ + math.cos(lat) * math.cos(lon), + math.cos(lat) * math.sin(lon), + math.sin(lat), + ], + ] + ) + return (xyz - origin) @ rotation.T, (lat0, lon0, h0) + + +class HorizontalEskf(StationaryEskf): + """The shared 15-state ESKF with a horizontal-only GPS update.""" + + def gps_update_2d(self, position, gate=13.816): + h = np.zeros((2, 15)) + h[:, 0:2] = np.eye(2) + residual = np.asarray(position)[0:2] - self.p[0:2] + r = self.gps_r[0:2, 0:2] + innovation = h @ self.p_cov @ h.T + r + mahalanobis = float(residual @ np.linalg.solve(innovation, residual)) + if not math.isfinite(mahalanobis) or mahalanobis > gate: + self.rejected_gps += 1 + return False, mahalanobis + self._update(residual, h, r) + self.accepted_gps += 1 + return True, mahalanobis + + +def stationary_detector(accel, gyro, accel_limit=0.15, gyro_limit=math.radians(1.0)): + return ( + abs(float(np.linalg.norm(accel)) - G) <= accel_limit + and float(np.linalg.norm(gyro)) <= gyro_limit + ) + + +def run_model(gps, imu, enu, mode, calibration): + accel, gyro, attitude, accel_sigma, gyro_sigma, gps_sigma, initial = calibration + eskf = HorizontalEskf(initial, attitude, accel_sigma, gyro_sigma, gps_sigma) + events = [(x.t, 0, i) for i, x in enumerate(imu)] + events += [(x.t, 1, i) for i, x in enumerate(gps)] + events.sort() + current_accel = accel[0] + current_gyro = gyro[0] + last_t = 0.0 + detector_run = 0 + stationary_windows = 0 + zupt_updates = 0 + output = [] + + for t, kind, index in events: + eskf.propagate(current_accel, current_gyro, t - last_t) + last_t = t + if kind == 0: + current_accel = accel[index] + current_gyro = gyro[index] + detected = stationary_detector(current_accel, current_gyro) + detector_run = detector_run + 1 if detected else 0 + stationary_windows += int(detected) + apply_constraint = mode == "fixed" or detector_run >= 3 + if apply_constraint: + eskf.zero_velocity_update(sigma=0.03) + eskf.zero_gyro_update( + current_gyro, np.maximum(gyro_sigma, math.radians(0.003)) + ) + zupt_updates += 1 + else: + accepted, nis = eskf.gps_update_2d(enu[index]) + output.append( + { + "t": t, + "raw": enu[index].copy(), + "fused": eskf.p.copy(), + "velocity": eskf.v.copy(), + "accepted": accepted, + "nis": nis, + } + ) + return eskf, output, stationary_windows, zupt_updates + + +def calibrate(gps, imu, enu): + accel = np.vstack([x.accel for x in imu]) + gyro = np.vstack([x.gyro for x in imu]) + attitude = align_quat(np.median(accel, axis=0), [0.0, 0.0, 1.0]) + accel_sigma = np.array([robust_sigma(accel[:, i], 0.02) for i in range(3)]) + gyro_sigma = np.array( + [robust_sigma(gyro[:, i], math.radians(0.003)) for i in range(3)] + ) + gps_sigma = np.array( + [robust_sigma(enu[:, i], 1.0 if i < 2 else 3.0) for i in range(3)] + ) + center = np.median(enu[:, 0:2], axis=0) + plausible = np.linalg.norm(enu[:, 0:2] - center, axis=1) < 10_000.0 + first = int(np.flatnonzero(plausible)[0]) if np.any(plausible) else 0 + initial = enu[first].copy() + initial[2] = 0.0 + return accel, gyro, attitude, accel_sigma, gyro_sigma, gps_sigma, initial + + +def centered_metrics(values): + center = np.median(values, axis=0) + radius = np.linalg.norm(values - center, axis=1) + return { + "rms": float(np.sqrt(np.mean(radius**2))), + "p95": float(np.percentile(radius, 95)), + "max": float(np.max(radius)), + "std_e": float(np.std(values[:, 0], ddof=1)), + "std_n": float(np.std(values[:, 1], ddof=1)), + } + + +def write_csv(path, gps, fixed, adaptive): + with path.open("w", newline="", encoding="utf-8") as stream: + writer = csv.writer(stream) + writer.writerow( + [ + "t_s", "lat_deg", "lon_deg", "gdop", "tracked", "height_m", + "gps_e_m", "gps_n_m", "fixed_e_m", "fixed_n_m", + "adaptive_e_m", "adaptive_n_m", "fixed_speed_mps", + "adaptive_speed_mps", "fixed_gps_accepted", + "adaptive_gps_accepted", "fixed_nis", "adaptive_nis", + ] + ) + for sample, a, b in zip(gps, fixed, adaptive): + writer.writerow( + [ + sample.t, sample.lat, sample.lon, sample.gdop, sample.tracked, + sample.height, + *a["raw"][0:2], *a["fused"][0:2], *b["fused"][0:2], + np.linalg.norm(a["velocity"]), np.linalg.norm(b["velocity"]), + int(a["accepted"]), int(b["accepted"]), a["nis"], b["nis"], + ] + ) + + +def plot(path, fixed, adaptive): + time = np.array([x["t"] for x in fixed]) + raw = np.vstack([x["raw"] for x in fixed])[:, 0:2] + fixed_p = np.vstack([x["fused"] for x in fixed])[:, 0:2] + adaptive_p = np.vstack([x["fused"] for x in adaptive])[:, 0:2] + center = np.median(raw, axis=0) + raw_radius = np.linalg.norm(raw - center, axis=1) + fixed_radius = np.linalg.norm(fixed_p - np.median(fixed_p, axis=0), axis=1) + adaptive_radius = np.linalg.norm( + adaptive_p - np.median(adaptive_p, axis=0), axis=1 + ) + + fig, axes = plt.subplots(2, 1, figsize=(11, 8), sharex=True) + axes[0].plot(time, raw_radius, color="0.65", lw=0.8, label="Ham GPS") + axes[0].plot(time, fixed_radius, color="tab:blue", label="Sabit model") + axes[0].plot(time, adaptive_radius, color="tab:orange", label="Hareketli/adaptif model") + axes[0].set_ylabel("Medyan merkezden yatay uzaklık [m]") + fixed_speed = np.linalg.norm( + np.vstack([x["velocity"] for x in fixed]), axis=1 + ) + adaptive_speed = np.linalg.norm( + np.vstack([x["velocity"] for x in adaptive]), axis=1 + ) + axes[1].plot(time, fixed_speed, color="tab:blue", label="Sabit model") + axes[1].plot(time, adaptive_speed, color="tab:orange", label="Hareketli/adaptif model") + axes[1].set_ylabel("Tahmin edilen hız [m/s]") + axes[1].set_xlabel("Geçen süre [s]") + for axis in axes: + axis.grid(alpha=0.25) + axis.legend() + fig.suptitle("Durağan kart: sabit ve hareket-kabiliyetli ESKF karşılaştırması") + fig.tight_layout() + fig.savefig(path, dpi=170) + plt.close(fig) + + +def plot_scatter(path, fixed, adaptive): + raw = np.vstack([x["raw"] for x in fixed])[:, 0:2] + fixed_p = np.vstack([x["fused"] for x in fixed])[:, 0:2] + adaptive_p = np.vstack([x["fused"] for x in adaptive])[:, 0:2] + center = np.median(raw, axis=0) + radius = max(20.0, float(np.percentile(np.linalg.norm(raw - center, axis=1), 99))) + fig, axis = plt.subplots(figsize=(8, 8)) + axis.scatter(raw[:, 0], raw[:, 1], s=7, alpha=0.25, color="0.4", label="Ham GPS") + axis.plot(fixed_p[:, 0], fixed_p[:, 1], lw=1.4, color="tab:blue", label="Sabit model") + axis.plot(adaptive_p[:, 0], adaptive_p[:, 1], lw=1.2, color="tab:orange", label="Hareketli/adaptif") + axis.set_xlim(center[0] - 1.15 * radius, center[0] + 1.15 * radius) + axis.set_ylim(center[1] - 1.15 * radius, center[1] + 1.15 * radius) + axis.set_aspect("equal", adjustable="box") + axis.set_xlabel("East [m]") + axis.set_ylabel("North [m]") + axis.grid(alpha=0.25) + axis.legend() + axis.set_title("Yatay saçılım (merkezi %99 görünüm)") + fig.tight_layout() + fig.savefig(path, dpi=170) + plt.close(fig) + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("--gps", type=Path, required=True) + parser.add_argument("--imu", type=Path, required=True) + parser.add_argument("--output", type=Path, default=Path("output/model_compare")) + args = parser.parse_args() + args.output.mkdir(parents=True, exist_ok=True) + + gps = parse_gps(args.gps) + imu = parse_imu(args.imu) + duration = min(gps[-1].t, imu[-1].t) + gps = [x for x in gps if x.t <= duration] + imu = [x for x in imu if x.t <= duration] + enu, reference = gps_to_enu(gps) + calibration = calibrate(gps, imu, enu) + fixed_eskf, fixed, fixed_detected, fixed_zupt = run_model( + gps, imu, enu, "fixed", calibration + ) + adaptive_eskf, adaptive, adaptive_detected, adaptive_zupt = run_model( + gps, imu, enu, "adaptive", calibration + ) + + raw = np.vstack([x["raw"] for x in fixed])[:, 0:2] + fixed_p = np.vstack([x["fused"] for x in fixed])[:, 0:2] + adaptive_p = np.vstack([x["fused"] for x in adaptive])[:, 0:2] + raw_m = centered_metrics(raw) + fixed_m = centered_metrics(fixed_p) + adaptive_m = centered_metrics(adaptive_p) + gps_steps = np.linalg.norm(np.diff(raw, axis=0), axis=1) + imu_rate = len(imu) / max(imu[-1].t - imu[0].t, 1e-9) + gps_rate = len(gps) / max(gps[-1].t - gps[0].t, 1e-9) + lines = [ + "Fixed-stationary vs motion-capable ESKF", + "========================================", + f"Common replay duration: {duration:.3f} s", + f"GPS: {len(gps)} samples, mean rate {gps_rate:.3f} Hz", + f"IMU: {len(imu)} windows, mean rate {imu_rate:.3f} Hz, underlying samples {sum(x.samples for x in imu)}", + "Timing: separate stationary captures replayed from t=0 (not hardware-synchronized)", + "GPS update dimensions: 2-D horizontal (current level-2 firmware log has no height)", + f"ENU reference: lat={reference[0]:.10f}, lon={reference[1]:.10f}", + f"GPS max consecutive horizontal step: {np.max(gps_steps):.3f} m", + f"Raw GPS centered horizontal RMS/P95/max: {raw_m['rms']:.3f} / {raw_m['p95']:.3f} / {raw_m['max']:.3f} m", + f"Fixed model centered horizontal RMS/P95/max: {fixed_m['rms']:.3f} / {fixed_m['p95']:.3f} / {fixed_m['max']:.3f} m", + f"Adaptive model centered horizontal RMS/P95/max: {adaptive_m['rms']:.3f} / {adaptive_m['p95']:.3f} / {adaptive_m['max']:.3f} m", + f"Fixed GPS accepted/rejected: {fixed_eskf.accepted_gps}/{fixed_eskf.rejected_gps}", + f"Adaptive GPS accepted/rejected: {adaptive_eskf.accepted_gps}/{adaptive_eskf.rejected_gps}", + f"IMU stationary detector true: {adaptive_detected}/{len(imu)} ({100.0 * adaptive_detected / len(imu):.2f}%)", + f"ZUPT updates fixed/adaptive: {fixed_zupt}/{adaptive_zupt}", + f"Final speed fixed/adaptive: {np.linalg.norm(fixed_eskf.v):.6f} / {np.linalg.norm(adaptive_eskf.v):.6f} m/s", + "Adaptive model uses a 3-window stationary decision; it does not assume zero velocity while motion is detected.", + "No surveyed truth is available: scatter measures precision, not absolute position accuracy.", + ] + summary = "\n".join(lines) + "\n" + (args.output / "summary.txt").write_text(summary, encoding="utf-8") + write_csv(args.output / "model_comparison.csv", gps, fixed, adaptive) + plot(args.output / "model_comparison_timeseries.png", fixed, adaptive) + plot_scatter(args.output / "model_comparison_scatter.png", fixed, adaptive) + print(summary, end="") + + +if __name__ == "__main__": + main() diff --git a/soc/software/fusion/compare_firmware_logs.py b/soc/software/fusion/compare_firmware_logs.py new file mode 100644 index 0000000..a1d98f5 --- /dev/null +++ b/soc/software/fusion/compare_firmware_logs.py @@ -0,0 +1,208 @@ +#!/usr/bin/env python3 +"""Compare stationary GPS firmware UART logs, grouped by satellite count.""" + +from __future__ import annotations + +import argparse +import csv +import math +import re +import statistics +from pathlib import Path + + +POSITION_RE = re.compile( + r"position lat=(?P[-+0-9.eE]+) " + r"lon=(?P[-+0-9.eE]+) height=(?P[-+0-9.eE]+)" +) +RUNNING_RE = re.compile(r"navigation software running with (?P\d+) satellites") +NAVSOL_RE = re.compile( + r"NAVSOL valid=(?P[01]).*?fde=(?P[01]).*?" + r"sats=(?P\d+)/(?P\d+)" +) + + +def percentile(values: list[float], percentage: float) -> float: + if not values: + return math.nan + ordered = sorted(values) + position = (len(ordered) - 1) * percentage / 100.0 + lower = math.floor(position) + upper = math.ceil(position) + if lower == upper: + return ordered[lower] + fraction = position - lower + return ordered[lower] * (1.0 - fraction) + ordered[upper] * fraction + + +def parse_log(path: Path) -> list[dict[str, float | int | None]]: + samples: list[dict[str, float | int | None]] = [] + current_satellites: int | None = None + with path.open(newline="", encoding="utf-8", errors="replace") as stream: + for row in csv.DictReader(stream): + line = row.get("uart_line", "") + running = RUNNING_RE.search(line) + if running: + current_satellites = int(running.group("sats")) + position = POSITION_RE.search(line) + if position: + samples.append( + { + "time": float(row.get("host_monotonic_s", "nan")), + "lat": float(position.group("lat")), + "lon": float(position.group("lon")), + "height": float(position.group("height")), + "satellites": current_satellites, + "used": None, + "valid": None, + "fde": None, + } + ) + navsol = NAVSOL_RE.search(line) + if navsol and samples: + sample = samples[-1] + sample["satellites"] = int(navsol.group("available")) + sample["used"] = int(navsol.group("used")) + sample["valid"] = int(navsol.group("valid")) + sample["fde"] = int(navsol.group("fde")) + current_satellites = int(navsol.group("available")) + return [sample for sample in samples if sample["satellites"] is not None] + + +def local_offsets( + sample: dict[str, float | int | None], reference: tuple[float, float, float] +) -> tuple[float, float, float]: + latitude, longitude, height = reference + latitude_rad = math.radians(latitude) + sin_latitude = math.sin(latitude_rad) + eccentricity_squared = 6.69437999014e-3 + semi_major_axis = 6378137.0 + prime_vertical = semi_major_axis / math.sqrt( + 1.0 - eccentricity_squared * sin_latitude * sin_latitude + ) + meridional = ( + semi_major_axis + * (1.0 - eccentricity_squared) + / (1.0 - eccentricity_squared * sin_latitude * sin_latitude) ** 1.5 + ) + north = math.radians(float(sample["lat"]) - latitude) * (meridional + height) + east = ( + math.radians(float(sample["lon"]) - longitude) + * (prime_vertical + height) + * math.cos(latitude_rad) + ) + up = float(sample["height"]) - height + return east, north, up + + +def summarize_group( + samples: list[dict[str, float | int | None]], reference: tuple[float, float, float] +) -> dict[str, float | int]: + offsets = [local_offsets(sample, reference) for sample in samples] + horizontal = [math.hypot(east, north) for east, north, _ in offsets] + distance_3d = [math.sqrt(east * east + north * north + up * up) for east, north, up in offsets] + vertical = [abs(up) for _, _, up in offsets] + valid_values = [int(sample["valid"]) for sample in samples if sample["valid"] is not None] + fde_values = [int(sample["fde"]) for sample in samples if sample["fde"] is not None] + return { + "samples": len(samples), + "horizontal_mean_m": statistics.fmean(horizontal), + "horizontal_p50_m": percentile(horizontal, 50.0), + "horizontal_p95_m": percentile(horizontal, 95.0), + "horizontal_max_m": max(horizontal), + "vertical_abs_mean_m": statistics.fmean(vertical), + "distance_3d_mean_m": statistics.fmean(distance_3d), + "distance_3d_p95_m": percentile(distance_3d, 95.0), + "distance_3d_max_m": max(distance_3d), + "valid_rate_pct": 100.0 * statistics.fmean(valid_values) if valid_values else math.nan, + "fde_rate_pct": 100.0 * statistics.fmean(fde_values) if fde_values else math.nan, + } + + +def main() -> int: + parser = argparse.ArgumentParser() + parser.add_argument("--old", type=Path, required=True) + parser.add_argument("--new", type=Path, required=True) + parser.add_argument("--output", type=Path, required=True) + args = parser.parse_args() + + logs = {"old": parse_log(args.old), "new": parse_log(args.new)} + if not logs["old"] or not logs["new"]: + raise SystemExit("both logs must contain position samples with satellite counts") + + references = { + name: ( + statistics.median(float(sample["lat"]) for sample in samples), + statistics.median(float(sample["lon"]) for sample in samples), + statistics.median(float(sample["height"]) for sample in samples), + ) + for name, samples in logs.items() + } + + rows: list[dict[str, str | int | float]] = [] + for firmware, samples in logs.items(): + groups: list[tuple[str, list[dict[str, float | int | None]]]] = [("all", samples)] + groups.extend( + (str(count), [sample for sample in samples if sample["satellites"] == count]) + for count in sorted({int(sample["satellites"]) for sample in samples}) + ) + if any(sample["fde"] is not None for sample in samples): + groups.extend( + ( + f"all_fde{fde_state}", + [sample for sample in samples if sample["fde"] == fde_state], + ) + for fde_state in (0, 1) + if any(sample["fde"] == fde_state for sample in samples) + ) + groups.extend( + ( + f"{count}_fde{fde_state}", + [ + sample + for sample in samples + if sample["satellites"] == count and sample["fde"] == fde_state + ], + ) + for count in sorted({int(sample["satellites"]) for sample in samples}) + for fde_state in (0, 1) + if any( + sample["satellites"] == count and sample["fde"] == fde_state + for sample in samples + ) + ) + for satellite_count, group in groups: + rows.append( + { + "firmware": firmware, + "satellites": satellite_count, + **summarize_group(group, references[firmware]), + } + ) + + args.output.parent.mkdir(parents=True, exist_ok=True) + with args.output.open("w", newline="", encoding="utf-8") as stream: + writer = csv.DictWriter(stream, fieldnames=list(rows[0])) + writer.writeheader() + writer.writerows(rows) + + old_reference = {"lat": references["old"][0], "lon": references["old"][1], "height": references["old"][2]} + new_offset = local_offsets(old_reference, references["new"]) + median_separation = math.sqrt(sum(value * value for value in new_offset)) + print(f"old_samples={len(logs['old'])} new_samples={len(logs['new'])}") + print(f"old_reference={references['old']}") + print(f"new_reference={references['new']}") + print(f"median_position_separation_3d_m={median_separation:.3f}") + for row in rows: + print( + f"{row['firmware']:>3} sats={row['satellites']:>3} n={row['samples']:>4} " + f"hmean={row['horizontal_mean_m']:.2f} hp95={row['horizontal_p95_m']:.2f} " + f"hmax={row['horizontal_max_m']:.2f} d3p95={row['distance_3d_p95_m']:.2f} " + f"valid={row['valid_rate_pct']:.1f}% fde={row['fde_rate_pct']:.1f}%" + ) + print(f"wrote {args.output}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/soc/software/fusion/fusion_eskf.py b/soc/software/fusion/fusion_eskf.py new file mode 100644 index 0000000..5eb7f5a --- /dev/null +++ b/soc/software/fusion/fusion_eskf.py @@ -0,0 +1,655 @@ +#!/usr/bin/env python3 +"""Offline GPS/ICM-4268x fusion for the stationary Genesys2 capture. + +The two UART logs are captured sequentially, so their elapsed-time axes are +replayed together. That is valid for the explicitly stationary experiment, +but is not a substitute for a synchronous moving-platform capture. +""" + +from __future__ import annotations + +import argparse +import csv +import json +import math +import re +from dataclasses import dataclass +from pathlib import Path + +import matplotlib + +matplotlib.use("Agg") +import matplotlib.pyplot as plt +import numpy as np + + +G = 9.80665 + +GPS_RE = re.compile( + r"position lat=(?P[-+0-9.eE]+) lon=(?P[-+0-9.eE]+) " + r"height=(?P[-+0-9.eE]+)" +) +DOP_RE = re.compile( + r"DOP GDOP=(?P[-+0-9.eE]+) PDOP=(?P[-+0-9.eE]+) " + r"HDOP=(?P[-+0-9.eE]+) VDOP=(?P[-+0-9.eE]+)" +) +IMU_RE = re.compile( + r"(?P[0-9]+\.[0-9]+) s \| samples=\s*(?P[0-9]+) total=\s*(?P[0-9]+) \| " + r"Temp=\s*(?P[-+0-9.]+) C \| Accel\[g\] " + r"X=\s*(?P[-+0-9.]+) Y=\s*(?P[-+0-9.]+) Z=\s*(?P[-+0-9.]+) \| " + r"Gyro\[dps\] X=\s*(?P[-+0-9.]+) Y=\s*(?P[-+0-9.]+) Z=\s*(?P[-+0-9.]+)" +) + + +@dataclass +class GpsSample: + t: float + unix_s: float + lat: float + lon: float + height: float + hdop: float + vdop: float + + +@dataclass +class ImuSample: + t: float + unix_s: float + samples: int + temperature_c: float + accel_mps2: np.ndarray + gyro_rps: np.ndarray + + +def read_uart_csv(path: Path): + with path.open(newline="", encoding="utf-8") as stream: + yield from csv.DictReader(stream) + + +def parse_gps(path: Path) -> list[GpsSample]: + samples: list[GpsSample] = [] + last_dop = (math.nan, math.nan) + for row in read_uart_csv(path): + line = row["uart_line"] + dop = DOP_RE.search(line) + if dop: + last_dop = (float(dop["hdop"]), float(dop["vdop"])) + match = GPS_RE.search(line) + if match: + samples.append( + GpsSample( + t=float(row["host_monotonic_s"]), + unix_s=float(row["host_unix_s"]), + lat=float(match["lat"]), + lon=float(match["lon"]), + height=float(match["height"]), + hdop=last_dop[0], + vdop=last_dop[1], + ) + ) + if len(samples) < 4: + raise ValueError(f"only {len(samples)} GPS positions found in {path}") + t0 = samples[0].t + for sample in samples: + sample.t -= t0 + return samples + + +def parse_imu(path: Path) -> list[ImuSample]: + samples: list[ImuSample] = [] + for row in read_uart_csv(path): + match = IMU_RE.search(row["uart_line"]) + if not match: + continue + samples.append( + ImuSample( + t=float(match["t"]), + unix_s=float(row["host_unix_s"]), + samples=int(match["n"]), + temperature_c=float(match["temp"]), + accel_mps2=G + * np.array( + [float(match["ax"]), float(match["ay"]), float(match["az"])] + ), + gyro_rps=np.deg2rad( + [float(match["gx"]), float(match["gy"]), float(match["gz"])] + ), + ) + ) + if len(samples) < 4: + raise ValueError(f"only {len(samples)} IMU windows found in {path}") + t0 = samples[0].t + for sample in samples: + sample.t -= t0 + return samples + + +def geodetic_to_ecef(lat_deg, lon_deg, height_m): + lat = np.deg2rad(np.asarray(lat_deg, dtype=float)) + lon = np.deg2rad(np.asarray(lon_deg, dtype=float)) + height = np.asarray(height_m, dtype=float) + a = 6378137.0 + e2 = 6.69437999014e-3 + n = a / np.sqrt(1.0 - e2 * np.sin(lat) ** 2) + x = (n + height) * np.cos(lat) * np.cos(lon) + y = (n + height) * np.cos(lat) * np.sin(lon) + z = (n * (1.0 - e2) + height) * np.sin(lat) + return np.column_stack((x, y, z)) + + +def gps_to_enu(samples: list[GpsSample]): + lat0 = float(np.median([sample.lat for sample in samples])) + lon0 = float(np.median([sample.lon for sample in samples])) + h0 = float(np.median([sample.height for sample in samples])) + origin = geodetic_to_ecef([lat0], [lon0], [h0])[0] + xyz = geodetic_to_ecef( + [sample.lat for sample in samples], + [sample.lon for sample in samples], + [sample.height for sample in samples], + ) + lat = math.radians(lat0) + lon = math.radians(lon0) + rotation = np.array( + [ + [-math.sin(lon), math.cos(lon), 0.0], + [ + -math.sin(lat) * math.cos(lon), + -math.sin(lat) * math.sin(lon), + math.cos(lat), + ], + [ + math.cos(lat) * math.cos(lon), + math.cos(lat) * math.sin(lon), + math.sin(lat), + ], + ] + ) + return (xyz - origin) @ rotation.T, (lat0, lon0, h0) + + +def ecef_to_geodetic(xyz): + """Convert ECEF XYZ to WGS-84 latitude, longitude and ellipsoid height.""" + xyz = np.atleast_2d(np.asarray(xyz, dtype=float)) + x, y, z = xyz.T + a = 6378137.0 + e2 = 6.69437999014e-3 + horizontal = np.hypot(x, y) + lon = np.arctan2(y, x) + lat = np.arctan2(z, horizontal * (1.0 - e2)) + for _ in range(8): + n = a / np.sqrt(1.0 - e2 * np.sin(lat) ** 2) + height = horizontal / np.cos(lat) - n + lat = np.arctan2(z, horizontal * (1.0 - e2 * n / (n + height))) + n = a / np.sqrt(1.0 - e2 * np.sin(lat) ** 2) + height = horizontal / np.cos(lat) - n + return np.column_stack((np.rad2deg(lat), np.rad2deg(lon), height)) + + +def enu_to_geodetic(enu, reference): + """Convert local ENU positions back to WGS-84 coordinates.""" + lat0, lon0, h0 = reference + lat = math.radians(lat0) + lon = math.radians(lon0) + rotation = np.array( + [ + [-math.sin(lon), math.cos(lon), 0.0], + [ + -math.sin(lat) * math.cos(lon), + -math.sin(lat) * math.sin(lon), + math.cos(lat), + ], + [ + math.cos(lat) * math.cos(lon), + math.cos(lat) * math.sin(lon), + math.sin(lat), + ], + ] + ) + origin = geodetic_to_ecef([lat0], [lon0], [h0])[0] + xyz = origin + np.atleast_2d(np.asarray(enu, dtype=float)) @ rotation + return ecef_to_geodetic(xyz) + + +def skew(v): + x, y, z = v + return np.array([[0.0, -z, y], [z, 0.0, -x], [-y, x, 0.0]]) + + +def quat_normalize(q): + q = np.asarray(q, dtype=float) + q /= np.linalg.norm(q) + return q if q[0] >= 0.0 else -q + + +def quat_multiply(q, r): + w, x, y, z = q + a, b, c, d = r + return np.array( + [ + w * a - x * b - y * c - z * d, + w * b + x * a + y * d - z * c, + w * c - x * d + y * a + z * b, + w * d + x * c - y * b + z * a, + ] + ) + + +def rotvec_quat(v): + angle = float(np.linalg.norm(v)) + if angle < 1e-10: + return quat_normalize(np.r_[1.0, 0.5 * np.asarray(v)]) + return np.r_[math.cos(angle / 2.0), np.asarray(v) * math.sin(angle / 2.0) / angle] + + +def quat_rotation(q): + w, x, y, z = q + return np.array( + [ + [1 - 2 * (y * y + z * z), 2 * (x * y - w * z), 2 * (x * z + w * y)], + [2 * (x * y + w * z), 1 - 2 * (x * x + z * z), 2 * (y * z - w * x)], + [2 * (x * z - w * y), 2 * (y * z + w * x), 1 - 2 * (x * x + y * y)], + ] + ) + + +def align_quat(source, target): + source = np.asarray(source, dtype=float) / np.linalg.norm(source) + target = np.asarray(target, dtype=float) / np.linalg.norm(target) + dot = float(np.dot(source, target)) + if dot < -0.999999: + axis = np.cross(source, [1.0, 0.0, 0.0]) + if np.linalg.norm(axis) < 1e-6: + axis = np.cross(source, [0.0, 1.0, 0.0]) + axis /= np.linalg.norm(axis) + return np.r_[0.0, axis] + return quat_normalize(np.r_[1.0 + dot, np.cross(source, target)]) + + +def robust_sigma(values, floor): + values = np.asarray(values, dtype=float) + mad = np.median(np.abs(values - np.median(values))) + return max(float(1.4826 * mad), floor) + + +class StationaryEskf: + """15-state ESKF with right attitude error in a local ENU frame.""" + + def __init__(self, position, attitude, accel_sigma, gyro_sigma, gps_sigma): + self.p = np.asarray(position, dtype=float).copy() + self.v = np.zeros(3) + self.q = quat_normalize(attitude) + self.ba = np.zeros(3) + self.bg = np.zeros(3) + self.p_cov = np.diag( + np.r_[gps_sigma**2, np.full(3, 1.0), np.deg2rad([5, 5, 30]) ** 2, + np.full(3, 0.05**2), np.full(3, np.deg2rad(0.05) ** 2)] + ) + self.accel_sigma = np.asarray(accel_sigma) + self.gyro_sigma = np.asarray(gyro_sigma) + self.gps_r = np.diag(np.asarray(gps_sigma) ** 2) + self.rejected_gps = 0 + self.accepted_gps = 0 + + def propagate(self, accel, gyro, dt): + if dt <= 0.0: + return + dt = min(float(dt), 1.0) + omega = np.asarray(gyro) - self.bg + specific_force = np.asarray(accel) - self.ba + rotation = quat_rotation(self.q) + acceleration = rotation @ specific_force + np.array([0.0, 0.0, -G]) + self.p += self.v * dt + 0.5 * acceleration * dt * dt + self.v += acceleration * dt + self.q = quat_normalize(quat_multiply(self.q, rotvec_quat(omega * dt))) + + f = np.zeros((15, 15)) + f[0:3, 3:6] = np.eye(3) + f[3:6, 6:9] = -rotation @ skew(specific_force) + f[3:6, 9:12] = -rotation + f[6:9, 6:9] = -skew(omega) + f[6:9, 12:15] = -np.eye(3) + phi = np.eye(15) + f * dt + + noise_map = np.zeros((15, 12)) + noise_map[3:6, 0:3] = rotation + noise_map[6:9, 3:6] = np.eye(3) + noise_map[9:12, 6:9] = np.eye(3) + noise_map[12:15, 9:12] = np.eye(3) + qc = np.diag( + np.r_[ + self.accel_sigma**2, + self.gyro_sigma**2, + np.full(3, 0.002**2), + np.full(3, np.deg2rad(0.002) ** 2), + ] + ) + self.p_cov = phi @ self.p_cov @ phi.T + noise_map @ qc @ noise_map.T * dt + self.p_cov = 0.5 * (self.p_cov + self.p_cov.T) + + def _update(self, residual, h, r): + innovation = h @ self.p_cov @ h.T + r + gain = np.linalg.solve(innovation, h @ self.p_cov).T + delta = gain @ residual + identity = np.eye(15) + ikh = identity - gain @ h + self.p_cov = ikh @ self.p_cov @ ikh.T + gain @ r @ gain.T + self.p += delta[0:3] + self.v += delta[3:6] + self.q = quat_normalize(quat_multiply(self.q, rotvec_quat(delta[6:9]))) + self.ba += delta[9:12] + self.bg += delta[12:15] + self.p_cov = 0.5 * (self.p_cov + self.p_cov.T) + return innovation + + def gps_update(self, position, gate=16.27): + h = np.zeros((3, 15)) + h[:, 0:3] = np.eye(3) + residual = np.asarray(position) - self.p + innovation = h @ self.p_cov @ h.T + self.gps_r + mahalanobis = float(residual @ np.linalg.solve(innovation, residual)) + if mahalanobis > gate: + self.rejected_gps += 1 + return False, mahalanobis + self._update(residual, h, self.gps_r) + self.accepted_gps += 1 + return True, mahalanobis + + def zero_velocity_update(self, sigma=0.025): + h = np.zeros((3, 15)) + h[:, 3:6] = np.eye(3) + self._update(-self.v, h, np.eye(3) * sigma**2) + + def zero_gyro_update(self, measured_gyro, sigma): + h = np.zeros((3, 15)) + h[:, 12:15] = np.eye(3) + # z = bg + noise when the true angular rate is zero. + self._update(np.asarray(measured_gyro) - self.bg, h, np.diag(sigma**2)) + + +def run_filter(gps: list[GpsSample], imu: list[ImuSample], enu): + accel = np.vstack([sample.accel_mps2 for sample in imu]) + gyro = np.vstack([sample.gyro_rps for sample in imu]) + mean_accel = np.mean(accel, axis=0) + attitude = align_quat(mean_accel, [0.0, 0.0, 1.0]) + accel_sigma = np.array([robust_sigma(accel[:, i], 0.003) for i in range(3)]) + gyro_sigma = np.array( + [robust_sigma(gyro[:, i], math.radians(0.001)) for i in range(3)] + ) + gps_sigma = np.array([robust_sigma(enu[:, i], 1.0 if i < 2 else 2.0) for i in range(3)]) + + eskf = StationaryEskf(enu[0], attitude, accel_sigma, gyro_sigma, gps_sigma) + events = [(sample.t, 0, i) for i, sample in enumerate(imu)] + events += [(sample.t, 1, i) for i, sample in enumerate(gps)] + events.sort() + current_accel = accel[0] + current_gyro = gyro[0] + last_t = 0.0 + output = [] + + for t, kind, index in events: + eskf.propagate(current_accel, current_gyro, t - last_t) + last_t = t + if kind == 0: + current_accel = accel[index] + current_gyro = gyro[index] + eskf.zero_velocity_update() + eskf.zero_gyro_update(current_gyro, np.maximum(gyro_sigma, math.radians(0.002))) + else: + accepted, mahalanobis = eskf.gps_update(enu[index]) + output.append( + { + "t": t, + "raw": enu[index].copy(), + "fused": eskf.p.copy(), + "velocity": eskf.v.copy(), + "position_std": np.sqrt(np.maximum(np.diag(eskf.p_cov)[0:3], 0.0)), + "accepted": accepted, + "mahalanobis": mahalanobis, + } + ) + return eskf, output, accel_sigma, gyro_sigma, gps_sigma, attitude + + +def radial_95(values): + centered = values - np.median(values, axis=0) + return float(np.percentile(np.linalg.norm(centered, axis=1), 95)) + + +def write_csvs(output_dir, gps, imu, enu, filtered): + with (output_dir / "gps_positions.csv").open("w", newline="") as stream: + writer = csv.writer(stream) + writer.writerow(["t_s", "unix_s", "lat_deg", "lon_deg", "height_m", "east_m", "north_m", "up_m", "hdop", "vdop"]) + for sample, local in zip(gps, enu): + writer.writerow([sample.t, sample.unix_s, sample.lat, sample.lon, sample.height, *local, sample.hdop, sample.vdop]) + with (output_dir / "imu_windows.csv").open("w", newline="") as stream: + writer = csv.writer(stream) + writer.writerow(["t_s", "unix_s", "samples", "temperature_c", "ax_mps2", "ay_mps2", "az_mps2", "gx_rps", "gy_rps", "gz_rps"]) + for sample in imu: + writer.writerow([sample.t, sample.unix_s, sample.samples, sample.temperature_c, *sample.accel_mps2, *sample.gyro_rps]) + with (output_dir / "eskf_positions.csv").open("w", newline="") as stream: + writer = csv.writer(stream) + writer.writerow(["t_s", "gps_e_m", "gps_n_m", "gps_u_m", "eskf_e_m", "eskf_n_m", "eskf_u_m", "ve_mps", "vn_mps", "vu_mps", "sigma_e_m", "sigma_n_m", "sigma_u_m", "gps_accepted", "mahalanobis2"]) + for row in filtered: + writer.writerow([row["t"], *row["raw"], *row["fused"], *row["velocity"], *row["position_std"], int(row["accepted"]), row["mahalanobis"]]) + + +def write_playback_map(output_dir, gps, filtered, reference): + """Write a Leaflet map with a sample-by-sample GPS/ESKF player.""" + fused_lla = enu_to_geodetic( + np.vstack([row["fused"] for row in filtered]), reference + ) + records = [] + for index, (sample, row, corrected) in enumerate(zip(gps, filtered, fused_lla)): + records.append( + { + "i": index, + "t": round(float(row["t"]), 6), + "raw": [sample.lat, sample.lon, sample.height], + "fused": [float(corrected[0]), float(corrected[1]), float(corrected[2])], + "accepted": bool(row["accepted"]), + "mahalanobis": round(float(row["mahalanobis"]), 3), + "separation": round(float(np.linalg.norm(row["raw"][:2] - row["fused"][:2])), 3), + } + ) + + data_json = json.dumps(records, separators=(",", ":"), ensure_ascii=False) + center_json = json.dumps([reference[0], reference[1]]) + html = """ + + + + + GPS / ESKF sample oynatıcı + + + + +
+
+
+ + +
+
1 / 10.0 s
+
+ + +
+
+ + + +""".replace("__DATA__", data_json).replace("__CENTER__", center_json) + (output_dir / "trajectory_map.html").write_text(html, encoding="utf-8") + + +def plot_results(output_dir, gps, imu, filtered): + time = np.array([row["t"] for row in filtered]) + raw = np.vstack([row["raw"] for row in filtered]) + fused = np.vstack([row["fused"] for row in filtered]) + labels = ["East", "North", "Up"] + fig, axes = plt.subplots(3, 1, figsize=(10, 8), sharex=True) + for i, axis in enumerate(axes): + axis.plot(time, raw[:, i], ".", color="0.65", ms=3, label="GPS WLS") + axis.plot(time, fused[:, i], color="tab:blue", lw=1.8, label="ESKF + ZUPT") + axis.set_ylabel(f"{labels[i]} [m]") + axis.grid(alpha=0.25) + axes[0].legend() + axes[-1].set_xlabel("Normalized elapsed time [s]") + fig.suptitle("Stationary GPS / IMU error-state Kalman filter") + fig.tight_layout() + fig.savefig(output_dir / "position_timeseries.png", dpi=160) + plt.close(fig) + + accepted = np.array([row["accepted"] for row in filtered]) + fig, axis = plt.subplots(figsize=(7, 7)) + axis.scatter(raw[accepted, 0], raw[accepted, 1], s=12, alpha=0.5, color="0.5", label="GPS WLS accepted") + axis.scatter(raw[~accepted, 0], raw[~accepted, 1], marker="x", s=55, color="tab:red", label="GPS gated") + axis.plot(fused[:, 0], fused[:, 1], color="tab:blue", lw=1.5, label="ESKF + ZUPT") + axis.scatter(fused[-1, 0], fused[-1, 1], marker="x", s=70, color="tab:red", label="ESKF final") + axis.set_aspect("equal", adjustable="box") + axis.set_xlabel("East [m]") + axis.set_ylabel("North [m]") + axis.grid(alpha=0.25) + axis.legend() + center = np.median(raw[:, :2], axis=0) + central_radius = max(20.0, 1.2 * float(np.percentile(np.abs(raw[:, :2] - center), 99))) + axis.set_xlim(center[0] - central_radius, center[0] + central_radius) + axis.set_ylim(center[1] - central_radius, center[1] + central_radius) + axis.set_title(f"Horizontal stationary scatter (central view; gated={np.sum(~accepted)})") + fig.tight_layout() + fig.savefig(output_dir / "horizontal_scatter.png", dpi=160) + plt.close(fig) + + t_imu = np.array([sample.t for sample in imu]) + accel = np.vstack([sample.accel_mps2 for sample in imu]) / G + gyro = np.rad2deg(np.vstack([sample.gyro_rps for sample in imu])) + fig, axes = plt.subplots(2, 1, figsize=(10, 6), sharex=True) + for i, name in enumerate("XYZ"): + axes[0].plot(t_imu, accel[:, i], label=name) + axes[1].plot(t_imu, gyro[:, i], label=name) + axes[0].set_ylabel("Acceleration [g]") + axes[1].set_ylabel("Angular rate [deg/s]") + axes[1].set_xlabel("IMU elapsed time [s]") + for axis in axes: + axis.grid(alpha=0.25) + axis.legend(ncol=3) + fig.suptitle("ICM-4268x 500 ms window averages") + fig.tight_layout() + fig.savefig(output_dir / "imu_stationary.png", dpi=160) + plt.close(fig) + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("--gps", type=Path, default=Path("logs/gps_60s.csv")) + parser.add_argument("--imu", type=Path, default=Path("logs/imu_60s.csv")) + parser.add_argument("--output", type=Path, default=Path("output")) + args = parser.parse_args() + args.output.mkdir(parents=True, exist_ok=True) + + gps = parse_gps(args.gps) + imu = parse_imu(args.imu) + enu, reference = gps_to_enu(gps) + eskf, filtered, accel_sigma, gyro_sigma, gps_sigma, attitude = run_filter(gps, imu, enu) + write_csvs(args.output, gps, imu, enu, filtered) + plot_results(args.output, gps, imu, filtered) + write_playback_map(args.output, gps, filtered, reference) + + raw = np.vstack([row["raw"] for row in filtered]) + fused = np.vstack([row["fused"] for row in filtered]) + raw_std = np.std(raw, axis=0, ddof=1) + fused_std = np.std(fused, axis=0, ddof=1) + raw_h95 = radial_95(raw[:, :2]) + fused_h95 = radial_95(fused[:, :2]) + imu_accel = np.vstack([sample.accel_mps2 for sample in imu]) + imu_gyro = np.vstack([sample.gyro_rps for sample in imu]) + mean_accel = np.mean(imu_accel, axis=0) + mean_gyro = np.mean(imu_gyro, axis=0) + lines = [ + "Stationary GPS/IMU ESKF result", + "================================", + f"GPS positions: {len(gps)} over {gps[-1].t - gps[0].t:.3f} s", + f"IMU windows: {len(imu)} over {imu[-1].t - imu[0].t:.3f} s", + f"Underlying SPI samples: {sum(sample.samples for sample in imu)}", + "Capture mode: sequential logs replayed on a common elapsed-time axis", + f"ENU reference (capture median): lat={reference[0]:.10f} deg, lon={reference[1]:.10f} deg, h={reference[2]:.3f} m", + f"GPS robust sigma E/N/U [m]: {gps_sigma[0]:.3f}, {gps_sigma[1]:.3f}, {gps_sigma[2]:.3f}", + f"GPS accepted/rejected: {eskf.accepted_gps}/{eskf.rejected_gps}", + f"Raw GPS std E/N/U [m]: {raw_std[0]:.3f}, {raw_std[1]:.3f}, {raw_std[2]:.3f}", + f"ESKF std E/N/U [m]: {fused_std[0]:.3f}, {fused_std[1]:.3f}, {fused_std[2]:.3f}", + f"Raw/ESKF horizontal radial 95% [m]: {raw_h95:.3f} / {fused_h95:.3f}", + f"IMU mean acceleration XYZ [m/s^2]: {mean_accel[0]:.6f}, {mean_accel[1]:.6f}, {mean_accel[2]:.6f}", + f"IMU mean angular rate XYZ [deg/s]: {np.rad2deg(mean_gyro)[0]:.6f}, {np.rad2deg(mean_gyro)[1]:.6f}, {np.rad2deg(mean_gyro)[2]:.6f}", + f"IMU robust accel noise XYZ [m/s^2]: {accel_sigma[0]:.6f}, {accel_sigma[1]:.6f}, {accel_sigma[2]:.6f}", + f"IMU robust gyro noise XYZ [deg/s]: {np.rad2deg(gyro_sigma)[0]:.6f}, {np.rad2deg(gyro_sigma)[1]:.6f}, {np.rad2deg(gyro_sigma)[2]:.6f}", + f"Initial body-to-ENU quaternion [w,x,y,z]: {attitude[0]:.8f}, {attitude[1]:.8f}, {attitude[2]:.8f}, {attitude[3]:.8f}", + f"Final ESKF position E/N/U [m]: {eskf.p[0]:.3f}, {eskf.p[1]:.3f}, {eskf.p[2]:.3f}", + f"Final ESKF velocity E/N/U [m/s]: {eskf.v[0]:.6f}, {eskf.v[1]:.6f}, {eskf.v[2]:.6f}", + "Caution: no surveyed ground truth; reported gains are precision/stability, not absolute accuracy.", + "Caution: ZUPT is enabled because the board was declared stationary.", + ] + summary = "\n".join(lines) + "\n" + (args.output / "summary.txt").write_text(summary, encoding="utf-8") + print(summary, end="") + + +if __name__ == "__main__": + main() diff --git a/soc/software/fusion/logs/gps_live_5min_20260713.csv b/soc/software/fusion/logs/gps_live_5min_20260713.csv new file mode 100644 index 0000000000000000000000000000000000000000..64769d270798bdd78071cabcc98f312fcf08aeb9 GIT binary patch literal 258488 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 CR3(r=bq$-+QE` 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 Pn2WzKTP1oovoik=l=k?H literal 0 HcmV?d00001 diff --git a/soc/software/fusion/logs/imu_live_5min_20260713.csv b/soc/software/fusion/logs/imu_live_5min_20260713.csv new file mode 100644 index 0000000..9a72975 --- /dev/null +++ b/soc/software/fusion/logs/imu_live_5min_20260713.csv @@ -0,0 +1,618 @@ +host_monotonic_s,host_unix_s,uart_line +0.276407791,1783892161.836127520,14.500 s | samples=243 total= 7050 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.000 Z= 0.006 +2.088479500,1783892163.648199320, +2.088658447,1783892163.648377895,ICM PMOD 500 Hz SPI polling test +2.088812995,1783892163.648532152,SPI=0x10015000 Genesys2 PMOD JC +2.089019602,1783892163.648738861,SPI pins: CS=JC1 MOSI=JC2 MISO=JC3 SCK=JC4 +2.089372827,1783892163.649092197,INT1/JC9 is not used; samples are read by polling INT_STATUS. +2.089473485,1783892163.649192810,WHO_AM_I=0x47 ICM-42688-P +2.203733099,1783892163.763453007,CFG PWR=0f GYRO=ef ACCEL=6f FILT=77 G1=da A1=15 +2.204003525,1783892163.763722658,POLL INT_SOURCE0=00 (expected 00: INT1 disabled) +2.204429779,1783892163.764149189,Keep the board motionless for calibration; starting in 3 seconds. +5.209543916,1783892166.769263506,Calibration 1/3: collecting 2500 samples (5 s)... +10.469417893,1783892172.029138327,"cal raw mean A=-195,-85,16962 G=-3,-888,1003 norm=16963" +10.469631760,1783892172.029351234,"cal raw sigma A=4,8,102 G=18,28,27: PASS" +10.469822997,1783892172.029542446,"cal bias raw A=-7,-3,579 G=-3,-888,1003" +10.470121043,1783892172.029840469,"Starting 300 s capture: 500 Hz SPI polling, UART every 500 ms." +10.470419769,1783892172.030139208,Each line is the average of samples read in that 500 ms window. +10.986057394,1783892172.545777082,00.500 s | samples=249 total= 249 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.001 Z=-0.005 +11.485435652,1783892173.045155287,01.000 s | samples=243 total= 492 | Temp=26.536 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.004 +11.985164943,1783892173.544884443,01.500 s | samples=243 total= 735 | Temp=26.527 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.008 Y=-0.007 Z=-0.002 +12.485732604,1783892174.045452356,02.000 s | samples=243 total= 978 | Temp=26.534 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y= 0.003 Z=-0.000 +12.985398918,1783892174.545118809,02.500 s | samples=243 total= 1221 | Temp=26.528 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y= 0.000 Z= 0.000 +13.485843126,1783892175.045563221,03.000 s | samples=242 total= 1463 | Temp=26.524 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.004 +13.985516376,1783892175.545236111,03.500 s | samples=243 total= 1706 | Temp=26.529 C | Accel[g] X=-0.012 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.003 Z=-0.001 +14.485164894,1783892176.044884682,04.000 s | samples=243 total= 1949 | Temp=26.529 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z=-0.003 +14.985911948,1783892176.545631647,04.500 s | samples=243 total= 2192 | Temp=26.525 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y=-0.001 Z=-0.002 +15.485229757,1783892177.044949770,05.000 s | samples=243 total= 2435 | Temp=26.526 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.002 +15.986051938,1783892177.545771837,05.500 s | samples=243 total= 2678 | Temp=26.524 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.006 Z= 0.000 +16.485364277,1783892178.045084476,06.000 s | samples=243 total= 2921 | Temp=26.529 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y=-0.002 Z=-0.007 +16.985817890,1783892178.545537472,06.500 s | samples=242 total= 3163 | Temp=26.533 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.001 Z=-0.002 +17.485705937,1783892179.045425653,07.000 s | samples=242 total= 3405 | Temp=26.530 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.001 Z=-0.006 +17.985580108,1783892179.545300007,07.500 s | samples=243 total= 3648 | Temp=26.528 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.001 Z= 0.001 +18.485235418,1783892180.044955254,08.000 s | samples=243 total= 3891 | Temp=26.529 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.000 Z= 0.001 +18.985828968,1783892180.545548439,08.500 s | samples=243 total= 4134 | Temp=26.524 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.006 Y= 0.001 Z=-0.001 +19.485714772,1783892181.045434952,09.000 s | samples=243 total= 4377 | Temp=26.535 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.003 Z=-0.005 +19.985142291,1783892181.544862032,09.500 s | samples=243 total= 4620 | Temp=26.534 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.001 Z= 0.001 +20.485861216,1783892182.045581102,10.000 s | samples=243 total= 4863 | Temp=26.522 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.001 +20.985958708,1783892182.545678616,10.500 s | samples=242 total= 5105 | Temp=26.525 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.001 Z= 0.001 +21.486179574,1783892183.045899153,11.000 s | samples=243 total= 5348 | Temp=26.529 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.000 Z=-0.005 +21.985832172,1783892183.545551777,11.500 s | samples=243 total= 5591 | Temp=26.536 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.008 Z=-0.005 +22.485260846,1783892184.044980526,12.000 s | samples=243 total= 5834 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.005 Z=-0.002 +22.985675369,1783892184.545395136,12.500 s | samples=243 total= 6077 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.001 Z=-0.000 +23.485684493,1783892185.045403957,13.000 s | samples=243 total= 6320 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.000 Z=-0.003 +23.985841064,1783892185.545560837,13.500 s | samples=243 total= 6563 | Temp=26.534 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.001 +24.485191309,1783892186.044911146,14.000 s | samples=242 total= 6805 | Temp=26.539 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.001 Z= 0.000 +24.985730840,1783892186.545450449,14.500 s | samples=242 total= 7047 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.002 Z= 0.002 +25.485831643,1783892187.045551538,15.000 s | samples=243 total= 7290 | Temp=26.533 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.004 Z=-0.002 +25.985088337,1783892187.544808149,15.500 s | samples=243 total= 7533 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.002 Z=-0.001 +26.485015090,1783892188.044734478,16.000 s | samples=243 total= 7776 | Temp=26.530 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y= 0.001 Z=-0.004 +26.985872707,1783892188.545592546,16.500 s | samples=243 total= 8019 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.001 Z=-0.001 +27.485782440,1783892189.045502424,17.000 s | samples=243 total= 8262 | Temp=26.527 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z= 0.002 +27.986069667,1783892189.545789480,17.500 s | samples=243 total= 8505 | Temp=26.530 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.003 +28.485837978,1783892190.045557737,18.000 s | samples=242 total= 8747 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z= 0.003 +28.986088315,1783892190.545808077,18.500 s | samples=243 total= 8990 | Temp=26.528 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.000 Z=-0.001 +29.485630813,1783892191.045350313,19.000 s | samples=243 total= 9233 | Temp=26.532 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.003 +29.985159197,1783892191.544878483,19.500 s | samples=243 total= 9476 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.000 Z=-0.004 +30.486685104,1783892192.046404839,20.000 s | samples=243 total= 9719 | Temp=26.536 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.001 Z= 0.001 +30.985809413,1783892192.545529127,20.500 s | samples=243 total= 9962 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.002 Z=-0.000 +31.485820688,1783892193.045540571,21.000 s | samples=243 total=10205 | Temp=26.535 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.003 +31.985183717,1783892193.544903517,21.500 s | samples=242 total=10447 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.005 Z= 0.001 +32.485479386,1783892194.045199156,22.000 s | samples=243 total=10690 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.004 Z=-0.001 +32.985774904,1783892194.545494556,22.500 s | samples=243 total=10933 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.004 Z= 0.000 +33.485135616,1783892195.044855356,23.000 s | samples=243 total=11176 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.004 Z= 0.002 +33.985860385,1783892195.545580387,23.500 s | samples=243 total=11419 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.005 Z=-0.002 +34.485698898,1783892196.045418978,24.000 s | samples=243 total=11662 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.001 Z=-0.003 +34.985649329,1783892196.545369148,24.500 s | samples=243 total=11905 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.000 +35.486158169,1783892197.045877934,25.000 s | samples=243 total=12148 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y=-0.003 Z=-0.004 +35.985791920,1783892197.545511961,25.500 s | samples=242 total=12390 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.002 Z=-0.001 +36.486191854,1783892198.045911789,26.000 s | samples=243 total=12633 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z= 0.000 +36.985598623,1783892198.545318127,26.500 s | samples=243 total=12876 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.001 Z=-0.000 +37.485783287,1783892199.045502901,27.000 s | samples=243 total=13119 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.002 Z=-0.001 +37.985577393,1783892199.545297146,27.500 s | samples=243 total=13362 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y= 0.000 Z=-0.003 +38.485975651,1783892200.045696259,28.000 s | samples=243 total=13605 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y= 0.001 Z=-0.001 +38.985825838,1783892200.545545816,28.500 s | samples=243 total=13848 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.006 Z=-0.000 +39.485604552,1783892201.045324326,29.000 s | samples=242 total=14090 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.002 Z=-0.007 +39.986008036,1783892201.545727730,29.500 s | samples=242 total=14332 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.002 Z=-0.005 +40.485551219,1783892202.045270681,30.000 s | samples=243 total=14575 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y=-0.001 Z=-0.002 +40.985111429,1783892202.544830799,30.500 s | samples=243 total=14818 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y= 0.000 Z=-0.001 +41.485936256,1783892203.045655966,31.000 s | samples=243 total=15061 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y= 0.001 Z=-0.006 +41.985704167,1783892203.545423985,31.500 s | samples=243 total=15304 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.001 Z=-0.004 +42.484937813,1783892204.044657469,32.000 s | samples=243 total=15547 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z=-0.000 +42.985679623,1783892204.545398951,32.500 s | samples=243 total=15790 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.000 Z= 0.003 +43.484973300,1783892205.044693232,33.000 s | samples=242 total=16032 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.000 Z= 0.002 +43.985348159,1783892205.545067787,33.500 s | samples=243 total=16275 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.002 Z=-0.004 +44.485664695,1783892206.045384407,34.000 s | samples=243 total=16518 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.003 Z=-0.000 +44.985655605,1783892206.545375347,34.500 s | samples=243 total=16761 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.000 Z=-0.001 +45.485831422,1783892207.045551300,35.000 s | samples=243 total=17004 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.002 Z= 0.000 +45.985496820,1783892207.545216560,35.500 s | samples=243 total=17247 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.002 +46.486516497,1783892208.046236277,36.000 s | samples=243 total=17490 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.002 Z= 0.002 +46.985837790,1783892208.545557499,36.500 s | samples=242 total=17732 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.001 Z=-0.001 +47.485652148,1783892209.045372009,37.000 s | samples=243 total=17975 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.004 Z=-0.001 +47.986673063,1783892209.546392918,37.500 s | samples=243 total=18218 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.002 Z=-0.001 +48.486043902,1783892210.045763731,38.000 s | samples=243 total=18461 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.002 Z= 0.003 +48.985645991,1783892210.545365810,38.500 s | samples=243 total=18704 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.003 Z= 0.002 +49.486669240,1783892211.046389103,39.000 s | samples=243 total=18947 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.000 Z=-0.001 +49.986028585,1783892211.545748711,39.500 s | samples=243 total=19190 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.002 Z=-0.000 +50.485877675,1783892212.045597553,40.000 s | samples=243 total=19433 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.001 Z= 0.000 +50.985525007,1783892212.545244694,40.500 s | samples=242 total=19675 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.000 Z= 0.000 +51.486651983,1783892213.046371698,41.000 s | samples=243 total=19918 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.001 +51.986467491,1783892213.546187162,41.500 s | samples=243 total=20161 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.005 Z=-0.001 +52.485929842,1783892214.045650005,42.000 s | samples=243 total=20404 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.000 Z=-0.000 +52.986698840,1783892214.546418190,42.500 s | samples=243 total=20647 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.003 Z=-0.000 +53.486512971,1783892215.046232939,43.000 s | samples=243 total=20890 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.003 Z= 0.001 +53.985864640,1783892215.545584440,43.500 s | samples=243 total=21133 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.000 Z= 0.001 +54.486058082,1783892216.045778036,44.000 s | samples=242 total=21375 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.003 Z=-0.001 +54.986396701,1783892216.546116114,44.500 s | samples=243 total=21618 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.004 Z=-0.001 +55.485896880,1783892217.045616627,45.000 s | samples=243 total=21861 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.005 Z=-0.005 +55.985740577,1783892217.545460224,45.500 s | samples=243 total=22104 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.003 Z= 0.000 +56.487594131,1783892218.047313929,46.000 s | samples=243 total=22347 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.000 Z= 0.004 +56.985813703,1783892218.545533419,46.500 s | samples=243 total=22590 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.001 Z= 0.004 +57.485449299,1783892219.045169115,47.000 s | samples=243 total=22833 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.000 Z=-0.002 +57.986310012,1783892219.546030045,47.500 s | samples=243 total=23076 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y= 0.003 Z=-0.001 +58.486425989,1783892220.046145678,48.000 s | samples=242 total=23318 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.003 Z= 0.000 +58.985840636,1783892220.545560122,48.500 s | samples=243 total=23561 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y= 0.005 Z= 0.005 +59.486277983,1783892221.045997620,49.000 s | samples=243 total=23804 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.002 Z=-0.000 +59.986654894,1783892221.546374559,49.500 s | samples=243 total=24047 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.005 +60.485862905,1783892222.045582771,50.000 s | samples=243 total=24290 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.003 +60.985504683,1783892222.545224428,50.500 s | samples=243 total=24533 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.001 Z=-0.000 +61.486271581,1783892223.045991182,51.000 s | samples=243 total=24776 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y= 0.001 Z= 0.001 +61.985884662,1783892223.545604467,51.500 s | samples=242 total=25018 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.002 Z=-0.002 +62.486619635,1783892224.046339273,52.000 s | samples=243 total=25261 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.001 +62.986228766,1783892224.545948267,52.500 s | samples=243 total=25504 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.002 Z=-0.000 +63.485862633,1783892225.045582056,53.000 s | samples=243 total=25747 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.001 +63.986257342,1783892225.545976877,53.500 s | samples=243 total=25990 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y=-0.001 Z= 0.005 +64.485732773,1783892226.045452595,54.000 s | samples=243 total=26233 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.003 Z= 0.005 +64.985954549,1783892226.545674324,54.500 s | samples=243 total=26476 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.001 Z= 0.005 +65.486247179,1783892227.045967340,55.000 s | samples=243 total=26719 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.000 Z=-0.001 +65.985974275,1783892227.545693874,55.500 s | samples=242 total=26961 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.003 Z= 0.001 +66.485857560,1783892228.045577049,56.000 s | samples=243 total=27204 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y=-0.001 Z=-0.001 +66.986460556,1783892228.546180010,56.500 s | samples=243 total=27447 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.002 +67.485719318,1783892229.045439005,57.000 s | samples=243 total=27690 | Temp=26.541 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.000 Z= 0.002 +67.985862730,1783892229.545582294,57.500 s | samples=243 total=27933 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.001 Z= 0.001 +68.486281736,1783892230.046001434,58.000 s | samples=243 total=28176 | Temp=26.535 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.003 Z=-0.004 +68.986207606,1783892230.545927525,58.500 s | samples=243 total=28419 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z= 0.004 +69.485857292,1783892231.045577288,59.000 s | samples=242 total=28661 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y= 0.003 Z=-0.000 +69.986322210,1783892231.546042442,59.500 s | samples=243 total=28904 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y= 0.002 Z= 0.001 +70.486347313,1783892232.046067238,60.000 s | samples=243 total=29147 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.002 +70.985855320,1783892232.545575142,60.500 s | samples=243 total=29390 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.002 +71.486314782,1783892233.046034336,61.000 s | samples=243 total=29633 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.000 Z= 0.001 +71.986304711,1783892233.546024561,61.500 s | samples=243 total=29876 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.003 Z= 0.004 +72.485896359,1783892234.045616150,62.000 s | samples=243 total=30119 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.003 Z= 0.001 +72.986149071,1783892234.545868874,62.500 s | samples=243 total=30362 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.002 Z= 0.000 +73.486621990,1783892235.046341658,63.000 s | samples=242 total=30604 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.000 Z=-0.002 +73.985898352,1783892235.545618534,63.500 s | samples=243 total=30847 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.002 +74.485309289,1783892236.045029163,64.000 s | samples=243 total=31090 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.002 Z= 0.002 +74.986303319,1783892236.546022892,64.500 s | samples=243 total=31333 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.000 +75.486293976,1783892237.046013594,65.000 s | samples=243 total=31576 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.002 Z= 0.001 +75.985564944,1783892237.545284271,65.500 s | samples=243 total=31819 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y= 0.000 Z=-0.004 +76.485813614,1783892238.045533180,66.000 s | samples=243 total=32062 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.004 +76.986132475,1783892238.545852184,66.500 s | samples=242 total=32304 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.008 +77.485835530,1783892239.045555353,67.000 s | samples=243 total=32547 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.002 Z=-0.001 +77.985791601,1783892239.545511484,67.500 s | samples=243 total=32790 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.008 Y=-0.001 Z=-0.001 +78.486401361,1783892240.046120882,68.000 s | samples=243 total=33033 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y= 0.001 Z=-0.004 +78.985649306,1783892240.545368910,68.500 s | samples=243 total=33276 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y= 0.001 Z=-0.001 +79.485602237,1783892241.045321941,69.000 s | samples=243 total=33519 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.003 Z= 0.000 +79.986238657,1783892241.545958042,69.500 s | samples=243 total=33762 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.000 Z=-0.001 +80.486127274,1783892242.045846939,70.000 s | samples=243 total=34005 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.005 Z=-0.005 +80.985610727,1783892242.545330286,70.500 s | samples=242 total=34247 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y= 0.000 Z= 0.003 +81.486616363,1783892243.046335697,71.000 s | samples=243 total=34490 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.002 Z=-0.003 +81.986160169,1783892243.545879841,71.500 s | samples=243 total=34733 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.003 Z= 0.005 +82.486326818,1783892244.046046257,72.000 s | samples=243 total=34976 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.004 Z=-0.000 +82.985667722,1783892244.545387030,72.500 s | samples=243 total=35219 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.003 +83.486287741,1783892245.046007156,73.000 s | samples=243 total=35462 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.003 Z= 0.002 +83.986268487,1783892245.545988321,73.500 s | samples=243 total=35705 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z=-0.002 +84.485598532,1783892246.045318365,74.000 s | samples=242 total=35947 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.001 Z= 0.002 +84.986077564,1783892246.545797110,74.500 s | samples=243 total=36190 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.002 Z=-0.003 +85.486361593,1783892247.046081781,75.000 s | samples=243 total=36433 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.006 +85.985679948,1783892247.545399904,75.500 s | samples=243 total=36676 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.003 Z=-0.002 +86.485914504,1783892248.045634031,76.000 s | samples=243 total=36919 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.001 Z= 0.001 +86.986048123,1783892248.545768261,76.500 s | samples=243 total=37162 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.002 Z=-0.005 +87.485574298,1783892249.045294046,77.000 s | samples=243 total=37405 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.001 Z=-0.002 +87.985535919,1783892249.545255661,77.500 s | samples=243 total=37648 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.002 +88.486395094,1783892250.046114922,78.000 s | samples=242 total=37890 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.000 Z=-0.002 +88.985763940,1783892250.545483828,78.500 s | samples=243 total=38133 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.004 Z= 0.001 +89.485637900,1783892251.045357466,79.000 s | samples=243 total=38376 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.001 +89.986368078,1783892251.546087980,79.500 s | samples=243 total=38619 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.003 +90.486457019,1783892252.046176672,80.000 s | samples=243 total=38862 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.000 Z= 0.001 +90.986718077,1783892252.546438456,80.500 s | samples=243 total=39105 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.002 Z=-0.004 +91.486053643,1783892253.045773029,81.000 s | samples=243 total=39348 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.003 Z=-0.000 +91.986047098,1783892253.545766830,81.500 s | samples=242 total=39590 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.003 Z=-0.002 +92.485910909,1783892254.045630693,82.000 s | samples=243 total=39833 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.004 +92.986320826,1783892254.546040773,82.500 s | samples=243 total=40076 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z=-0.003 +93.486079621,1783892255.045799494,83.000 s | samples=243 total=40319 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.000 Z=-0.000 +93.985492302,1783892255.545211792,83.500 s | samples=243 total=40562 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.003 Z=-0.001 +94.485994475,1783892256.045714140,84.000 s | samples=243 total=40805 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.003 Z=-0.002 +94.986005800,1783892256.545725584,84.500 s | samples=243 total=41048 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.003 Z= 0.000 +95.486609825,1783892257.046329498,85.000 s | samples=243 total=41291 | Temp=26.539 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.000 +95.986206945,1783892257.545926332,85.500 s | samples=242 total=41533 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.005 +96.486047133,1783892258.045766592,86.000 s | samples=243 total=41776 | Temp=26.539 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.009 Y= 0.000 Z= 0.003 +96.986051943,1783892258.545771837,86.500 s | samples=243 total=42019 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.001 Z=-0.001 +97.485690057,1783892259.045410156,87.000 s | samples=243 total=42262 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.001 Z=-0.002 +97.986141133,1783892259.545860767,87.500 s | samples=243 total=42505 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.002 Z= 0.000 +98.486021876,1783892260.045741558,88.000 s | samples=243 total=42748 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.001 Z= 0.001 +98.986418602,1783892260.546138048,88.500 s | samples=243 total=42991 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.003 Z=-0.000 +99.486063226,1783892261.045782566,89.000 s | samples=242 total=43233 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y= 0.002 Z=-0.000 +99.986917532,1783892261.546637297,89.500 s | samples=243 total=43476 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.002 Z= 0.004 +100.486585122,1783892262.046304941,90.000 s | samples=243 total=43719 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.004 Z= 0.005 +100.985999120,1783892262.545718670,90.500 s | samples=243 total=43962 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y= 0.001 Z=-0.002 +101.485442670,1783892263.045162439,91.000 s | samples=243 total=44205 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.004 Z=-0.002 +101.986030433,1783892263.545750380,91.500 s | samples=243 total=44448 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y= 0.001 Z= 0.001 +102.485945534,1783892264.045665264,92.000 s | samples=243 total=44691 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.001 Z= 0.005 +102.986132479,1783892264.545852423,92.500 s | samples=243 total=44934 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.004 Z= 0.001 +103.486023358,1783892265.045742989,93.000 s | samples=242 total=45176 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.003 Z= 0.001 +103.986389193,1783892265.546108961,93.500 s | samples=243 total=45419 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.001 +104.485760267,1783892266.045480490,94.000 s | samples=243 total=45662 | Temp=26.543 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.003 Z=-0.002 +104.985943473,1783892266.545663118,94.500 s | samples=243 total=45905 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.005 Z=-0.001 +105.486026326,1783892267.045745611,95.000 s | samples=243 total=46148 | Temp=26.547 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.003 Z=-0.002 +105.986368468,1783892267.546088219,95.500 s | samples=243 total=46391 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.002 Z=-0.006 +106.486018202,1783892268.045737743,96.000 s | samples=243 total=46634 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.006 Z= 0.003 +106.986172464,1783892268.545891762,96.500 s | samples=242 total=46876 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.007 Z=-0.005 +107.486129857,1783892269.045849562,97.000 s | samples=243 total=47119 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.003 Z= 0.000 +107.985953929,1783892269.545673847,97.500 s | samples=243 total=47362 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.001 Z= 0.004 +108.486355569,1783892270.046075344,98.000 s | samples=243 total=47605 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.002 +108.985809628,1783892270.545529366,98.500 s | samples=243 total=47848 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y= 0.001 Z=-0.003 +109.485833924,1783892271.045553684,99.000 s | samples=243 total=48091 | Temp=26.546 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y= 0.001 Z= 0.003 +109.985865893,1783892271.545585871,99.500 s | samples=243 total=48334 | Temp=26.536 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.002 Z= 0.001 +110.486305155,1783892272.046025038,100.000 s | samples=243 total=48577 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.002 Z= 0.000 +110.985819492,1783892272.545539379,100.500 s | samples=242 total=48819 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.000 Z=-0.000 +111.486824206,1783892273.046543598,101.000 s | samples=243 total=49062 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.002 Z= 0.003 +111.985840142,1783892273.545559645,101.500 s | samples=243 total=49305 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.004 +112.486231301,1783892274.045950651,102.000 s | samples=243 total=49548 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.001 Z= 0.004 +112.986419061,1783892274.546139240,102.500 s | samples=243 total=49791 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.001 Z= 0.002 +113.486809904,1783892275.046529531,103.000 s | samples=243 total=50034 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.001 +113.986250220,1783892275.545970201,103.500 s | samples=243 total=50277 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.001 Z=-0.000 +114.486203809,1783892276.045923233,104.000 s | samples=242 total=50519 | Temp=26.542 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.000 +114.986922796,1783892276.546642542,104.500 s | samples=243 total=50762 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.001 Z=-0.001 +115.486991556,1783892277.046710968,105.000 s | samples=243 total=51005 | Temp=26.532 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.005 Z=-0.003 +115.986395769,1783892277.546115637,105.500 s | samples=243 total=51248 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.003 Z= 0.001 +116.487054734,1783892278.046774387,106.000 s | samples=243 total=51491 | Temp=26.537 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.002 Z=-0.001 +116.986780323,1783892278.546500444,106.500 s | samples=243 total=51734 | Temp=26.538 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.004 Z=-0.000 +117.486424399,1783892279.046144247,107.000 s | samples=243 total=51977 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.005 Z=-0.003 +117.986756791,1783892279.546476603,107.500 s | samples=242 total=52219 | Temp=26.545 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.004 Z=-0.004 +118.486244941,1783892280.045964718,108.000 s | samples=242 total=52461 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.000 Z=-0.002 +118.986271448,1783892280.545991182,108.500 s | samples=243 total=52704 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.004 Z=-0.001 +119.485769823,1783892281.045489550,109.000 s | samples=243 total=52947 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.000 Z= 0.000 +119.986983917,1783892281.546703577,109.500 s | samples=243 total=53190 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.001 Z=-0.001 +120.486175548,1783892282.045895100,110.000 s | samples=243 total=53433 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.003 Z=-0.001 +120.985891848,1783892282.545611620,110.500 s | samples=243 total=53676 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.001 Z=-0.004 +121.486944548,1783892283.046664000,111.000 s | samples=243 total=53919 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z= 0.004 +121.986143919,1783892283.545863628,111.500 s | samples=242 total=54161 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.002 Z= 0.005 +122.486944596,1783892284.046664476,112.000 s | samples=243 total=54404 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.002 +122.986435118,1783892284.546154976,112.500 s | samples=243 total=54647 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.001 Z=-0.004 +123.486375627,1783892285.046095133,113.000 s | samples=243 total=54890 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.000 Z=-0.001 +123.986878444,1783892285.546598196,113.500 s | samples=243 total=55133 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.001 Z= 0.001 +124.486362177,1783892286.046081543,114.000 s | samples=243 total=55376 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y= 0.002 Z= 0.000 +124.986142693,1783892286.545862436,114.500 s | samples=243 total=55619 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.002 Z=-0.001 +125.486673060,1783892287.046392918,115.000 s | samples=242 total=55861 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.002 Z=-0.002 +125.986101719,1783892287.545821190,115.500 s | samples=242 total=56103 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.002 Z=-0.001 +126.486381055,1783892288.046100855,116.000 s | samples=243 total=56346 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.003 Z= 0.002 +126.986667295,1783892288.546386719,116.500 s | samples=243 total=56589 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.006 Z=-0.004 +127.486380535,1783892289.046099901,117.000 s | samples=243 total=56832 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.000 Z= 0.001 +127.986320428,1783892289.546039820,117.500 s | samples=243 total=57075 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.003 Z=-0.001 +128.486750574,1783892290.046469927,118.000 s | samples=243 total=57318 | Temp=26.548 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.003 +128.986756861,1783892290.546476364,118.500 s | samples=243 total=57561 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.005 Z= 0.000 +129.486326479,1783892291.046046019,119.000 s | samples=242 total=57803 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.002 Z=-0.007 +129.986754131,1783892291.546473742,119.500 s | samples=243 total=58046 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y= 0.003 Z=-0.002 +130.486282740,1783892292.046002150,120.000 s | samples=243 total=58289 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.003 Z=-0.004 +130.985639359,1783892292.545358896,120.500 s | samples=243 total=58532 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y=-0.001 Z=-0.000 +131.486675624,1783892293.046395302,121.000 s | samples=243 total=58775 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.000 Z= 0.004 +131.986058288,1783892293.545777559,121.500 s | samples=243 total=59018 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y= 0.000 Z= 0.002 +132.486252709,1783892294.045972109,122.000 s | samples=243 total=59261 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.001 Z= 0.003 +132.986733220,1783892294.546452761,122.500 s | samples=242 total=59503 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.002 Z= 0.001 +133.486739473,1783892295.046459198,123.000 s | samples=242 total=59745 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.002 +133.986071450,1783892295.545790911,123.500 s | samples=243 total=59988 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y=-0.001 Z= 0.005 +134.485625494,1783892296.045345068,124.000 s | samples=243 total=60231 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y=-0.001 Z=-0.003 +134.986735822,1783892296.546455622,124.500 s | samples=243 total=60474 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.002 Z= 0.002 +135.486005898,1783892297.045725346,125.000 s | samples=243 total=60717 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.001 Z=-0.003 +135.986229268,1783892297.545949221,125.500 s | samples=243 total=60960 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y=-0.000 Z= 0.000 +136.486610399,1783892298.046330214,126.000 s | samples=243 total=61203 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.002 Z=-0.004 +136.986148931,1783892298.545868874,126.500 s | samples=242 total=61445 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y=-0.004 Z=-0.001 +137.486038181,1783892299.045758009,127.000 s | samples=243 total=61688 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.008 Y= 0.001 Z= 0.001 +137.985601742,1783892299.545321465,127.500 s | samples=243 total=61931 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.011 Y=-0.001 Z= 0.001 +138.486753281,1783892300.046472788,128.000 s | samples=243 total=62174 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.001 Z= 0.004 +138.986033929,1783892300.545753241,128.500 s | samples=243 total=62417 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.009 Y=-0.002 Z=-0.004 +139.486014812,1783892301.045734644,129.000 s | samples=243 total=62660 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.008 Y= 0.001 Z= 0.001 +139.986830900,1783892301.546550989,129.500 s | samples=243 total=62903 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.002 +140.486119810,1783892302.045839310,130.000 s | samples=242 total=63145 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.003 Z=-0.002 +140.986086257,1783892302.545805931,130.500 s | samples=242 total=63387 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.001 Z= 0.001 +141.486632905,1783892303.046352386,131.000 s | samples=243 total=63630 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y= 0.001 Z= 0.002 +141.986764033,1783892303.546483755,131.500 s | samples=243 total=63873 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.005 Z= 0.002 +142.485983380,1783892304.045703173,132.000 s | samples=243 total=64116 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.001 Z= 0.003 +142.985748864,1783892304.545468569,132.500 s | samples=243 total=64359 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.004 Z= 0.002 +143.486583768,1783892305.046303511,133.000 s | samples=243 total=64602 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.008 Z=-0.002 +143.986078219,1783892305.545797825,133.500 s | samples=243 total=64845 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.003 Z= 0.002 +144.485950142,1783892306.045669794,134.000 s | samples=242 total=65087 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.004 Z=-0.001 +144.986654600,1783892306.546374321,134.500 s | samples=243 total=65330 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.001 +145.486872429,1783892307.046591997,135.000 s | samples=243 total=65573 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.003 Z=-0.000 +145.985969928,1783892307.545689583,135.500 s | samples=243 total=65816 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.001 Z= 0.004 +146.486068978,1783892308.045788765,136.000 s | samples=243 total=66059 | Temp=26.540 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.001 Z=-0.002 +146.986742647,1783892308.546462297,136.500 s | samples=243 total=66302 | Temp=26.544 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.003 +147.486688659,1783892309.046408415,137.000 s | samples=243 total=66545 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.002 +147.986112782,1783892309.545832396,137.500 s | samples=242 total=66787 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.006 Z= 0.002 +148.486118096,1783892310.045837641,138.000 s | samples=242 total=67029 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.002 Z=-0.001 +148.986588982,1783892310.546308279,138.500 s | samples=243 total=67272 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.000 +149.486894164,1783892311.046613932,139.000 s | samples=243 total=67515 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.000 Z= 0.004 +149.986077516,1783892311.545797348,139.500 s | samples=243 total=67758 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.003 Z= 0.003 +150.486834261,1783892312.046553850,140.000 s | samples=243 total=68001 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.001 Z=-0.004 +150.986120949,1783892312.545840740,140.500 s | samples=243 total=68244 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z= 0.001 +151.486785004,1783892313.046504498,141.000 s | samples=243 total=68487 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.000 Z=-0.002 +151.986908766,1783892313.546628714,141.500 s | samples=242 total=68729 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.004 Z= 0.002 +152.487083357,1783892314.046803236,142.000 s | samples=243 total=68972 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.001 +152.986568689,1783892314.546288490,142.500 s | samples=243 total=69215 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.001 Z=-0.002 +153.486066921,1783892315.045786858,143.000 s | samples=243 total=69458 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y=-0.001 Z= 0.003 +153.986893991,1783892315.546613693,143.500 s | samples=243 total=69701 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.004 Z=-0.003 +154.486570407,1783892316.046289921,144.000 s | samples=243 total=69944 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.002 Z=-0.001 +154.986073228,1783892316.545792818,144.500 s | samples=243 total=70187 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.005 Z=-0.002 +155.486762629,1783892317.046482086,145.000 s | samples=242 total=70429 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.001 +155.986550233,1783892317.546269655,145.500 s | samples=242 total=70671 | Temp=26.549 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.001 +156.485929521,1783892318.045648813,146.000 s | samples=243 total=70914 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.003 +156.987096421,1783892318.546816111,146.500 s | samples=243 total=71157 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.005 Z= 0.000 +157.486617017,1783892319.046336651,147.000 s | samples=243 total=71400 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.003 Z=-0.001 +157.986591901,1783892319.546311617,147.500 s | samples=243 total=71643 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.003 Z=-0.006 +158.485888946,1783892320.045608759,148.000 s | samples=243 total=71886 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.006 Z=-0.001 +158.986674620,1783892320.546394348,148.500 s | samples=243 total=72129 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.002 Z= 0.004 +159.486666694,1783892321.046386480,149.000 s | samples=242 total=72371 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.002 Z=-0.003 +159.987113637,1783892321.546833754,149.500 s | samples=243 total=72614 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.001 Z= 0.001 +160.486575178,1783892322.046294689,150.000 s | samples=243 total=72857 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.000 Z=-0.005 +160.986792810,1783892322.546512842,150.500 s | samples=243 total=73100 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.002 +161.486113081,1783892323.045832396,151.000 s | samples=243 total=73343 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.006 Z=-0.004 +161.986696246,1783892323.546416044,151.500 s | samples=243 total=73586 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.002 Z=-0.000 +162.486436370,1783892324.046156406,152.000 s | samples=243 total=73829 | Temp=26.552 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.000 Z=-0.001 +162.987002416,1783892324.546721697,152.500 s | samples=242 total=74071 | Temp=26.553 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.002 Z= 0.001 +163.486539912,1783892325.046259642,153.000 s | samples=242 total=74313 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.002 Z= 0.000 +163.987094217,1783892325.546814203,153.500 s | samples=243 total=74556 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y=-0.001 Z= 0.001 +164.486814601,1783892326.046534061,154.000 s | samples=243 total=74799 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.000 Z= 0.001 +164.986505927,1783892326.546226263,154.500 s | samples=243 total=75042 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z= 0.001 +165.486573011,1783892327.046292543,155.000 s | samples=243 total=75285 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.005 Z= 0.002 +165.986802974,1783892327.546522379,155.500 s | samples=243 total=75528 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.000 Z=-0.001 +166.486409008,1783892328.046128750,156.000 s | samples=243 total=75771 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.000 Z= 0.004 +166.986596498,1783892328.546315670,156.500 s | samples=242 total=76013 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y= 0.001 Z=-0.000 +167.487017790,1783892329.046737194,157.000 s | samples=243 total=76256 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y= 0.001 Z= 0.004 +167.986612607,1783892329.546331882,157.500 s | samples=243 total=76499 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.002 Z=-0.003 +168.486611145,1783892330.046330929,158.000 s | samples=243 total=76742 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.003 Z= 0.004 +168.985690660,1783892330.545410633,158.500 s | samples=243 total=76985 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.004 Z=-0.003 +169.486800638,1783892331.046519995,159.000 s | samples=243 total=77228 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.007 +169.986465345,1783892331.546185255,159.500 s | samples=243 total=77471 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.005 +170.485744320,1783892332.045464277,160.000 s | samples=242 total=77713 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.004 Z= 0.002 +170.986500312,1783892332.546220064,160.500 s | samples=242 total=77955 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.001 Z=-0.001 +171.487322549,1783892333.047042370,161.000 s | samples=243 total=78198 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.003 Z= 0.001 +171.985695408,1783892333.545415401,161.500 s | samples=243 total=78441 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.006 Z= 0.001 +172.486768565,1783892334.046488285,162.000 s | samples=243 total=78684 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.005 Z=-0.005 +172.986599028,1783892334.546318531,162.500 s | samples=243 total=78927 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.001 Z=-0.000 +173.486810979,1783892335.046530247,163.000 s | samples=243 total=79170 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.004 +173.986198338,1783892335.545917749,163.500 s | samples=243 total=79413 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.004 Z= 0.000 +174.486812737,1783892336.046532393,164.000 s | samples=242 total=79655 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.004 Z=-0.000 +174.986514764,1783892336.546234608,164.500 s | samples=243 total=79898 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.003 Z= 0.002 +175.486354409,1783892337.046074152,165.000 s | samples=243 total=80141 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.001 Z=-0.005 +175.986505890,1783892337.546225548,165.500 s | samples=243 total=80384 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.000 Z=-0.004 +176.486828905,1783892338.046548367,166.000 s | samples=243 total=80627 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.003 Z=-0.004 +176.986556148,1783892338.546275854,166.500 s | samples=243 total=80870 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y= 0.000 Z=-0.001 +177.487382938,1783892339.047102690,167.000 s | samples=243 total=81113 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y= 0.001 Z=-0.002 +177.986860124,1783892339.546580076,167.500 s | samples=242 total=81355 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.000 Z= 0.001 +178.486624062,1783892340.046344042,168.000 s | samples=242 total=81597 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y=-0.000 Z=-0.000 +178.987590849,1783892340.547311068,168.500 s | samples=243 total=81840 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.004 Z= 0.004 +179.486850718,1783892341.046570778,169.000 s | samples=243 total=82083 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y= 0.002 Z= 0.000 +179.986468028,1783892341.546187878,169.500 s | samples=243 total=82326 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.003 Z=-0.005 +180.487633028,1783892342.047352791,170.000 s | samples=243 total=82569 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.001 Z=-0.001 +180.986892341,1783892342.546611786,170.500 s | samples=243 total=82812 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.001 Z= 0.005 +181.487319176,1783892343.047039032,171.000 s | samples=243 total=83055 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.002 Z= 0.002 +181.987539410,1783892343.547259092,171.500 s | samples=242 total=83297 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z= 0.002 +182.486814741,1783892344.046534300,172.000 s | samples=243 total=83540 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.003 Z= 0.001 +182.986386382,1783892344.546105862,172.500 s | samples=243 total=83783 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.002 Z= 0.004 +183.487149513,1783892345.046869040,173.000 s | samples=243 total=84026 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.001 +183.986820123,1783892345.546540022,173.500 s | samples=243 total=84269 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.002 +184.486876459,1783892346.046596527,174.000 s | samples=243 total=84512 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.001 +184.987334335,1783892346.547054529,174.500 s | samples=243 total=84755 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.004 +185.486915351,1783892347.046635151,175.000 s | samples=242 total=84997 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.007 Y= 0.001 Z= 0.005 +185.986826927,1783892347.546546698,175.500 s | samples=242 total=85239 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.009 Y=-0.004 Z=-0.002 +186.486126215,1783892348.045845985,176.000 s | samples=243 total=85482 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.002 Z= 0.003 +186.986665950,1783892348.546385765,176.500 s | samples=243 total=85725 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.004 Z= 0.000 +187.486556188,1783892349.046276093,177.000 s | samples=243 total=85968 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.002 Z= 0.002 +187.986218601,1783892349.545938492,177.500 s | samples=243 total=86211 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.003 +188.487420069,1783892350.047139645,178.000 s | samples=243 total=86454 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.004 +188.986777579,1783892350.546497345,178.500 s | samples=243 total=86697 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.003 Z= 0.001 +189.486156203,1783892351.045876026,179.000 s | samples=242 total=86939 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.001 Z= 0.000 +189.987321838,1783892351.547041178,179.500 s | samples=243 total=87182 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.004 Z=-0.001 +190.486796386,1783892352.046515942,180.000 s | samples=243 total=87425 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.000 Z=-0.000 +190.987291386,1783892352.547011137,180.500 s | samples=243 total=87668 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.001 Z= 0.002 +191.486745681,1783892353.046465635,181.000 s | samples=243 total=87911 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.004 +191.986766197,1783892353.546485901,181.500 s | samples=243 total=88154 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.001 +192.487132681,1783892354.046852112,182.000 s | samples=243 total=88397 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.000 Z= 0.000 +192.986611407,1783892354.546331406,182.500 s | samples=242 total=88639 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.001 Z= 0.000 +193.486061897,1783892355.045781136,183.000 s | samples=242 total=88881 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.003 Z=-0.000 +193.987235905,1783892355.546955585,183.500 s | samples=243 total=89124 | Temp=26.550 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.003 Z=-0.003 +194.486824333,1783892356.046543837,184.000 s | samples=243 total=89367 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.002 +194.986115347,1783892356.545834780,184.500 s | samples=243 total=89610 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.001 Z=-0.000 +195.487327076,1783892357.047046423,185.000 s | samples=243 total=89853 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.003 Z= 0.002 +195.986705083,1783892357.546424866,185.500 s | samples=243 total=90096 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.004 +196.486936253,1783892358.046655893,186.000 s | samples=243 total=90339 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.005 Z=-0.005 +196.987203780,1783892358.546923637,186.500 s | samples=242 total=90581 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y= 0.004 Z=-0.001 +197.486591083,1783892359.046310663,187.000 s | samples=243 total=90824 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.004 +197.986072796,1783892359.545792580,187.500 s | samples=243 total=91067 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.001 Z= 0.005 +198.487033640,1783892360.046752930,188.000 s | samples=243 total=91310 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.001 Z= 0.004 +198.986594390,1783892360.546314240,188.500 s | samples=243 total=91553 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.000 Z=-0.002 +199.487011471,1783892361.046731234,189.000 s | samples=243 total=91796 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.004 +199.986577433,1783892361.546297312,189.500 s | samples=243 total=92039 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.004 Z=-0.004 +200.486558479,1783892362.046278477,190.000 s | samples=242 total=92281 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.003 Z=-0.003 +200.987231340,1783892362.546950817,190.500 s | samples=242 total=92523 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.001 Z=-0.002 +201.487229595,1783892363.046949148,191.000 s | samples=243 total=92766 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.000 Z= 0.001 +201.986514616,1783892363.546234608,191.500 s | samples=243 total=93009 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z= 0.002 +202.487022565,1783892364.046742439,192.000 s | samples=243 total=93252 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.001 Z=-0.004 +202.987035122,1783892364.546754837,192.500 s | samples=243 total=93495 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y= 0.001 Z= 0.002 +203.486484473,1783892365.046203852,193.000 s | samples=243 total=93738 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y= 0.003 Z=-0.005 +203.986489230,1783892365.546208858,193.500 s | samples=243 total=93981 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.004 Z=-0.000 +204.487455095,1783892366.047174931,194.000 s | samples=242 total=94223 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.004 Z= 0.005 +204.986713054,1783892366.546432734,194.500 s | samples=243 total=94466 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.002 Z=-0.001 +205.486275453,1783892367.045995235,195.000 s | samples=243 total=94709 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.007 Z= 0.000 +205.987349833,1783892367.547069788,195.500 s | samples=243 total=94952 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y= 0.002 Z= 0.002 +206.486635723,1783892368.046355247,196.000 s | samples=243 total=95195 | Temp=26.575 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.000 +206.986944287,1783892368.546664238,196.500 s | samples=243 total=95438 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.001 +207.486969433,1783892369.046689272,197.000 s | samples=243 total=95681 | Temp=26.575 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.004 Z= 0.001 +207.986616616,1783892369.546336174,197.500 s | samples=242 total=95923 | Temp=26.583 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.003 Z=-0.004 +208.485919818,1783892370.045639515,198.000 s | samples=242 total=96165 | Temp=26.582 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.000 +208.986948260,1783892370.546667814,198.500 s | samples=243 total=96408 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.001 +209.486385361,1783892371.046104908,199.000 s | samples=243 total=96651 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.004 +209.989822129,1783892371.549541950,199.500 s | samples=243 total=96894 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.004 Z= 0.003 +210.486651398,1783892372.046370983,200.000 s | samples=243 total=97137 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z=-0.003 +210.986707192,1783892372.546427250,200.500 s | samples=243 total=97380 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.002 Z= 0.000 +211.487125642,1783892373.046845436,201.000 s | samples=243 total=97623 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.002 Z=-0.003 +211.986421763,1783892373.546141624,201.500 s | samples=242 total=97865 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.000 +212.486961522,1783892374.046681404,202.000 s | samples=243 total=98108 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.001 Z=-0.003 +212.986928254,1783892374.546648026,202.500 s | samples=243 total=98351 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.007 Y= 0.002 Z= 0.000 +213.486998393,1783892375.046718121,203.000 s | samples=243 total=98594 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.003 Z=-0.002 +213.986287856,1783892375.546007633,203.500 s | samples=243 total=98837 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.000 Z=-0.007 +214.486954053,1783892376.046673775,204.000 s | samples=243 total=99080 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.006 Z=-0.001 +214.986633373,1783892376.546352863,204.500 s | samples=243 total=99323 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.003 Z=-0.001 +215.486840372,1783892377.046560049,205.000 s | samples=242 total=99565 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.002 Z= 0.001 +215.987134588,1783892377.546854496,205.500 s | samples=242 total=99807 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.003 Z=-0.004 +216.486497401,1783892378.046216965,206.000 s | samples=243 total=100050 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.002 Z=-0.001 +216.987010977,1783892378.546730518,206.500 s | samples=243 total=100293 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.001 +217.486871373,1783892379.046591043,207.000 s | samples=243 total=100536 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.004 Z=-0.004 +217.986569271,1783892379.546289206,207.500 s | samples=243 total=100779 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z= 0.001 +218.486871417,1783892380.046591282,208.000 s | samples=243 total=101022 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.006 Z=-0.001 +218.986411463,1783892380.546131372,208.500 s | samples=242 total=101264 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.001 +219.486693815,1783892381.046413660,209.000 s | samples=242 total=101506 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z=-0.003 +219.986975967,1783892381.546695709,209.500 s | samples=243 total=101749 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.003 Z=-0.002 +220.486853749,1783892382.046573877,210.000 s | samples=243 total=101992 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.002 Z=-0.001 +220.986454666,1783892382.546174049,210.500 s | samples=243 total=102235 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.006 +221.486827936,1783892383.046547413,211.000 s | samples=243 total=102478 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.001 Z= 0.001 +221.986341008,1783892383.546060324,211.500 s | samples=243 total=102721 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.004 Z= 0.000 +222.487381126,1783892384.047100782,212.000 s | samples=243 total=102964 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.001 Z=-0.000 +222.986924789,1783892384.546644211,212.500 s | samples=242 total=103206 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.004 +223.486323512,1783892385.046042919,213.000 s | samples=242 total=103448 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y= 0.003 Z=-0.000 +223.987005877,1783892385.546725750,213.500 s | samples=243 total=103691 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.003 Z=-0.002 +224.486774186,1783892386.046493769,214.000 s | samples=243 total=103934 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.003 +224.986994149,1783892386.546713829,214.500 s | samples=243 total=104177 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.002 Z= 0.003 +225.487466472,1783892387.047186136,215.000 s | samples=243 total=104420 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.002 Z= 0.003 +225.986970369,1783892387.546689749,215.500 s | samples=243 total=104663 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z= 0.000 +226.486772092,1783892388.046491385,216.000 s | samples=242 total=104905 | Temp=26.556 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.000 Z=-0.001 +226.986957161,1783892388.546676397,216.500 s | samples=242 total=105147 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.010 Y=-0.001 Z= 0.001 +227.488117679,1783892389.047837496,217.000 s | samples=243 total=105390 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.004 Z= 0.006 +227.986292813,1783892389.546012640,217.500 s | samples=243 total=105633 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.000 Z=-0.000 +228.487480473,1783892390.047199965,218.000 s | samples=243 total=105876 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.005 Z=-0.003 +228.986793992,1783892390.546513319,218.500 s | samples=243 total=106119 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y=-0.000 Z=-0.002 +229.486320998,1783892391.046040297,219.000 s | samples=243 total=106362 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.002 Z= 0.002 +229.986804897,1783892391.546524525,219.500 s | samples=243 total=106605 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.001 +230.486749371,1783892392.046469212,220.000 s | samples=242 total=106847 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.007 +230.986347160,1783892392.546066999,220.500 s | samples=242 total=107089 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.001 +231.486774419,1783892393.046494246,221.000 s | samples=243 total=107332 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.002 Z=-0.004 +231.987011756,1783892393.546731710,221.500 s | samples=243 total=107575 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.002 +232.486965187,1783892394.046684742,222.000 s | samples=243 total=107818 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.003 +232.987293449,1783892394.547012806,222.500 s | samples=243 total=108061 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.000 Z=-0.001 +233.486739643,1783892395.046459436,223.000 s | samples=243 total=108304 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.000 Z= 0.001 +233.986312740,1783892395.546032667,223.500 s | samples=242 total=108546 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.005 +234.487316260,1783892396.047036171,224.000 s | samples=242 total=108788 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.000 Z=-0.001 +234.987928778,1783892396.547648430,224.500 s | samples=243 total=109031 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.001 Z= 0.003 +235.487208278,1783892397.046927691,225.000 s | samples=243 total=109274 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.005 Z= 0.003 +235.986920126,1783892397.546639919,225.500 s | samples=243 total=109517 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.002 Z= 0.001 +236.486910228,1783892398.046629906,226.000 s | samples=243 total=109760 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.003 +236.987090529,1783892398.546809912,226.500 s | samples=243 total=110003 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.002 Z= 0.001 +237.486704784,1783892399.046424627,227.000 s | samples=243 total=110246 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.000 Z=-0.004 +237.986933770,1783892399.546653509,227.500 s | samples=242 total=110488 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z=-0.001 +238.487063868,1783892400.046783209,228.000 s | samples=242 total=110730 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.002 Y=-0.001 Z= 0.002 +238.987942239,1783892400.547662020,228.500 s | samples=243 total=110973 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z= 0.001 +239.486688954,1783892401.046408653,229.000 s | samples=243 total=111216 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.005 Y=-0.003 Z= 0.001 +239.986977231,1783892401.546697140,229.500 s | samples=243 total=111459 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.004 Z=-0.001 +240.487713310,1783892402.047432899,230.000 s | samples=243 total=111702 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y= 0.003 Z= 0.001 +240.987861401,1783892402.547581196,230.500 s | samples=243 total=111945 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.000 +241.486840618,1783892403.046560526,231.000 s | samples=242 total=112187 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.006 Z= 0.000 +241.987906470,1783892403.547626257,231.500 s | samples=242 total=112429 | Temp=26.551 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.002 Z= 0.002 +242.487109474,1783892404.046829224,232.000 s | samples=243 total=112672 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.003 Z=-0.000 +242.986740449,1783892404.546459913,232.500 s | samples=243 total=112915 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.003 +243.487746969,1783892405.047466993,233.000 s | samples=243 total=113158 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.001 +243.987718367,1783892405.547437906,233.500 s | samples=243 total=113401 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.001 Z=-0.001 +244.486738040,1783892406.046457767,234.000 s | samples=243 total=113644 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.002 Z=-0.003 +244.987748601,1783892406.547467947,234.500 s | samples=243 total=113887 | Temp=26.555 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.002 +245.487442854,1783892407.047162294,235.000 s | samples=242 total=114129 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.000 Z=-0.001 +245.986739830,1783892407.546459436,235.500 s | samples=242 total=114371 | Temp=26.554 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.001 +246.487711838,1783892408.047431707,236.000 s | samples=243 total=114614 | Temp=26.557 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.000 Z=-0.003 +246.987038016,1783892408.546757460,236.500 s | samples=243 total=114857 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y= 0.000 Z=-0.004 +247.487130335,1783892409.046849966,237.000 s | samples=243 total=115100 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.001 Z= 0.007 +247.987738238,1783892409.547457457,237.500 s | samples=243 total=115343 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y=-0.002 Z= 0.005 +248.487708080,1783892410.047427654,238.000 s | samples=243 total=115586 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y= 0.001 Z=-0.001 +248.987327623,1783892410.547047138,238.500 s | samples=242 total=115828 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.005 Y=-0.003 Z=-0.006 +249.486691787,1783892411.046411514,239.000 s | samples=242 total=116070 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z= 0.000 +249.987573967,1783892411.547293425,239.500 s | samples=243 total=116313 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.001 +250.487206247,1783892412.046925783,240.000 s | samples=243 total=116556 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.000 Z= 0.004 +250.987094610,1783892412.546814680,240.500 s | samples=243 total=116799 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z= 0.002 +251.487736360,1783892413.047456264,241.000 s | samples=243 total=117042 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.003 Z=-0.000 +251.987437455,1783892413.547157288,241.500 s | samples=243 total=117285 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.004 Y=-0.004 Z= 0.002 +252.487232598,1783892414.046952248,242.000 s | samples=243 total=117528 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.001 Z= 0.002 +252.987650061,1783892414.547369480,242.500 s | samples=242 total=117770 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.005 Z= 0.006 +253.487447436,1783892415.047167301,243.000 s | samples=242 total=118012 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.000 Z= 0.001 +253.986617022,1783892415.546336651,243.500 s | samples=243 total=118255 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.000 +254.487617989,1783892416.047337770,244.000 s | samples=243 total=118498 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.003 Z= 0.003 +254.987101724,1783892416.546821356,244.500 s | samples=243 total=118741 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z= 0.003 +255.486771838,1783892417.046491623,245.000 s | samples=243 total=118984 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.004 Z= 0.001 +255.987834400,1783892417.547554016,245.500 s | samples=243 total=119227 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.005 Z=-0.003 +256.486985287,1783892418.046705008,246.000 s | samples=242 total=119469 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.000 Z=-0.000 +256.987014553,1783892418.546734333,246.500 s | samples=242 total=119711 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z= 0.001 +257.487763845,1783892419.047483444,247.000 s | samples=243 total=119954 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.007 Z=-0.004 +257.986893371,1783892419.546612740,247.500 s | samples=243 total=120197 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z= 0.000 +258.486788334,1783892420.046507835,248.000 s | samples=243 total=120440 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.003 Z= 0.003 +258.987779663,1783892420.547498941,248.500 s | samples=243 total=120683 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.003 +259.486874416,1783892421.046594143,249.000 s | samples=243 total=120926 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.002 +259.986526316,1783892421.546245575,249.500 s | samples=243 total=121169 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.001 Z=-0.001 +260.487826153,1783892422.047545910,250.000 s | samples=242 total=121411 | Temp=26.562 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.004 Z=-0.008 +260.987059059,1783892422.546779156,250.500 s | samples=242 total=121653 | Temp=26.558 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.001 Z= 0.001 +261.487594166,1783892423.047313929,251.000 s | samples=243 total=121896 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y= 0.001 Z= 0.007 +261.987441766,1783892423.547161341,251.500 s | samples=243 total=122139 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y= 0.001 Z= 0.007 +262.487089389,1783892424.046809196,252.000 s | samples=243 total=122382 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.001 Z= 0.002 +262.987053558,1783892424.546773434,252.500 s | samples=243 total=122625 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.001 Z= 0.005 +263.487409762,1783892425.047129154,253.000 s | samples=243 total=122868 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.002 Z= 0.004 +263.986902886,1783892425.546622753,253.500 s | samples=242 total=123110 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.000 Z=-0.002 +264.486793161,1783892426.046512842,254.000 s | samples=242 total=123352 | Temp=26.563 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.000 +264.987835832,1783892426.547555447,254.500 s | samples=243 total=123595 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.007 Y=-0.003 Z= 0.001 +265.486855250,1783892427.046574831,255.000 s | samples=243 total=123838 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y=-0.007 Z= 0.001 +265.987776527,1783892427.547496557,255.500 s | samples=243 total=124081 | Temp=26.573 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.005 Z=-0.005 +266.487865067,1783892428.047585011,256.000 s | samples=243 total=124324 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.004 Z= 0.001 +266.986984762,1783892428.546704292,256.500 s | samples=243 total=124567 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.000 Z=-0.002 +267.487692712,1783892429.047412634,257.000 s | samples=243 total=124810 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.000 Z=-0.002 +267.987036239,1783892429.546756029,257.500 s | samples=242 total=125052 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y= 0.001 Z=-0.004 +268.486734065,1783892430.046453476,258.000 s | samples=242 total=125294 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.001 Z=-0.001 +268.987557284,1783892430.547276735,258.500 s | samples=243 total=125537 | Temp=26.573 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.000 Z=-0.004 +269.488094711,1783892431.047814369,259.000 s | samples=243 total=125780 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.002 Z=-0.002 +269.986484297,1783892431.546204090,259.500 s | samples=243 total=126023 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.003 Z=-0.002 +270.487753639,1783892432.047473431,260.000 s | samples=243 total=126266 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.002 Z=-0.003 +270.987103159,1783892432.546822548,260.500 s | samples=243 total=126509 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.001 Z= 0.001 +271.486832565,1783892433.046552658,261.000 s | samples=242 total=126751 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.000 Z= 0.004 +271.987479370,1783892433.547199011,261.500 s | samples=242 total=126993 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y=-0.007 Z=-0.005 +272.486834428,1783892434.046553850,262.000 s | samples=243 total=127236 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.001 Y=-0.001 Z=-0.000 +272.986462576,1783892434.546182156,262.500 s | samples=243 total=127479 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.003 Y= 0.001 Z= 0.004 +273.487480796,1783892435.047200441,263.000 s | samples=243 total=127722 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.000 Z= 0.001 +273.986980040,1783892435.546699524,263.500 s | samples=243 total=127965 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.001 +274.487427187,1783892436.047146797,264.000 s | samples=243 total=128208 | Temp=26.564 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.002 Z= 0.001 +274.987563845,1783892436.547283173,264.500 s | samples=243 total=128451 | Temp=26.559 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.003 Z= 0.002 +275.487473985,1783892437.047193527,265.000 s | samples=242 total=128693 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.002 Z= 0.001 +275.987037139,1783892437.546756983,265.500 s | samples=242 total=128935 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.000 Y= 0.001 Z=-0.000 +276.487788271,1783892438.047507763,266.000 s | samples=243 total=129178 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.004 +276.987557108,1783892438.547276497,266.500 s | samples=243 total=129421 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.005 Z= 0.002 +277.486589480,1783892439.046309233,267.000 s | samples=243 total=129664 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.003 Z= 0.002 +277.987464437,1783892439.547184467,267.500 s | samples=243 total=129907 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.003 Y=-0.006 Z=-0.000 +278.486716417,1783892440.046436071,268.000 s | samples=243 total=130150 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.004 Z= 0.000 +278.986826135,1783892440.546545982,268.500 s | samples=242 total=130392 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.001 Z= 0.001 +279.487515957,1783892441.047235489,269.000 s | samples=242 total=130634 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.000 Z=-0.005 +279.987670235,1783892441.547390223,269.500 s | samples=243 total=130877 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.008 Y=-0.003 Z=-0.002 +280.486800327,1783892442.046519995,270.000 s | samples=243 total=131120 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.003 +280.987469918,1783892442.547189951,270.500 s | samples=243 total=131363 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.001 Z=-0.006 +281.487355362,1783892443.047075033,271.000 s | samples=243 total=131606 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.001 Z=-0.004 +281.986756121,1783892443.546475887,271.500 s | samples=243 total=131849 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.004 Z= 0.002 +282.487516587,1783892444.047236443,272.000 s | samples=243 total=132092 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.003 Z= 0.001 +282.987463685,1783892444.547183275,272.500 s | samples=242 total=132334 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.002 Z=-0.004 +283.486765387,1783892445.046484709,273.000 s | samples=242 total=132576 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.007 Y=-0.002 Z= 0.000 +283.987483874,1783892445.547203541,273.500 s | samples=243 total=132819 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.007 Y=-0.001 Z=-0.001 +284.487513157,1783892446.047233343,274.000 s | samples=243 total=133062 | Temp=26.569 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.008 Y=-0.002 Z= 0.002 +284.986842750,1783892446.546562672,274.500 s | samples=243 total=133305 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y= 0.001 Z=-0.000 +285.487245665,1783892447.046965599,275.000 s | samples=243 total=133548 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.001 Z=-0.002 +285.987431710,1783892447.547151089,275.500 s | samples=243 total=133791 | Temp=26.565 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y= 0.000 Z=-0.003 +286.487941979,1783892448.047661781,276.000 s | samples=242 total=134033 | Temp=26.560 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y=-0.002 Z= 0.003 +286.987447789,1783892448.547167301,276.500 s | samples=242 total=134275 | Temp=26.573 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.001 Z=-0.002 +287.486731861,1783892449.046451807,277.000 s | samples=243 total=134518 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.002 Z= 0.003 +287.986796267,1783892449.546516180,277.500 s | samples=243 total=134761 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.001 Z=-0.003 +288.487491623,1783892450.047211409,278.000 s | samples=243 total=135004 | Temp=26.561 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.001 Z= 0.002 +288.987469719,1783892450.547189236,278.500 s | samples=243 total=135247 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.005 Y=-0.002 Z=-0.003 +289.487366488,1783892451.047086000,279.000 s | samples=243 total=135490 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.003 Z=-0.001 +289.987657220,1783892451.547376871,279.500 s | samples=243 total=135733 | Temp=26.582 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.003 Y=-0.002 Z= 0.003 +290.487493966,1783892452.047213793,280.000 s | samples=242 total=135975 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.001 Z= 0.001 +290.987616330,1783892452.547335863,280.500 s | samples=242 total=136217 | Temp=26.566 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.004 Z=-0.001 +291.487829847,1783892453.047549725,281.000 s | samples=243 total=136460 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.006 Y=-0.000 Z=-0.000 +291.987211230,1783892453.546931028,281.500 s | samples=243 total=136703 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.000 Z= 0.001 +292.486769959,1783892454.046489239,282.000 s | samples=243 total=136946 | Temp=26.573 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.008 Y=-0.004 Z=-0.006 +292.987471024,1783892454.547190666,282.500 s | samples=243 total=137189 | Temp=26.573 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y=-0.006 Z=-0.003 +293.487427499,1783892455.047147036,283.000 s | samples=243 total=137432 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.010 Y=-0.001 Z= 0.002 +293.987859396,1783892455.547578812,283.500 s | samples=242 total=137674 | Temp=26.572 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z= 0.001 +294.487147621,1783892456.046867132,284.000 s | samples=242 total=137916 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.001 Z= 0.000 +294.988450001,1783892456.548169613,284.500 s | samples=243 total=138159 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.001 Z=-0.005 +295.486574811,1783892457.046294451,285.000 s | samples=243 total=138402 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.002 Z= 0.001 +295.987180344,1783892457.546899796,285.500 s | samples=243 total=138645 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y= 0.001 Z=-0.005 +296.487165787,1783892458.046885967,286.000 s | samples=243 total=138888 | Temp=26.581 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.000 Y= 0.001 Z=-0.003 +296.987599229,1783892458.547318935,286.500 s | samples=243 total=139131 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.000 Z=-0.001 +297.487736273,1783892459.047456026,287.000 s | samples=243 total=139374 | Temp=26.581 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y= 0.000 Z=-0.000 +297.987123654,1783892459.546843290,287.500 s | samples=242 total=139616 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.003 Z=-0.007 +298.486648704,1783892460.046368599,288.000 s | samples=242 total=139858 | Temp=26.575 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.005 Y=-0.003 Z= 0.002 +298.987618543,1783892460.547338009,288.500 s | samples=243 total=140101 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.000 Y= 0.002 Z=-0.002 +299.487362752,1783892461.047082424,289.000 s | samples=243 total=140344 | Temp=26.575 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.003 Z= 0.004 +299.987800843,1783892461.547520399,289.500 s | samples=243 total=140587 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.006 Y= 0.002 Z=-0.004 +300.487790852,1783892462.047510624,290.000 s | samples=243 total=140830 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.005 +300.987239452,1783892462.546959162,290.500 s | samples=243 total=141073 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.002 Z=-0.001 +301.487156170,1783892463.046876192,291.000 s | samples=242 total=141315 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.006 Y= 0.001 Z= 0.001 +301.987661672,1783892463.547381401,291.500 s | samples=242 total=141557 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.001 +302.488270909,1783892464.047990561,292.000 s | samples=243 total=141800 | Temp=26.571 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.001 Z=-0.007 +302.987328968,1783892464.547048330,292.500 s | samples=243 total=142043 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.000 Y=-0.006 Z=-0.004 +303.487842046,1783892465.047561884,293.000 s | samples=243 total=142286 | Temp=26.577 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.006 Y= 0.001 Z=-0.003 +303.987209158,1783892465.546928644,293.500 s | samples=243 total=142529 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.004 Y=-0.004 Z=-0.003 +304.487290698,1783892466.047010422,294.000 s | samples=243 total=142772 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y= 0.000 Z=-0.003 +304.987897407,1783892466.547616959,294.500 s | samples=243 total=143015 | Temp=26.567 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.009 Y=-0.005 Z=-0.003 +305.487772719,1783892467.047492504,295.000 s | samples=242 total=143257 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.003 Y=-0.002 Z=-0.005 +305.987227628,1783892467.546947002,295.500 s | samples=242 total=143499 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.007 Y=-0.006 Z=-0.000 +306.487568615,1783892468.047288418,296.000 s | samples=243 total=143742 | Temp=26.576 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y=-0.000 Z= 0.001 +306.987267668,1783892468.546987772,296.500 s | samples=243 total=143985 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X= 0.001 Y= 0.000 Z= 0.001 +307.488230335,1783892469.047950268,297.000 s | samples=243 total=144228 | Temp=26.579 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y= 0.003 Z=-0.004 +307.987562883,1783892469.547282696,297.500 s | samples=243 total=144471 | Temp=26.582 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.004 Y=-0.004 Z= 0.001 +308.487258116,1783892470.046977758,298.000 s | samples=243 total=144714 | Temp=26.583 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.001 Y=-0.002 Z=-0.005 +308.988243082,1783892470.547962666,298.500 s | samples=242 total=144956 | Temp=26.574 C | Accel[g] X=-0.011 Y=-0.005 Z= 1.000 | Gyro[dps] X=-0.001 Y=-0.003 Z=-0.003 +309.487839658,1783892471.047559261,299.000 s | samples=242 total=145198 | Temp=26.568 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.002 Y=-0.002 Z=-0.002 +309.987033256,1783892471.546753168,299.500 s | samples=243 total=145441 | Temp=26.570 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X=-0.004 Y=-0.000 Z=-0.003 +310.488057326,1783892472.047776699,300.000 s | samples=243 total=145684 | Temp=26.580 C | Accel[g] X=-0.011 Y=-0.005 Z= 0.999 | Gyro[dps] X= 0.002 Y=-0.001 Z=-0.002 +310.488248563,1783892472.047967672,Complete: samples=145684 expected<=150000 invalid=0 diff --git a/soc/software/fusion/map_player.py b/soc/software/fusion/map_player.py new file mode 100644 index 0000000..5661bd9 --- /dev/null +++ b/soc/software/fusion/map_player.py @@ -0,0 +1,526 @@ +#!/usr/bin/env python3 +"""Native Tkinter OpenStreetMap player for raw GPS and ESKF positions.""" + +from __future__ import annotations + +import argparse +import csv +import io +import math +import queue +import threading +import urllib.request +from concurrent.futures import ThreadPoolExecutor +from dataclasses import dataclass +from pathlib import Path + +import numpy as np +import tkinter as tk +from PIL import Image, ImageDraw, ImageTk +from tkinter import ttk + +from fusion_eskf import enu_to_geodetic + + +BASE_DIR = Path(__file__).resolve().parent +TILE_SIZE = 256 +MAX_MERCATOR_LAT = 85.05112878 + + +@dataclass +class MapSample: + t: float + raw_lat: float + raw_lon: float + raw_height: float + fused_lat: float + fused_lon: float + fused_height: float + accepted: bool + mahalanobis: float + separation_m: float + + +def load_samples(gps_path: Path, eskf_path: Path) -> list[MapSample]: + with gps_path.open(newline="", encoding="utf-8") as stream: + gps = list(csv.DictReader(stream)) + with eskf_path.open(newline="", encoding="utf-8") as stream: + eskf = list(csv.DictReader(stream)) + if not gps or len(gps) != len(eskf): + raise ValueError( + f"GPS/ESKF row mismatch: gps={len(gps)}, eskf={len(eskf)}" + ) + + reference = ( + float(np.median([float(row["lat_deg"]) for row in gps])), + float(np.median([float(row["lon_deg"]) for row in gps])), + float(np.median([float(row["height_m"]) for row in gps])), + ) + fused_enu = np.array( + [ + [float(row["eskf_e_m"]), float(row["eskf_n_m"]), float(row["eskf_u_m"])] + for row in eskf + ] + ) + fused_lla = enu_to_geodetic(fused_enu, reference) + result = [] + for raw, filtered, corrected in zip(gps, eskf, fused_lla): + result.append( + MapSample( + t=float(filtered["t_s"]), + raw_lat=float(raw["lat_deg"]), + raw_lon=float(raw["lon_deg"]), + raw_height=float(raw["height_m"]), + fused_lat=float(corrected[0]), + fused_lon=float(corrected[1]), + fused_height=float(corrected[2]), + accepted=bool(int(filtered["gps_accepted"])), + mahalanobis=float(filtered["mahalanobis2"]), + separation_m=math.hypot( + float(filtered["gps_e_m"]) - float(filtered["eskf_e_m"]), + float(filtered["gps_n_m"]) - float(filtered["eskf_n_m"]), + ), + ) + ) + return result + + +def load_comparison_samples(path: Path, model: str) -> list[MapSample]: + """Load fixed/adaptive model_comparison.csv without an intermediate conversion.""" + with path.open(newline="", encoding="utf-8") as stream: + rows = list(csv.DictReader(stream)) + if not rows: + raise ValueError(f"empty model-comparison CSV: {path}") + + prefix = "fixed" if model == "fixed" else "adaptive" + required = { + "t_s", "lat_deg", "lon_deg", "gps_e_m", "gps_n_m", + f"{prefix}_e_m", f"{prefix}_n_m", f"{prefix}_gps_accepted", + f"{prefix}_nis", + } + missing = required.difference(rows[0]) + if missing: + raise ValueError(f"comparison CSV missing columns: {sorted(missing)}") + + heights = np.array([float(row.get("height_m") or 0.0) for row in rows]) + reference = ( + float(np.median([float(row["lat_deg"]) for row in rows])), + float(np.median([float(row["lon_deg"]) for row in rows])), + float(np.median(heights)), + ) + fused_enu = np.array( + [ + [float(row[f"{prefix}_e_m"]), float(row[f"{prefix}_n_m"]), 0.0] + for row in rows + ] + ) + fused_lla = enu_to_geodetic(fused_enu, reference) + result = [] + for row, corrected, raw_height in zip(rows, fused_lla, heights): + result.append( + MapSample( + t=float(row["t_s"]), + raw_lat=float(row["lat_deg"]), + raw_lon=float(row["lon_deg"]), + raw_height=float(raw_height), + fused_lat=float(corrected[0]), + fused_lon=float(corrected[1]), + fused_height=float(corrected[2]), + accepted=bool(int(row[f"{prefix}_gps_accepted"])), + mahalanobis=float(row[f"{prefix}_nis"]), + separation_m=math.hypot( + float(row["gps_e_m"]) - float(row[f"{prefix}_e_m"]), + float(row["gps_n_m"]) - float(row[f"{prefix}_n_m"]), + ), + ) + ) + return result + + +def latlon_to_world(lat: float, lon: float, zoom: int) -> tuple[float, float]: + lat = max(-MAX_MERCATOR_LAT, min(MAX_MERCATOR_LAT, lat)) + scale = TILE_SIZE * (2**zoom) + x = (lon + 180.0) / 360.0 * scale + lat_rad = math.radians(lat) + y = (1.0 - math.asinh(math.tan(lat_rad)) / math.pi) / 2.0 * scale + return x, y + + +def world_to_latlon(x: float, y: float, zoom: int) -> tuple[float, float]: + scale = TILE_SIZE * (2**zoom) + lon = x / scale * 360.0 - 180.0 + mercator = math.pi * (1.0 - 2.0 * y / scale) + lat = math.degrees(math.atan(math.sinh(mercator))) + return lat, lon + + +class OsmTileStore: + def __init__(self, root: tk.Tk, cache_dir: Path, redraw): + self.root = root + self.cache_dir = cache_dir + self.redraw = redraw + self.cache_dir.mkdir(parents=True, exist_ok=True) + self.executor = ThreadPoolExecutor(max_workers=3, thread_name_prefix="osm") + self.pending: set[tuple[int, int, int]] = set() + self.completed: queue.Queue[tuple[tuple[int, int, int], str | None]] = queue.Queue() + self.closed = False + self.root.after(100, self._poll) + + def path(self, z: int, x: int, y: int) -> Path: + return self.cache_dir / str(z) / str(x) / f"{y}.png" + + def request(self, z: int, x: int, y: int): + key = (z, x, y) + if key in self.pending or self.path(*key).exists() or self.closed: + return + self.pending.add(key) + self.executor.submit(self._download, key) + + def _download(self, key): + z, x, y = key + path = self.path(z, x, y) + error = None + try: + request = urllib.request.Request( + f"https://tile.openstreetmap.org/{z}/{x}/{y}.png", + headers={"User-Agent": "Rocket-GPS-Fusion/1.0 (local engineering viewer)"}, + ) + with urllib.request.urlopen(request, timeout=12) as response: + content = response.read() + image = Image.open(io.BytesIO(content)) + image.verify() + path.parent.mkdir(parents=True, exist_ok=True) + path.write_bytes(content) + except Exception as exc: # network/cache failure is shown in the window + error = str(exc) + self.completed.put((key, error)) + + def _poll(self): + changed = False + errors = [] + while True: + try: + key, error = self.completed.get_nowait() + except queue.Empty: + break + self.pending.discard(key) + changed = True + if error: + errors.append(error) + if changed: + self.redraw(errors[-1] if errors else None) + if not self.closed: + self.root.after(100, self._poll) + + def close(self): + self.closed = True + self.executor.shutdown(wait=False, cancel_futures=True) + + +class GpsMapPlayer: + def __init__(self, root: tk.Tk, samples: list[MapSample], cache_dir: Path): + self.root = root + self.samples = samples + self.index = 0 + self.play_job = None + self.zoom = 19 + self.center_lat = float(np.median([sample.raw_lat for sample in samples])) + self.center_lon = float(np.median([sample.raw_lon for sample in samples])) + self.drag_start = None + self.internal_slider = False + self.map_photo = None + self.tile_error = None + self.resize_job = None + + root.title("GPS / IMU ESKF — OpenStreetMap sample oynatıcı") + root.geometry("1180x780") + root.minsize(760, 520) + + controls = ttk.Frame(root, padding=(8, 7)) + controls.pack(side=tk.TOP, fill=tk.X) + self.play_button = ttk.Button(controls, text="▶ Oynat", command=self.toggle_play) + self.play_button.pack(side=tk.LEFT) + ttk.Button(controls, text="↺ Başa al", command=self.reset).pack(side=tk.LEFT, padx=(5, 0)) + ttk.Button(controls, text="İzleri sığdır", command=self.fit_tracks).pack(side=tk.LEFT, padx=(5, 0)) + ttk.Button(controls, text="Konuma git", command=self.center_current).pack(side=tk.LEFT, padx=(5, 0)) + ttk.Button(controls, text="Haritayı yenile", command=self.draw).pack(side=tk.LEFT, padx=(5, 0)) + ttk.Button(controls, text="−", width=3, command=lambda: self.change_zoom(-1)).pack(side=tk.LEFT, padx=(14, 0)) + ttk.Button(controls, text="+", width=3, command=lambda: self.change_zoom(1)).pack(side=tk.LEFT) + ttk.Label(controls, text="Hız:").pack(side=tk.LEFT, padx=(14, 4)) + self.speed = tk.StringVar(value="1") + ttk.Combobox(controls, textvariable=self.speed, values=("0.5", "1", "2", "4"), width=4, state="readonly").pack(side=tk.LEFT) + self.tick_label = ttk.Label(controls, text="") + self.tick_label.pack(side=tk.RIGHT) + + timeline = ttk.Frame(root, padding=(8, 0, 8, 6)) + timeline.pack(side=tk.TOP, fill=tk.X) + self.slider = tk.Scale( + timeline, from_=0, to=len(samples) - 1, resolution=1, orient=tk.HORIZONTAL, + showvalue=False, command=self.on_slider, highlightthickness=0, + ) + self.slider.pack(side=tk.LEFT, fill=tk.X, expand=True) + self.time_label = ttk.Label(timeline, width=11, anchor=tk.E) + self.time_label.pack(side=tk.RIGHT) + + self.canvas = tk.Canvas(root, bg="#d9dde0", highlightthickness=0) + self.canvas.pack(side=tk.TOP, fill=tk.BOTH, expand=True) + self.info = ttk.Label(root, padding=(9, 6), anchor=tk.W) + self.info.pack(side=tk.BOTTOM, fill=tk.X) + + self.canvas.bind("", self.pan_start) + self.canvas.bind("", self.pan_move) + self.canvas.bind("", self.mouse_zoom) + self.canvas.bind("", lambda event: self.change_zoom(1)) + self.canvas.bind("", lambda event: self.change_zoom(-1)) + self.canvas.bind("", self.on_resize) + root.bind("", lambda event: self.toggle_play()) + root.protocol("WM_DELETE_WINDOW", self.close) + + self.tiles = OsmTileStore(root, cache_dir, self.tile_update) + root.after(150, self.fit_tracks) + + def tile_update(self, error=None): + if error: + self.tile_error = error + self.draw() + + def project(self, lat, lon): + world_x, world_y = latlon_to_world(lat, lon, self.zoom) + center_x, center_y = latlon_to_world(self.center_lat, self.center_lon, self.zoom) + return ( + self.canvas.winfo_width() / 2 + world_x - center_x, + self.canvas.winfo_height() / 2 + world_y - center_y, + ) + + def draw(self): + if not self.canvas.winfo_exists(): + return + self.canvas.delete("all") + width = max(1, self.canvas.winfo_width()) + height = max(1, self.canvas.winfo_height()) + map_image = Image.new("RGB", (width, height), "#d9dde0") + image_draw = ImageDraw.Draw(map_image) + center_x, center_y = latlon_to_world(self.center_lat, self.center_lon, self.zoom) + left, top = center_x - width / 2, center_y - height / 2 + count = 2**self.zoom + tx0, tx1 = math.floor(left / TILE_SIZE), math.floor((left + width) / TILE_SIZE) + ty0, ty1 = math.floor(top / TILE_SIZE), math.floor((top + height) / TILE_SIZE) + loaded_tiles = 0 + visible_tiles = 0 + for tile_y in range(ty0, ty1 + 1): + if tile_y < 0 or tile_y >= count: + continue + for tile_x_unwrapped in range(tx0, tx1 + 1): + visible_tiles += 1 + tile_x = tile_x_unwrapped % count + px = round(tile_x_unwrapped * TILE_SIZE - left) + py = round(tile_y * TILE_SIZE - top) + path = self.tiles.path(self.zoom, tile_x, tile_y) + if path.exists(): + try: + with Image.open(path) as tile: + map_image.paste(tile.convert("RGB"), (px, py)) + loaded_tiles += 1 + except Exception: + path.unlink(missing_ok=True) + self.tiles.request(self.zoom, tile_x, tile_y) + else: + image_draw.rectangle((px, py, px + TILE_SIZE, py + TILE_SIZE), fill="#e3e6e8", outline="#cdd1d4") + self.tiles.request(self.zoom, tile_x, tile_y) + + self.map_photo = ImageTk.PhotoImage(map_image) + self.canvas.create_image(0, 0, image=self.map_photo, anchor=tk.NW) + + shown = self.samples[: self.index + 1] + self.draw_track([(s.raw_lat, s.raw_lon) for s in shown], "#d62728", 2) + self.draw_track([(s.fused_lat, s.fused_lon) for s in shown], "#1769aa", 3) + for sample in shown: + x, y = self.project(sample.raw_lat, sample.raw_lon) + color = "#d62728" if sample.accepted else "#e67e22" + self.canvas.create_oval(x - 2, y - 2, x + 2, y + 2, fill=color, outline="") + x, y = self.project(sample.fused_lat, sample.fused_lon) + self.canvas.create_oval(x - 2, y - 2, x + 2, y + 2, fill="#1769aa", outline="") + + current = self.samples[self.index] + self.draw_marker(current.raw_lat, current.raw_lon, "#d62728" if current.accepted else "#e67e22", 8) + self.draw_marker(current.fused_lat, current.fused_lon, "#2196f3", 7) + self.canvas.create_rectangle(10, 10, 205, 77, fill="white", outline="#888") + self.canvas.create_oval(22, 23, 32, 33, fill="#d62728", outline="") + self.canvas.create_text(40, 28, text="Ham GPS", anchor=tk.W) + self.canvas.create_oval(22, 43, 32, 53, fill="#2196f3", outline="") + self.canvas.create_text(40, 48, text="ESKF + ZUPT", anchor=tk.W) + self.canvas.create_oval(22, 61, 32, 71, fill="#e67e22", outline="") + self.canvas.create_text(40, 66, text="Reddedilen GPS", anchor=tk.W) + self.canvas.create_text(width - 8, height - 7, text="© OpenStreetMap contributors", anchor=tk.SE, fill="#333") + status = f"OSM {loaded_tiles}/{visible_tiles} tile" + if self.tile_error and loaded_tiles == 0: + status += f" — bağlantı hatası: {self.tile_error}" + elif loaded_tiles < visible_tiles: + status += " yükleniyor…" + self.canvas.create_rectangle(width - 245, 8, width - 8, 32, fill="white", outline="#999") + self.canvas.create_text(width - 16, 20, text=status, anchor=tk.E, fill="#333") + self.update_labels() + + def draw_track(self, coordinates, color, width): + if len(coordinates) > 1: + pixels = [value for coordinate in coordinates for value in self.project(*coordinate)] + self.canvas.create_line(*pixels, fill=color, width=width, smooth=False) + + def draw_marker(self, lat, lon, color, radius): + x, y = self.project(lat, lon) + self.canvas.create_oval(x - radius, y - radius, x + radius, y + radius, fill=color, outline="white", width=2) + + def update_labels(self): + sample = self.samples[self.index] + self.tick_label.configure(text=f"Sample {self.index + 1} / {len(self.samples)}") + self.time_label.configure(text=f"{sample.t:.3f} s") + gate = "KABUL" if sample.accepted else "RED" + self.info.configure( + text=( + f"GPS {sample.raw_lat:.8f}, {sample.raw_lon:.8f}, h={sample.raw_height:.1f} m | " + f"ESKF {sample.fused_lat:.8f}, {sample.fused_lon:.8f}, h={sample.fused_height:.1f} m | " + f"yatay fark={sample.separation_m:.2f} m GPS={gate} NIS={sample.mahalanobis:.2f}" + ) + ) + + def on_slider(self, value): + if self.internal_slider: + return + requested_index = int(float(value)) + # Scale.set() also invokes this callback on some Tk builds. An unchanged + # value is therefore a programmatic playback update, not user scrubbing. + if requested_index == self.index: + return + self.stop() + self.index = requested_index + self.draw() + + def set_index(self, index): + self.index = max(0, min(len(self.samples) - 1, index)) + self.internal_slider = True + self.slider.set(self.index) + self.internal_slider = False + self.draw() + + def toggle_play(self): + if self.play_job is not None: + self.stop() + return + if self.index >= len(self.samples) - 1: + self.set_index(0) + self.play_button.configure(text="⏸ Duraklat") + self.schedule_next() + + def schedule_next(self): + if self.index >= len(self.samples) - 1: + self.stop() + return + dt = self.samples[self.index + 1].t - self.samples[self.index].t + delay = max(60, min(2000, int(dt * 1000 / float(self.speed.get())))) + self.play_job = self.root.after(delay, self.play_step) + + def play_step(self): + self.play_job = None + self.set_index(self.index + 1) + self.schedule_next() + + def stop(self): + if self.play_job is not None: + self.root.after_cancel(self.play_job) + self.play_job = None + self.play_button.configure(text="▶ Oynat") + + def reset(self): + self.stop() + self.set_index(0) + + def center_current(self): + sample = self.samples[self.index] + self.center_lat = (sample.raw_lat + sample.fused_lat) / 2.0 + self.center_lon = (sample.raw_lon + sample.fused_lon) / 2.0 + self.zoom = 20 + self.draw() + + def fit_tracks(self): + width = max(400, self.canvas.winfo_width()) + height = max(300, self.canvas.winfo_height()) + coordinates = [(s.raw_lat, s.raw_lon) for s in self.samples] + coordinates += [(s.fused_lat, s.fused_lon) for s in self.samples] + self.center_lat = (min(x[0] for x in coordinates) + max(x[0] for x in coordinates)) / 2 + self.center_lon = (min(x[1] for x in coordinates) + max(x[1] for x in coordinates)) / 2 + for zoom in range(22, 1, -1): + pixels = [latlon_to_world(lat, lon, zoom) for lat, lon in coordinates] + span_x = max(x for x, _ in pixels) - min(x for x, _ in pixels) + span_y = max(y for _, y in pixels) - min(y for _, y in pixels) + if span_x <= width * 0.75 and span_y <= height * 0.75: + self.zoom = zoom + break + self.draw() + + def change_zoom(self, delta): + self.zoom = max(2, min(22, self.zoom + delta)) + self.draw() + + def mouse_zoom(self, event): + self.change_zoom(1 if event.delta > 0 else -1) + + def pan_start(self, event): + self.drag_start = (event.x, event.y, *latlon_to_world(self.center_lat, self.center_lon, self.zoom)) + + def pan_move(self, event): + if self.drag_start is None: + return + start_x, start_y, center_x, center_y = self.drag_start + self.center_lat, self.center_lon = world_to_latlon( + center_x - (event.x - start_x), center_y - (event.y - start_y), self.zoom + ) + self.draw() + + def on_resize(self, _event): + if self.resize_job is not None: + self.root.after_cancel(self.resize_job) + self.resize_job = self.root.after(80, self.draw) + + def close(self): + self.stop() + self.tiles.close() + self.root.destroy() + + +def parse_args(): + parser = argparse.ArgumentParser() + parser.add_argument( + "--comparison", type=Path, + help="fixed/adaptive model_comparison.csv (overrides --gps/--eskf)", + ) + parser.add_argument( + "--model", choices=("fixed", "adaptive"), default="adaptive", + help="model shown with --comparison (default: adaptive)", + ) + parser.add_argument("--gps", type=Path, default=BASE_DIR / "output/gps_positions.csv") + parser.add_argument("--eskf", type=Path, default=BASE_DIR / "output/eskf_positions.csv") + parser.add_argument("--tile-cache", type=Path, default=BASE_DIR / "output/osm_tile_cache") + parser.add_argument("--check", action="store_true", help="validate inputs and exit without opening a window") + return parser.parse_args() + + +def main(): + args = parse_args() + samples = ( + load_comparison_samples(args.comparison, args.model) + if args.comparison + else load_samples(args.gps, args.eskf) + ) + if args.check: + print( + f"map data OK: samples={len(samples)} duration={samples[-1].t:.3f}s " + f"accepted={sum(s.accepted for s in samples)} rejected={sum(not s.accepted for s in samples)}" + ) + return + root = tk.Tk() + GpsMapPlayer(root, samples, args.tile_cache) + root.mainloop() + + +if __name__ == "__main__": + main() diff --git a/soc/software/fusion/output/model_compare_5min_20260713/model_comparison.csv b/soc/software/fusion/output/model_compare_5min_20260713/model_comparison.csv new file mode 100644 index 0000000..b9b1886 --- /dev/null +++ b/soc/software/fusion/output/model_compare_5min_20260713/model_comparison.csv @@ -0,0 +1,988 @@ +t_s,lat_deg,lon_deg,gdop,tracked,height_m,gps_e_m,gps_n_m,fixed_e_m,fixed_n_m,adaptive_e_m,adaptive_n_m,fixed_speed_mps,adaptive_speed_mps,fixed_gps_accepted,adaptive_gps_accepted,fixed_nis,adaptive_nis +0.0,40.77840358051433,29.435738161792692,1.933799818,0,0.0,1.8760291730182777,-4.276987524742524,1.8760291730182777,-4.276987524742524,1.8760291730182777,-4.276987524742524,0.0,0.0,1,1,0.0,0.0 +0.2994159310000001,40.77842721294085,29.435791387479995,1.9337201454,8,0.0,6.369144445092164,-1.652612866919309,3.373740081116865,-3.4021938681365658,3.380189936321635,-3.3998592146888136,0.0027218894544904196,0.034502365462190154,1,1,0.5891149016612667,0.5879305219085186 +0.6046808960000001,40.7784017718918,29.435639444474393,1.9336410567,8,0.0,-6.457325361922912,-4.477831803870162,0.9159521111476532,-3.6711033394869355,0.8758155215764742,-3.6702447657869968,0.0012580220746964232,0.11450895649210933,1,1,2.638956920651378,2.629149121291346 +0.8982611890000001,40.77850146329599,29.435738729370968,1.9335607411,8,0.0,1.9239392273740072,6.592858977977101,1.1175477154360258,-1.6182747672226356,1.070090027280187,-1.544479469466347,0.0004276862381390323,0.18144242946736952,1,1,1.9152772633382855,1.9021219860943355 +1.204044994,40.778472665000145,29.435741656332187,1.9334794343,8,0.0,2.1710231456995674,3.3948189870936836,1.2931310369852735,-0.7827473555472587,1.2868594621636436,-0.7697255549209164,0.0014424399905044929,0.010791258394337358,1,1,0.5020525526479035,0.5000879777159923 +1.497707227,40.77849103918546,29.435708820319867,1.9334010981,8,0.0,-0.6008696826082961,5.4352651469900914,1.0225555914009192,0.10558172166464141,1.0180131912830541,0.11470483567431178,0.0034570489852196774,0.03251863497551338,1,1,0.8526907572350553,0.8499068148573032 +1.7985326730000002,40.77838922260369,29.435762208981373,1.9333206155,8,0.0,3.9060055848543977,-5.8714273523513745,1.383000512963249,-0.641584386002112,1.3833873354003763,-0.6432008715361817,0.002871151144936227,0.0036624434247577737,1,1,0.9623802203397743,0.9618912246083648 +2.099654866,40.77851670183274,29.4356806874887,1.9332407477,8,0.0,-2.975735964660361,8.285093180519917,0.8986638088379557,0.3503211329313337,0.8989762573348861,0.3487792150644845,0.0019937093809747645,0.0021721324016881712,1,1,2.195266379069982,2.1960091980098344 +2.3993662089999996,40.778463972470185,29.435705597748857,1.9331604568,8,0.0,-0.8729073190023339,2.429516498706861,0.721453477735195,0.5582813847064294,0.7217844700508422,0.556806621761593,0.00320660435419521,0.003469754370184137,1,1,0.18913092697010847,0.18931190409513277 +2.698794436,40.77840680378446,29.43574832049169,1.9330814456,8,0.0,2.7335891935688124,-3.919044310732838,0.9044136011066612,0.15119954010186487,0.9047479690309705,0.14984136717669982,0.0021990026113169396,0.0019504170397618506,1,1,0.54079855319437,0.5404807055738382 +2.998809021,40.77844435853459,29.435750977385354,1.9330010217,8,0.0,2.957872746661765,0.2513967873343975,1.0755848779892874,0.15957856827611838,1.0759489833920433,0.15824614478844867,0.0031326325251847162,0.002746707068282884,1,1,0.13988562326417942,0.13983799912639175 +3.3044275869999997,40.77840407801559,29.435794331708518,1.9329201446,8,0.0,6.617687638853687,-4.221737475747049,1.5015662561094367,-0.17750924853835123,1.5019058303057506,-0.1787193868062662,0.0036781490044000198,0.00326493318944478,1,1,1.4212420146799145,1.4208734376175824 +3.598275283,40.77837794111587,29.43578410594582,1.9328402637,8,0.0,5.754468475671893,-7.124231156477233,1.8059281528335736,-0.6738028439558142,1.8058495116196267,-0.6749123027404894,0.002651798558635529,0.0019838571192595075,1,1,1.6094704053881461,1.609154485565505 +3.899059784,40.778435554445885,29.435781734158756,1.9327608312,8,0.0,5.5542460250273935,-0.7262924955105705,2.055330627580524,-0.6772788386559423,2.055415454715902,-0.678370311176377,0.0027764469192690143,0.0017728730762931284,1,1,0.47408596623877136,0.47406131786847616 +4.19883836,40.77843755726602,29.435676704393398,1.9326806553,8,0.0,-3.311977638915107,-0.5038814075271795,1.719964916421059,-0.6664433054480945,1.7199096210870044,-0.6674660191835773,0.0016531467382606328,0.0008905796564280788,1,1,0.9766846027376477,0.97667334642705 +4.498841884,40.77839872234027,29.435807276448703,1.9326004203,8,0.0,7.710435792970954,-4.816482165102874,2.072378211366327,-0.9106659963752388,2.0725057324318996,-0.9116807232705871,0.0020294514694522365,0.0013025520023601275,1,1,1.5832867132384887,1.5830443965285643 +4.803505964,40.7784768201001,29.435741393984753,1.9325226719,8,0.0,2.148876625150333,3.856241287130824,2.076712047960046,-0.6457330435324928,2.0767733349571964,-0.6466765076605737,0.0015335213223996228,0.0011469575370316734,1,1,0.4804168297690429,0.4806182070697955 +5.09723661,40.7784137593924,29.435803436978404,1.9324422657,8,0.0,7.386320087750056,-3.1466234634265358,2.3562119101785695,-0.7773874636788874,2.3562820425838096,-0.7782800548757816,0.0012316788704194392,0.0010420896702108507,1,1,1.0977747807616747,1.097649737095272 +5.399392542,40.77843873002103,29.43568550069533,1.9323620005,8,0.0,-2.56942638778941,-0.37364769411259774,2.1100105314763375,-0.7572194795001288,2.110170456191541,-0.7580983424892256,0.001730546106815501,0.0015298110692036945,1,1,0.8364587074318866,0.8365322449480709 +5.698799033,40.77846629241897,29.435687614459138,1.9322823002,8,0.0,-2.3909892969511826,2.6871462834798123,1.8954318536010493,-0.5931190397084318,1.8955689374100053,-0.5939512773238156,0.0012961888336402343,0.0011102070805012769,1,1,0.9500212039475907,0.9501950465357571 +5.998775618,40.77849406531105,29.435640563059465,1.9322031074,8,0.0,-6.362889699012486,5.771317980241834,1.5200046390750717,-0.3037209252922325,1.5202165636442204,-0.30454199075769406,0.0016502625617934572,0.0013890588066364144,1,1,3.217829244495583,3.218191051189703 +6.291277619000001,40.77849488249149,29.43574434627881,1.9321235244,8,0.0,2.398097550322912,5.862063219766571,1.558116785966293,-0.035499603756038,1.5582947442114699,-0.036270126841781214,0.001954096169279394,0.002583766265292999,1,1,0.8403512347031403,0.8405529808997062 +6.607424353,40.778450458261446,29.435674744619636,1.932043553,8,0.0,-3.4774138028570585,0.928769409965469,1.3480602915948225,0.0046694737388396565,1.3482226946324267,0.003947805859965389,0.0019862082327034994,0.0023873811116096287,1,1,0.8980372080453095,0.8981282765602214 +6.899374504,40.778440133790106,29.435668338134175,1.9319639376,8,0.0,-4.018226077739326,-0.21775901686796353,1.1333746033131855,-0.00418265291099973,1.1335804216851921,-0.004900190370411062,0.0016906557593848281,0.002220230633270574,1,1,1.0001301525519193,1.0002033406992257 +7.198795571000001,40.77852488478564,29.435700485986708,1.9318837646,8,0.0,-1.3044219698966109,9.193806584163243,1.0394454999580127,0.349770487967835,1.039626360376334,0.34910097897144843,0.0007721916728045807,0.001109146962168814,1,1,2.02679358787078,2.0271019323145394 +7.498851923,40.77841089560901,29.43573264031877,1.9318039387,8,0.0,1.4099264172185275,-3.4646490919558746,1.0533581853031693,0.20846927428463133,1.0535834558333512,0.2077954925441418,0.0007736929677820576,0.0010986664007790782,1,1,0.3182975969139356,0.3181766191136394 +7.799320026,40.7784257938476,29.435819483694267,1.9317252858,8,0.0,8.740923268477044,-1.8102002240427792,1.3281592271312532,0.1362833420823763,1.3283637434330329,0.13565191345750716,0.0008534599508995526,0.0009001733814915865,1,1,2.1473088380314516,2.1471391657050036 +8.104459811,40.778415921776975,29.435661112099734,1.9316435682,8,0.0,-4.628222778748101,-2.9064936997698227,1.1224363220648934,0.031290733778990054,1.1226261431937599,0.030685373304432176,0.000737683226838156,0.0010062272540820496,1,1,1.4378497140921167,1.4378497820696614 +8.398217017,40.77844270147452,29.435783044756644,1.9315646579,8,0.0,5.664881236835282,0.06738245835054515,1.2742425761760123,0.03247803347621894,1.2744599219305877,0.031871468186204045,0.003135591174304624,0.0035056708951839315,1,1,0.7207433061948548,0.7206731782014496 +8.69874909,40.7784014916905,29.43570518292982,1.9314854644,8,0.0,-0.9079256412020169,-4.50895081307888,1.2036530731702477,-0.11414612567104604,1.203853227559426,-0.11472252956399587,0.0020079562424762357,0.0022583891158386746,1,1,0.6131247611783226,0.613039373858275 +8.998985076,40.77846925735303,29.435771449422585,1.9314062164,8,0.0,4.686044323932888,3.016402206546507,1.312842145151976,-0.016214019136677832,1.3130677250835314,-0.0167941266431737,0.0016580178881156218,0.001978703957828842,1,1,0.6369242172478146,0.636948852497375 +9.303468345,40.77840654294092,29.43573019892447,1.9313250447,8,0.0,1.2038329557772183,-3.948011295775901,1.3094438956107368,-0.13549106684417392,1.3096548172738265,-0.1360441079611263,0.0034076042152377884,0.0036457418765724493,1,1,0.33584681534987193,0.3357512367668676 +9.597198627000001,40.77845012184061,29.435749832587,1.931245243,8,0.0,2.8612328750989406,0.8914097382380489,1.3550609400071774,-0.10527720583463347,1.3552641932115346,-0.10580345264495147,0.0036906820369429,0.003840603492673981,1,1,0.10737281424694788,0.1073742488551699 +9.904545092000001,40.77847322800052,29.435752676305622,1.9311674316,8,0.0,3.1012879413882173,3.457340300749516,1.4052760146588812,-0.0033275181821240535,1.4054939909002093,-0.003856510362266072,0.00612709597181908,0.006324119430450778,1,1,0.3828960412706013,0.3829529491194226 +10.203752696,40.77848843081386,29.43567908871659,1.9310863647,8,0.0,-3.1106995392589263,5.145607077882566,1.2794737589928482,0.13985753811687124,1.279679964099122,0.13935154730460433,0.0055398201539837155,0.005658038882499412,1,1,1.2932014545151103,1.2933856863682178 +10.511457429,40.77839577749796,29.435775044768214,1.9310055911,8,0.0,4.989555429290478,-5.143508138552299,1.3798851431219676,-0.003119478764811917,1.380086486891092,-0.0036070280568567537,0.004524803032502834,0.004587239339263981,1,1,1.09169949784561,1.0915305364084564 +10.803731761,40.778353603249464,29.435775958245696,1.9309281598,8,0.0,5.066671064944688,-9.826942628746584,1.4772878525047912,-0.2620037551887345,1.477497559906792,-0.26249346913653254,0.003781781821593584,0.0038697179559252014,1,1,2.5808356967173065,2.5805649390060865 +11.103447102,40.7784699729091,29.435688995797555,1.9308494069,8,0.0,-2.2743817524824212,3.095863307349983,1.380748078063429,-0.1757667270990382,1.3809534405673738,-0.17623835010934336,0.0026804311853128307,0.0027378040731610704,1,1,0.7413625750468794,0.7414893220787455 +11.397169866,40.77842628127675,29.43575771281247,1.9307695585,8,0.0,3.5264534370096423,-1.7560757167663323,1.4347616768862468,-0.21535682080149104,1.4349735484402781,-0.21583028106555885,0.004744460557980069,0.004817895076253644,1,1,0.21665758243710723,0.21659128489949894 +11.704310488,40.77845885554001,29.43569203598566,1.9306881725,8,0.0,-2.0177408023740764,1.8612835296099077,1.3502340987666999,-0.16460751594726353,1.3504359211689143,-0.16506427007670046,0.004542558330161809,0.004580114412023736,1,1,0.5143372702004643,0.5144301922438641 +11.996752059,40.778392914077855,29.435716870407507,1.9306085342,8,0.0,0.07868844898014081,-5.4614915527623475,1.3200059006169274,-0.29098840016059857,1.3202139346990642,-0.2914479501155187,0.006504537311783017,0.006551927577643143,1,1,0.6698915941900281,0.6698018403542698 +12.303790485,40.778438993997355,29.435675499771747,1.9305305764,8,0.0,-3.413667259673556,-0.34433288045947125,1.2095445391888422,-0.2921990048421637,1.2097426121958705,-0.2926425942341155,0.005789231813077581,0.005806107612328787,1,1,0.7909236717658705,0.7909905254871765 +12.597551967000001,40.77838963950479,29.43577436951176,1.9304503015,8,0.0,4.932553200049194,-5.825130027880204,1.2943599083083042,-0.41815659825741625,1.2945516643931934,-0.41858675641661414,0.004757775282714879,0.004755252790606214,1,1,1.1589363419546408,1.1587784264679828 +12.899611908,40.778461498526944,29.435752559214073,1.9303711352,8,0.0,3.0914040552869833,2.1547866162734812,1.3345442798223308,-0.3609114904097915,1.3347406168036589,-0.3613420738791471,0.006602708533136826,0.006599029059612293,1,1,0.2589283787204689,0.25895249581958446 +13.204269853,40.77847990035619,29.435739468277976,1.9302926326,8,0.0,1.9863156011362548,4.198302535776664,1.3486909771497468,-0.26158699027783333,1.3488810480410127,-0.262002731412918,0.0034510197564001995,0.003432829251858301,1,1,0.47002277351590005,0.4700987040404337 +13.497524760000001,40.7784704570854,29.43564584872411,1.9302130326,8,0.0,-5.916695953958433,3.149632919842207,1.1936867285987633,-0.188838446355667,1.1938799765308492,-0.18925546807839172,0.0022753610670409375,0.0022533844704204875,1,1,2.121746533900164,2.121911896799747 +13.799442923,40.77838350602374,29.43582852328038,1.9301329982,8,0.0,9.504017784610843,-6.506246353827541,1.3673935369944352,-0.3207557655301183,1.3675808588224103,-0.3211574877993363,0.0005403219925712529,0.0005449866763893905,1,1,3.3180005198855107,3.3177748564563214 +14.099330745,40.77840997653284,29.435690264283515,1.9300525211,8,0.0,-2.167302871111136,-3.5667119740203974,1.2949310271200596,-0.387162616783243,1.2951129469913902,-0.38755251626752213,0.000379546609366534,0.0003862338783260748,1,1,0.6731910323237051,0.6731809694915135 +14.403682506,40.77846126093405,29.435725232093937,1.9299747248,8,0.0,0.7845506931328207,2.1284014093087675,1.284807635272426,-0.33670729382374576,1.2849919441108009,-0.3370982201924424,0.0019187676731088495,0.0018986545798445234,1,1,0.14799065210231052,0.1480414786291766 +14.703696184,40.77837135248899,29.43569286491707,1.9298935955,8,0.0,-1.9477680632734962,-7.855897690899365,1.2210975423293728,-0.4845116443977518,1.2212765374471855,-0.4848917248945724,0.002604267676907347,0.002584837065480901,1,1,1.610458728518727,1.6103728059119753 +14.997318246,40.778435480409094,29.435770872894107,1.92981475,8,0.0,4.637378298751601,-0.7345148840752378,1.2872305499549659,-0.48937417115683085,1.2874121042160285,-0.48975562580401655,0.004259390295662358,0.004233583090911048,1,1,0.41495411210305017,0.41490505907055164 +15.299427962000001,40.778386053830225,29.43567407132164,1.9297346174,8,0.0,-3.5342545272596517,-6.2233186482193545,1.1957630658612808,-0.5978317679098708,1.1959388373607278,-0.5982010887744413,0.0012509292940070871,0.0012249223816931743,1,1,1.545935425614968,1.5459020522516007 +15.599259826,40.778467268323965,29.435672569731906,1.9296551165,8,0.0,-3.6610088054463588,2.79552068952942,1.105396939777569,-0.5347901380485061,1.105567036580592,-0.5351501776782986,0.0002924993409399989,0.0003254132736748636,1,1,1.0894442978168832,1.0895588199850514 +15.889450347,40.778447704840914,29.435543356974385,3.1537716348,8,0.0,-14.568670280619296,0.6230165981303059,0.8190689043563402,-0.5137124080892453,0.8192389021834987,-0.5140727003071628,0.0015397244381695529,0.0015734256545774463,1,1,8.7455330084459,8.745745078330192 +16.188684136,40.778420097475035,29.435654302182147,3.1537383581,8,0.0,-5.203090641073263,-2.442783606192825,0.7110203261233935,-0.5482408067673934,0.7111840757340386,-0.5485916131266049,0.0020170202427059218,0.0020409956568362758,1,1,1.3688649267684658,1.3689060674968816 +16.505404806,40.77840158753957,29.43580057700597,1.9294182801,8,0.0,7.144893032739503,-4.498303419700016,0.824442630854404,-0.6177533631202705,0.8246029713842765,-0.6180964288269912,0.0020191562282143283,0.002035847975857071,1,1,1.8125561070873037,1.8124211162263582 +16.803234713000002,40.778393398406216,29.435686233855815,1.9293370599,8,0.0,-2.5075374030479067,-5.407706644911563,0.7667183735930246,-0.7006407602433167,0.7668795784060614,-0.7009837972604279,0.0032647755261370494,0.0032870662995406093,1,1,0.8987816989248762,0.8987470547578988 +17.104228209,40.77841968092528,29.435640571779828,1.9292597648,8,0.0,-6.362160656023981,-2.489040394519866,0.6452246010914019,-0.7310438225302858,0.6453806251472578,-0.731378734884005,0.002848229006762861,0.002861921825417729,1,1,1.8756148382155624,1.8756686263000204 +17.398067873,40.77848488826989,29.43577638327284,1.9291810788,8,0.0,5.10254028072286,4.752209990064307,0.7199521919844307,-0.6393531544185119,0.7201101226485338,-0.639687867130798,0.004029280496798514,0.004047189272720581,1,1,1.367478625367771,1.3675099744765467 +17.699307978,40.778403972282184,29.43571793536183,1.9291012154,8,0.0,0.16858797790456023,-4.233482086044883,0.7108475490377526,-0.6984879399245838,0.7110009224469571,-0.6988142635392616,0.001456925188417972,0.0014680179730531169,1,1,0.2951084368860496,0.2950620796757905 +17.998765231,40.77844936248611,29.435731077862606,1.9290218084,8,0.0,1.278028869618921,0.8070832599155602,0.7201036779701292,-0.6740956792963482,0.7202589030167489,-0.6744226628639327,0.0004105783349529174,0.0004053869667273594,1,1,0.06133524208863037,0.06135091742359344 +18.303869328,40.77844579850604,29.435588397469377,1.9289410672,8,0.0,-10.76651952278867,0.41131231586864203,0.5365942157264029,-0.656815303833924,0.536744054371463,-0.6571343150244776,0.0009711763818533474,0.000983286217576236,1,1,4.7178890834124605,4.718029349139854 +18.596647616,40.778441118514294,29.4356832483125,1.928861611,8,0.0,-2.759564095744667,-0.10840633800698447,0.48474886423989555,-0.6481999151334571,0.48489461720137583,-0.6485117729237126,0.0013940965027369199,0.0014025331255790533,1,1,0.39307327851016793,0.3931156935551515 +18.903651592,40.77848179490511,29.43574167727673,1.9287851117,8,0.0,2.1727909077861303,4.408691541245621,0.5109171262779902,-0.5700925633901963,0.5110644591741226,-0.5704043867046867,0.002559006223510343,0.0025699294640911577,1,1,0.6647677315783008,0.6648203597857142 +19.204605389,40.77848544116944,29.435666387656877,1.9287033507,8,0.0,-4.182875293296129,4.813608704116825,0.43929716776090555,-0.48817398506800835,0.43944012416561806,-0.4884783475382975,0.0024919762199386367,0.002498036936015687,1,1,1.422739566477385,1.4228614912676851 +19.48954521,40.77841558948023,29.43577896778933,3.1533843315,8,0.0,5.320720957542818,-2.943394664984806,0.512698282957167,-0.5249705891252961,0.5128429548281093,-0.5252753137334745,0.0035409142683822926,0.003549332335463163,1,1,0.9810264828366717,0.980942011729803 +19.805143326,40.77845439544215,29.435643950705085,1.9285458575,8,0.0,-6.076921069673284,1.3659935390815496,0.41506647988059914,-0.49703839890388374,0.4152068085968427,-0.4973362172872604,0.00022086817532908896,0.00022331671372427753,1,1,1.624802222255786,1.6248943692244953 +20.099132665,40.778392994974915,29.435826501042683,1.928466214,8,0.0,9.333306507691162,-5.4525020839975085,0.5452617409967713,-0.569183575036231,0.5453994002301439,-0.5694754372631743,0.0003095536630178559,0.0003141350681540044,1,1,3.3737804319673477,3.3736272137899985 +20.39872323,40.778385289138086,29.43577209712901,1.9283873504,8,0.0,4.740727243140018,-6.308236752175739,0.6057362598133716,-0.6515924941084296,0.6058751918531879,-0.6518845032680808,0.0008985416832037437,0.0009100390063112218,1,1,1.3533573141032744,1.3532402489820166 +20.703805697,40.778418885225776,29.435751386721645,1.9283094729,8,0.0,2.992428538497479,-2.5774046570431577,0.6395804338840099,-0.6788456058693447,0.6397163723651451,-0.6791313270266783,0.0006424359654351859,0.000642096582272869,1,1,0.28475330909299373,0.2847052526725164 +21.003317045,40.77837444819497,29.435684850341598,1.9282283721,8,0.0,-2.624329368005439,-7.512120489685406,0.5938196644487562,-0.7742288071232942,0.5939530502800178,-0.7745094814464768,0.001459933306592803,0.0014577453552516476,1,1,1.409852930658532,1.4097986380941039 +21.304213061,40.77846176358296,29.435780409186748,1.9281509736,8,0.0,5.44239465724865,2.1842223420738742,0.6608980701750738,-0.733494339076973,0.6610322439366649,-0.7337744142666901,0.0005623674110162538,0.0005669429816336292,1,1,1.0309426036859377,1.0309327252686171 +21.604525116,40.778433079306254,29.43580411919713,1.928070836,8,0.0,7.443908327367255,-1.0011541708102532,0.7532915223710503,-0.7371155645656475,0.7534236592377782,-0.7373904514672628,0.0006200956114363849,0.000623482404225817,1,1,1.641627159489346,1.6415591932413012 +21.896475564,40.77847038889573,29.435700543912144,1.9279914945,8,0.0,-1.2995331877709904,3.142058233141158,0.7258112106735606,-0.6851224642645101,0.7259436916839335,-0.6853969373105855,0.002295722954815998,0.0022932751794607752,1,1,0.48247711727265763,0.4825444457764982 +22.198789579,40.77847484576242,29.43568653690301,1.9279124111,8,0.0,-2.4819522337666493,3.6369919250526506,0.6831515124774256,-0.6279209703637281,0.6832812932963817,-0.6281900562522674,0.002950175932005176,0.002946466810896041,1,1,0.7793808595923156,0.7794630347706514 +22.498106515,40.77853499164038,29.435729194666354,3.1530701562,8,0.0,1.1190550131527595,10.316169026421367,0.6889800868949564,-0.4849381022875284,0.6891105172198375,-0.4852070007917427,0.0047729799931911,0.004767551245386945,1,1,2.651916173382549,2.6520438410091853 +22.789179811,40.7785474061554,29.435737203806404,3.1530380703,8,0.0,1.7951556078462387,11.69479645547559,0.7032349592353627,-0.3278637384322022,0.7033627384390675,-0.32812665025253085,0.0045731871816038225,0.004566950718982115,1,1,3.320376481558726,3.320509682669859 +23.105511829,40.778489318122894,29.435684464755486,1.9276736208,8,0.0,-2.6568745725517746,5.244142241188377,0.6602418502342193,-0.2569162473187216,0.6603673661626104,-0.2571743754223159,0.004072384077866279,0.004066199973833729,1,1,1.08868254115449,1.0887774398359287 +23.405093508,40.77850485247412,29.43562469226881,1.9275954549,8,0.0,-7.702640639976041,6.96922970825946,0.5547056827245939,-0.16595886161797796,0.5548311348501913,-0.16621668175052723,0.0057742163319370295,0.00576587846913758,1,1,3.649286755869823,3.6494461024484965 +23.688622055,40.77851883029636,29.435627299627804,3.1529439628,8,0.0,-7.482535711153707,8.521461458843644,0.4544394943309547,-0.05804644658694395,0.45456180251852335,-0.058299015553611805,0.004798564041217052,0.0047903584878619485,1,1,3.9731323844308224,3.97330179735335 +23.988835266,40.778459195307526,29.43562346329335,3.1529101602,8,0.0,-7.80639143295803,1.899018425579606,0.35255257555987884,-0.03396249258900802,0.3526751009955623,-0.03421516996025734,0.006440865820138869,0.00643021887580011,1,1,2.520325178365437,2.520420559313978 +24.289281552,40.778421983517376,29.435672408942665,3.1528790175,8,0.0,-3.674584526359479,-2.233340222572947,0.303548418015348,-0.06067436156612256,0.3036680561949191,-0.06092214837704821,0.005393852412208911,0.005383780273546159,1,1,0.6858819944199931,0.6858924580969137 +24.589480088000002,40.77843092027631,29.43572904206966,3.1528463199,8,0.0,1.1061751115562624,-1.240917301204564,0.3132160765614209,-0.074820592423441,0.3133335229064458,-0.07506432277394279,0.004316583795740214,0.004308065648903456,1,1,0.05379673902945154,0.05377705586175547 +24.904696193,40.778470152075855,29.435770671775618,1.927199287,8,0.0,4.620398218162188,3.1157608012826534,0.36447652071077186,-0.037006977273441155,0.3645945795448769,-0.03725059615532464,0.005884600852465576,0.00587346713381682,1,1,0.8875402650130578,0.887538331577631 +25.188568232,40.7784552181851,29.43576479625052,3.1527816292,8,0.0,4.124409333384177,1.4573574928226078,0.40871090498389256,-0.01950167131552572,0.40882666954117575,-0.01974095689642541,0.004689826187564503,0.004680087090579917,1,1,0.5542602637659799,0.5542448323316905 +25.495245782,40.77846700662629,29.43577216413218,3.1527546903,8,0.0,4.746377589974405,2.7664598763268793,0.45919400612582084,0.01275822256577087,0.45931039380522803,0.012518907222780689,0.00614363670020827,0.006131060379665521,1,1,0.843704334231307,0.8436977122905652 +25.789386637,40.77845980842987,29.435699744363877,3.152723329,8,0.0,-1.3670282722814138,1.9671014449712945,0.43816912422250487,0.03513639921689238,0.4382832378658019,0.034901521775209096,0.002158797096285039,0.002147182688575623,1,1,0.20362394774938986,0.20365956152606932 +26.089111166,40.778520558277,29.435648212816318,3.1526873885,8,0.0,-5.717123855524338,8.71335149446529,0.3681477023901444,0.13339158006213792,0.36825959936212255,0.13316059983855888,0.001027066014137988,0.0010171501419187613,1,1,3.019768074531568,3.0199076663221405 +26.98855216,40.77840645635859,29.43581243934844,3.1525936736,8,0.0,8.146267961371919,-3.957621849455996,0.45577614200888894,0.08761171671453838,0.4558892972968317,0.08737968843238648,0.003843194943487394,0.00383040866237195,1,1,2.532015083205556,2.5319090700989633 +28.791236058,40.77845478498913,29.435714742206102,3.1524019849,8,0.0,-0.10096645154676422,1.4092500933092624,0.4495802706832877,0.10226386206372917,0.44969298597764645,0.10203373412436638,0.003926531762422649,0.003916408041050182,1,1,0.04973085636336654,0.04974900702271084 +29.091032879,40.77850718135098,29.43574302218089,3.1523720781,8,0.0,2.2863217860975684,7.227846965930563,0.46985065253880337,0.1804992962480815,0.4699619057711376,0.1802724815891812,0.003135021343319541,0.0031267431230279576,1,1,1.2442636512651037,1.2443212470124836 +29.390986357,40.778451705223326,29.435760078650773,3.1523409775,8,0.0,3.726167350413705,1.067244182732038,0.5055248881673797,0.19016160640163723,0.5056360676803956,0.1899355174900661,0.0042012764131519435,0.0041904088597882385,1,1,0.39638978800391234,0.3963726091399196 +29.690447683,40.77838054079751,29.43580318994049,3.1523105137,8,0.0,7.365469723704919,-6.83553605432756,0.5797136277229494,0.11463757371309988,0.5798234490680813,0.11441445144383873,0.003391522532996525,0.003382974464422411,1,1,2.7748896530684264,2.7747651337664503 +29.990430098,40.7784806282059,29.435678200640222,3.1522812027,8,0.0,-3.1856679704567368,4.279130393794931,0.5394546942753924,0.15889908623324459,0.5395642518767149,0.15867661935901273,0.004399518166844914,0.004388306890395009,1,1,0.8908641115791536,0.8909354157358198 +30.29026879,40.77847173400963,29.435699477698794,3.152246298,8,0.0,-1.389538894680663,3.2914326477171936,0.5189771095813551,0.19191332215361795,0.5190849578888715,0.19169412270562528,0.0035769496006852154,0.0035673142474470384,1,1,0.3503042004710301,0.35034997684557395 +30.590241892,40.77852767288516,29.435681348423824,3.1522176112,8,0.0,-2.9199418572904947,9.503424463264093,0.482901767615931,0.2889865436604755,0.48300799722475024,0.28877036142561496,0.002816457477843339,0.002808664691239217,1,1,2.3428362726463923,2.3429528225276726 +30.890283028,40.77830621187653,29.43583367404585,3.1521827837,8,0.0,9.938838186663398,-15.089731914991475,0.5811481308157215,0.130252556343775,0.5812544044154325,0.1300368259315425,0.0037439434982362856,0.0037341344830351016,1,1,8.435327875249783,8.435106962570167 +31.189484975,40.77851693985642,29.435735691576642,3.1521574434,8,0.0,1.66749974840467,8.311525211168814,0.5923094616330152,0.21386518752011324,0.5924143019333309,0.21365248708889717,0.0029856550567152543,0.002977478307713323,1,1,1.5246596340369925,1.5247293131456228 +31.492717318,40.77847817539459,29.43566637203108,3.152118321,8,0.0,-4.1841948202399735,4.006747106144281,0.5436653682020193,0.25222062895936564,0.5437698942260809,0.25200859177565194,0.0038654710063625564,0.0038547090421152653,1,1,1.1347574642423754,1.1348295716476433 +31.789832543,40.778464183377565,29.435751268025005,3.1520906317,8,0.0,2.982406579488892,2.4529382347891127,0.5682636902361993,0.2742730622504425,0.5683668080177605,0.27406403498877807,0.0003289995517294071,0.00032023296969268926,1,1,0.3200508341096145,0.32005325509524607 +32.08921806399999,40.77839931234905,29.43570152482604,3.152059307,8,0.0,-1.2167294101219024,-4.75096582456597,0.5504271811417407,0.2244080296931769,0.5505289057935536,0.22420153579265067,0.00046687534537132616,0.0004735364006112006,1,1,0.6734692735603566,0.6734359726766942 +32.389079372,40.77853403537212,29.43567214874932,3.1520316164,8,0.0,-3.696542878316264,10.209976628594383,0.508378968247182,0.32256199050895373,0.5084803003592017,0.3223564287904079,0.00040812003318976977,0.0003975113712941858,1,1,2.8546651308247086,2.854788155388801 +32.689234537999994,40.77845748406489,29.43570441189585,3.1520001,8,0.0,-0.9730126892821254,1.7089815160516795,0.4938589543534388,0.3360451723003741,0.4939588801016447,0.33584224371201193,0.0009201889193596452,0.0009272305790837039,1,1,0.1211227410784695,0.12114603573059414 +32.988796808,40.778429009080725,29.43580733985671,3.1519684314,8,0.0,7.715784960167613,-1.4531509221538348,0.5640336017854759,0.3187855809823013,0.5641334922543677,0.3185832664660109,0.003019450908408543,0.00302901991273402,1,1,1.9374547961377138,1.9373865047706886 +33.288705283,40.77841347819669,29.435756989134195,3.151934885,8,0.0,3.46536385367839,-3.1778530163213263,0.5919640242130506,0.28538109341327933,0.592062672586071,0.28518133514964733,0.003846047065114764,0.00385367404363236,1,1,0.5722493769365404,0.5721974445730194 +33.589466998999995,40.7784971811198,29.435725652121423,3.1519046542,8,0.0,0.8200074022093626,6.117324696746091,0.5941554201336592,0.3405883303391348,0.5942528402326875,0.3403910142898404,0.0037699632281937745,0.003775703064866895,1,1,0.7557314191272102,0.7557813277077342 +33.889093605999996,40.77843963036041,29.4357532678266,3.1518722633,8,0.0,3.151223510334609,-0.27366511648855135,0.6183158945277488,0.33482970085205255,0.6184130658738646,0.3346331500265064,0.005781265703946062,0.005788867369062856,1,1,0.24242510385271682,0.24240174882729895 +34.189172717999995,40.77839664859904,29.435829627894257,3.1518413013,8,0.0,9.597263377890203,-5.046768149981182,0.702472262926829,0.2848063305013632,0.7025684537071444,0.2846120225423048,0.003271672331153593,0.003277748522539543,1,1,3.528234891294071,3.528125754021099 +34.519418107999996,40.77843260845827,29.43574534793169,3.151812331,8,0.0,2.482655619834837,-1.0534449895310352,0.7189834533240229,0.2725093470491507,0.7190786890191839,0.27231703073594865,0.0014732252479954012,0.0014782534926413946,1,1,0.15317041140680845,0.15314664411056608 +34.788641911,40.77847580469088,29.435709909159584,3.1517798705,8,0.0,-0.5089540597169641,3.7434801747370026,0.7077125267166297,0.30415940262579105,0.7078072902279836,0.30396809306106015,0.0031875953341820957,0.0031939761434603346,1,1,0.32112670756029277,0.3211648429555226 +35.088461036,40.77844618534203,29.435684148218805,3.151746616,8,0.0,-2.6835971414969917,0.45426296734327076,0.6767418757142647,0.30551732524573944,0.676835488713545,0.3053281639216091,0.0023907578350884635,0.0023955307502266598,1,1,0.41232435282269075,0.4123485802845482 +35.389065548,40.77846639443702,29.435708364600067,3.1517170355,8,0.0,-0.6393400640054593,2.6984749922373372,0.6648440848621555,0.32699430342788427,0.6649373323617402,0.32680594710784344,0.0013151791203568249,0.001321360102105644,1,1,0.1890146693348287,0.18904371543686402 +35.689034631,40.77841348884622,29.43579812116226,3.1516869564,8,0.0,6.937578458953348,-3.1766679505364652,0.7211446966737967,0.295805233269569,0.7212369794506581,0.29561898206499787,0.00016028150491523405,0.00015527221702174663,1,1,1.6814099337448014,1.6813389289011162 +35.989158421,40.77843449124595,29.435705884029797,3.1516520616,8,0.0,-0.8487409273585799,-0.8443624852179418,0.70717530084702,0.28576880113765785,0.7072672612702655,0.2855832214713124,0.0012232682338004415,0.001216662983849528,1,1,0.11710579550978477,0.11710676336898879 +36.289071254,40.778396311670896,29.435770356307543,3.1516203205,8,0.0,4.593772672584688,-5.084188689445081,0.7414872980874218,0.23877170752591814,0.7415782671157458,0.23858816381856687,0.0017881061088838568,0.0017831417213109541,1,1,1.1806901105109315,1.1806204679422339 +36.588502766999994,40.77856277171582,29.43562244198484,3.151596156,8,0.0,-7.8925942248663175,13.401140243488873,0.6658769199526419,0.35297075964255253,0.6659667548477043,0.35278931804658475,0.0018245236762368018,0.0018204743099507063,1,1,6.513507320087543,6.513670376186222 +36.889472825999995,40.7785234048922,29.435720701083394,3.1515629112,8,0.0,0.40205933882379474,9.02946486167766,0.6636156277229753,0.4276387413597465,0.6637051143055904,0.4274581653054903,0.0028731204964527863,0.0028677278304059094,1,1,1.6725682732462919,1.672640121099107 +37.189041765,40.77839209521295,29.435724348066042,3.1515306139,8,0.0,0.7099250979840275,-5.552426162177485,0.6640082330991359,0.3765835217226624,0.6640967176669136,0.37640484391217194,0.0025824540987723936,0.0025779787644835237,1,1,0.7934677072617042,0.7934196029826617 +37.48903891,40.77842857909295,29.435807622333634,3.1515012298,8,0.0,7.739630668868682,-1.500900878661601,0.7244881837749758,0.3607368238684412,0.7245765078607175,0.3605588076318269,0.0035904620470297664,0.003584765893735309,1,1,1.8719783130975767,1.8719182223210133 +37.789058585,40.77849467752307,29.43568726294625,3.1514701721,8,0.0,-2.4206616684397018,5.839301559768012,0.6978104338893248,0.40671168204139246,0.6978977037546966,0.4065356507133606,0.0030982733196280514,0.0030936032813902335,1,1,1.0204460063149354,1.0205090214991113 +38.089290760999994,40.77842081424149,29.43570049816451,3.1514372958,8,0.0,-1.3033960004446346,-2.36318867063583,0.680967236725019,0.3836321850106464,0.6810535877737369,0.3834578914517198,0.002532667387636316,0.0025290230617592835,1,1,0.31375979136341803,0.3137506810394633 +38.389151584,40.77838485614874,29.435684929879628,3.1514080253,8,0.0,-2.6176146476997397,-6.356321111895532,0.6534458641738734,0.3279390382502334,0.653531809165179,0.32776541948637605,0.003457715403424592,0.003452957850102941,1,1,1.3980449560265749,1.3980130958350656 +38.688437621,40.778544280086706,29.435642843626034,3.151381964,8,0.0,-6.170368238889594,11.347650038066554,0.5969364033208869,0.41829238369503813,0.5970213174415843,0.4181206488212455,0.0009849385135798211,0.0009809353380190516,1,1,4.363849887667082,4.363976528051004 +38.989425704,40.77847662372459,29.435699974168486,3.1513527253,8,0.0,-1.3476286859906068,3.8344336701659274,0.5809094045543681,0.4460953810590305,0.5809939791463431,0.4459243714487798,0.0011014437580494222,0.0011060294189839592,1,1,0.3945347197021058,0.39457275708699663 +39.288997011999996,40.77857147337498,29.435659488911845,3.1513196867,8,0.0,-4.765235212647235,14.367453603353926,0.5373289037727571,0.5584777135814261,0.5374124673840623,0.5583086363231811,0.0026979510923852753,0.0027015112340576884,1,1,5.326194742964229,5.326332441924189 +39.589035884,40.77841360346507,29.435749945752523,3.151282704,8,0.0,2.870787459744625,-3.1639422641517823,0.5562483423743297,0.5286295239709135,0.5563311097440228,0.5284620256175906,0.0030547740972992586,0.003057715471538753,1,1,0.5027493526669368,0.502707498236966 +39.890092210999995,40.77842822243242,29.435717344752625,3.151254586,8,0.0,0.1187308698390127,-1.540511941741124,0.5526713718515884,0.5122253488130089,0.5527537983242496,0.5120585790287513,0.00505820695426734,0.005062189406618769,1,1,0.10190630674608289,0.10189347127799928 +40.188719766,40.77850745508881,29.435678007934722,3.1512270692,8,0.0,-3.2019341554928986,7.2582457896876456,0.5227558019971328,0.565426336986724,0.522837332881515,0.565261264529063,0.0046838829188861454,0.004686975590054647,1,1,1.5157049329916414,1.5157769163255357 +40.489483291,40.77848047444202,29.435614248785605,3.1511900228,8,0.0,-8.584243031252102,4.262059263078008,0.4505586760624504,0.594457582621165,0.45063976201748973,0.5942932369215881,0.006632989347304594,0.006636966520774187,1,1,3.2767861174863837,3.2768667303009424 +40.789169584,40.77848148514652,29.43564955084615,3.1511631358,8,0.0,-5.604175760775092,4.374294766507188,0.403023238593205,0.623794298048226,0.40310339483147895,0.6236315707834662,0.005797464895540634,0.005800721602972291,1,1,1.6316486294922903,1.6317112610908182 +41.089158104999996,40.77845621614109,29.435792343318337,3.1511325092,8,0.0,6.449829982784258,1.568181794823087,0.4501935172903327,0.6310826149223281,0.45027303677838765,0.6309213759430895,0.0047742668832386325,0.004776825671922571,1,1,1.330840725964879,1.3308128109841928 +41.389152368,40.778492369758204,29.435616998890254,3.1511012855,8,0.0,-8.35208804978342,5.583029442209614,0.38199182296033146,0.6690262736049651,0.38207086769142773,0.6688658118486337,0.006560441240243955,0.0065637919277475,1,1,3.322803855338794,3.3228897550267575 +41.688436091999996,40.778463014674855,29.43582452074224,3.1510730524,8,0.0,9.166127147653347,2.3231593048318557,0.44957867847984223,0.6815933599258275,0.4496571061251975,0.6814343957362984,0.0035411468066172402,0.003543753547405356,1,1,2.8277450763583714,2.8277070985577453 +41.989274132,40.77839927942781,29.435697406234564,3.1510361564,8,0.0,-1.5644058376493,-4.754621651112459,0.43419864435492556,0.6405667065277214,0.4342767423746373,0.6404083629274774,0.0023018866888163676,0.0023052417574324,1,1,0.801769342964071,0.8017421964238649 +42.289216724,40.778383842869104,29.435677867454565,3.151007215,8,0.0,-3.2137989142234384,-6.468845202527224,0.40652339774835344,0.5872464017451702,0.4066006995657694,0.5870894543558165,0.0001446420701696724,0.00014706447563296972,1,1,1.5998018653173813,1.5997723295383195 +42.589278983999996,40.77836440326905,29.43573746996272,3.1509753958,8,0.0,1.8176284887594307,-8.627606001208388,0.4171737931916517,0.5186648976763812,0.4172504143614158,0.5185092045817482,0.00015111081708547752,0.00015259832786245048,1,1,1.9573811162785044,1.9573091143807142 +42.888379316999995,40.778395206642365,29.43576750321833,3.1509444597,8,0.0,4.352925379018789,-5.206901841509025,0.44660005937864783,0.47628267151583453,0.4466764097268055,0.47612765381183464,0.0017580402731141053,0.0017610384740167494,1,1,1.283729220491972,1.2836677957579614 +43.189476981,40.77843151011311,29.435715415307047,3.1509176939,8,0.0,-0.044145794640948526,-1.1754162263793966,0.44296469518387904,0.4641817345150891,0.4430403485957628,0.4640280429850043,0.002470076905079742,0.002472371178831094,1,1,0.069239324860251,0.06923064867870178 +43.488982043,40.77837912681085,29.435832522597195,3.1508855096,8,0.0,9.841626206551629,-6.99255586866955,0.5123593613683011,0.40976248985634195,0.5124348411705794,0.4096094206060161,0.004133627941196508,0.004136636336848506,1,1,4.403817586015278,4.403715287095002 +43.789007518999995,40.778420510687354,29.435720782382912,3.150854447,8,0.0,0.40892296439272946,-2.3968983485555277,0.5115837395810462,0.38946595527435507,0.5116585292527143,0.38931416923329065,0.004079503278534705,0.004081936105688747,1,1,0.17538175455475608,0.17536325000023043 +44.088936503999996,40.778386871560095,29.43570977834195,3.1508201097,8,0.0,-0.5199978864231518,-6.132510877364868,0.5040510033251842,0.3426059488698544,0.5041251610510802,0.34245533810570594,0.0027172121798698704,0.002719146503655442,1,1,0.9831724382552486,0.9831340159759019 +44.388469437999994,40.77842643323763,29.435773276811712,3.1507928274,8,0.0,4.840308775758832,-1.7391997760532887,0.5354708148805365,0.32763860465990996,0.5355446926430047,0.3274886925951197,0.0013822851328722874,0.0013850401511079308,1,1,0.7708564494916629,0.7708193401116507 +44.689476412,40.77850936600729,29.43573170913787,3.1507649904,8,0.0,1.3313175796609438,7.470452006220507,0.5411778779531204,0.37836662063117277,0.5412511304123092,0.378217999862926,0.001472931104832785,0.0014749356729280027,1,1,1.1562773802632849,1.1563206867229785 +44.98923799,40.77846204671222,29.435682460689584,3.1507339341,8,0.0,-2.8260514128076792,2.2156622812465696,0.517092706183259,0.39127263298217496,0.5171655966408826,0.3911247118595074,0.0030242748049079155,0.0030267601092917873,1,1,0.4818156829911611,0.4818455921543676 +45.289042701999996,40.77851574808595,29.43571869322883,3.1507032371,8,0.0,0.23256394348260423,8.179179359317104,0.5151033073285057,0.4458412541509376,0.5151755640915782,0.44569462354752243,0.0005042807582479468,0.0005056401409132652,1,1,1.3505867070403084,1.3506393114992454 +45.588457055,40.77855466082285,29.43570873672361,3.1506752891,8,0.0,-0.6079259836012765,12.50042439867868,0.5071869093908011,0.5296666966343555,0.5072585609453275,0.5295213312402738,0.0007785698317766531,0.000776781508039605,1,1,3.2743139536158994,3.2743982213724636 +45.88948310999999,40.77846749861502,29.435676856842594,3.1506431774,8,0.0,-3.299106961235212,2.821094256075986,0.4804982740533065,0.54558797300944,0.48056956119828387,0.5454433167197551,0.0021827090653930054,0.0021804819855639,1,1,0.6365627866861124,0.6365972402386906 +46.18897381199999,40.778472615301645,29.435685351624226,3.1506124971,8,0.0,-2.582009106447514,3.389300118548075,0.4591833203006629,0.5650751030029902,0.45925397801471096,0.564931626971344,0.0024881918007127724,0.0024864518032322396,1,1,0.516296378974824,0.5163302853049998 +46.528340869,40.778522544888894,29.435713271527916,3.1505855212,8,0.0,-0.22511539244723036,8.933961806333802,0.4544378877456514,0.6221597327852312,0.454508004825547,0.6220173861354642,0.0022012407331015622,0.002199836557802663,1,1,1.5733604194973514,1.5734172155347326 +46.788909999,40.778482598251536,29.435708617662318,3.1505525704,8,0.0,-0.6179773459557099,4.497902570930634,0.44705999897466137,0.6485037742487425,0.4471297564931774,0.6483621909138297,0.0008494968920119827,0.0008475240023806432,1,1,0.37511798001351165,0.3751479485358046 +47.088456515999994,40.77848613620273,29.435690009020348,3.150518354,8,0.0,-2.1888487508801027,4.890791035035629,0.4290640875286167,0.6770308770656803,0.42913325675079783,0.6768904118153958,0.00039488588109202593,0.00039343067039814255,1,1,0.6493895089545341,0.6494293624559876 +47.389460519,40.77845909100149,29.43570294696719,3.1504897096,8,0.0,-1.096676473609267,1.887431244401095,0.41866368672091275,0.6852450811642423,0.4187325350750886,0.6851052943619248,0.0016164122410725274,0.0016143785345329592,1,1,0.1161081762249808,0.1161233417156567 +47.68891571699999,40.7784548420788,29.43569586171369,3.1504563556,8,0.0,-1.6947872275182096,1.415590073522819,0.4043976473293777,0.6900634499473134,0.40446592959329586,0.68992473651786,0.0020673235275179016,0.0020658587117895802,1,1,0.17218511950890422,0.17220008658878078 +47.989178843999994,40.778367807314424,29.43571174281143,3.1504267758,8,0.0,-0.3541646287168365,-8.249588249007873,0.3993264874807434,0.6309527200999987,0.39939446718186716,0.63081456761681,0.0033906120390614913,0.0033887986464403164,1,1,1.7971455970708736,1.7970940650165819 +48.289088385999996,40.778459236464506,29.435720899428716,3.1503993491,8,0.0,0.4188032969235828,1.9035847887802273,0.3994379530512278,0.6393179200212911,0.39950538682376346,0.6391808460936141,0.0005069890818849865,0.0005052277875937211,1,1,0.03601697593981743,0.036024688857122136 +48.588894419999995,40.77847771330894,29.435758261300773,3.1503703417,8,0.0,3.5727520386928755,3.955432345747584,0.4205009951931192,0.6609636601422658,0.4205679552325267,0.6608276052862486,0.000918700813770667,0.0009197336129746143,1,1,0.6059544159356771,0.6059592568987205 +48.888411078,40.778397856635124,29.43572250815144,3.1503355413,8,0.0,0.5546061724710648,-4.912622392046743,0.4213608901200333,0.6247969922281684,0.421427545869866,0.6246615582795894,0.0025529541412295143,0.002554457093047768,1,1,0.6912763969229734,0.6912419733566526 +49.189458052,40.778425929044644,29.43585258947234,3.150305858,8,0.0,11.535590816750615,-1.7951828165433363,0.4942215169820833,0.6091906308505514,0.4942877983872557,0.6090561558154722,0.0029182819724882124,0.0029195650897654852,1,1,4.564917073473157,4.564849317141567 +49.544478805,40.778583411761055,29.43567415004696,3.1502778576,8,0.0,-3.527598381178188,15.693206271253098,0.46799287920146027,0.7059828256861668,0.4680586669329136,0.7058493606790878,0.0025326527340624183,0.0025336709780089724,1,1,5.639414831277638,5.639524095144821 +49.789119776999996,40.77836850203985,29.43571267769131,3.1502433714,8,0.0,-0.27524544946941665,-8.172439254077354,0.46320455769602514,0.6493347384121521,0.46326999457237905,0.6492019052042115,0.001417116874596439,0.0014184818097576898,1,1,1.7724721701488144,1.7724229177644328 +50.088347637999995,40.77850879216929,29.435754958362686,3.1502210623,8,0.0,3.293928880689689,7.4067281213338125,0.48141554016831245,0.692213260436205,0.4814805450660817,0.6920814002259986,0.000747467569438347,0.0007485878925340368,1,1,1.3030086774340173,1.303035265284717 +50.38930668,40.77831894136932,29.43575492361996,3.1501846712,8,0.0,3.2910054005232827,-13.676132449502514,0.4994729884175991,0.6015605733114548,0.4995377060662382,0.6014292492779388,0.0023178182968544765,0.0023192626040275284,1,1,4.87397180138497,4.8738742471964835 +50.682736385999995,40.77847555660197,29.435748277526322,3.1501545248,8,0.0,2.7299594002395438,3.7159304796551456,0.5136593166239424,0.6211302067698041,0.513723596057227,0.6209998222964438,0.0008798016112762864,0.0008809861120924296,1,1,0.39432066362465856,0.39432847754683453 +50.988895772,40.778474767531506,29.435715184792926,3.1501276603,8,0.0,-0.06360490303694241,3.628303994470073,0.5100419783206097,0.6398119669409401,0.5101059524635513,0.639682205506809,0.0006445576689351272,0.0006436097582514585,1,1,0.21307203227848018,0.21309216759247934 +51.288892747,40.77862845257734,29.43571409270456,3.1500987602,8,0.0,-0.15579454438784104,20.694971458642705,0.5058218672887481,0.7641135502632229,0.5058853756682585,0.7639848242416414,0.0010849059784090072,0.0010860076727804353,1,1,8.960344518706924,8.960463170359592 +51.589470911999996,40.77849634891749,29.435746141875768,3.1500675006,8,0.0,2.549675004196942,6.0249093326989716,0.5186246316500076,0.7965359089562554,0.5186877282050194,0.7964080792634505,0.0017432980192758599,0.0017441627353302004,1,1,0.7655001841355297,0.7655209656836218 +51.889344689999994,40.77844312178997,29.43575803189796,3.1500364461,8,0.0,3.55338855817786,0.11405701786074124,0.5375523133632409,0.7923383176549832,0.537615129048281,0.792211101468419,0.0032529921647594198,0.0032541400174332684,1,1,0.34110480628344636,0.34108714656467104 +52.188994392999994,40.77846709768193,29.435692132687723,3.150005285,8,0.0,-2.0095773268321695,2.7765703232075416,0.5217605039063179,0.8044230489178009,0.521822861696319,0.8042967040752479,0.003201407599438308,0.003202285443732827,1,1,0.32056984490978946,0.3205925477548202 +52.500369416,40.77838558987141,29.4356907790631,3.1499705735,8,0.0,-2.1238478449799927,-6.2748416413330075,0.5054546173670806,0.7615314852163841,0.5055165365723016,0.7614059119321103,0.0028240608504063,0.0028247459778061143,1,1,1.366025834864739,1.365997899897803 +52.788839038999996,40.77848304207293,29.435725421966605,3.1499463836,8,0.0,0.8005787731505909,4.547188788312728,0.5072487012774487,0.7843469176286375,0.5073103171227783,0.7842219956632956,0.004185369680612269,0.004186288626095159,1,1,0.3218839249200345,0.3219037776114476 +53.089049566999996,40.77835668393341,29.435764720828086,3.1499126699,8,0.0,4.118048537928684,-9.48483441732261,0.5292629959888994,0.7227847704561404,0.5293242307936634,0.7226606022352876,0.0026297306645513044,0.0026304441521184975,1,1,2.813919672814271,2.813846645444994 +53.389416254,40.77843374365812,29.435622179734068,3.1498824506,8,0.0,-7.91474773585865,-0.927377655623018,0.4780327273591524,0.7129957570334993,0.4780936037004535,0.7128721749344692,0.0010593573386951034,0.0010601896428828988,1,1,2.6216320966042903,2.6216601469340346 +53.689334155,40.77841248189129,29.435734064256145,3.1498522767,8,0.0,1.5301299441908693,-3.2884930125467196,0.48437549286579895,0.6892524957957381,0.48443596667032296,0.6891296997503046,0.0011370071439555898,0.0011377419324195626,1,1,0.395929714394596,0.395903128347619 +53.988829366,40.778425240891124,29.43567921890042,3.1498244633,8,0.0,-3.099712848258644,-1.8716103448138173,0.4628673051047583,0.6741831416054822,0.462927476885551,0.6740609016476422,0.0024822363524000845,0.002483206485949547,1,1,0.6073216260757804,0.6073232087679803 +54.289017332,40.77842563289188,29.43566031330914,3.1497927025,8,0.0,-4.695653057607059,-1.8280779672187895,0.4320416800367871,0.6594962040869236,0.4321013965409461,0.6593747485148919,0.002795259625405041,0.0027960265872711467,1,1,1.095181182532732,1.0951898555756638 +54.588827548999994,40.778310098330316,29.435789517188933,3.1497580674,8,0.0,6.211272289715472,-14.65814674383391,0.46639560404368324,0.5701581475245555,0.4664549816911347,0.5700373666602706,0.0026063264853285776,0.0026069477060128798,1,1,6.4194918228391815,6.419384263535009 +54.889044037999994,40.778467922189854,29.435752619498523,3.1497358072,8,0.0,3.0964927453588573,2.868131996099033,0.4819398716588996,0.5834889462678448,0.48199899656627126,0.5833687621290137,0.0038927139571911834,0.0038935317679883678,1,1,0.365985212981783,0.36598633712225676 +55.189520755,40.77849105765125,29.435780672191903,3.1497074617,8,0.0,5.4645941689205415,5.437317758167805,0.5112410436457705,0.6114968258008093,0.5112998290760169,0.6113774198247155,0.0033958653744033816,0.0033965234908078824,1,1,1.4160682245261063,1.4160730036896498 +55.488833946,40.778494613428,29.435786061973417,3.1496767714,8,0.0,5.919578866029094,5.83218579580449,0.5429660021394007,0.641487816448829,0.5430245608556902,0.6413689991015393,0.004636110109789573,0.004636957713508437,1,1,1.6572228312517645,1.6572277149961545 +55.789004049,40.77847226898534,29.435782080768988,3.1496450034,8,0.0,5.583502502514502,3.350843476932623,0.572281073995772,0.6569486989543568,0.5723392981526052,0.6568306416104859,0.00394587568459337,0.0039465503107742874,1,1,1.0761496848091685,1.0761427970320872 +56.088854344999994,40.778495152975196,29.435785606871892,3.1496141938,8,0.0,5.881160867408408,5.892102280828491,0.6030227830281887,0.6866867953155343,0.6030806912068506,0.6865694793953927,0.003194058487707421,0.0031945899083728763,1,1,1.6224226972159657,1.6224279760813438 +56.389015093999994,40.778512135243034,29.43565130904455,3.1495895265,8,0.0,-5.4557527583665255,7.777976498669458,0.5681225279936647,0.7267981488019891,0.5681801083600809,0.7266814321631415,0.004325115525924964,0.004325808978444085,1,1,2.437838237427516,2.4379005107754765 +56.689234688,40.77848697716002,29.435704173126425,3.1495563372,8,0.0,-0.9931682742484478,4.984178772618127,0.5591589693119059,0.7507393484163873,0.5592161817534521,0.7506233569686087,0.0035179844764516395,0.00351854425596845,1,1,0.4908928233750163,0.49092138300935706 +56.98904271,40.778521711826315,29.435732299555834,3.149525907,8,0.0,1.3811581672366375,8.841450640432178,0.5638447409326685,0.7960083209276045,0.5639016815973601,0.7958929177641966,0.004599905073767787,0.0046006229835768965,1,1,1.4808737761175246,1.4809121876968283 +57.288881325999995,40.77843470284241,29.43573343110274,3.1494964967,8,0.0,1.4766809687201243,-0.8208646791244326,0.5690373822006274,0.787006151854688,0.5690939824915711,0.7868914369777376,0.0037674205254315555,0.003767992741694956,1,1,0.08811511733990524,0.08810308310974226 +57.588838200999994,40.77844116654543,29.435749794858413,3.1494624845,8,0.0,2.858048352065341,-0.10307246201191765,0.5820058150687238,0.7820620594598435,0.5820620904122839,0.7819480093509725,0.0029781379903063353,0.0029785818984982846,1,1,0.20590169839253175,0.20588784721457096 +57.889130644999995,40.778494725194314,29.435550459348704,3.1494361615,8,0.0,-13.969104407059985,5.844608213770419,0.5000309363366041,0.8099938816397776,0.5000868309692017,0.8098804062655902,0.003981839716330943,0.003982407508830237,1,1,8.178880483248717,8.178965039110707 +58.188936123,40.77841575461253,29.435668350366296,3.1494022629,8,0.0,-4.017194955952701,-2.9250576063754425,0.47476991764994647,0.7895013023103671,0.47482544114550573,0.7893884703826655,0.0031821963942377865,0.003182664307764639,1,1,1.043749038545401,1.0437483132344314 +58.489561325,40.77848652570221,29.43565158231333,3.149380418,8,0.0,-5.4326865339881945,4.934046476327092,0.4417370446587644,0.8121150325581198,0.44179226036835006,0.8120027487556426,0.004124419601047403,0.00412502034539564,1,1,1.6363564937274635,1.636400907393595 +58.789067603,40.77848357268817,29.43568939285317,3.1493475578,8,0.0,-2.240863348224513,4.606113709777378,0.42690043910425185,0.832724984746784,0.42695530228073064,0.8326133715445844,0.003363027391094196,0.0033635248017700554,1,1,0.578981533996158,0.579011126843136 +59.088818968,40.77847016992694,29.435739757853266,3.1493168851,8,0.0,2.0107607513870858,3.117741989688768,0.4356910667917156,0.8450648084656425,0.435745618692082,0.8449538383680001,0.001762929568650943,0.0017632988821005707,1,1,0.20635683106100441,0.20636193624251783 +59.389234067,40.77854406220457,29.435715853422725,3.149289383,8,0.0,-0.007161678006411052,11.323451735792895,0.43318486527920774,0.9014526831972628,0.43323915649166017,0.9013422876976984,0.0004647307361013931,0.0004641416025502108,1,1,2.450735014026025,2.4507885330538093 +59.689535283,40.77853080908435,29.435686250789846,3.149259988,8,0.0,-2.506102730470506,9.851698068181685,0.41711955332997663,0.949335186707705,0.41717350299679523,0.9492254624580951,0.00024781783890792235,0.0002473721085662589,1,1,2.0934699076621053,2.093525330812796 +59.988897032,40.77856016135169,29.435616705524676,3.1492335279,8,0.0,-8.376844347838288,13.11126080437524,0.3691371888346617,1.0142115334169535,0.3691908278021621,1.0141023679327703,0.0008317406466123516,0.0008320360993895393,1,1,6.071587235789132,6.071680781066598 +60.288797941,40.778488300990155,29.435686018588353,3.1492005098,8,0.0,-2.525705901670282,5.131189981309919,0.35347633752546337,1.0359906878245029,0.35352964077402066,1.035882163195755,0.001297623695210658,0.0012979877833414197,1,1,0.6784832611477536,0.678514414044062 +60.588769709,40.7784999843253,29.43565298453273,3.1491721266,8,0.0,-5.3143153831657965,6.428621489509195,0.3228938516704652,1.064411920472292,0.3229468082084071,1.064304023390837,0.0013917802670190232,0.0013920633158807636,1,1,1.8019359737597358,1.8019837188044354 +60.888190298999994,40.77834723406337,29.435735007698174,3.1491328852,8,0.0,1.6097734284069147,-10.534239922391494,0.3297670389847955,1.0035401768674919,0.3298197603716164,1.003432729311309,0.002202003229981143,0.002202417958727164,1,1,3.0540912072072706,3.0540305426273355 +61.189541600999995,40.77840107160111,29.435679526484524,3.1491111347,8,0.0,-3.0737488479798967,-4.555601001201653,0.31158202242578953,0.9744678785628789,0.3116344181952817,0.9743609985526531,0.0020170308450959983,0.002017371794031921,1,1,1.104306733578054,1.1042930378988258 +61.489276188,40.77842737682512,29.435718093397117,3.1490803131,8,0.0,0.18192867424315598,-1.6344163161952387,0.3108189832261421,0.9608626482072017,0.31087113563243446,0.960756252593715,0.002821094602070455,0.002821541901565809,1,1,0.15211179297422286,0.1520998600116164 +61.788814662,40.77854001020308,29.435653322532172,3.149049676,8,0.0,-5.285779577703516,10.873480358784343,0.2811752273652519,1.0122364892305866,0.2812270487610148,1.0121307154779313,0.0004055827989326434,0.00040516630668077007,1,1,3.3132836291329872,3.3133515324879106 +62.088847064,40.77845042818906,29.43569722034397,3.1490179644,8,0.0,-1.5800968289547617,0.9254292348756018,0.2713595308022213,1.0117872291818073,0.2714110504658064,1.0116820265897577,0.001786587754475713,0.0017862948601136432,1,1,0.12470225416151313,0.12470877737508099 +62.388744745,40.77858604545918,29.435592113943745,3.1489932406,8,0.0,-10.452766587362051,15.98568401090592,0.2149180767288838,1.0886757778139855,0.2149692910628968,1.0885711154859725,0.0039442843735638805,0.0039438882900662605,1,1,9.125773037095536,9.12588291985161 +62.689174851999994,40.778493035452065,29.435519072900938,3.1489641443,8,0.0,-16.618630143341342,5.656968436035975,0.126819299867525,1.1119992310986697,0.12687011862963396,1.1118951541208826,0.004164295487571013,0.0041639800787322805,1,1,10.651389093190934,10.65147226983628 +62.989254073,40.77839132913508,29.43567691611941,3.148930801,8,0.0,-3.294106796838667,-5.637498124027527,0.10887377861298889,1.0776793340517234,0.10892434906513215,1.0775756894745232,0.006256674505043421,0.006256276158030462,1,1,1.4349021176187011,1.4348833203218527 +63.288892639,40.77846973572951,29.43568879425698,3.1489019968,8,0.0,-2.2913950608573486,3.0695246070947517,0.09647252038514194,1.087760664111992,0.09652279136230213,1.087657590709971,0.0029042136810510577,0.0029038918624193074,1,1,0.29546125202791984,0.29547916364502563 +63.588853656,40.77842030151968,29.435630756610138,3.1488696899,8,0.0,-7.190721056085015,-2.420122860640715,0.05881641110856711,1.0700951340147937,0.058866366412786246,1.0699925903942338,0.001948057794763318,0.0019478142859337467,1,1,2.183094007250457,2.18310423314569 +63.888730355999996,40.77848183625231,29.435733050254253,3.1488390141,8,0.0,1.444530128287876,4.413282955136201,0.06592133207059228,1.0868468573927308,0.06597106590455858,1.0867447822187157,0.003944316689551661,0.003943994956776064,1,1,0.3178924068490637,0.31790270016680316 +64.189486319,40.778436657908856,29.435695697464375,3.1488096945,8,0.0,-1.7086530080438995,-0.6037552289023375,0.05683322020060916,1.0784258846659134,0.05688267692505586,1.0783243409379186,0.004039366890171286,0.004039115953151411,1,1,0.17685906621985756,0.1768577277641768 +64.615415439,40.778570863895126,29.435746985079323,3.1487877829,8,0.0,2.6208521312981703,14.299770020905848,0.06993370392517512,1.1442104679322798,0.06998292153602606,1.1441094790654005,0.004343439739754293,0.004343210257317157,1,1,4.128481932886994,4.128532584963378 +64.78885952099999,40.77836468880614,29.435744551476244,3.1487510063,8,0.0,2.4154242580843404,-8.59589704262049,0.0818578149427675,1.0959482389203228,0.08190681030887852,1.0958476843276925,0.00543490318280181,0.0054346357428993325,1,1,2.3101707499882305,2.310118621346679 +65.089866618,40.77852939739268,29.435828259204122,3.1487278421,8,0.0,9.48170468404887,9.694935878042852,0.12942824396592764,1.1383795192743948,0.1294770383298881,1.138279515354552,0.004586734102719411,0.004586525163206991,1,1,4.823330192723045,4.823335553691469 +65.389692496,40.77846889856515,29.435668942093326,3.1486962954,8,0.0,-3.9672403752697933,2.9765585243688037,0.10881882238852562,1.1473841883512987,0.10886736876088818,1.1472846318589325,0.006396061505599281,0.006395784360148192,1,1,0.6786900052380704,0.6787125739264844 +65.68912596,40.77847480951191,29.435678643598237,3.148664219,8,0.0,-3.148275395045465,3.6329665729422027,0.09244033346423948,1.1595486700069157,0.09248860509211441,1.1594496369632705,0.0034588446294304257,0.00345862259443858,1,1,0.5190153040531783,0.5190376869902942 +65.98887742,40.77843209372181,29.435742842451617,3.1486341117,8,0.0,2.2711522806263647,-1.1106063491187355,0.10336912956592713,1.1484747469296006,0.10341719571097895,1.1483761391776175,0.0022562244040518096,0.0022559458729768415,1,1,0.2854357233747716,0.28541813794189874 +66.289698002,40.778489826899246,29.435659288083265,3.1486070165,8,0.0,-4.782194237198661,5.300642732841497,0.07900722051735934,1.1686208201221207,0.07905500726645473,1.16852273118731,0.00016783325237559716,0.00016774854253928746,1,1,1.2421797960619698,1.2422149039742203 +66.58973032099999,40.778636393219315,29.43563497308363,3.1485809954,8,0.0,-6.834759752245044,21.576779976829012,0.044718619088774086,1.267141244056885,0.04476611921900486,1.2670437169139748,0.0008258376330284546,0.0008259916288091962,1,1,10.993690195755715,10.993803051609598 +66.88912220899999,40.77861585754581,29.435715975455505,3.1485539573,8,0.0,0.0031398576319536017,19.29629785011738,0.044478084742778264,1.3539103027238995,0.04452537017621357,1.353813277793758,0.0020616796493512176,0.0020618926034591044,1,1,7.2386758500107815,7.238754305189951 +67.18927083,40.77840073948864,29.435786635064694,3.1485179455,8,0.0,5.967965467684529,-4.592480200646836,0.07365062323764685,1.3253692963064723,0.07369769534034407,1.3252727311477621,0.0005374852560405201,0.0005375605971624323,1,1,2.049182656233937,2.0491368156683087 +67.488738575,40.77848868501745,29.435729809716122,3.1484917559,8,0.0,1.170975972276484,5.1738357322515975,0.07906816511080204,1.3438533114243654,0.0791150487369165,1.343757180790604,0.0014555610636539445,0.0014552906321587255,1,1,0.37311440759194625,0.37312724746958137 +67.789860656,40.77842924953514,29.43582200720052,3.1484582681,8,0.0,8.953947886908447,-1.4264471548020254,0.12240642450450408,1.3306141724675735,0.12245310764494136,1.3305185088178058,0.002536804226098403,0.0025366060694640797,1,1,3.0033666570895265,3.00332486879337 +68.08923236599999,40.778542445588855,29.435682302955698,3.148434229,8,0.0,-2.8393632946726237,11.143927704609926,0.10797956070261046,1.376992065091452,0.10802598768773954,1.3768969037662901,0.0027455685380294785,0.002745406364878185,1,1,2.4602062859348797,2.4602580271960264 +68.389522177,40.778529223007325,29.43570492197488,3.1484028316,8,0.0,-0.929952720237197,9.675564437455515,0.10298252370808732,1.4161638784948094,0.10302874837027982,1.4160691577187223,0.004440883421164383,0.004440667350454862,1,1,1.5724765437978585,1.5725151957287238 +68.689118237,40.77855836211088,29.435710966452714,3.1483742204,8,0.0,-0.4197008238269075,12.911451051729317,0.1004495148706164,1.4700419907231301,0.10049549782917182,1.4699477719643168,0.0022138072908947717,0.002213629501644988,1,1,2.952904908764229,2.952955128135168 +68.98970829699999,40.77840571242104,29.435751437677634,3.148340037,8,0.0,2.9967306480473686,-4.040239710330833,0.11438926895186823,1.444369441719895,0.11443507241101498,1.4442756152307958,0.0009103365070604187,0.0009101047728523774,1,1,0.9779642605656653,0.977931537972018 +69.290120661,40.778504491048565,29.435841524554103,3.1483151327,8,0.0,10.601518778800402,6.929097117504511,0.1646504873239454,1.4698564182423177,0.1646961116859647,1.4697630619211133,0.000817376228225676,0.000817543461436791,1,1,4.625427979362814,4.625416336431856 +69.589647621,40.77848140246436,29.435690247332367,3.1482872582,8,0.0,-2.1687315020453553,4.3651111409091845,0.15345594439158852,1.483281715147494,0.1535013357856277,1.4831888173124037,0.0014250929346593738,0.0014252316987630772,1,1,0.38251502177161956,0.38253471573199077 +69.889479016,40.778433361653796,29.43569903400673,3.1482530436,8,0.0,-1.426994535792335,-0.9698031858905128,0.14602479861617207,1.4719484994910619,0.14606997675983888,1.4718559903646968,0.0027186662453333585,0.002718852300119135,1,1,0.22388077152087174,0.22387577750363655 +70.192204754,40.77855131235932,29.435640517962703,3.1482289379,8,0.0,-6.366691131327076,12.128581475492423,0.1151275229998519,1.5209795135635111,0.1151724524356186,1.520887478916528,0.0027138665872745845,0.0027140144730167493,1,1,4.0550418490960185,4.055106907679395 +70.518667722,40.77845653890326,29.43570004594785,3.1481966788,8,0.0,-1.3415697458384017,1.604021725715878,0.10827420590105181,1.521378043525118,0.10831891522501012,1.521286432154964,0.002474150528498113,0.002474266628478272,1,1,0.07647748746249156,0.07648253575807534 +70.790606598,40.77852978658847,29.435645682675712,3.148171052,8,0.0,-5.9307078602199415,9.738152231747662,0.07984356044340896,1.5588336467696822,0.07988803136557376,1.558742465502292,0.003581413502531011,0.0035815634488667097,1,1,2.8156269265611487,2.815679878957396 +71.090603261,40.778465605732144,29.435781708114796,3.1481384716,8,0.0,5.552044988727166,2.610891661885839,0.10551900453247542,1.5636171337268383,0.10556328997386305,1.5635263733968523,0.0030025580986750722,0.003002674570382655,1,1,1.1017211216286802,1.1017078854530584 +71.39011213399999,40.778476908067034,29.435675304863796,3.1481115392,8,0.0,-3.4301187157576942,3.8660104644799187,0.0889574769933518,1.5740335714942006,0.0890015457401786,1.5739432195177991,0.004175796615826733,0.004175949399206314,1,1,0.5677141293880349,0.5677347034764826 +71.689906765,40.77854074090937,29.43570100089601,3.1480827768,8,0.0,-1.2609549919561591,10.954623242499377,0.08268931127687096,1.6163521999186432,0.0827331663449282,1.6162622916308658,0.0034590644644186563,0.0034591884627835873,1,1,2.0257323362324366,2.0257743667858055 +71.989661384,40.77846369747458,29.4357558206138,3.1480449716,8,0.0,3.3667191225878064,2.3989790527538526,0.09794088659630391,1.619843298398508,0.09798455641642845,1.619753775209775,0.004582361945610565,0.004582522790386847,1,1,0.4015765530825285,0.4015693256697817 +72.28985457099999,40.77840320058851,29.435676349357898,3.1480198439,8,0.0,-3.341950141333417,-4.319177628222751,0.08202504576581744,1.5932725297349692,0.0820684970956704,1.5931834013233366,0.0037947292110643693,0.00379485724025618,1,1,1.2113840025959606,1.2113711202332575 +72.589175531,40.778435571097546,29.435689067769726,3.1479892604,8,0.0,-2.268307301349485,-0.7244450696082034,0.07119478921397951,1.5829375723592505,0.07123802436253865,1.582848843207504,0.003019926036763837,0.0030200269203642235,1,1,0.31837602366834417,0.3183741660383675 +72.889448352,40.77850021061805,29.435736651421696,3.1479641963,8,0.0,1.7485266531517454,6.453749514216471,0.07890559437739167,1.6045724195968731,0.07894864964368817,1.6044840809328584,0.004043043676565921,0.004043176950047167,1,1,0.6297358666710633,0.6297499061819438 +73.188676174,40.778415618704635,29.435752557891938,3.1479349852,8,0.0,3.0912945728790984,-2.940150571145535,0.09266283813145204,1.5844586831472398,0.09270570518221113,1.5843707311482604,0.0032544239892847845,0.003254531144275737,1,1,0.7865763707845669,0.786549151804574 +73.48978705399999,40.77846113761968,29.435684150507115,3.1479052053,8,0.0,-2.6834033693068187,2.1147078388012828,0.08003422745155292,1.58677960079065,0.08007689687979955,1.5866920209165776,0.0042299954789126225,0.004230133117187237,1,1,0.2834990996690287,0.28350974100021176 +73.789872215,40.7784088322077,29.435758888722983,3.147876415,8,0.0,3.625720409176217,-3.6937882837449174,0.09612567539311287,1.5635878658184639,0.09616816162756485,1.5635006643057043,0.003443225955931304,0.0034433368440917305,1,1,1.0734899567087308,1.0734584649179073 +74.09892645699999,40.778473663982446,29.435727088804455,1.9143881153,8,0.0,0.9412870824872793,3.505755342578156,0.09996311820595442,1.57210774721999,0.10000541427334952,1.5720209342257692,0.0027382883964391725,0.0027383757411001074,1,1,0.10973060562819531,0.10973556828686623 +74.398636068,40.77846257230134,29.435674184587427,1.9143114167,8,0.0,-3.5246889968166917,2.274029057309451,0.08359171794903657,1.5751310241146212,0.08363381247757079,1.5750445856634476,0.003622802726718649,0.003622917456651439,1,1,0.4836153248581971,0.48362907038421776 +74.703659917,40.778450928013505,29.43564704847833,1.914235704,8,0.0,-5.815418902853092,0.9809366681867503,0.057104106947505194,1.5725702945697864,0.05714598447394896,1.5724842328741362,0.0029162814102197633,0.0029163736454168566,1,1,1.2597644565453037,1.259780028451169 +75.003143798,40.77850034210502,29.43573575018277,1.9141570341,8,0.0,1.67244747107881,6.468351076082584,0.06431455843081746,1.5937734027772674,0.06435625433695391,1.593687735310293,0.0022433054209321404,0.002243377085027502,1,1,0.6278975498376861,0.6279114540505112 +75.296021174,40.77844523664848,29.435736159429336,1.9140800721,8,0.0,1.7069959270180461,0.3489106128518742,0.07165475177022032,1.588378736698083,0.07169627195728624,1.588293423101357,0.003024315341668975,0.0030244125379349633,1,1,0.1316048101360679,0.1315951284252595 +75.599022296,40.77838582971378,29.435739583938844,1.9140027708,8,0.0,1.9960820720741292,-6.248207271382711,0.08021347377548975,1.554723441460561,0.08025481680934983,1.5546384766779968,0.002387138125017397,0.0023872150263692595,1,1,1.5015555752224161,1.5015200306938696 +75.90357703299999,40.77846218763495,29.435777273704467,1.9139245543,8,0.0,5.177708927828146,2.2313129681987296,0.10283313821015137,1.5575632675324758,0.10287432197177886,1.5574786587083989,0.0031594535784192942,0.003159554792121539,1,1,0.9450587368310444,0.9450461300809261 +76.20371588799999,40.77839095158866,29.435776262679518,1.9138492145,8,0.0,5.092367420583461,-5.6794234959781305,0.12486118921980481,1.5266974914750573,0.12490220910045084,1.526613229414305,0.0025272954251605185,0.0025273775934070886,1,1,2.062676277883815,2.0626342011517753 +76.503812091,40.77846790827697,29.435845840519296,1.9137704637,8,0.0,10.965862213011441,2.8665944476419294,0.17258596284683525,1.5324030324053683,0.17262684507212744,1.5323191338998012,0.0019523807296450383,0.0019524440027189375,1,1,4.268501827693617,4.268474843745702 +76.79764664999999,40.77852174670359,29.435659974075808,1.9136935145,8,0.0,-4.724283074111404,8.845325127259825,0.15114267424527045,1.5633747402508267,0.15118336323135625,1.563291209566149,0.002615133649041269,0.0026152164723182453,1,1,2.054407463198073,2.0544492093774007 +77.09914336,40.77841938782084,29.43574913481069,1.913617539,8,0.0,2.8023304884085882,-2.5215917364200098,0.16273342117514536,1.5461390736930711,0.16277394153885394,1.5460558871253491,0.0010885908403148238,0.0010886578536454933,1,1,0.624724891970458,0.6247019217527564 +77.39915077399999,40.778389822072675,29.435880426172602,1.9135399289,8,0.0,13.885469803456493,-5.804844557337945,0.22264837178962715,1.5151732686116632,0.22268877781515392,1.5150904015903504,0.001268261098987281,0.0012681949337932038,1,1,7.979622219469725,7.979554912920275 +77.698883719,40.77848233499378,29.435689533571548,1.9134628556,8,0.0,-2.2289844745901353,4.46866820428288,0.21194560666388662,1.527577047331544,0.21198582351724057,1.5274945417697579,0.002691965526134974,0.002691901499620264,1,1,0.4106310463525955,0.41064907954419083 +78.003583687,40.77852442971347,29.435668626097346,1.9133843461,8,0.0,-3.9939122461885463,9.143271949332956,0.19368320337249653,1.5593901228711333,0.1937232246481178,1.5593079943921837,0.002995183478659637,0.002995132286896745,1,1,1.928885624056799,1.928925787831426 +78.303063448,40.778429611185295,29.43571737488124,1.9133087502,8,0.0,0.12127421360216128,-1.386291452444392,0.1934327282389382,1.5471302113022296,0.1934725871559077,1.547048394396364,0.005205928582796235,0.005205859937236945,1,1,0.19354714167943038,0.19353656514836737 +78.604263272,40.77851218921071,29.435725441770785,1.913232615,8,0.0,0.802250216601798,7.783967622136425,0.19602773725863118,1.5730242628542292,0.1960674245467348,1.5729428122654021,0.004723054312026836,0.0047229998686442315,1,1,0.880144144278856,0.8801651349851525 +78.90355806699999,40.778504146731535,29.43565094074313,1.9131541493,8,0.0,-5.486844022045219,6.890855282735764,0.1716753399353031,1.5950144981097052,0.17171484268265894,1.5949333724559127,0.006855661420653102,0.006855588690712841,1,1,1.7922765567301295,1.792312095801146 +79.203795202,40.77848246566566,29.435696733698858,1.9130788565,8,0.0,-1.6211768192107283,4.483179110688989,0.16399859477676793,1.606911216484514,0.16403791639822773,1.6068304440431886,0.005907260301863047,0.005907200307981667,1,1,0.30155001614347876,0.30156555294273507 +79.503783238,40.77859666834944,29.435766746515082,1.913000209,8,0.0,4.28903429720585,17.165345916198834,0.18159075102964478,1.6708175014088702,0.1816299187885155,1.6707371056298659,0.004770960334170991,0.0047709140019873445,1,1,6.006718916154681,6.0067632342832376 +79.80332296,40.778502997067,29.435678310941867,1.9129246861,8,0.0,-3.1763556541626246,6.763184110976585,0.167317175424216,1.6917037873026004,0.1673561726344901,1.6916237158192686,0.006738213751396009,0.006738151361885547,1,1,0.983653212402013,0.9836809285977263 +80.103049324,40.77843974295802,29.435614702986882,1.9128459078,8,0.0,-8.545906287707195,-0.26115693308181837,0.13040564312366956,1.6837501832982036,0.13044444233063432,1.6836704397267128,0.0054482621083855685,0.005448214386909066,1,1,2.8169762522033825,2.8169937275259116 +80.401408375,40.77849865369653,29.435601101322437,1.9127693912,8,0.0,-9.694099783256396,6.280860095509579,0.08880969143103201,1.7024306289392996,0.0888482928442117,1.702351205038282,0.007326935671243976,0.007326872819727348,1,1,3.944264736406216,3.9443085011100085 +80.701565449,40.77848949862755,29.43573427759953,1.9126927122,8,0.0,1.5481378210663486,5.2641869009806825,0.09499180795945275,1.7168737794504023,0.09503024999424131,1.7167946966469891,0.003975116573763281,0.003975066223627155,1,1,0.3593577778276231,0.3593663304114892 +81.001458683,40.77849183399823,29.435520992446136,1.9126162257,8,0.0,-16.456589683345108,5.523547071780445,0.025483346713933916,1.7322258661313545,0.025521561267804485,1.7321471195116231,0.0017135837122690624,0.0017135412948753501,1,1,10.181535564765593,10.181594732999795 +81.303050078,40.77836559039068,29.43570178932148,1.9125384421,8,0.0,-1.194402276847541,-8.495776715038993,0.02033079739628794,1.6910612563883474,0.02036885616089593,1.6909827848022534,0.003480170407005472,0.003480115994945983,1,1,2.3850327211197264,2.3850001625534145 +81.596017138,40.77834295045471,29.435746185133826,1.9124626345,8,0.0,2.5533325592291467,-11.009932795892892,0.030913222732361845,1.6400754075514272,0.030951124232270227,1.639997230019141,0.003320276432509047,0.0033202355619032712,1,1,3.826143228285855,3.8260918614336283 +81.90378780399999,40.7784843932302,29.435761471149554,1.9123843608,8,0.0,3.8437150266314632,4.697235255999017,0.04678848611906166,1.6523076590023056,0.046826258317110944,1.652229781748063,0.005079619068027329,0.005079564973547102,1,1,0.7314710976599583,0.7314713463268838 +82.203667909,40.77855322862458,29.43561295126526,1.9123082895,8,0.0,-8.693765334311077,12.341384389180732,0.010506635735689232,1.694926982922738,0.010544212002733484,1.6948494513748507,0.0024938404754503707,0.0024937938040609673,1,1,5.295895857011414,5.295956700359975 +82.49752678899999,40.77856376717051,29.435625806988703,1.9122311111,8,0.0,-7.608533491378142,13.511684821633366,-0.021084679433591394,1.7419625079122607,-0.021047274368406595,1.7418852989720084,0.0012738964384393597,0.0012738278519411114,1,1,5.201271769012876,5.201333213094377 +82.799077195,40.778481429715676,29.435706545329698,1.9121543668,8,0.0,-0.7929158804333968,4.368137114357063,-0.024224305135625367,1.7523316780752327,-0.02418706175953101,1.7522547857385835,0.0023850542897103297,0.0023850018433342174,1,1,0.17516404237054242,0.17517515812554713 +83.099067222,40.77850692211167,29.43570005663846,1.912077071,8,0.0,-1.3406662716026847,7.199058305020436,-0.029602226959024452,1.7738430331684913,-0.029565142908030216,1.7737664575132097,0.002606370590372483,0.002606333423173773,1,1,0.7236047951777077,0.7236269918522843 +83.403588062,40.77856748384837,29.435712594407413,1.9120022094,8,0.0,-0.2822751324970774,13.924416620495705,-0.03070339270419076,1.8217192115231775,-0.030666456115599827,1.8216429587965453,0.004231928139424205,0.004231879890538396,1,1,3.2929287675391437,3.292970914538242 +83.703715678,40.77844604882486,29.43565604628396,1.9119233534,8,0.0,-5.055858024075712,0.43910402724725095,-0.05123615761210046,1.8162852634531612,-0.051199389898187,1.816209312502037,0.0018909487811767634,0.0018909135970536105,1,1,0.9514449314459468,0.9514535891924345 +84.00327469,40.77850755423206,29.435644570634278,1.9118477996,8,0.0,-6.024584155937467,7.269257369260063,-0.07560561979789476,1.837620414009811,-0.07556902165831508,1.8375447776403115,0.00029737673049003984,0.0002973525429638362,1,1,1.9469418894171835,1.9469761542446933 +84.30307048499999,40.77853543152473,29.435756148282664,1.9117724684,8,0.0,3.394376051262366,10.365018715215447,-0.06150130354778924,1.8708776665426627,-0.061464844729015256,1.8708023345204887,0.0011067818945991997,0.0011068189350099448,1,1,2.05419129607574,2.054210906805171 +84.601573621,40.77848453969878,29.43566758233393,1.9116922429,8,0.0,-4.0820252119455445,4.713500665672725,-0.07780758731568922,1.8819379181407645,-0.07777128698075007,1.8818628884960535,0.0016741547594635523,0.0016741854563270795,1,1,0.7618986440184821,0.7619187400291552 +84.903691938,40.7785152833012,29.435649236145938,1.9116173623,8,0.0,-5.630738714705631,8.127567321487613,-0.10027615339327689,1.906142948708824,-0.10024002330559853,1.9060682176558947,0.0030600904326690205,0.0030601312133062405,1,1,1.979303598435651,1.979338993300228 +85.203642041,40.77849183566626,29.435704564396435,1.9115393779,8,0.0,-0.9601386647727091,5.523714081667897,-0.10372619229342778,1.920118640682325,-0.10369020878244775,1.9200442076075446,0.003001936383730858,0.0030019685957911376,1,1,0.3183244903094167,0.3183387782718973 +85.49678156,40.778568987255845,29.43559223045333,1.9114630681,8,0.0,-10.44293397289255,14.091376822403262,-0.14537971735360825,1.9670539189791458,-0.14534391313331718,1.9669798001122787,0.004321459831542549,0.0043215012861632296,1,1,7.149667505761481,7.149734654282848 +85.804272637,40.77851435487333,29.435605562590695,1.9113867779,8,0.0,-9.317494204650483,8.02446947185276,-0.18211279453842247,1.9902939638086543,-0.18207716194158807,1.9902201414567995,0.003935904847252943,0.003935934660854813,1,1,3.84596029725348,3.8460039435123043 +86.10413949299999,40.77851681338476,29.43568585362283,1.9113088431,8,0.0,-2.5396305833168036,8.297480828081992,-0.19149227580887362,2.014399343788209,-0.19145679777673177,2.014325813184558,0.002274691848011217,0.0022747153243858685,1,1,1.0868277415051364,1.0868545451450051 +86.40376136799999,40.778484596616295,29.435693835753337,1.9112314601,8,0.0,-1.865810414677862,4.719820444311158,-0.198253935408128,2.0248203719443634,-0.19821859302795516,2.024747130029952,0.000683631253689328,0.0006836420489337246,1,1,0.26404047192082464,0.26405361712401315 +86.697568276,40.778508899795455,29.435712999476767,1.9111569766,8,0.0,-0.24808096335392268,7.418679239532034,-0.19840879823982813,2.045319563588461,-0.19837359955523315,2.0452466104818674,0.001144813876156571,0.0011447856982736428,1,1,0.6486473582132951,0.6486650972805569 +86.998911706,40.77859266480913,29.43567621041063,1.9110805763,8,0.0,-3.3536700326265048,16.72075376110213,-0.21098307558723664,2.101057244973596,-0.21094802477380897,2.1009845949035735,0.002853505321598589,0.00285346865603875,1,1,5.15931929798443,5.159375017534581 +87.30368421899999,40.77852521467072,29.435685724085946,1.911002823,8,0.0,-2.5505652728759305,9.230440523207395,-0.22020427484004942,2.12799971241299,-0.22016937120862617,2.1279273554990787,0.00047607769888067386,0.0004760560326658071,1,1,1.3301150020420782,1.3301439941074418 +87.60369062299999,40.77851662595604,29.43571518799114,1.9109248969,8,0.0,-0.06333488210449187,8.276666501881872,-0.21956617529400985,2.1511701765193405,-0.21953141032585624,2.151098103703288,0.0007079051001850644,0.0007079274671408763,1,1,0.8436853791138189,0.8437048196852337 +87.90350543299999,40.77859885825078,29.435720557978833,1.9108501617,8,0.0,0.38997855630586853,17.408532420411582,-0.2172018597499074,2.208616281303895,-0.21716722786771592,2.2085445127276064,0.0019722439666088987,0.0019722746720234946,1,1,5.202815171417603,5.202862661508486 +88.20290832399999,40.77847633393515,29.435680827299468,1.9107721552,8,0.0,-2.963935466860185,3.8022531307214873,-0.22795745376483934,2.2145482257749896,-0.22792296786490593,2.2144767268972525,0.0022596552591511573,0.002259680061749523,1,1,0.3281990713136408,0.32821101823154536 +88.495797164,40.77849745787444,29.435816982495943,1.9106956416,8,0.0,8.529772173516724,6.148063064203767,-0.19370007820238366,2.2293221630682374,-0.19366569787891633,2.229250947113249,0.0034621002435666877,0.003462132517564511,1,1,3.1057988220268262,3.105789605890638 +88.798443565,40.778520540609094,29.43568504960427,1.9106195153,8,0.0,-2.607502624089606,8.711387732408683,-0.20312035430522105,2.2534490467733126,-0.20308611719496042,2.253378104357692,0.003287737916522701,0.003287764558058192,1,1,1.1464569077004791,1.1464834636747496 +89.099553214,40.77849103039062,29.435752764886217,1.9105426494,8,0.0,3.108764752395407,5.434289111732661,-0.19023132031638723,2.2652503642225836,-0.19019720882860014,2.2651796885164206,0.0028251701850173774,0.0028251907568321594,1,1,0.6204048333576292,0.6204067309694093 +89.398994102,40.77848255364478,29.435663826125474,1.9104660178,8,0.0,-4.3991103148580875,4.492950288119842,-0.20657318663293495,2.2735523892183105,-0.20653921600567848,2.2734819865038984,0.003976520854272122,0.00397654696679689,1,1,0.7483202077895921,0.748337562821304 +89.703519707,40.7784883132365,29.435637941368018,1.9103882084,8,0.0,-6.584203553829357,5.132552430715641,-0.23125203609391906,2.284109692332539,-0.2312182151155374,2.2840395510000215,0.0033646013178807296,0.0033646220143944104,1,1,1.6464280701958527,1.6464526394306394 +89.988487974,40.77855377191578,29.435661211180143,3.1463354763,8,0.0,-4.619849225119419,12.401713014692108,-0.2482695253597982,2.321401617787735,-0.2482358522470666,2.3213317640307234,0.004421276120755165,0.004421303330871855,1,1,2.9755003954890475,2.9755427125967735 +90.304461398,40.77856838468992,29.435659258914214,1.9102374065,8,0.0,-4.78465094254485,14.024456280640598,-0.26569724961500224,2.3644029430751443,-0.26566371527687066,2.364333359286696,0.0007832454781870359,0.0007832747545514228,1,1,3.7943480741086626,3.794395522232206 +90.59828806099999,40.77851315377594,29.435674513097204,1.9101607137,8,0.0,-3.4969547771820952,7.891083015837208,-0.2781368354018109,2.384666112705613,-0.27810343564307316,2.3845968026328768,0.0009034847637839926,0.0009034694194930202,1,1,1.0568391595758042,1.05686410537675 +90.903870598,40.77843963287023,29.435687641505833,1.9100831477,8,0.0,-2.388707071398133,-0.2733866875112332,-0.2861873695789398,2.3749276057591757,-0.28615410857782664,2.374858527050416,0.0028170403218976937,0.0028170204651651125,1,1,0.31788414456158387,0.3178810018873681 +91.189242467,40.778511711501395,29.43562766224199,3.1462232888,8,0.0,-7.4519259984770185,7.730921886384986,-0.31359552374961425,2.394470634182429,-0.3135624060645668,2.3944018277572092,0.0013593257190981037,0.0013593145873436177,1,1,2.4880761177401296,2.488109769093449 +91.603450457,40.77851862853226,29.435692145075407,3.1461957114,8,0.0,-2.008530053125,8.49905212239586,-0.32006537245064026,2.4166503395649257,-0.32003238673221873,2.416581793516298,0.0007613500521478578,0.0007613385503104174,1,1,0.934288697542937,0.9343114673747904 +91.79959043699999,40.77842658949975,29.435631773836164,1.9098533928,8,0.0,-7.104849913146268,-1.721845098259949,-0.34586611706580284,2.401631993387293,-0.34583327773931893,2.4015636814167998,0.001961223489336728,0.0019612085722732217,1,1,2.039086347385755,2.0390898041779018 +92.09967432399999,40.77848042788556,29.435713378500402,1.9097777344,8,0.0,-0.21608531936952402,4.256884214088961,-0.3453980312602338,2.4083492261991606,-0.3453653165952512,2.408281173769272,0.002505220953772724,0.002505208650681687,1,1,0.07734768640238504,0.0773530300950482 +92.398874217,40.77851608457168,29.435659794603595,1.9097014217,8,0.0,-4.73943383616975,8.21654748719744,-0.36198636845200194,2.429256593416304,-0.3619537876238432,2.4291887771182625,0.004301389329217832,0.004301371856099323,1,1,1.4472863868279842,1.4473143656612972 +92.698315189,40.77857012409855,29.4356056610807,3.1460871667,8,0.0,-9.30917226675892,14.217621272827003,-0.3957804351662167,2.471618724627267,-0.39574800307987845,2.4715511839968642,0.004089169085208186,0.004089153020015607,1,1,5.980435988779908,5.980492607612616 +92.988465589,40.77849084083321,29.435757133191405,3.1460569257,8,0.0,3.4775205995942704,5.413238995217106,-0.38115374891157233,2.48218801462667,-0.38112142198219695,2.4821206993303124,0.005783479681277942,0.005783460034554947,1,1,0.7330410404784392,0.7330408545768282 +93.289537259,40.77840939797888,29.435762778537352,3.1460235065,8,0.0,3.954084228603063,-3.6309594375206826,-0.36489681352551073,2.4603158704189045,-0.36486460167352547,2.4602487998981974,0.002290537519677106,0.002290524123364414,1,1,1.5098895628425475,1.5098611235427244 +93.58941706899999,40.778573479682194,29.435581797914615,3.1460017748,8,0.0,-11.323607724528834,14.590260401635144,-0.4059281986239844,2.50357141773933,-0.4058961324971099,2.503504604372228,0.0013434358632442157,0.0013434253464775063,1,1,7.604379706267454,7.604441391881692 +93.905036076,40.77841134522044,29.435735392617005,1.9093179416,8,0.0,1.6422653147716202,-3.414719862166606,-0.398312636568735,2.4824874015757894,-0.39828068892933577,2.482420814035037,0.003100173176499309,0.0031001578354965757,1,1,0.9320238258968409,0.9320014615844779 +94.20477394,40.778597239349914,29.43572421159316,1.9092425058,8,0.0,0.6984024069278983,17.228754099925172,-0.3941939851662687,2.5347873310405635,-0.3941621533074512,2.534721003973454,0.0012833412317227446,0.0012833288991505292,1,1,4.8919568771064235,4.8919981351946085 +94.498687222,40.778536802855385,29.43570090483089,1.909165443,8,0.0,-1.2690645158650196,10.51730380668499,-0.39751709233906185,2.563017783658684,-0.3974853836911384,2.5629517149507786,0.0002590990850346799,0.00025911470929171484,1,1,1.4483848448714716,1.4484104553484256 +94.789561162,40.77844783044866,29.435690450590087,3.1458847168,8,0.0,-2.151574333626814,0.6369512743008834,-0.4039818471696189,2.556214734692993,-0.4039502593063454,2.5561488891982775,0.0012887041216985196,0.001288716937611405,1,1,0.19349822455240467,0.19349655401612167 +95.099541301,40.778514402059116,29.4356682913483,1.9090121907,8,0.0,-4.022171087793889,8.029704666372313,-0.41739196686807023,2.575483102695779,-0.4173605009426103,2.5754175000294106,0.0017460544892429863,0.0017460648187730093,1,1,1.1393669242976245,1.1393912252511276 +95.399011426,40.77842573022789,29.435759690616347,1.9089352108,8,0.0,3.6934123681879645,-1.8172694065373343,-0.40217944707774117,2.5600272950408183,-0.40214809561222736,2.5599619136389338,0.0030390046552720446,0.0030390171873559734,1,1,1.0386908368606413,1.0386686709828834 +95.688582099,40.77849027669242,29.43571384278131,3.1458022935,8,0.0,-0.1768924448335769,5.350590556929295,-0.4013881872532125,2.569819248203562,-0.4013569458594933,2.569754103784769,0.002871424982373979,0.00287143498266521,1,1,0.17546940782018566,0.17547703516019364 +95.98956008399999,40.77845448410623,29.435695395677165,3.145777654,8,0.0,-1.7341283023159728,1.3758373611548276,-0.40619917229018093,2.5655957629619355,-0.4061680570230106,2.5655308355761113,0.004126741835673534,0.004126755241683614,1,1,0.09574705348886105,0.09574658196102417 +96.305366596,40.778481303834894,29.435652485491886,1.9087066196,8,0.0,-5.356444022666303,4.3541599954664525,-0.4244058513038226,2.5718481058293134,-0.42437485819896564,2.5717834123024153,0.0037254319182762224,0.0037254432957932898,1,1,0.9536246004739458,0.9536408699406255 +96.60530161,40.778493611563,29.43572801124256,1.908628496,8,0.0,1.0191555408483528,5.720926763596529,-0.419151611788026,2.5827939554591057,-0.41912072634504677,2.5827294942188663,0.0030959586510305834,0.0030959673042539773,1,1,0.2961669219245316,0.2961727848116575 +96.89871962299999,40.778417765175355,29.43577683613616,1.9085527773,8,0.0,5.140774471377091,-2.701784658986681,-0.3987818358608826,2.564455593468863,-0.39875105471246947,2.5643913429459566,0.00423237029115978,0.004232381399528913,1,1,1.7357636923093533,1.7357361313905117 +97.189027556,40.77844437954463,29.435788848059172,3.1456600347,8,0.0,6.154774334187512,0.25373191019330316,-0.37493860250650235,2.5565016140746617,-0.3749079153750532,2.556437579134549,0.0016090251626102617,0.0016090333884486655,1,1,1.6655218700871643,1.6655007165077695 +97.48937717,40.77840063337643,29.435812705629804,3.145633157,8,0.0,8.168747170782739,-4.604261822539982,-0.3438104620122944,2.5317783623231347,-0.3437798651951374,2.53171453969989,0.00045415991099980986,0.0004541546531213433,1,1,3.7716945193764806,3.771655180800714 +97.789527958,40.77854257503045,29.435733820624105,3.1456078902,8,0.0,1.5095604780178171,11.15830175546494,-0.3371392114618715,2.5614512300392476,-0.3371087225755041,2.5613876398443236,0.000915870616382754,0.0009158909922791677,1,1,1.783178986220054,1.7831994552347992 +98.099535323,40.778554913845944,29.435773038361482,1.9082487379,8,0.0,4.820170400884329,12.52852406311855,-0.31848804525840013,2.5956064639935645,-0.3184576545217488,2.595543102475404,0.001361337412214667,0.0013613469666221853,1,1,3.173078922447873,3.1730958635376707 +98.389006496,40.77838534863251,29.43576868735708,3.1455491364,8,0.0,4.452886704960888,-6.301630097149172,-0.3012286823019939,2.5651882149249245,-0.301198389459696,2.565125065423041,0.0024155645834598423,0.002415572650757224,1,1,2.585059634778466,2.585024047690702 +98.688929457,40.77842497754614,29.43576435834033,3.1455227737,8,0.0,4.08744444157067,-1.9008542281834324,-0.2854405739142447,2.549990647754607,-0.2854103777073664,2.5499277007064367,0.002362238287150832,0.0023622414129015664,1,1,1.1383359738836165,1.1383138166887774 +98.997330076,40.7784298977768,29.435731733033457,1.9080196604,8,0.0,1.3333363437487007,-1.3544654528255489,-0.2795888240059937,2.536613457235992,-0.2795587413924961,2.5365507314427247,0.0034576149719509996,0.0034576192857814743,1,1,0.4343085939423306,0.43429411480126245 +99.298575628,40.778521206286555,29.435740483625654,1.9079436787,8,0.0,2.072026150619941,8.785310797958484,-0.27117507482875,2.5578724132714994,-0.27114508955666883,2.557809902717694,0.0030787326445790167,0.003078739100264935,1,1,1.069887737036069,1.0699001235807346 +99.58936618599999,40.77850254345403,29.43565531298126,3.1454390048,8,0.0,-5.117756375976028,6.712811646065166,-0.28852226871451064,2.571904501490261,-0.2884924067786319,2.5718422061935966,0.002542099044630687,0.00254210652220719,1,1,1.2308186171692996,1.2308406639913305 +99.889058235,40.77846016655081,29.43568632754108,3.1454097407,8,0.0,-2.499626332351082,2.00687093738285,-0.2964119488244376,2.5700322830383584,-0.2963821914103531,2.5699702035647647,0.0035229066003398713,0.003522916245785622,1,1,0.18316894325798366,0.18317212938911015 +100.19875499999999,40.77846220951318,29.43573047458142,1.9077133578,8,0.0,1.227101880277279,2.2337408299324264,-0.2909844367903271,2.568879670806553,-0.29095478549804643,2.568817795997715,0.000998941947713946,0.0009989505270465604,1,1,0.0861025364246829,0.08609834055192092 +100.49832922099999,40.778439123159544,29.435702426355896,3.1453536457,8,0.0,-1.1406248765532103,-0.3299901669924054,-0.29399321688351426,2.559164927486741,-0.29396366295660725,2.5591032558169142,0.0010112154057838616,0.0010112075226039528,1,1,0.21341099280476802,0.21340480704660608 +100.789541914,40.77842336320826,29.43576984700683,3.1453280046,8,0.0,4.550777521912647,-2.080125576783321,-0.27681257082648375,2.5436046130620036,-0.2767831164597976,2.543543140713349,0.0025403619775375996,0.0025403571575171742,1,1,1.3252186236175143,1.3251955493026033 +101.097651839,40.77842264250497,29.43574074659415,1.907484597,8,0.0,2.094228043701318,-2.1601605112720073,-0.2684593507242101,2.5278991740227683,-0.2684299967696564,2.527837907293185,0.0020407984055301445,0.0020407956321677645,1,1,0.6958962698734849,0.6958783433091926 +101.40386610499999,40.77848454403525,29.43571379018765,1.9074096649,8,0.0,-0.18133221947767766,4.713981106896729,-0.26808103691473845,2.535150457512993,-0.2680517842879902,2.5350893881128997,0.0010510802511064584,0.0010510780869259504,1,1,0.10685868297580776,0.1068644740682307 +101.69761073,40.778472778901666,29.435831095788785,1.9073332559,8,0.0,9.721166571268254,3.407473771161246,-0.2329180887712304,2.538071904942165,-0.2328889180032213,2.5380110441689903,0.00037444072179103035,0.00037444622321740264,1,1,3.610317161606567,3.610298484615746 +101.998529963,40.77839951658491,29.43588639792356,1.9072575166,8,0.0,14.389581153899682,-4.728271627629942,-0.18135973838776026,2.5139004038080053,-0.18133064046949926,2.5138397321538393,0.0013718661444087946,0.0013718713947215163,1,1,8.877203502701251,8.877153038743819 +102.299619759,40.778403752875136,29.435738351299943,1.9071808324,8,0.0,1.8920266753546964,-4.257846917684133,-0.1741733387917931,2.491513787229558,-0.17414433767463158,2.491453308627049,0.0017542291045939862,0.0017542354313623725,1,1,1.177566188361345,1.1775435152043523 +102.589449784,40.77842549908753,29.43574195482263,3.1451603455,8,0.0,2.1962221421145665,-1.8429380522594014,-0.16590012111930452,2.477229412627,-0.16587121495067378,2.477169125579758,0.0017326548865505245,0.0017326578648793535,1,1,0.6213678142615894,0.6213511682933236 +102.888820043,40.77846573991707,29.43574303859596,3.1451323912,8,0.0,2.287708905830628,2.625791119690802,-0.15727129469739276,2.4776594933058957,-0.15724248737596158,2.477599409670077,0.002690534911184899,0.0026905387820510265,1,1,0.21728073509417073,0.2172760268062494 +103.19557191999999,40.77850514756496,29.435568792701837,3.1451098067,8,0.0,-12.421470073766011,7.002005847815302,-0.20004913130897511,2.4925655085592737,-0.20002044682431205,2.49250562567903,0.0024248952716508644,0.002424899738087367,1,1,5.873100148262409,5.873137711486425 +103.490544777,40.77839930569831,29.435791804111016,3.1450787781,8,0.0,6.404317577007626,-4.751701717715483,-0.1770797262080916,2.4687272734169503,-0.1770511365066574,2.468667585257819,0.003341554230851528,0.00334155800353974,1,1,2.741235235075055,2.741202241778591 +103.79051285599999,40.7784749257107,29.435625903134813,3.1450533254,8,0.0,-7.6004273334231796,3.645873635235818,-0.20286006154706074,2.472629977297526,-0.20283158126575374,2.472570481309415,0.0028731209709984052,0.0028731259432605584,1,1,2.015409314486934,2.015427733454083 +104.090351966,40.77841634503295,29.43574825658433,3.1450263435,8,0.0,2.7281939782569253,-2.859492226347901,-0.19270050920053408,2.4552574521047674,-0.19267211810549573,2.4551981416961564,0.0023494915200630018,0.002349494993483855,1,1,0.9435284037026268,0.9435082373129426 +104.389806983,40.77842780570886,29.435727102963487,3.1449975084,8,0.0,0.9424829827748314,-1.5867888793652651,-0.18878053916918747,2.44202583657145,-0.18875225087497172,2.4419667177509017,0.0032042801303249313,0.003204284504091422,1,1,0.410803648845742,0.41079063430033097 +104.987601509,40.77838715145561,29.435794846287756,3.1449407994,8,0.0,6.661128223487629,-6.101425607283337,-0.16513497302660937,2.414217395883804,-0.16510676899558197,2.4141584684616033,0.0034288572319304523,0.003428859572455043,1,1,3.3177877141785297,3.3177512253676014 +105.288533049,40.77846216382953,29.43580035405293,3.1449158935,8,0.0,7.126065680357304,2.2286710036262396,-0.1399550724137456,2.4136436835884028,-0.13992695040047465,2.4135849380937993,0.0028119258004737327,0.0028119286115543375,1,1,1.915278549497782,1.9152632459093846 +105.588299162,40.77846169971941,29.43579029411358,3.144890674,8,0.0,6.276843244647709,2.1771309780926593,-0.11789319207303853,2.4129010513434523,-0.11786515133727225,2.412842495465837,0.0022296178807705742,0.0022296199087922493,1,1,1.4841271845769197,1.484113563002609 +105.889351366,40.778388648819615,29.435812094303827,3.1448580737,8,0.0,8.117142728472468,-5.935142440700305,-0.08954758394153112,2.385886816509528,-0.0895196280281664,2.385828443635583,0.0029894547302573996,0.0029894564715311177,1,1,3.9966701499532222,3.996631709356846 +106.189278637,40.77840557750106,29.435750195584248,3.1448353374,8,0.0,2.8918776837607414,-4.055222566483604,-0.07935161223082277,2.3651606272504333,-0.07932374463750984,2.365102430615614,0.002387401778956501,0.0023874033346079023,1,1,1.2455195808090649,1.2454968015428942 +106.791175527,40.77840323006157,29.43574337860497,3.144778087,8,0.0,2.3164133651908014,-4.315905047908086,-0.07113110075850416,2.343635126873031,-0.07110332517638407,2.343577113255705,0.0025118009886891074,0.0025118031090224824,1,1,1.2023184633380637,1.2022963094197625 +107.091497736,40.778436778988,29.435730719227195,3.1447502587,8,0.0,1.2477544380087653,-0.5903095265335452,-0.06660396734166393,2.3342169247891094,-0.066576285936159,2.334159087813497,0.0019750697659144632,0.001975071766606656,1,1,0.2546469287265158,0.2546366962354724 +107.390717099,40.77842286800877,29.435725388962275,3.144724253,8,0.0,0.7977933912840869,-2.135118651775233,-0.06368392482947031,2.3198834657293923,-0.06365633380845606,2.3198258201412676,0.002612155356439832,0.0026121579077035156,1,1,0.47245568541967436,0.47244243207368825 +107.69076054199999,40.77847437548708,29.435679079188088,3.1446967016,8,0.0,-3.1115045551059355,3.5847682605750473,-0.07405928675710421,2.323932381629599,-0.07403179698727018,2.3238749181411706,0.0020838146994083795,0.0020838178395598986,1,1,0.37023771045125037,0.37024701971042806 +107.990259152,40.778575978856864,29.435671971878207,3.1446739711,8,0.0,-3.7114713260220165,14.867785097533979,-0.08644709532398205,2.363967115421075,-0.08641970360342338,2.363909854180449,0.0026945958679444617,0.0026946003521457597,1,1,3.986240512509199,3.986279864851012 +108.290377153,40.77848803089528,29.435763304569612,3.144643253,8,0.0,3.9984852262883845,5.101196694746576,-0.07256719345477713,2.3726556430566137,-0.07253988698904752,2.3725985634359605,0.0007222983018188284,0.0007222910835521262,1,1,0.7680976689614438,0.768096600822383 +108.590324768,40.77840674691587,29.435810155729033,3.1446126187,8,0.0,7.95349315062081,-3.925355780912022,-0.04542784405095986,2.352651326689797,-0.04540061766788121,2.352594427296795,0.0021105285434090083,0.002110526884462772,1,1,3.204818000311497,3.204786174376157 +108.8897645,40.7784866879515,29.43571690840945,3.1445895836,8,0.0,0.08189631966750281,4.952062207680152,-0.044913909177813294,2.3609063455060246,-0.044886768587592676,2.3608496142451814,0.0044378626750388615,0.004437859448669967,1,1,0.15130161380385826,0.15130796421500153 +109.189272956,40.77837721391251,29.43579355552071,3.1445621139,8,0.0,6.5521673476258675,-7.204986154388666,-0.022703036420841424,2.3306718863097133,-0.022675976524992637,2.3306153306989055,0.0046108235578171735,0.004610822363879339,1,1,3.608651830395205,3.608614721330365 +109.489601521,40.778437751561064,29.43575687830399,3.144534226,8,0.0,3.456006717669939,-0.48230494820736625,-0.010882142044709489,2.321751514971228,-0.010855165779252813,2.321695115517193,0.00689682621425851,0.006896824678888186,1,1,0.6123240119892269,0.6123101306036841 +109.788668969,40.778472119259966,29.435873193916425,3.1445052662,8,0.0,13.27493272336549,3.3342263218730093,0.03371048508801465,2.3249704837090794,0.03373739510397354,2.3249142728007812,0.006291259068499985,0.006291257451895761,1,1,6.380301174463133,6.380277892794322 +110.088685347,40.77851461712074,29.435813746689142,3.1444834799,8,0.0,8.256615477610705,8.053590691168399,0.06125537899140779,2.3429241869042725,0.06128220589423718,2.3428681637621076,0.0053205581636758,0.005320556952973956,1,1,3.1673809060638636,3.167379330888535 +110.38830573199999,40.77851502614089,29.435674603109913,3.1444517653,8,0.0,-3.489356148547976,8.099008445764126,0.04944374815437101,2.3610314841820634,0.049470493409752236,2.3609756324273716,0.007436612455013347,0.007436609223763,1,1,1.1931448316254176,1.1931660847156957 +110.689310549,40.77844434129859,29.43566526139923,3.1444224258,8,0.0,-4.277952357592059,0.24948337890426078,0.034947347446852586,2.354386364692002,0.034973987073908454,2.3543306933901715,0.004342146250491533,0.004342143181090159,1,1,0.7739139660415919,0.7739170385390484 +110.989250537,40.77842957839253,29.435705245539097,3.1443996802,8,0.0,-0.9026400153982769,-1.3899330224764213,0.03185722645968709,2.34275830896186,0.031883787901157555,2.342702794908706,0.00342995672421923,0.0034299529147895323,1,1,0.3444188371333011,0.344411334860627 +111.28884737,40.778383721485675,29.43579639670037,3.1443683683,8,0.0,6.7920087572649965,-6.482322369857902,0.05434811322852545,2.3152519413477224,0.05437459233559115,2.315196594408384,0.003947427298284326,0.0039474251468377295,1,1,3.383328076488326,3.383293284323235 +111.588853558,40.77840727798202,29.435829072899192,3.1443440499,8,0.0,9.550411201158012,-3.866379195417343,0.08587352796041325,2.296040521764861,0.08589993058827533,2.2959853444043423,0.00377460847109771,0.003774607989483898,1,1,4.100356689097141,4.100323309839881 +111.888661488,40.778476237723346,29.435627351053608,3.1443190516,8,0.0,-7.478199317241971,3.791572028053035,0.060831207967230336,2.3006914429717287,0.060857520854505166,2.3006364272760895,0.005703134060648125,0.005703131557199411,1,1,2.1107054287738034,2.1107235001049798 +112.188572778,40.77842999711008,29.435769200210547,3.1442896734,8,0.0,4.496176917648033,-1.3434332844568146,0.07550362426453928,2.2894236921819426,0.07552985473283147,2.2893688479043037,0.0050102831822436324,0.0050102818955612815,1,1,1.0048058357714056,1.0047884842445727 +112.509268728,40.77848863702592,29.435727046805344,3.1442646497,8,0.0,0.9377414640198584,5.16850625736069,0.07834845210685203,2.2983295938851733,0.07837459930844246,2.2982749259998583,0.004206347306109525,0.004206346232175249,1,1,0.21168841573064553,0.21169383052364488 +112.78714309899999,40.77840758257461,29.435821719839687,3.1442312813,8,0.0,8.929692849047514,-3.8325550769532044,0.10757118925608085,2.279413489548924,0.10759726518395527,2.2793589733518664,0.005866659569088427,0.005866658480898435,1,1,3.660422913935731,3.66039127988533 +113.088659768,40.77833927598928,29.435735350146143,3.1442059424,8,0.0,1.638681852030667,-11.41798106521127,0.11259929292251043,2.2373433525825988,0.11262528701552782,2.237288992401715,0.004774282317951962,0.004774281998642834,1,1,4.269886588736204,4.269850393668102 +113.38886409,40.77839488894932,29.43576846383306,3.1441774564,8,0.0,4.434016986675925,-5.242181486790343,0.12684523186470037,2.2143108945800076,0.1268711465603753,2.2142566824047494,0.0064890181227647845,0.006489017777145021,1,1,1.9206069278767444,1.9205806898308344 +113.68951142099999,40.77838075838291,29.43575631724055,3.1441547012,8,0.0,3.4086467351803775,-6.811376155202259,0.1375951424922946,2.186704101358166,0.13762097452062413,2.186650049247359,0.005282433692013402,0.005282432778194828,1,1,2.205263947857198,2.2052359898025915 +113.989260915,40.77857874679042,29.435644907943733,3.1441334611,8,0.0,-5.996103370127801,15.175164594703089,0.11750225507419987,2.2264160709110565,0.11752800619696283,2.226362189914757,0.006914926362872633,0.006914922719672981,1,1,5.118596580204653,5.118639322938048 +114.289265556,40.77839690094162,29.435750382696117,3.1441005894,8,0.0,2.9076733595524717,-5.018751248606573,0.12663367274679935,2.2042956372324394,0.12665933592208567,2.204241916527815,0.005667024691023534,0.005667022225713598,1,1,1.451444959371552,1.4514223671001123 +114.588833337,40.778371307253465,29.435830762704406,3.1440673915,8,0.0,9.693063586560553,-7.86091499099751,0.15782618243143937,2.1736577170007365,0.15785177103246426,2.173604155309525,0.004482213970942784,0.004482213622408689,1,1,5.556513669247993,5.556471857456201 +114.888840037,40.77847669146775,29.435625682945115,3.1440462417,8,0.0,-7.6190147199372635,3.8419603197314127,0.13252747456278346,2.1787443355119405,0.13255297993422555,2.1786909251077833,0.005962483795458831,0.005962481494433777,1,1,2.240592704584958,2.240611032140692 +115.189560186,40.77835375135372,29.435740410425517,3.1440215412,8,0.0,2.065852061913539,-9.810497152035177,0.1388097281383493,2.142404939614427,0.13883514781732878,2.1423516839105816,0.004782591374005434,0.004782590091760635,1,1,3.34138934925154,3.3413572259576574 +115.489336112,40.77850261906437,29.43568273594442,3.1439931272,8,0.0,-2.8028137226797756,6.721206908725132,0.12924438405420857,2.1562554045435327,0.12926972613433363,2.156202304847968,0.0061929806253289464,0.006192977963715539,1,1,0.7794142708813215,0.7794305410871012 +115.78865623,40.778475859387065,29.43569758531993,3.1439690217,8,0.0,-1.549286326522283,3.7495543116374344,0.123809748254845,2.1610605360382493,0.12383499908110622,2.161007605764624,0.0021924365458718697,0.0021924351424033803,1,1,0.158123220540164,0.15813005850012807 +116.088615814,40.778488111275344,29.43569599085394,3.1439388386,8,0.0,-1.683884849376096,5.110121983174292,0.11792907119018955,2.169966243089534,0.11795424180810343,2.169913483524128,0.00021134244177629675,0.00021134744151075647,1,1,0.3117259101710598,0.31173616245232955 +116.38932000199999,40.77846074926609,29.4357319706018,3.1439150014,8,0.0,1.3533903590764036,2.071580954072881,0.12196168500877828,2.169638526797789,0.12198676883354997,2.169585913437358,0.0014693006602340892,0.00146930239686234,1,1,0.055193724080093584,0.0551912528971137 +116.689433934,40.77840232949211,29.435662316756446,3.1438865791,8,0.0,-4.526531013677266,-4.415911929128822,0.10696024500692757,2.149896088269294,0.10698524418128445,2.1498436299698245,0.002229338310967576,0.0022293403319958967,1,1,1.7459333195938835,1.7459262599496144 +116.988628421,40.77836464245484,29.435801153567763,3.1438573335,8,0.0,7.1935682542829955,-8.601041237681692,0.12977313708654445,2.1176544432658098,0.12979806133514427,2.1176021314272857,0.003815429085995529,0.003815430316174807,1,1,4.387639761029482,4.387601831021167 +117.288622656,40.778568635752734,29.435571040454743,3.1438344679,8,0.0,-12.231711651922023,14.052345269999602,0.09003751865335789,2.153358645125741,0.09006234766307909,2.153306499130192,0.0009808469585961992,0.000980850559779259,1,1,8.682115535445359,8.682165582853603 +117.58859688599999,40.77849198122573,29.43571859915703,3.1438061489,8,0.0,0.22462283973065378,5.539878347862469,0.0904873207582463,2.1634409060566284,0.09051206856791755,2.163388920252655,0.0004420848144718909,0.0004420807164761707,1,1,0.2565198014506812,0.2565274401068849 +117.889267597,40.77839819803216,29.435856545480497,3.1437760204,8,0.0,11.869547356349424,-4.874700887314883,0.12820725496462265,2.1425146417586425,0.1282319445030726,2.1424627995787477,0.0018213862147956293,0.0018213847989011073,1,1,6.103127284103215,6.103089944072038 +118.18925035699999,40.77848669861005,29.43557632569855,3.1437516721,8,0.0,-11.785566317985518,4.953255213612871,0.09013033403017254,2.15084360824079,0.09015492287381233,2.1507919214631355,0.002291899835912941,0.002291895506520516,1,1,5.2892229428024615,5.289250625558416 +118.488600464,40.77849404973213,29.435755113169805,3.1437264621,8,0.0,3.3069978404332434,5.769585951407449,0.10030172560338076,2.161649250392937,0.10032625203255219,2.1615977265287256,0.0036555601450566906,0.0036555561922853555,1,1,0.6649471531959904,0.6649497957756486 +118.788619989,40.77842343002102,29.435738228381336,3.1437000538,8,0.0,1.8816497820526588,-2.07270720408414,0.1060331341798202,2.1490688977124535,0.10605757737396075,2.1490175200690507,0.0007349358973861432,0.0007349319698955161,1,1,0.5143178476144177,0.5143049651818874 +119.088612536,40.77841724797491,29.435721974197453,3.1436732702,8,0.0,0.5095315814966738,-2.759221343040873,0.10735642600274618,2.1345333840416907,0.10738078624440303,2.134482147029845,0.00031330058027143705,0.00031329384383578876,1,1,0.54335276532033,0.543340800713253 +119.389304289,40.778555010876715,29.43574741326513,3.1436482881,8,0.0,2.656998549369945,12.539298202218301,0.11539086192466345,2.1652914288621576,0.11541516097794896,2.165240361358802,0.001504917318730227,0.0015049156789440834,1,1,2.649519218596993,2.649538523172747 +119.689220088,40.7784894541068,29.435625183544307,3.1436220583,8,0.0,-7.661170793669791,5.25924668947087,0.09074290400952228,2.1743505887866,0.0907671093179752,2.174299674053897,0.0019984215336126044,0.0019984176295411247,1,1,2.392096933943126,2.39211759231819 +119.98920987,40.778509657545804,29.43572685374226,3.1435966579,8,0.0,0.921443516978922,7.502827187886154,0.09335834997470006,2.1900785334248325,0.0933824872264046,2.1900277658398704,0.003310826859886012,0.0033108224813738507,1,1,0.6583176727253142,0.6583283306500893 +120.28859296499999,40.77843185199225,29.43573716801685,3.1435658946,8,0.0,1.7921374969607822,-1.1374504587575978,0.09873373931217969,2.1802792250444014,0.09875779910865987,2.180228607504231,0.0032396134284915896,0.003239610188322282,1,1,0.3509932553410093,0.35098276387917154 +120.58856737699999,40.778442055943685,29.435847773186666,3.1435402503,8,0.0,11.129015069048805,-0.004297304734079254,0.13352791919779672,2.173863630490778,0.13355191440537395,2.173813162627027,0.0028407490211356163,0.002840748409664825,1,1,4.489409511466889,4.48938545426255 +120.888605363,40.778413524637244,29.435714537943454,3.1435127454,8,0.0,-0.11820961674721693,-3.1726966192600923,0.13278306984022611,2.1582928329012603,0.13280699821880254,2.158242498436957,0.0040689064025109575,0.004068905636547095,1,1,0.6400878628145702,0.6400762548546381 +121.18918755899999,40.77846244238724,29.435755805129798,3.143485028,8,0.0,3.3654120845543414,2.259602070131082,0.1429327886759477,2.158570112566642,0.1429566415525474,2.1585199289728227,0.003452830433978393,0.0034528298303915777,1,1,0.37668336014476556,0.37667801527743955 +121.489205613,40.77838263271019,29.43582844269622,3.1434527747,8,0.0,9.497215287300426,-6.603227506222868,0.17239636570407496,2.13309475136314,0.17242016631604687,2.133044696822765,0.004641638673736179,0.004641639585374768,1,1,4.865063602849278,4.865027890056831 +121.789145445,40.77847370913209,29.43567250049038,3.1434353722,8,0.0,-3.666853561701711,3.510770041312065,0.16030136303250775,2.137091741163921,0.16032507829210035,2.13704183755032,0.0038874799851709692,0.0038874796682445856,1,1,0.5733307473589135,0.5733404056519693 +122.088818246,40.778403094175985,29.435672075938818,3.1434029104,8,0.0,-3.702696532168045,-4.330994527811425,0.14821207820497292,2.1183469626146647,0.1482357117878824,2.118297198707289,0.003117033656760767,0.003117032965093483,1,1,1.4710422640155771,1.4710344590087654 +122.388559152,40.77841889743876,29.43576156355079,3.1433774387,8,0.0,3.851518974574355,-2.576048013083667,0.15978808300176325,2.1047533063218107,0.1598116528332724,2.1047036775092574,0.00419709335024653,0.004197092651229228,1,1,0.9857658130169217,0.985749078894207 +122.689168354,40.77833883797665,29.435712424694895,3.1433486935,8,0.0,-0.29660262301134493,-11.466622379621743,0.1583589908061482,2.0655832315624236,0.15838248571949531,2.0655337359356647,0.0034062414384160673,0.003406242188924247,1,1,4.11705083442187,4.117021551082503 +122.9891725,40.77844602597569,29.435839041494376,3.1433232073,8,0.0,10.391917400982537,0.43657220076024206,0.19031199407403615,2.0608093767644378,0.19033542868890657,2.0607600144497,0.004443087725202034,0.004443088442920456,1,1,3.831957206090256,3.831936279663311 +123.288727228,40.77841181977343,29.435879546018008,3.1432974811,8,0.0,13.811165805475385,-3.3620082321242757,0.23267273717998893,2.0452514398891255,0.23269611834201467,2.0452022187538335,0.003633819237208848,0.003633821238948856,1,1,7.339915569859944,7.339880616033372 +123.588538808,40.77848512957943,29.435683041300923,3.1432771432,8,0.0,-2.7770374117047427,4.7790060887101875,0.22328914796150817,2.0530977352702764,0.22331244895097765,2.0530486621968214,0.002855506041197403,0.0028555066245484293,1,1,0.49307843367032744,0.49308950684157965 +123.88921323699999,40.77843506207809,29.43566032362046,3.1432464652,8,0.0,-4.694781950225928,-0.7809703504781954,0.2080777742093268,2.044977104623771,0.20810100273583598,2.0449281607197833,0.003787005558973908,0.003787005342796906,1,1,1.0506071693796004,1.0506092198075816 +124.18911326199999,40.77853053935242,29.435749425937747,3.1432219187,8,0.0,2.8269016505086224,9.821744553167576,0.21618129070747158,2.0672249894141768,0.21620444677724351,2.067176196759313,0.0011792246894583704,0.0011792240418339898,1,1,1.5965217714652395,1.596534371998691 +124.489114936,40.77841567457455,29.4357213452947,3.1431941188,8,0.0,0.45644193631239727,-2.933946869762632,0.21691316200708716,2.052957796704456,0.21693625014763504,2.052909141812188,0.0008826281849133495,0.0008826294915757334,1,1,0.5601729050677612,0.5601616145988129 +124.788740216,40.778388651942834,29.43587053895844,3.143162806,8,0.0,13.0508274622469,-5.9347885558104805,0.25657386241203417,2.03016977492723,0.25659689522523527,2.0301212475889066,0.0003212616247446809,0.00032126093536179515,1,1,7.357527848003391,7.35748914465636 +125.088768113,40.778461516095135,29.435678737539163,3.1431420998,8,0.0,-3.140345880624653,2.156737576774049,0.24609095830169062,2.030521949589776,0.24611391321821588,2.0304735610880345,5.8519117195495814e-05,5.852405998040691e-05,1,1,0.4160674564548092,0.4160733669453844 +125.389435857,40.77849320919432,29.435682669288667,3.143114647,8,0.0,-2.808440945073228,5.6762443338957205,0.2366770623933597,2.040897233359599,0.23669994457826973,2.0408489890306085,0.0021108569268517372,0.00211085816145272,1,1,0.6327052907915576,0.6327182147821521 +125.689345,40.7784290808341,29.435733279118242,3.1430861714,8,0.0,1.4638511235466352,-1.445186610940236,0.24045359063009594,2.0310059344687224,0.2404764050755166,2.0309578217220867,0.0011311955576921672,0.0011311959613675275,1,1,0.3254248056234729,0.3254152761385949 +125.989075179,40.778502027810255,29.435768697466404,3.1430623957,8,0.0,4.453732304741414,6.655549167284461,0.25341991212942644,2.044104943326307,0.253442659687972,2.044056968463942,0.0002462815135594291,0.0002462767276415297,1,1,1.1167425951536318,1.1167455986366475 +126.288543183,40.77847673754677,29.435758864280665,3.1430344977,8,0.0,3.623653388688345,3.847074343879688,0.2637336820878393,2.049199780248166,0.26375636570309435,2.049151943853579,0.0008228134382755611,0.0008228104559887031,1,1,0.4817538565312781,0.4817521916423865 +126.58914577499999,40.77847258121225,29.435692433189853,3.143010196,8,0.0,-1.9842098991981847,3.385514319661477,0.25684934403439497,2.052943869222146,0.2568719519420087,2.052896170396769,0.0011350395924740297,0.0011350379536918859,1,1,0.2219025937795806,0.22190911995737123 +126.88929318699999,40.77837723351552,29.435649491101845,3.1429807398,8,0.0,-5.60922791958964,-7.202810023416051,0.23891052520428033,2.026908713352519,0.23893306264953826,2.026861136157043,0.002037787037076496,0.0020377845595130144,1,1,3.1513658830765756,3.151355733667958 +127.188718272,40.77825552822179,29.435854030217985,3.1429480309,8,0.0,11.657243032092554,-20.71813024604464,0.23892291310441757,2.0268811451433852,0.2389454448365282,2.026833569980595,0.0019826881195843544,0.001982684650905441,0,0,16.241061897443448,16.240995051704477 +127.488510376,40.77836030593312,29.435852966611364,3.1429274489,8,0.0,11.567438883509798,-9.08260481432238,0.27358957634931563,1.995656031030936,0.2736120678696038,1.995608574803828,0.002858519562584219,0.0028585204927444223,1,1,7.377626207904406,7.377584205496573 +127.789462315,40.77842023892851,29.435790313219808,3.1429031967,8,0.0,6.278460024506259,-2.4270744161647864,0.2918986506320271,1.983200350322041,0.291921070935609,1.9831530290021167,0.00032947827308551413,0.0003294824753352475,1,1,1.7355829699125167,1.7355638748776276 +128.089336746,40.7784670823641,29.43573262747928,3.1428743994,8,0.0,1.4088413677402396,2.7748691455582333,0.29528861883622837,1.9854145737202453,0.2953109706544249,1.9853673855040668,0.0016736298818765657,0.0016736306780279016,1,1,0.058933429743495185,0.05893329734106899 +128.389099501,40.77844680093787,29.435854027621698,3.1428478077,8,0.0,11.656990427396023,0.5226333462901345,0.3299291657244396,1.9813275399371992,0.3299514651259866,1.9812804854011918,0.0037510098649057677,0.003751010831737392,1,1,4.698501225156817,4.698479838811903 +128.689268545,40.7784357250065,29.43584292893577,3.14282229,8,0.0,10.720082409320364,-0.7073461251771425,0.36148775076118794,1.973806248771187,0.3615099947041618,1.9737593192146194,0.002125371434739762,0.0021253726792885997,1,1,4.050752377321154,4.050730030992781 +128.988608949,40.778491299244465,29.435776183318172,3.1427967386,8,0.0,5.0856603717220255,5.464146325108953,0.37590583470689276,1.9835687018350137,0.37592801934092573,1.9835219117893539,0.0012296208782354866,0.001229624998404554,1,1,1.0758921587751669,1.0758918942126035 +129.288541346,40.77850997580776,29.435751400519617,3.1427704654,8,0.0,2.993589223438782,7.538170606977436,0.38379384266368294,1.9990321306701944,0.3838159603556514,1.9989854744376745,0.002635166292376154,0.002635164496858174,1,1,0.9353748581335738,0.9353822727375485 +129.589339752,40.77831782822091,29.435789304935206,3.1427435388,8,0.0,6.193353864950503,-13.799745305675255,0.4013500771835821,1.9551384471755096,0.4013721428746183,1.9550919066774872,0.0021544964407289907,0.002154492517153446,1,1,6.785823334098046,6.785781168159667 +129.889238206,40.77846441923689,29.435721199783014,3.1427195666,8,0.0,0.4441580510362093,2.4791297370203775,0.40154244626591024,1.956507744503093,0.40156443284048904,1.9564613333796173,0.001212465428236263,0.001212459474879536,1,1,0.006194757291595814,0.006195777988047577 +130.189047528,40.77837528869336,29.435891301292713,3.1426883418,8,0.0,14.803511017770704,-7.418769124799381,0.44498574128164886,1.9305629948518703,0.44500768450280836,1.9305167054139922,0.0004275831805251258,0.00042756853811995986,1,1,9.434426201618194,9.434383948827707 +130.48904063,40.778326252499234,29.435840443102265,3.1426634577,8,0.0,10.510254806394537,-12.864227482963841,0.47545778235291153,1.8895005018808417,0.4754796632912171,1.889454325432721,0.0012949661099783858,0.0012949609375993304,1,1,8.534386282728908,8.534339798974719 +130.788558713,40.77830632634613,29.435851724180797,3.1426402108,8,0.0,11.462566657513513,-15.07701790671003,0.5084630271466867,1.8426902816837594,0.5084848596557956,1.8426442203085571,0.0016979009037825692,0.0016979001764440421,1,1,10.773124620553697,10.773072318163644 +131.089458027,40.77830879635293,29.435678891621325,3.1426106875,8,0.0,-3.127346002374492,-14.802732788686043,0.4974869159894103,1.7968407513085494,0.4975086817546498,1.7967948086948415,0.0009182720262271652,0.0009182747901578325,1,1,6.659187761765714,6.65915926201433 +131.389366265,40.77837523911376,29.435958727962937,3.1425860802,8,0.0,20.49542593002838,-7.424261356530672,0.49755580496092716,1.7967104370343387,0.49757756329772035,1.7966644897762671,0.0013110153574515356,0.0013110151352055013,0,0,16.306070005950218,16.306019724527538 +131.689027369,40.77838770816593,29.435847143251394,3.1425599538,8,0.0,11.075847298291578,-6.039597847687764,0.5293347778676655,1.7751645804247267,0.5293564864606773,1.7751187549004077,0.002430677383149892,0.002430675424874303,1,1,5.402057938091289,5.40202527507587 +131.989302774,40.77823982743186,29.43579588119613,3.1425329074,8,0.0,6.748506327217826,-22.461703164904815,0.5293842816355597,1.7750823563416434,0.5294059843891806,1.7750365348335335,0.004391127649815792,0.004391126207891031,0,0,14.502018079791114,14.501958776597872 +132.288553114,40.77839461131796,29.435701920687006,3.1425095453,8,0.0,-1.1833123589805097,-5.27301357886437,0.5242013503001768,1.7557049266114162,0.5242229883526749,1.7556592238918012,0.004533994014164157,0.004533992505150612,1,1,1.214222820001185,1.214211083437787 +132.589069764,40.77842920980071,29.435672614177513,3.1424827938,8,0.0,-3.6572589614680666,-1.4308641591090927,0.5116118718020273,1.7469823653593723,0.5116334463716268,1.746936789684695,0.004072476754514126,0.004072476766706916,1,1,0.856551929557748,0.8565519510174752 +132.889341812,40.77842421644057,29.435792706244605,3.1424585342,8,0.0,6.4804699739532365,-1.985373009462464,0.5295614814425006,1.7366431579495656,0.5295829847520747,1.7365977012066314,0.005936731019089871,0.005936730253824895,1,1,1.5944696612725402,1.5944527936513502 +133.18916926699998,40.77841420225611,29.435765382437527,3.1424299404,8,0.0,4.173895622108842,-3.0974461210730824,0.5404545228918415,1.72342970792233,0.5404759718698203,1.7233843728674978,0.005084828075777502,0.005084827406557811,1,1,1.0000117462806193,0.9999962895850161 +133.512440094,40.77839068903962,29.43579414468564,3.1424070499,8,0.0,6.601901178761912,-5.708578276555128,0.5585901406830112,1.7030957765427246,0.558611534327802,1.7030505571829893,0.004218931985898458,0.004218931244690369,1,1,2.556378666309532,2.5563542558701675 +133.78957709099998,40.77843967377858,29.435843370377043,3.1423783308,8,0.0,10.757346609279926,-0.2688364016886193,0.5890821560345263,1.6976626703633335,0.5891034898292595,1.6976175779699323,0.005803125713107911,0.0058031244560428925,1,1,3.8344053498215027,3.8343856491040715 +134.089267823,40.77844426647733,29.43583310839,3.1423520713,8,0.0,9.891067045704832,0.24117987649397804,0.6168335508254776,1.6936952922367654,0.6168548334247056,1.693650315734215,0.00467250430241138,0.004672503636843219,1,1,3.1649143198115746,3.1648970831692242 +134.38918071999998,40.778444550789786,29.435721077025185,3.1423259752,8,0.0,0.433795423267697,0.2727460762812145,0.6163031312629367,1.6898070321206797,0.6163243445341617,1.6897621891796766,0.006307719049026887,0.006307718950848951,1,1,0.04626443333899618,0.046261862428303914 +134.68904839,40.77839768128546,29.435821706862416,3.142299509,8,0.0,8.928598680880572,-4.932089545349339,0.6410361451088165,1.6718121031451652,0.6410573080959623,1.6717673707627496,0.005117412031139475,0.005117410907297158,1,1,3.46804965320113,3.4680236857437508 +134.989035747,40.77838410754612,29.4358222537552,3.1422773477,8,0.0,8.974767196922798,-6.43944817775382,0.6658477130826532,1.6497227839367408,0.66586881225234,1.6496781793473272,0.006682666661258074,0.006682664418674488,1,1,3.9705648996052227,3.9705360030583794 +135.288436253,40.77844446549317,29.435846158879862,3.1422495074,8,0.0,10.9927408842844,0.26328206541102744,0.6964717307455448,1.6460056712111597,0.696492784203549,1.6459611800091547,0.00545628498419187,0.005456285526639996,1,1,3.8854062914431573,3.8853878209505335 +135.58908734,40.778371196118336,29.435668432548056,3.1422246791,8,0.0,-4.0102601538211555,-7.873261763513527,0.6825349590866906,1.620231579307849,0.682555944124998,1.6201871947467084,0.004308737176428459,0.004308737319821637,1,1,2.8204333495167035,2.820421581868906 +135.88898938,40.77838471285594,29.435827788256002,3.1421969161,8,0.0,9.441969529893628,-6.372228167690366,0.7084510446825901,1.598625662479365,0.708471977272515,1.598581405837011,0.0057246446478933415,0.005724644486720556,1,1,4.190153363856228,4.190124285215056 +136.188994188,40.77845530250711,29.43574274999597,3.1421697638,8,0.0,2.2633467289982083,1.4667206178185117,0.7130520945578704,1.5982890345744163,0.7130729690663148,1.5982448900798834,0.004586781115109512,0.004586780386980438,1,1,0.08750035884985818,0.08749775246607555 +136.489480767,40.77844593420132,29.43576612182648,3.1421492167,8,0.0,4.23631010278493,0.4263746120409648,0.7234380261695084,1.5950833100730268,0.723458833232127,1.59503929791455,0.005937964143216974,0.005937963341476585,1,1,0.4779216623971679,0.47791405620494076 +136.788988275,40.77838893248246,29.435784469280442,3.1421205557,8,0.0,5.78513891123314,-5.903643977185505,0.7383724869285445,1.5749410179649843,0.7383932435748213,1.5748971110077674,0.004813669668406951,0.004813668914274112,1,1,2.178053497237424,2.1780311704857573 +137.089040225,40.77853666439141,29.435662644761894,3.1420951179,8,0.0,-4.49883293162418,10.501928691470262,0.7229404413724491,1.5989540182936912,0.7229611398762618,1.5989102359943839,0.0037800483531315455,0.003780048407329214,1,1,2.766718227141105,2.7667435560992084 +137.389015153,40.77848492575677,29.435643948160696,3.1420677603,8,0.0,-6.077133075115743,4.756373630413831,0.7029136011593641,1.607373090966477,0.702934216351974,1.6073294313338164,0.005002749485135054,0.005002751153664579,1,1,1.8886231696437739,1.888639473080238 +137.68854106199998,40.77841901348641,29.435737817632003,3.1420404332,8,0.0,1.846975960498116,-2.563161734943216,0.7063077794675874,1.5962238569362048,0.7063283420481301,1.596180307637759,0.0039962671162268515,0.003996268844642135,1,1,0.43532988502884473,0.43532005677727764 +137.988988688,40.77843359383249,29.435669092396477,3.1420151278,8,0.0,-3.9545544398757726,-0.9440189093997032,0.6925132842663178,1.5894161754767113,0.69253377262658,1.5893727535742674,0.005171640329295074,0.005171642989883212,1,1,0.9267148958761285,0.9267168621331138 +138.289215452,40.77840668474178,29.435809698677552,3.1419880238,8,0.0,7.914910548884761,-3.932260231582844,0.7137536028305269,1.5746840332483674,0.7137740429129136,1.5746407158040734,0.004176069405626741,0.004176070437330364,1,1,2.5599327777586147,2.559911406022012 +138.589254213,40.77850494758424,29.43572605114033,3.1419639811,8,0.0,0.8536909695435926,6.979787695340513,0.7141980355036359,1.5890679435661264,0.7142184151181546,1.5890247401920194,0.0032752377498197417,0.003275239137242357,1,1,0.6527135014865106,0.6527237468478787 +138.88920914599998,40.77846574152323,29.43557003302724,3.1419371994,8,0.0,-12.31677378504446,2.6259793727789447,0.6760018687193269,1.5918676723425256,0.6760221747744317,1.5918245956458008,0.004350831131498275,0.0043508330000848585,1,1,6.142421621469757,6.142442751306653 +139.188554269,40.778431587521126,29.435645104007094,3.1419144814,8,0.0,-5.979565658601683,-1.1668176816010378,0.6566526704074362,1.5845154136542166,0.6566729103480494,1.5844724420744127,0.003486238693829387,0.003486240821753042,1,1,1.7659939259164288,1.765998358671385 +139.489151526,40.77846526114754,29.43581515459645,3.1418889557,8,0.0,8.375471855069085,2.572628324499649,0.6790101819104597,1.5871713010771706,0.6790303686605164,1.58712846082974,0.004471714293938422,0.00447171715659521,1,1,2.168708943795207,2.1686995782737384 +139.788953228,40.77847443398955,29.43572374732359,3.1418626177,8,0.0,0.6592117979129505,3.5912643133658744,0.6790301214771385,1.592463503269234,0.6790502502374366,1.5924207684127287,0.003610714400558041,0.0036107169527120953,1,1,0.089652252555326,0.08965611455617123 +140.089263138,40.77847694451548,29.43553823056465,3.1418382805,8,0.0,-15.001416145493101,3.8700724516816103,0.6334639159029047,1.598469955354876,0.6334839711119769,1.598427333386305,0.0028422310599863004,0.002842232714454555,1,1,8.97543787387185,8.97546495633057 +140.388965475,40.778444464272226,29.43576038490125,3.1418105573,8,0.0,3.752020282456564,0.2631392709645652,0.6424156920267154,1.5949803694921156,0.6424356902052094,1.594937864892949,0.00373409234807832,0.0037340937694398104,1,1,0.3902575038782908,0.39025045641335576 +140.689369536,40.77850459752443,29.435686307623964,3.1417864942,8,0.0,-2.5013059943644707,6.940914055924454,0.6333403912600759,1.6090725734767155,0.6333603315170528,1.6090301811092567,0.001138232699230627,0.0011382372558278063,1,1,0.9939510167126623,0.993965690797401 +140.98894317399998,40.778415160608574,29.43570363466247,3.1417587794,8,0.0,-1.0386244904549486,-2.9910225410744555,0.6284070860016219,1.5969585672079798,0.6284269613499005,1.5969162827624472,0.0010205602208302777,0.0010205656514597657,1,1,0.5729897429743943,0.5729834399102296 +141.289123966,40.778507230928575,29.435643399043258,3.141733719,8,0.0,-6.123485452670736,7.23335471863943,0.6089026933412695,1.6117875126459569,0.6089225072117009,1.6117453453402295,0.00036470924448651914,0.0003646865329896385,1,1,2.3517330294019287,2.3517533374720854 +141.588375736,40.778484294178405,29.435727622376163,3.1417081479,8,0.0,0.9863290469283658,4.686234660410693,0.6100128837562061,1.6198240640304415,0.610032637979698,1.619782010770089,0.00027997676673388925,0.0002799571862812544,1,1,0.2160938716733608,0.21609911934975984 +141.889571062,40.77844416849034,29.435714067801822,3.1416828125,8,0.0,-0.15789717141676457,0.23029185326352047,0.6077573616900064,1.6162532070278022,0.6077770644985747,1.6162112564347388,0.0022285212996162812,0.002228516278883498,1,1,0.0643431500749282,0.06434163473847469 +142.182408768,40.77844201324482,29.435755836771207,3.1416570472,8,0.0,3.3680841653785683,-0.009046594344832468,0.6157416583446761,1.6119611648318342,0.6157613024400135,1.6119193266087495,0.0012542922314201985,0.001254289416534356,1,1,0.33350434319248107,0.3334973813027209 +142.488918863,40.77847255619416,29.435789905014033,3.141626939,8,0.0,6.24399589839941,3.3827384370958864,0.6319318062259475,1.6166533848342735,0.6319514043540686,1.6166116570602043,0.0004001125858470446,0.0004001113577777869,1,1,1.211446250356652,1.2114415859743008 +142.788978299,40.778441084680324,29.435832852426625,3.1416052268,8,0.0,9.869460039031642,-0.11215752617501804,0.6585318506608657,1.612104140064991,0.658551397908777,1.6120625200271692,0.0007198249236826447,0.0007198190472918959,1,1,3.141541371909821,3.141525104047341 +143.088551933,40.77838020324658,29.435781677414063,3.1415770699,8,0.0,5.5494604543704495,-6.873022543415531,0.6725588386150292,1.5900309244897775,0.67257834232801,1.5899894097461724,0.0010953660121702487,0.001095361012274308,1,1,2.4688857493073124,2.4688630917151912 +143.389442727,40.77841533399286,29.43569408343181,3.1415531083,8,0.0,-1.8449042464438248,-2.9717681243993295,0.6653787842083843,1.5780683139338287,0.66539821517179,1.5780269018089341,0.0019705331223308785,0.0019705309324137142,1,1,0.6928155387489673,0.6928106204162281 +143.689528484,40.778482303293316,29.435687925099714,3.1415308371,8,0.0,-2.364765614093675,4.465147921932828,0.6566712928725646,1.5855973854363155,0.6566906694000016,1.585556084210075,0.001894159594920999,0.001894159574201126,1,1,0.5168839741528772,0.5168935545949069 +143.98936553299998,40.77834407635108,29.43581270358122,3.1414983472,8,0.0,8.168581164884177,-10.884898360107334,0.6782250291774341,1.553205596989514,0.678244355630014,1.5531643947787994,0.0027561534146880854,0.0027561533984922794,1,1,5.504246132092452,5.504212648236084 +144.288912886,40.77839373946665,29.4357731556702,3.1414752513,8,0.0,4.83008482482962,-5.369830860941981,0.6900804623351084,1.5352723625976967,0.6900997372889793,1.5352312629905427,0.002473191338521767,0.002473191367095944,1,1,1.690885625320338,1.6908671085355582 +144.58925174499998,40.778454612749634,29.435770405541263,3.1414484881,8,0.0,4.597924782869868,1.390124388191374,0.701230345710725,1.5349199130175954,0.701249572492418,1.5348789196907362,0.0020633125230049942,0.002063311536874787,1,1,0.5507692837385965,0.5507635874689751 +144.888420514,40.778386216344266,29.435812514809843,3.1414239824,8,0.0,8.152640610716935,-6.205267881869124,0.7225575381266882,1.5148641689772084,0.7225767107347957,1.514823277115528,0.002864419493728398,0.0028644172547773114,1,1,3.3378875210962518,3.3378630332848744 +145.189363943,40.77843197536449,29.435672924787706,3.1414004944,8,0.0,-3.631038245731466,-1.123749344353796,0.7101156696292317,1.5080843428768134,0.710134787117915,1.5080435543634716,0.0023636270837647418,0.002363626309202454,1,1,0.8383854468904874,0.8383866464247084 +145.489231569,40.77848167412765,29.435888455243045,3.1413772058,8,0.0,14.56323459623913,4.395293250826215,0.7496472091249183,1.5154876015717014,0.7496662779683175,1.515446922076754,0.003133260847092211,0.0031332584047303806,1,1,7.101457179725846,7.101443349863632 +145.789286803,40.778499705342966,29.435676517110036,3.1413501261,8,0.0,-3.327784304654101,6.397639445243289,0.7379899359542358,1.528077369982764,0.7380089505259703,1.5280367973765336,0.0025795659743992833,0.002579566632909629,1,1,1.1310702431182567,1.1310847124442442 +146.098223021,40.778503044660134,29.43574637786262,1.8961795295,8,0.0,2.5695958636832867,6.76846907539655,0.7431822914240027,1.5415466435854002,0.7432012561493769,1.5415061784336657,0.0011124375012239913,0.0011124369680605214,1,1,0.7338212988009514,0.7338282789624287 +146.416729742,40.77843040685191,29.43576245410378,1.8961028237,8,0.0,3.9266955005650876,-1.2979319300979288,0.752259751482276,1.5342678826015113,0.7522786624720681,1.5342275161077736,0.001291062750695328,0.0012910613889189231,1,1,0.5451574704650552,0.5451479900198413 +146.703373407,40.7783935771695,29.43575729977606,1.8960299371,8,0.0,3.4915881402594766,-5.387854650116511,0.760001906823725,1.5165294191405974,0.760020768787761,1.5164891548954782,0.0026546638436954866,0.0026546641518380284,1,1,1.339874631239546,1.3398584241718854 +146.988898516,40.77850181037041,29.43577829982384,3.1412474096,8,0.0,5.2643269620024045,6.631403084260625,0.7728206732169173,1.5296089277133056,0.7728394830926617,1.5295687603775998,0.004776192493950169,0.00477619228899282,1,1,1.3150382033478527,1.3150412755807661 +147.288885855,40.77853147095654,29.435759687121948,3.1412257311,8,0.0,3.6931115280150837,9.925199227051973,0.781047891248541,1.5510826462831793,0.7810666525699689,1.5510425914319461,0.00499925564066746,0.004999255023637122,1,1,1.8805484715310663,1.8805595628828342 +147.58896181,40.778456779373904,29.435838990918448,3.1411945863,8,0.0,10.387646294043414,1.630733066125327,0.8081521394557015,1.5512498087002171,0.8081708512038827,1.5512098641812855,0.004537986200589548,0.00453798583752755,1,1,3.325798118817116,3.3257852720969727 +147.88840324699999,40.778433221004356,29.4356546923973,3.1411748379,8,0.0,-5.170149098112225,-0.985420586604344,0.7913547378655406,1.5448421562867933,0.7913734003052142,1.544802295622359,0.006634378387449811,0.006634377355217966,1,1,1.4315941873882507,1.4315977272172067 +148.18938029699999,40.77853643597919,29.43567038952303,3.1411477326,8,0.0,-3.845049887781218,10.47656323082286,0.778269718305839,1.567540062625986,0.7782883178121826,1.567500314156944,0.005715310399569147,0.005715308411574756,1,1,2.5552431520700574,2.555265275241411 +148.48912920499998,40.77853526751418,29.435803993809156,3.1411274561,8,0.0,7.433312148044178,10.34680835706651,0.7970022960820276,1.5899862986526752,0.7970208627401617,1.5899466504041715,0.007742069070931355,0.007742067232477308,1,1,3.316327410607979,3.3163340602810116 +148.788927474,40.77853372225176,29.4357979563724,3.1410972212,8,0.0,6.923655021814996,10.17520704244852,0.8142580508955415,1.6117141272399875,0.8142765627031707,1.6116745868737363,0.006543778235237425,0.006543776782694764,1,1,2.997803612844837,2.9978106102381585 +149.088930576,40.77843748043218,29.435690325402717,3.1410719524,8,0.0,-2.1621425211456176,-0.5124142013893201,0.8059098157820821,1.6062891604007095,0.8059282681991966,1.6062497197824304,0.005273550796690946,0.005273549605481246,1,1,0.4199516639453097,0.4199518845900587 +149.388490023,40.778454153301084,29.43584882750935,3.141043031,8,0.0,11.21801504113947,1.3391098668429617,0.8351406285627065,1.6056940593643643,0.8351590482344353,1.6056547142713085,0.007121317216544509,0.0071213166668704815,1,1,3.9083946557936406,3.908380326792239 +149.689617584,40.7784452934037,29.435665770454964,3.1410213215,8,0.0,-4.23497970272805,0.3552142731408007,0.8209166127370378,1.6024799677486983,0.8209349687403048,1.6024407242718397,0.003935783475438831,0.003935781889642503,1,1,0.9612594785462416,0.9612640097628068 +149.989536307,40.77846979131055,29.43579366898959,3.1409907125,8,0.0,6.561736868932825,3.0756994147832,0.8369883511695965,1.6063083935404692,0.8370066748108769,1.6062692505586103,0.0027755466998835836,0.002775546447155622,1,1,1.236110455042212,1.236105433734845 +150.288849053,40.77838325810044,29.4358497229328,3.1409650529,8,0.0,11.293615357956938,-6.533775628913549,0.8662777849522466,1.585710398636981,0.8662960582194851,1.5856713470801405,0.003293999924431869,0.003294000515832027,1,1,5.419246819308715,5.419218786789793 +150.588852832,40.778480743253034,29.435779795098114,3.1409438461,8,0.0,5.390554055079028,4.29190761278633,0.8789552707398973,1.5924974116115604,0.8789734910497256,1.5924584557020127,0.0023316271298364976,0.0023316277821262147,1,1,0.9011010962117074,0.9010998571283388 +150.888974222,40.778492081269086,29.435707486881835,3.1409233689,8,0.0,-0.7134334777972584,5.550988156852919,0.8744647105233943,1.6025157688864364,0.874482886952041,1.602476922588236,0.0011219183710446754,0.001121921808505937,1,1,0.4411212633955015,0.4411302374514746 +151.19297228599999,40.77836761404488,29.4358557206129,3.1408894669,8,0.0,11.799920461609767,-8.271041367276661,0.9049722022983268,1.577679046153423,0.9049903331532009,1.5776402868228556,0.0014514595252942916,0.0014514615176623416,1,1,6.477545820781918,6.477514381633276 +151.491826135,40.77856639686361,29.435628634502276,3.1408723057,8,0.0,-7.3698454362592205,13.80371102731474,0.8818993675180428,1.6084237847527443,0.8819174498171723,1.6083851284328108,0.003131083628704804,0.003131082156129297,1,1,5.803964511289487,5.803996480962522 +151.791167147,40.77845860326579,29.435780127511762,3.1408458835,8,0.0,5.418616964187946,1.8332702783123553,0.8945417780330862,1.6089444678482936,0.8945598088905063,1.6089059091629812,0.0034956643113463115,0.0034956635095038046,1,1,0.7428401965936179,0.7428346730737609 +152.09132702899998,40.77850724400783,29.435696387023896,3.1408233391,8,0.0,-1.6504412014547727,7.234804816885843,0.8874479706769841,1.6229852242373004,0.887465943661645,1.6229467705948315,0.002372400895509338,0.002372399046716328,1,1,0.9398834980154849,0.9398964864793152 +152.39076318,40.77842717889647,29.435613932127186,3.1407951029,8,0.0,-8.610981026085419,-1.6563912149306634,0.8610305324560636,1.6148575349083065,0.8610484566187605,1.61481916939302,0.0010538551591076693,0.001053846868434731,1,1,3.4913644463446554,3.4913711233133573 +152.690737713,40.77857317909395,29.435713751898806,3.140771406,8,0.0,-0.1845641738026502,14.556871532283987,0.8581438021371771,1.6471430699418308,0.8581616742654095,1.6471048094685896,0.0013370357819164238,0.0013370329583257679,1,1,3.7780992174307872,3.7781227309570404 +152.990810539,40.77853563951784,29.435656280815877,3.1407466754,8,0.0,-5.036052945429765,10.388117207006202,0.8417459401755987,1.6690005823442673,0.8417637588616587,1.6689624133097616,0.0029315726899635155,0.002931569718666046,1,1,2.9574108987931047,2.9574334230177937 +153.29075203,40.77856435126231,29.435624580709323,3.1407214449,8,0.0,-7.712051187319201,13.576548107250376,0.8180636967347739,1.6986200881606477,0.8180814598946201,1.698582025359726,0.0033155660375890567,0.0033155601673998747,1,1,5.801749235958743,5.801780505685537 +153.590232898,40.77859134882573,29.435611020448224,3.140696046,8,0.0,-8.85675240627489,16.574618827268385,0.7913225557545884,1.73559044665869,0.7913402632415535,1.7355524897384635,0.002216982055446043,0.002216980136493556,1,1,8.312860696757285,8.312898354397248 +153.890176494,40.77844556498886,29.435709981128152,3.1406691677,8,0.0,-0.5028789708936107,0.3853725107316104,0.7876380562069976,1.7322986112979817,0.7876557118162322,1.732260745035903,0.0008597152272734364,0.0008597207780183928,1,1,0.10105008995110151,0.10104945315831024 +154.189771705,40.77847091874399,29.435638330599698,3.140643465,8,0.0,-6.5513477917938,3.2009004695032024,0.7674090382355926,1.7359380834647042,0.7674266447127779,1.7359003124171237,0.0011227891738126916,0.0011227976844297575,1,1,1.9892061406351857,1.9892179637944685 +154.48985778,40.77840595185098,29.435833560819635,3.1406167673,8,0.0,9.92926517925923,-4.013645055220395,0.7926600491553711,1.7216547565769367,0.7926776036183325,1.7216170686711716,0.002602817888076149,0.0026028209856818856,1,1,3.7629618157100966,3.7629404964182287 +154.796833553,40.77856802443552,29.435727925334522,3.1405949952,8,0.0,1.0119023803019764,13.98444868698277,0.7932752490529482,1.7520341875527972,0.7932927619910246,1.7519966036370858,0.0030603552776166873,0.003060355679405016,1,1,3.3583473375316832,3.3583676882011484 +155.089000877,40.77846200139409,29.435687781829962,3.1405732525,8,0.0,-2.376860631112056,2.2106295615158102,0.7845732823694719,1.753155107229705,0.7845907440662977,1.7531176164361262,0.0028523344980562596,0.0028523342372520927,1,1,0.36687876038306255,0.366883531112335 +155.389234869,40.77848912442888,29.435651749522517,3.1405440941,8,0.0,-5.4185711530733105,5.222634097960039,0.7674255969318298,1.7617457010995594,0.7674430074375511,1.7617083031215937,0.004291217164516667,0.004291216385503717,1,1,1.6553842671675942,1.6553978809440388 +155.688779722,40.77853700224908,29.43574402743687,3.1405214921,8,0.0,2.3711806208304775,10.53944667412397,0.7718708280071419,1.7833692112360051,0.77188819091463,1.7833319118321211,0.0037485726749830945,0.003748571783485142,1,1,1.812543765965432,1.812556407039904 +156.00472975099999,40.77843982653269,29.435632909592506,1.893723756,8,0.0,-7.0089721654487676,-0.25187761210427784,0.7505191432116526,1.7783328398985914,0.7505364478454661,1.7782956328955035,0.0031224703609071583,0.003122468866873682,1,1,2.27430547624669,2.27431182054342 +156.28894785,40.778424572739674,29.435699949611674,3.1404694954,8,0.0,-1.3497027332341989,-1.9458088400728455,0.7447020614121134,1.7692125901934979,0.7447193233118762,1.7691754680560197,0.004377759852195027,0.00437775785799426,1,1,0.46855111962933516,0.4685475529543293 +156.598681347,40.778476709628556,29.435685386480056,1.8935763877,8,0.0,-2.5790665494317624,3.8439735990034776,0.7356126627412085,1.7743133256268304,0.7356298747355148,1.7742762976872377,0.003590691684498167,0.0035906911313246764,1,1,0.49422995074492826,0.4942375241299439 +156.88921375,40.77855427289765,29.43563412774393,3.1404228485,8,0.0,-6.906128488250217,12.457348644221137,0.714609989246719,1.8005367980605254,0.714627150681519,1.8004998611822862,0.004824017917525749,0.004824017111938785,1,1,4.652056842798581,4.652083983921946 +157.189496968,40.778457687786485,29.43574607987994,3.1403953331,8,0.0,2.5444430256327464,1.7316050962566254,0.7196599405802999,1.8003517397849156,0.7196770547583627,1.8003148956196704,0.0039263740193353335,0.0039263728907663435,1,1,0.12076955637533039,0.12076717952105068 +157.488997099,40.77846261092988,29.43571922661555,3.140369853,8,0.0,0.2775906420629825,2.278317908252811,0.7183918071324146,1.8015554708954087,0.7184088797118915,1.8015187124102026,0.005133412617882691,0.00513341124807352,1,1,0.012139920044725066,0.012141251748869562 +157.790021033,40.77846395493502,29.43580012587442,3.1403459276,8,0.0,7.106803512331304,2.427572584484895,0.7358819759953156,1.803065051148651,0.7358990033110822,1.8030283850087636,0.004207421869270432,0.004207421315140828,1,1,1.4795581499297705,1.4795513163629146 +158.089564489,40.77842767731437,29.43572684339633,3.1403238319,8,0.0,0.9205712841500927,-1.6010470416336258,0.7363571023722506,1.7947803209565292,0.7363740862684416,1.7947437496448018,0.0033268938945390826,0.003326894650761682,1,1,0.2599040670033609,0.25989826885146544 +158.391882602,40.77850158308509,29.435576034799908,3.1403001515,8,0.0,-11.810120248459361,6.606170680874703,0.7021628555788697,1.8064781331695163,0.7021797812570425,1.8064416407822828,0.004432367814701006,0.00443236937085515,1,1,6.189900834609958,6.189924045204892 +158.688738836,40.77855592189616,29.435710541400987,3.1402761303,8,0.0,-0.45558206725508155,12.640466111886614,0.6990082465751358,1.8328755429689472,0.6990251262429461,1.832839152365988,0.003542650074656272,0.003542649305939043,1,1,2.66840534112477,2.668424399417115 +158.988835397,40.77848605046034,29.435669089583723,3.1402458751,8,0.0,-3.9547887705733036,4.881270106905151,0.686329912251793,1.8403210242908712,0.6863467449397433,1.8402847103642508,0.00458940047374427,0.004589399113971229,1,1,0.9879718684804977,0.9879824851601817 +159.28930716,40.77851639739412,29.43565156329079,3.1402240903,8,0.0,-5.434289909730148,8.251286780875711,0.6696935997735948,1.855883285064469,0.6697103811069831,1.855847069771112,0.003726505484966645,0.0037265044750179415,1,1,2.2675963419588108,2.2676141577902884 +159.589166345,40.77844700532853,29.435715881653355,3.1401960012,8,0.0,-0.004778563578921595,0.5453216769447303,0.6678473239848108,1.8527198539914604,0.667864062289661,1.8526837334176534,0.0029255348019986325,0.002925535447309881,1,1,0.05473597975509582,0.05473467716970319 +159.88941431199999,40.77841193812196,29.43560958897624,3.1401716164,8,0.0,-8.977615839954034,-3.3488731083850314,0.641664911975599,1.840075258784639,0.6416815943027839,1.8400392087411257,0.003876444881855835,0.0038764475735725674,1,1,3.956943017004993,3.956946257378157 +160.189259477,40.77842043744134,29.43570985679685,3.1401468149,8,0.0,-0.5133747508118451,-2.4050322838160954,0.6385435353010963,1.8298206354047417,0.6385601739127724,1.82978467729852,0.0030954576494698397,0.0030954595885462066,1,1,0.45036421460864295,0.45035877236492694 +160.488745711,40.77844244692214,29.435620983454612,3.1401221997,8,0.0,-8.015732172586432,0.039116682350723325,0.615042758454597,1.8254336484805613,0.6150593435507884,1.8253977656310127,0.003999996130306065,0.003999998431080827,1,1,2.770827899787235,2.7708353999598523 +160.7887518,40.77854077253941,29.43561825728424,3.1401014231,8,0.0,-8.245853195633405,10.958140229797134,0.5910886622165231,1.8475336060488488,0.591105198089266,1.8474978199707361,0.0032340114498995137,0.003234011393552597,1,1,4.691587704973365,4.691612924518016 +161.090036068,40.77841596269756,29.43566549611966,3.140070948,8,0.0,-4.258139942965614,-2.9019497055552987,0.5779684805562852,1.8360995801324749,0.5779849712549967,1.8360638859943479,0.0025386231538697145,0.0025386256222210656,1,1,1.3510408291784544,1.3510390226071185 +161.389200063,40.778473599469976,29.435640222163496,3.1400491668,8,0.0,-6.391668810556537,3.4985939541189253,0.5591160414947289,1.8400592607289048,0.5591324791443483,1.840023638582935,0.0033525378206391778,0.0033525412653781024,1,1,1.8123847590627873,1.8123956910176293 +161.689316478,40.778489635074884,29.43567390740377,3.1400246249,8,0.0,-3.548086364761874,5.279340015239074,0.5480348518893196,1.8483539409693674,0.5480512432314965,1.8483184145101013,0.002668809522250801,0.0026688095509764106,1,1,0.8720209857176184,0.8720313203438735 +161.988809355,40.77853859211894,29.435562191977372,3.1399996475,8,0.0,-12.978671693547232,10.716012126459253,0.5114878291678802,1.8697041248410902,0.5115041698828507,1.869668672751013,0.003451844456253305,0.003451841777153433,1,1,8.349744263376653,8.3497743137568 +162.289796324,40.77839547840681,29.43561552976486,3.1399717149,8,0.0,-8.476118383531757,-5.176718929720055,0.4873020685936653,1.8527534605571327,0.48731835776924004,1.8527180987346505,0.0028084842030713423,0.0028084832245811784,1,1,4.019663443413192,4.019662875688569 +162.58970542,40.77835841421677,29.435652213739182,3.1399449548,8,0.0,-5.379394277226717,-9.292686287977777,0.47154212068266377,1.8260303431657496,0.47155836242065696,1.8259950627026178,0.0022033240945971526,0.0022033247283377226,1,1,4.013487046923757,4.013476337990068 +162.88972467899998,40.778538073120124,29.435603610657207,3.1399261044,8,0.0,-9.482265632183697,10.658372197776622,0.4446638737461676,1.847168753900157,0.44468006565180757,1.8471335574136727,0.002911687153159379,0.0029116874651300213,1,1,5.31225486867667,5.31228043314672 +163.18969307999998,40.778456839978624,29.4357333031217,3.1399001231,8,0.0,1.465876796575838,1.6374560559785662,0.44745588517621987,1.8466811350684762,0.44747203496944143,1.8466460255831931,0.0023062397349614414,0.0023062410390421984,1,1,0.038564523765862356,0.038563002339862325 +163.489176909,40.77859211470857,29.435601869462285,3.1398787845,8,0.0,-9.629242828539311,16.659670798973156,0.42030883017218484,1.8821089267319469,0.42032492799686194,1.882073901538913,0.0029783916455639356,0.002978392061372393,1,1,8.557867256555822,8.557902204901106 +163.789245231,40.77857295342434,29.43568088313592,3.1398534325,8,0.0,-2.9592176750130132,14.53181159485723,0.41129207833846454,1.9123247619677686,0.4113081324579809,1.912289829963262,0.002426575754486746,0.002426570268004177,1,1,3.9837411149242232,3.9837648141550406 +164.08969056499998,40.778445804919166,29.43558266188397,3.1398274465,8,0.0,-11.250696323457065,0.41202521032078454,0.38005172701480977,1.9087197011705122,0.3800677278633658,1.9086848536658567,0.0018995088512448583,0.0018995052142566683,1,1,4.951919173133667,4.951930323358032 +164.419459126,40.778471638868574,29.43570277976488,3.1398012239,8,0.0,-1.1107908588853792,3.2808672219971675,0.37598665525222047,1.9120465190348057,0.3760026187329621,1.9120117502273313,0.0025538771085625547,0.0025538744582173987,1,1,0.12212537125362916,0.12212922641365054 +164.689492821,40.77848740374306,29.43563162685542,3.139778312,8,0.0,-7.11725099348533,5.031554013583465,0.35597941996636995,1.9194503732401944,0.3559953335701858,1.91941568879422,0.0020048487161100424,0.0020048477939509832,1,1,2.240933362908268,2.240946825198987 +164.98939984999998,40.77844062401545,29.435734618351564,3.1397529621,8,0.0,1.5769039779043201,-0.16332059625143036,0.35915348696236893,1.914514464916224,0.3591693611692626,1.914479865508402,0.002567492733919661,0.002567491963121019,1,1,0.15057430422318988,0.15056967831086185 +165.289254678,40.77849962763277,29.435598046434926,3.1397295669,8,0.0,-9.951981682616529,6.389015695790207,0.331646361666714,1.9251378432147166,0.33166218598815944,1.9251033253720768,0.002093799772002381,0.002093798008643948,1,1,4.278890902334563,4.27890961029194 +165.588712646,40.77842789321586,29.435761171371205,3.1397021229,8,0.0,3.818412103356652,-1.5770703351409006,0.3409654145431251,1.9168525795569389,0.3409812022020949,1.9168181426850748,0.001619129256204494,0.0016191297524862226,1,1,0.711988628256553,0.7119792524831918 +165.888739125,40.778394875469544,29.43570217360988,3.1396753251,8,0.0,-1.1619615290040495,-5.243679647771513,0.336936022469334,1.899827062770133,0.33695176253525927,1.899792703455901,0.0021475775628941006,0.002147578681130853,1,1,1.2260121768720316,1.2260028764446969 +166.189723884,40.77842562118199,29.43561304612469,3.139652881,8,0.0,-8.685774287378344,-1.8293747408641774,0.31289861953940057,1.8910222523379994,0.3129143134363006,1.8909879726393224,0.0017120813053406615,0.00171208080511149,1,1,3.2445941470443715,3.2445986622013705 +166.489099318,40.77846185455956,29.435683852999148,3.1396294194,8,0.0,-2.708517851067083,2.1943237547338774,0.30479409923454504,1.8917087373110018,0.30480975129120325,1.8916745398858037,0.0022023996545370975,0.0022023986591869008,1,1,0.3310662549657923,0.3310701374210678 +166.788732894,40.77858066379308,29.435583460103405,3.1396093415,8,0.0,-11.183290988745243,15.388053046780506,0.2742487605107548,1.923619662936141,0.2742643627852586,1.9235855513687223,0.001825850836075657,0.0018258446097472844,1,1,8.82303114527369,8.823064708630138 +167.089711987,40.77844066217428,29.435775101487646,3.1395764443,8,0.0,4.994340114393759,-0.15908155718596612,0.28681862896442034,1.918666017376831,0.28683418567916436,1.9186319838135126,0.0014104359749555183,0.0014104342312425808,1,1,0.8998093073282046,0.8998008285840697 +167.389623575,40.778410597956494,29.435686092838434,3.1395564341,8,0.0,-2.519440925373432,-3.4977029973839358,0.2793292760166265,1.9059540940093211,0.2793448025007598,1.9059201408216302,0.0018463907257520215,0.0018463886514266219,1,1,0.9387688692136215,0.9387637883575949 +167.68913317,40.77843573077489,29.435717145819346,3.1395320237,8,0.0,0.1019376458292036,-0.7067133065749233,0.2788731655646693,1.8997699512286417,0.27888864332160535,1.8997360757138972,0.001471263314817445,0.0014712627380546264,1,1,0.15351674615601277,0.15351298380009978 +167.989419097,40.77838866011134,29.435829442378168,3.1395019927,8,0.0,9.581603935914353,-5.933886748903846,0.3035888250738299,1.8813710851397332,0.3036042815242797,1.881337286983896,0.0018977104515124847,0.0018977156830885533,1,1,4.489072325561602,4.489050086412682 +168.289365201,40.778544789467304,29.43558199367558,3.1394850089,8,0.0,-11.307087207867855,11.404222627052288,0.27277840880365267,1.9037405632628397,0.2727938092316027,1.9037068478763126,0.0015310881358123116,0.0015310888129062004,1,1,6.883225253243824,6.883252549601417 +168.58924408299998,40.778407094535616,29.435790591102013,3.1394559176,8,0.0,6.301919057881719,-3.8867543281484602,0.2887400517872049,1.8901751925501964,0.28875541784528974,1.8901415530867671,0.0012060659703814094,0.0012060657132527582,1,1,2.0586971610914535,2.058681748661347 +168.888898793,40.77855972308429,29.435587208378085,3.1394368012,8,0.0,-10.866879625253372,13.062594607907647,0.2592223649993325,1.9163465839333846,0.2592376807928812,1.916313028219459,0.0015810549924086632,0.0015810555571662143,1,1,7.272031572472954,7.272060703452693 +169.189662492,40.77851423264229,29.43568029958163,3.1394087546,8,0.0,-3.0084817147241854,8.010890508972476,0.25058426652633103,1.9306352410343217,0.250599542022393,1.9306017675296614,0.001257986360814822,0.0012579861747567193,1,1,1.2140647232048223,1.2140774615659284 +169.489089455,40.778447013924335,29.435680738422803,3.1393842057,8,0.0,-2.971439407198943,0.5462768339463263,0.2420775033604929,1.9273883535757412,0.24209273407206025,1.9273549525935842,0.0016222832728001477,0.001622283400485337,1,1,0.416959491393621,0.41696096916372666 +169.789137993,40.77850604866645,29.43556250727052,3.139361675,8,0.0,-12.952062175122357,7.102073743921074,0.20722789877320047,1.9394935680590566,0.20724308327473212,1.9394602506077696,0.0013267112267140867,0.0013267126185693564,1,1,6.872264909522319,6.872287109503899 +170.088956705,40.77848520413143,29.43568137099672,3.1393383254,8,0.0,-2.918038198537491,4.787285114229181,0.1990098476124996,1.9461549541449419,0.1990249924733455,1.9461217141056826,0.00104112804712749,0.0010411295947385466,1,1,0.5330942440043943,0.5331019017002177 +170.389700694,40.77847322772026,29.43570444429342,3.139311447,8,0.0,-0.9702775784479942,3.457308591967475,0.1958776465468751,1.9496682626933068,0.1958927472570293,1.949635102862673,0.0013675148329238545,0.0013675160657858035,1,1,0.10025606798857302,0.10025958682310519 +170.689685722,40.77848732291905,29.435674965665633,3.1392863565,8,0.0,-3.4587520110289707,5.0225759248789155,0.18626603841952513,1.9568400472847358,0.18628109951958488,1.9568069660997036,0.0010832931764670195,0.0010832939371593583,1,1,0.692208920591602,0.6922174487259477 +170.98925884599998,40.77841679134944,29.435722904195806,3.1392632296,8,0.0,0.5880386229533974,-2.8099294251506595,0.18732372661647748,1.9457100961420004,0.18733874443107365,1.9456770870605908,0.0014006077261852004,0.0014006084682900136,1,1,0.5130802077476365,0.5130727300466967 +171.289082601,40.778507657178736,29.435658788363316,3.1392422304,8,0.0,-4.824377420677983,7.280688680187894,0.1741381837094292,1.9581418405549869,0.1741531615548622,1.9581089122873803,0.0011382140178266302,0.001138215082824623,1,1,1.5407009485197667,1.5407142366375262 +171.588802745,40.77852925712782,29.435688669570393,3.1392167584,8,0.0,-2.301918580429246,9.679353805085281,0.16764598937903094,1.9760600212291366,0.16766092317948525,1.9760271708667358,0.0001080494700858155,0.00010805351991594038,1,1,1.5519333627008027,1.5519473875741137 +171.888911464,40.778382581471305,29.43581578489772,3.1391897284,8,0.0,8.428689980672447,-6.608918857843982,0.18933723231113656,1.9561514248411687,0.18935213319278407,1.9561186536627377,0.002648128506737061,0.0026481292498298265,1,1,4.105166372362492,4.1051448863544175 +172.189695024,40.77851821365663,29.435642720955848,3.1391672663,8,0.0,-6.18072600122368,8.452982644017762,0.17261277191138905,1.9712114741524625,0.17262762939065868,1.9711787779180265,0.0038267849637301666,0.0038267852768444337,1,1,2.40485921670719,2.40487556504772 +172.489657789,40.7784935727331,29.43573310909315,3.139141913,8,0.0,1.4494968321274875,5.716614790185906,0.1759751115635383,1.979909042746351,0.17598992786350146,1.9798764335135584,0.006445542290674736,0.006445542487146619,1,1,0.371940120285367,0.3719442191117068 +172.789101789,40.7784550607901,29.435570941267468,3.1391200692,8,0.0,-12.240105504494766,1.439887803596885,0.14342443984640557,1.978647007553429,0.1434392132624307,1.9786144666421162,0.0035293979062704438,0.003529397980511463,1,1,5.562896765345073,5.562909239367301 +173.08925964099998,40.77841857597463,29.435753905484145,3.1390932075,8,0.0,3.20505320715541,-2.6117467926344653,0.15143613389612087,1.968035378980395,0.1514508706474055,1.9680029105483983,0.0018147790099023685,0.0018147785652370923,1,1,0.8082859787119416,0.8082760478869985 +173.388876889,40.77837731845515,29.43579740641867,3.1390713142,8,0.0,6.877246162714606,-7.193376439521539,0.16906827907149363,1.9468450108501818,0.1690829792245844,1.9468126155598622,0.0014039876697921304,0.0014039871026816878,1,1,3.5042491017133846,3.5042286751009635 +173.689738874,40.77846169862461,29.43575374597724,3.1390470761,8,0.0,3.1915861573099695,2.177007429400358,0.1769417569817769,1.9473970116729598,0.17695642077312687,1.9473646919170542,0.0023243882681985633,0.0023243863025923014,1,1,0.3304679924008838,0.3304651220805768 +173.989054228,40.77837690232732,29.435757083166482,3.1390181378,8,0.0,3.4733036190787328,-7.23958965876917,0.18562684473086272,1.9261408848199824,0.18564146555618358,1.9261086416913304,0.004821620118221793,0.004821616890657745,1,1,2.275884182800384,2.2758674436764337 +174.289047885,40.77846167731266,29.435671067633304,3.138997968,8,0.0,-3.787810663217133,2.174641026507137,0.17520725408846038,1.926760566298996,0.1752218380755211,1.9267283951139658,0.005285103645779494,0.005285102097132027,1,1,0.5704294406845813,0.5704339869759356 +174.588631312,40.77837332084391,29.435787627486338,3.1389727529,8,0.0,6.051744558488837,-7.637310395831568,0.1905333738026802,1.904739984025729,0.19054791867877782,1.9047078759453755,0.004015834357342122,0.004015834438057218,1,1,3.28685645011043,3.2868365307502394 +174.889630181,40.77845562710559,29.435613578285064,3.1389489555,8,0.0,-8.64084738524306,1.5027718543131703,0.16751958755030402,1.9038216107997883,0.1675340964792282,1.90378958688322,0.0034399526056240175,0.0034399529394612298,1,1,2.814791116172028,2.8147998025906635 +175.189405158,40.7784362326326,29.435828492871824,3.1389221101,8,0.0,9.501443292068561,-0.6509761002769904,0.19182371227977735,1.8979267376454863,0.19183818079777093,1.8978947838301745,0.0015822829539701578,0.001582291563386728,1,1,3.2859366299740387,3.2859232174915527 +175.48901052899998,40.77848655115668,29.43569019037718,3.1389008146,8,0.0,-2.173539276742973,4.936871512223905,0.1857488653474542,1.9049803752816339,0.18576331290805626,1.9049484934333463,0.001037156765380307,0.0010371726184741704,1,1,0.4078491457397601,0.40785595196427027 +175.78867259999998,40.77850977660568,29.435741095854056,3.1388767023,8,0.0,2.1237085019462354,7.5160489899368885,0.19074619168419202,1.9177921990671987,0.19076059198239054,1.9177603941844739,0.00037112652073161267,0.00037114847938726173,1,1,0.8382919758831096,0.8382979460168203 +176.089690124,40.77846928966859,29.435705241103914,3.1388507473,8,0.0,-0.9030138790359746,3.019989409463814,0.1879105711128762,1.920319326545679,0.18792493362046445,1.920287591030355,0.00047784749688952204,0.0004778496592277709,1,1,0.07024236335446778,0.07024506424750013 +176.432900252,40.77844209471615,29.4357430680438,3.1388257144,8,0.0,2.29019559452415,3.541634817298836e-07,0.19338560233869606,1.9159296377183452,0.19339993101250041,1.9158979796643998,0.0011755338191452192,0.0011755333346773484,1,1,0.24162857788096526,0.24162368010419327 +176.689333994,40.77850316809941,29.43568049509013,3.1388048568,8,0.0,-2.991978127252943,6.782177119596907,0.18511728056351445,1.9270596597511018,0.18513157030419056,1.9270280723487392,0.0006990332330406366,0.0006990328102306081,1,1,0.8944048843107614,0.8944150537877543 +176.989053453,40.77845631483919,29.43561381229718,3.1387757226,8,0.0,-8.621092865918195,1.5791443919580033,0.16220930481233084,1.9262488451106605,0.16222354820456675,1.9262173416873072,0.003046396834343447,0.0030463974674376196,1,1,2.797879100564685,2.7978876770701055 +177.289635532,40.778427292144315,29.435724926694157,3.1387542231,8,0.0,0.7587703711867811,-1.6438200518128452,0.16379807094145957,1.9181128186606708,0.16381228022850736,1.9180813797354548,0.0041013053139268485,0.004101304222868742,1,1,0.2973796472596051,0.29737401163154314 +177.589554652,40.77848056974773,29.435773887485244,3.138731707,8,0.0,4.891855608943157,4.272639566233182,0.1760359998632572,1.9234941261455296,0.17605017878333953,1.9234627570579124,0.00408665805140114,0.004086656976351698,1,1,0.9295256008448274,0.9295240614962893 +177.889383207,40.778395863606676,29.435873053365782,3.1387082595,8,0.0,13.26308313205883,-5.133935601085187,0.2099685955534178,1.9073807164296503,0.20998273459179612,1.9073494245876776,0.006339258357650186,0.006339255705814141,1,1,7.28530576719528,7.28528251350904 +178.188569651,40.7783885964721,29.43578250199226,3.1386856632,8,0.0,5.619067641984449,-5.940957930601049,0.22393189369534608,1.8895603478860314,0.2239460042578016,1.8895291182281102,0.005648323161967732,0.005648319946367522,1,1,2.429829021656341,2.4298125369312773 +178.48857826,40.77837808598709,29.435804699155625,3.1386590294,8,0.0,7.492872455884452,-7.108141707251412,0.24279732603157203,1.8690065626536077,0.24281139095731222,1.8689754181253422,0.007822647429051897,0.007822642363851707,1,1,3.711925845373879,3.7119059165383215 +178.78956344899998,40.77841799603584,29.43574292684061,3.1386382089,8,0.0,2.278276568721575,-2.676149121916038,0.2480149774931791,1.8587481117670446,0.24802901401086758,1.8587170268341486,0.006730283204961291,0.006730281118657388,1,1,0.6105813382342664,0.610572950281973 +179.08961284699998,40.77859216910981,29.435618036853423,3.138619476,8,0.0,-8.264454749670284,16.665710386183346,0.22600401743493023,1.8923462375040472,0.2260180168765847,1.8923152274473316,0.00548847995953992,0.00548847936415898,1,1,7.5067694857118905,7.506798651249753 +179.388993475,40.778448088206375,29.43566194130848,3.1385882222,8,0.0,-4.558221828007966,0.6655762626649744,0.21369445536439308,1.88955037099434,0.2137084088597605,1.8895194371795316,0.007476151459764659,0.007476150789848946,1,1,0.8586342541589618,0.8586373812125061 +179.688981505,40.7784076229616,29.43575965108538,3.1385629459,8,0.0,3.6900763116895816,-3.8280745812329973,0.2226444458230054,1.8766214621116992,0.22265836987681922,1.8765905931366258,0.006109009951716186,0.0061090087680589445,1,1,1.1654907377647588,1.1654793407551687 +179.988992835,40.778530746778976,29.435707022445907,3.138544176,8,0.0,-0.7526389681472899,9.844778694795018,0.2201514269491596,1.8946162983979469,0.22016530334647935,1.8945855121511845,0.008009475257029124,0.008009474445106943,1,1,1.4518342699213629,1.4518462272846697 +180.288680535,40.77853165485164,29.435829778066665,3.1385170969,8,0.0,9.609920928257164,9.945626025215633,0.24432757135494088,1.9128307405213432,0.24434142268427272,1.912800021616513,0.006576369278252832,0.006576368000517745,1,1,4.625165420347091,4.625167090570327 +180.58967718,40.77838110252193,29.4357548312218,3.1384904645,8,0.0,3.2832024160825926,-6.773159703222679,0.25211306460881105,1.8932472961894673,0.25212688876985145,1.8932166420173822,0.005215746397931981,0.005215744254755661,1,1,2.017332884961211,2.017317933129872 +180.888990229,40.778346105156274,29.435816407917432,3.1384657968,8,0.0,8.481287678057688,-10.659599950349998,0.2733606106347314,1.864851623899364,0.2733743892906967,1.8648210402022465,0.006951993796550355,0.006951989831543839,1,1,5.958932649719654,5.958907275574613 +181.18897607899999,40.778453142322945,29.435674287494322,3.1384451083,8,0.0,-3.5160024789295297,1.22683345901654,0.2635747034108029,1.8634645310373588,0.2635884526439961,1.8634340135368135,0.005572166496867213,0.005572164030050029,1,1,0.5266578311368081,0.5266607255364381 +181.489294029,40.77856632906132,29.43567994679734,3.1384240921,8,0.0,-3.038260048849179,13.79617856218672,0.2551345543446948,1.8902801585250868,0.2551482515462017,1.8902497210474807,0.007212248135917622,0.007212246535172482,1,1,3.57208962836049,3.572109153317858 +181.7886179,40.77838891236448,29.435678829385996,3.1383945819,8,0.0,-3.1325959250346465,-5.905879669084559,0.24641636614238424,1.8727625274414585,0.2464300350574934,1.872732152268971,0.005851438073222309,0.005851437567406238,1,1,1.7706976397103178,1.7706903890466335 +182.08953961699999,40.778317638246236,29.435823432823092,3.1383692747,8,0.0,9.07430886311338,-13.820838951723522,0.2690664366348919,1.8374809454572796,0.2690800727653664,1.837450626382105,0.004601183385597387,0.004601182668949654,1,1,8.307864082589804,8.307834090834909 +182.38955321,40.77835320781742,29.43577697115039,3.1383466853,8,0.0,5.152176863388519,-9.870855150854531,0.2815936919334623,1.8111504683122213,0.28160729579964977,1.8111202268100275,0.006092433802083686,0.0060924325201084885,1,1,3.9201355501067976,3.9201149040357057 +182.68894649199999,40.778384770517256,29.435777401677026,3.138322481,8,0.0,5.188517916603081,-6.365829100942984,0.2941647920084948,1.7928202974654301,0.29417836222724764,1.7927901123241687,0.004862200275941993,0.004862198669897324,1,1,2.3607356133024355,2.3607197552105643 +182.988958225,40.778468542255965,29.435769542220378,3.1383002339,8,0.0,4.525045507381281,2.936990841948119,0.3050028118507115,1.7953492269704197,0.3050163496691773,1.795319129178978,0.006278619263923337,0.006278617935168617,1,1,0.6744573758808675,0.6744547777024954 +183.288935339,40.778417585409386,29.435840260331606,3.1382740452,8,0.0,10.494811585898841,-2.7217419515079726,0.33107578576188657,1.7852475927388303,0.33108929292871236,1.7852175500510794,0.0050992569987482654,0.005099253066449445,1,1,4.198247454726489,4.19823143548819 +183.589498585,40.778479632130264,29.435789996597116,3.1382526375,8,0.0,6.251726334909281,4.168518519127738,0.3461630693728137,1.7906147204350287,0.34617654997489145,1.7905847456811197,0.004003245030448975,0.0040032420498438545,1,1,1.3903772320580965,1.3903746611106145 +183.88947185,40.778494691684735,29.435624494814647,3.1382365332,8,0.0,-7.719310147686622,5.840877834913751,0.32563109194803497,1.7996164449079062,0.3256445241087162,1.7995865418454353,0.005274355240929278,0.0052743534488561596,1,1,2.711160407362722,2.7111736592565148 +184.188947873,40.77846849032771,29.43570234486908,3.1382088044,8,0.0,-1.1475031861892906,2.9312229358580835,0.32184613293736536,1.802179433200379,0.32185953728453864,1.802149595613929,0.00420533279277998,0.004205331141356583,1,1,0.10680975071414901,0.10681268899350087 +184.488957137,40.77841708842597,29.4358035621518,3.1381837406,8,0.0,7.3968863959685995,-2.776935516949494,0.3399503663292015,1.7918713574180565,0.33996372317299983,1.7918415907054306,0.005431045275508664,0.00543104178488563,1,1,2.272437973646475,2.2724250444658742 +184.788601069,40.778379555356274,29.435844429711622,3.1381574807,8,0.0,10.8467814836856,-6.944964654481103,0.3667227514329499,1.7724348720596854,0.36673608831153065,1.7724051658131164,0.0044079014976260425,0.004407896504538619,1,1,5.683537935798548,5.683516194781588 +185.08950935,40.77845641970361,29.435798115235947,3.1381369929,8,0.0,6.937073716133125,1.5907877763315046,0.3834331983243293,1.772057329812868,0.38344650879020825,1.7720276884832813,0.0034517617108791236,0.0034517584998394303,1,1,1.5568336974257397,1.5568271362606187 +185.389059982,40.77849794547028,29.435730821200252,3.1381145753,8,0.0,1.2563614733753532,6.202205595423686,0.3857355361495651,1.7818685925954805,0.38574880254632155,1.7818390224792424,0.004546397043275275,0.004546394445177776,1,1,0.4656702887314093,0.46567531483041535 +185.68900233,40.778382585051965,29.435776156834077,3.1380882112,8,0.0,5.08343297193181,-6.608524278082748,0.3976490844512687,1.7632086351123033,0.397662321369028,1.763179127657882,0.003628132889900042,0.003628132800634352,1,1,2.3672956593393764,2.3672800857217147 +185.989531189,40.7784342621195,29.435688873046825,3.1380655067,8,0.0,-2.2847451325353845,-0.8698065896508707,0.3909049559523843,1.7573558963092424,0.39091815845073624,1.7573264531232375,0.004673738304053771,0.004673738500646974,1,1,0.41416622763763095,0.41416531798847095 +186.289454921,40.77844144166834,29.435722312310162,3.1380410626,8,0.0,0.5380736169422168,-0.07252069582583506,0.3912323371640074,1.7532896063900396,0.39124550525502855,1.7532602290023869,0.0037867660522894492,0.003786768259272384,1,1,0.07554271021751412,0.07554016432441538 +186.588963772,40.77846563084181,29.435729527519516,3.1380193326,8,0.0,1.1471543958404795,2.6136780885855764,0.39315708439729613,1.7551877020050006,0.39317021840399646,1.7551583865464526,0.00208611624127783,0.0020861172063713334,1,1,0.037125775311027905,0.037126186606748546 +186.888886282,40.77840694942789,29.435759801454015,3.1379941833,8,0.0,3.7027699182373772,-3.9028702418347403,0.4015669753382163,1.7426686720861355,0.4015800825431375,1.7426394231119136,0.00011811812127869146,0.0001181280010038291,1,1,1.1096194775221762,1.1096089361587487 +187.18947483099998,40.77840638074799,29.43576951751122,3.1379687469,8,0.0,4.522963869070822,-3.9660214780879515,0.41201758093937524,1.730021498167441,0.41203065476126705,1.7299923117845313,0.0016450873461632113,0.001645088206082976,1,1,1.3399106415361033,1.3398992909370318 +187.489448141,40.778469018705636,29.43553241945323,3.1379491444,8,0.0,-15.49197018463982,2.989915222042502,0.37163511692962037,1.732810490162624,0.3716481561724553,1.7327813649041892,0.003634403318913726,0.0036344020272429047,1,1,9.152868804501317,9.152885438899094 +187.789316839,40.77850298802215,29.435643432880497,3.1379250912,8,0.0,-6.120629431212367,6.762181531542947,0.35520223744884316,1.743934522965014,0.3552152370434186,1.743905467805797,0.0012917536803844485,0.0012917465494078823,1,1,2.0841123299526063,2.0841249705356226 +188.088952525,40.77837393246108,29.43571450008152,3.1379015842,8,0.0,-0.12140585340845043,-7.569393008782343,0.35402752796073206,1.7233144744645048,0.3540404869828885,1.723285478942721,0.00027243147731260964,0.00027240800790656166,1,1,1.944815428795947,1.9448037903889392 +188.388480262,40.77842793124901,29.435657448901267,3.137879984,8,0.0,-4.937455626269829,-1.572846105873847,0.340549567395364,1.716096178917429,0.3405625036631498,1.7160672497626952,0.0010470452032837637,0.0010470342444139449,1,1,1.251855947288956,1.2518566275829845 +188.689457227,40.77843529621165,29.435826850601128,3.1378547548,8,0.0,9.362809016250283,-0.7549654747547604,0.3634216940780965,1.71063401234155,0.36343459834588493,1.710605143748233,0.0014301746918838185,0.0014301743856755045,1,1,3.0705343883544445,3.070522782348913 +188.98890437699998,40.77840909569958,29.435690417910784,3.1378323596,8,0.0,-2.154334249869035,-3.664528183156641,0.3570042901570924,1.698752630901198,0.3570171580712366,1.6987238308661354,0.0024225838373474716,0.002422583450506842,1,1,0.8735863352168558,0.873581749021131 +189.289005469,40.778480012269185,29.435592901802234,3.137810954,8,0.0,-10.386275156614095,4.2107374479530435,0.32986990668417865,1.7043122354918097,0.32988273983056715,1.704283496149049,0.0023936745907860127,0.0023936752022862117,1,1,4.301335960986344,4.301349158340484 +189.58957121699999,40.77849432649621,29.43574692655508,3.137786273,8,0.0,2.615914743898469,5.8003202236980655,0.3356836414375358,1.713314480003495,0.33569644268056104,1.7132858002701847,0.00211689797690399,0.002116898682202078,1,1,0.5629733015347614,0.5629764440542371 +189.889496789,40.778430406429,29.435724144080634,3.1377594911,8,0.0,0.6927049961478912,-1.2979799027568322,0.3365166386724824,1.7067104193807692,0.3365294073717561,1.706681810751223,0.003046650931783129,0.003046651733940936,1,1,0.2070647402175883,0.20706055522670538 +190.188864531,40.778557816280745,29.435688280277102,3.1377400781,8,0.0,-2.334780232394759,12.850837173910653,0.3298097318723316,1.7311904682969734,0.32982246850289815,1.7311619213625256,0.0025856098573874475,0.00258561149271576,1,1,3.0301542054476687,3.0301709031295156 +190.488894182,40.7784766834672,29.435650779854964,3.137717265,8,0.0,-5.500427856962972,3.841069984502499,0.3150258048818516,1.7358484255603361,0.31503850199391215,1.7358199496408064,0.0034821025722846658,0.0034821049837025666,1,1,1.3246552116490464,1.3246632513480687 +190.789474974,40.77840018793022,29.435650721521462,3.1376890832,8,0.0,-5.50535846684344,-4.653730916213819,0.3004033353463176,1.7218184253696498,0.3004160025741342,1.7217900034790148,0.00031053083185067157,0.00031051898899912416,1,1,2.1327465443947946,2.132743746532034 +191.089658897,40.778500994650535,29.435670560227816,3.1376712541,8,0.0,-3.830641679814522,6.5408168154309685,0.2900058625586197,1.732379457237716,0.2900184967581112,1.7323511031342584,0.0005906506092380038,0.000590649468817899,1,1,1.133676848763935,1.1336867365485777 +191.388918077,40.77836126275744,29.43578685235551,3.1376406727,8,0.0,5.986311906789779,-8.976356444955893,0.30432485765905304,1.7089225752076376,0.3043374606503945,1.7088942764523503,0.0003080028655341998,0.0003080068899482657,1,1,3.7301649060929636,3.7301461561945697 +191.688893769,40.77841403593232,29.435648122655763,3.1376166878,8,0.0,-5.724744010534941,-3.1159152796353533,0.2891651329113354,1.6983767560555139,0.28917770313835983,1.6983485181977118,0.000925824801530361,0.0009258253523654326,1,1,1.830078706468485,1.830078087304736 +191.988897326,40.77852012082576,29.435630391731998,3.1376007716,8,0.0,-7.221511914288998,8.664774010651005,0.27019224948988996,1.71360708761506,0.27020478277712245,1.7135789173919596,0.0018001161563079766,0.0018001179985448939,1,1,3.11698619208554,3.1170017795220883 +192.288461941,40.77849433279623,29.43560462987787,3.1375750927,8,0.0,-9.396233095026517,5.801025336995804,0.2459434858632358,1.7225371861477088,0.24595598503569996,1.7225090765615707,0.0019286559471029486,0.0019286611135247,1,1,3.7413062774180017,3.7413201534842555 +192.589438354,40.778474181639645,29.435640196722094,3.1375553512,8,0.0,-6.393816422340478,3.563243680975477,0.22932778226666223,1.7265649707006803,0.22934025134499128,1.7265369172056773,0.0017703140837863898,0.0017703186032763908,1,1,1.664870289142613,1.6648785846947824 +192.889686026,40.778460607290214,29.435596883672446,3.137529098,8,0.0,-10.050143570680326,2.055821282320042,0.2033676024598745,1.7272699617257636,0.20338002866886426,1.7272419806245183,0.002612703329506475,0.0026127091811065347,1,1,3.8113388845000875,3.8113485303582397 +193.18963521,40.77843954473835,29.4356789322236,3.1375054852,8,0.0,-3.123912377357185,-0.2831734272787521,0.1951091155485343,1.7228815510681141,0.19512151079694456,1.7228536231877005,0.00224953152715771,0.00224953286899771,1,1,0.48934082372883725,0.4893412920401402 +193.488948282,40.7784288515074,29.43571639297788,3.1374810102,8,0.0,0.038385562165077505,-1.4706534006848342,0.19455894291544987,1.715948447688127,0.19457130802831085,1.7159205949484917,0.003021276674165051,0.0030212773359939845,1,1,0.22860545234053478,0.2286016115150357 +193.788848413,40.77837662240096,29.43565624036998,3.137458344,8,0.0,-5.039479250515869,-7.2706744757918464,0.18152609371589465,1.696372007918907,0.18153842463373004,1.6963442044132615,0.0025216886223822796,0.0025216890457672786,1,1,2.7907666496786545,2.7907601332374625 +194.098227565,40.77842244214222,29.43568303546644,1.8843874295,8,0.0,-2.777532548507419,-2.1824104948208998,0.174136020649503,1.6879409983563143,0.1741483196745775,1.6879132524753642,0.0020602402210704853,0.0020602401847138753,1,1,0.6515653476911688,0.6515631618974475 +194.399414171,40.778403038064624,29.435768640327982,1.8843145539,8,0.0,4.448915499634035,-4.3372252626675,0.18479852792334694,1.6748256863086215,0.18481079692950966,1.674798003211943,0.0027760025027868023,0.0027760019670834417,1,1,1.4693088950003317,1.4692976400605748 +194.698803695,40.77840074409981,29.43572899482489,1.8842414788,8,0.0,1.1021873813446317,-4.591970454957541,0.1871295080658786,1.661227873020796,0.18714174691289198,1.661200241416044,0.00037932493701979287,0.0003793140537749517,1,1,0.9072338068036158,0.9072252459572929 +194.998813003,40.77848595951128,29.435619472483495,1.884168815,8,0.0,-8.143277431112349,4.871173668742082,0.16618389920011278,1.6681956764166277,0.16619610952218097,1.6681681161446573,0.001996875305007348,0.0019968712800549713,1,1,2.73155801949541,2.7315693313828016 +195.298830719,40.778373549003426,29.43570546815805,1.8840956504,8,0.0,-0.8838480881479617,-7.611975786339903,0.16363275158437862,1.6480674723659245,0.1636449283909364,1.6480399614590533,0.003406282276020528,0.0034062807285274673,1,1,1.9627088036042697,1.9626983024534665 +195.598272536,40.778419367227556,29.435678750880566,3.1373160906,8,0.0,-3.1392216331819562,-2.5238784780443333,0.1553853950466423,1.639018972249355,0.15539753498815911,1.6389915230127112,0.0036453870231187894,0.0036453862224116143,1,1,0.7818670409666746,0.7818648142000624 +195.88939647,40.77835449741844,29.435671614880665,3.137290515,8,0.0,-3.741620099410641,-9.727646286653844,0.14563166462211585,1.6144126417440927,0.14564378324568164,1.6143852412658066,0.005763708109856664,0.0057637077312808266,1,1,3.432311169472566,3.43230064512509 +196.204794589,40.77845630286201,29.435675137386653,1.8838771496,8,0.0,-3.444257571967887,1.5778101134525573,0.13667542194043764,1.6143431029185658,0.13668750500696278,1.6143157666267862,0.005367028362542999,0.005367028845106977,1,1,0.46458941023910816,0.4645925007450153 +196.498729951,40.77843506617579,29.435719397220044,1.883804089,8,0.0,0.29199255627728954,-0.7805167850336099,0.1370762229790048,1.609143475382381,0.13708828273082788,1.6091161822708475,0.007436214663619788,0.007436215525947628,1,1,0.12892967680299366,0.12892661625612956 +196.80364507299998,40.77835997464983,29.435776698098223,1.8837333753,8,0.0,5.129126261702124,-9.119400957259307,0.14952136972145025,1.5859803442936444,0.14953339690338932,1.585953117436067,0.003542229576591647,0.003542232859758635,1,1,3.468402512158181,3.468385100919956 +197.10338542,40.77841178774884,29.435681609185583,1.8836595354,8,0.0,-2.897934381746613,-3.365576863404035,0.14187992772642308,1.575295739308612,0.1418919211423001,1.5752685781500595,0.0014476132405168705,0.0014476172957467413,1,1,0.8822179700284883,0.8822145929691984 +198.003359054,40.778507075647276,29.435775673292547,1.8834416452,8,0.0,5.042604740732503,7.2161099722803215,0.15417421883435492,1.5874917018427457,0.15418618766719663,1.5874645926888638,0.002079764605832402,0.0020797648198639246,1,1,1.5762116195765812,1.5762142243951465 +198.288789159,40.778429283577196,29.435743099525116,3.1371090333,8,0.0,2.2928535705995614,-1.4226718553220907,0.1595706626621541,1.5809996253927359,0.1595826055287379,1.5809725664706982,0.003944095604891089,0.003944096061509713,1,1,0.3671954910416911,0.36718999984875283 +198.59872189499998,40.77844973060298,29.43562095210856,1.883295724,8,0.0,-8.018377414258877,0.8479667313421684,0.13912247356509308,1.5794381665342414,0.13913438656513047,1.579411170979478,0.002837645212354247,0.0028376456543919627,1,1,2.422812011236876,2.4228181678431113 +198.898363157,40.778406708491325,29.435821676047347,1.8832235361,8,0.0,8.925996177008152,-3.9296217044952915,0.16111474375038132,1.5675133410775444,0.16112662569091996,1.5674863942418107,0.0018225231855965025,0.0018225224587191749,1,1,3.460849184194292,3.4608349956697553 +199.199573119,40.77849143910551,29.435637729123524,1.8831504311,8,0.0,-6.602120124655784,5.479679038914107,0.1441990051542143,1.575966026342361,0.14421085695462688,1.5759391430850358,0.00022443716271253436,0.00022443291980893878,1,1,1.9905935619447568,1.9906040628124506 +199.503358537,40.77837996290397,29.435766390121,1.8830770848,8,0.0,4.258962742063808,-6.8997133545013565,0.15445020560695538,1.5576999091741552,0.1544620286251207,1.5576730806653283,0.0005670762679737607,0.0005670761603996445,1,1,2.2143678613501607,2.214354169306553 +199.801808988,40.77839998705113,29.43582433553943,1.8830039199,8,0.0,9.150501667524837,-4.6760348564644305,0.17692563574179992,1.5442690016609857,0.17693743155861869,1.5442422278852,0.0016130377151606899,0.0016130371777694915,1,1,3.7849693165680858,3.7849541788024172 +200.103803665,40.77837464871457,29.435758650719883,1.8829319678,8,0.0,3.605630909201043,-7.489852450241851,0.18544144776258575,1.5248364020106429,0.18545321523274294,1.5248096827230033,0.0017315117829157663,0.0017315114475031207,1,1,2.2461605164148666,2.246146797995664 +200.403408367,40.778379706628506,29.43567642892927,1.882860799,8,0.0,-3.3352341926815976,-6.928173122014492,0.17672686839923052,1.5066296706196174,0.17673860479145617,1.5066030087134927,0.0027459529135830728,0.0027459522389422287,1,1,2.042296344484504,2.0422892452737678 +200.697249956,40.77843930844309,29.435667326997063,1.8827885503,8,0.0,-4.103582572036553,-0.30941344902684015,0.1660535265014462,1.5027429665676704,0.1660652319641014,1.5027163601706053,0.0024837048893056176,0.002483704764623227,1,1,0.7340732512798834,0.7340747103149432 +201.003342426,40.77826961243872,29.435857020625313,1.8827131427,8,0.0,11.909680308462512,-19.154082845919547,0.16605835146578873,1.5027860599376588,0.16607006486984155,1.5027594507428257,0.0020943454433804383,0.0020943446155940186,0,0,14.499389696345032,14.499355227963576 +201.30274884899998,40.77845961795863,29.435670603111923,1.88264209,8,0.0,-3.8270239406408164,1.9459505471453795,0.15610053177595667,1.5036899188382307,0.15611220601480152,1.503663372062576,0.0030466960863821915,0.0030466955075803483,1,1,0.5791585049392344,0.5791624009540786 +201.603816185,40.77834648303805,29.43579439774117,1.8825682945,8,0.0,6.62326759392655,-10.61763821496088,0.17221502603386268,1.477660689548908,0.1722266750738439,1.4776341934037651,0.002508815534132583,0.0025088142641310042,1,1,4.788384995662999,4.78836517852992 +201.903313054,40.77851426982384,29.435745284543195,1.8824974422,8,0.0,2.4773015634389504,8.015019309320255,0.17796812055333058,1.4916740750724016,0.17797973737012934,1.491647644545483,0.003414101549818827,0.0034141012662951948,1,1,1.1458164147672827,1.1458222126048387 +202.20365610599998,40.77843837666519,29.435739582994923,1.882424148,8,0.0,1.9960008173460537,-0.4128879054122067,0.18249383985792947,1.487576104100218,0.18250542757514893,1.4875497247597893,0.002810650051202107,0.0028106519309579166,1,1,0.20014132547700247,0.2001375544634093 +202.49680659199998,40.77841229091354,29.435706627170234,1.8823511536,8,0.0,-0.7860080257153637,-3.30970113582146,0.18006128880521255,1.4773356749296063,0.18007285363228226,1.4773093640263775,0.003661328525840862,0.0036613302648062767,1,1,0.5476985461900896,0.5476937069362678 +202.803949561,40.77837901931685,29.435711115585427,1.8822767285,8,0.0,-0.4071127104995654,-7.004499564711687,0.17861462096969166,1.4591350089035395,0.17862615261626263,1.4591087450348084,0.003037263987738196,0.0030372641413315333,1,1,1.6188020527194118,1.618792572955653 +203.10372321,40.77836308879845,29.43566084023364,1.8822064539,8,0.0,-4.6511763989241475,-8.773576232915838,0.1666320309292793,1.4372760907286484,0.16664353912542737,1.4372498754458787,0.0024251715057051087,0.0024251700771622513,1,1,3.1789550299499125,3.1789470426919997 +203.403557367,40.77834758830761,29.435770891770996,1.8821349401,8,0.0,4.638977929779445,-10.494899953332991,0.17770680536168962,1.4116482770263459,0.1777182748589912,1.4116221253454186,0.0032305591823803925,0.003230555156659256,1,1,3.9001392571778424,3.900121585593887 +203.697255741,40.77838061873024,29.435779310064056,1.88206207,8,0.0,5.34961733675878,-6.82688338499066,0.1905351918888635,1.3941072994478156,0.19054664239720692,1.3940811997464433,0.0025984116477883548,0.002598409018194957,1,1,2.4798248659015556,2.4798109631607033 +204.002727254,40.77834651019299,29.435846871125534,1.8819888093,8,0.0,11.052882253332182,-10.614617383963095,0.21743375263760886,1.3685212682642,0.21744518703893229,1.3684952246008417,0.002056160329294988,0.0020561559134670386,1,1,7.473500466026031,7.4734774943404325 +204.295587632,40.778377840964225,29.435844536766904,1.8819159084,8,0.0,10.855818981084703,-7.135347238685492,0.24392775466021363,1.350239859621142,0.24393914929669047,1.350213865525877,0.0027883384883392475,0.002788330218551863,1,1,5.694402846292954,5.6943841940779 +204.598281576,40.77837272180967,29.43572545016369,1.8818441521,8,0.0,0.802960393356739,-7.703835353335353,0.24526940893256116,1.3309724907408327,0.2452807800066672,1.330946550345423,0.0021727093594116047,0.0021727053383158073,1,1,1.8417510066449587,1.8417400364315384 +204.899521816,40.77830636919474,29.43573194383615,1.8817717054,8,0.0,1.351134030427457,-15.07226833462939,0.24810451332616015,1.2958822111696309,0.24811584673205886,1.2958563212352916,0.0028652295959427855,0.002865225911769376,1,1,6.0520454908907,6.052025580769795 +205.199422249,40.778358504483926,29.435761023143193,1.8816986966,8,0.0,3.8059032018471934,-9.28266313001344,0.2568718498348227,1.2734060193474397,0.25688315987707905,1.273380181085959,0.00047808272809452186,0.0004780898091336187,1,1,2.9551095475088056,2.955094407271865 +205.49928223999999,40.7783568015815,29.435663129975637,1.8816259739,8,0.0,-4.457885070398794,-9.471769443258308,0.24527047315922867,1.250438929726502,0.24528175548610615,1.2504131371626612,0.0020385254857703122,0.0020385313366149726,1,1,3.3794254664445074,3.3794169087712245 +205.803761229,40.77835894701687,29.435841299754355,1.8815547173,8,0.0,10.58256513294014,-9.233513428021352,0.27081792923753434,1.2281893834203501,0.27082918519971844,1.2281636487053849,0.0005874238598157226,0.0005874436105371199,1,1,6.3064793707616715,6.30645888809057 +206.097554296,40.778380667037844,29.43571347553041,1.8814822892,8,0.0,-0.20789472279492985,-6.821520773180533,0.26961279079632855,1.211097581734601,0.2696240174976368,1.21107189994896,0.00024693086914119735,0.00024693908988721123,1,1,1.4551620161960965,1.4551531529720407 +206.398312373,40.77844295509433,29.435767650641473,1.8814102482,8,0.0,4.3653671765741,0.09554596338295307,0.2797860595446556,1.2086910914969689,0.2797972622088038,1.2086654639831715,0.0008731528797623991,0.0008731533231260074,1,1,0.632496289067472,0.6324916936303913 +206.699349346,40.77845373883361,29.43579538089578,1.8813377633,8,0.0,6.706251188459845,1.293077948612149,0.29563094308561094,1.2088883468975136,0.29564211982271676,1.2088627744124363,0.0011070372697940362,0.0011070372721405741,1,1,1.4889641788805865,1.4889590845387968 +206.999284107,40.778319600275324,29.435822013741873,1.8812652044,8,0.0,8.954514807220336,-13.602956502160982,0.3171282124449206,1.1774173345320016,0.31713936360385164,1.1773918112014086,0.0017960897154288972,0.0017960894260616266,1,1,7.601601945491832,7.6015780498104615 +207.298699728,40.77831952084952,29.435816613475684,1.881192827,8,0.0,8.498643555673432,-13.611777244737079,0.33725616415756965,1.1460935993139643,0.33726729057368027,1.1460681278309088,0.0017139696165660871,0.0017139675118824564,1,1,7.296983735020562,7.2969602986240165 +207.598680059,40.778447572320665,29.435704393136852,1.881119664,8,0.0,-0.9745963987378412,0.6082860076487185,0.33397687921794417,1.144938466861682,0.33398797338531566,1.1449130512337786,0.0014813121391488138,0.0014813148531486581,1,1,0.06849245035402093,0.0684928905451594 +207.898450543,40.778420196352826,29.43574891967143,1.8810471114,8,0.0,2.7841691908570794,-2.431804567599472,0.34010018234214634,1.1373874878905539,0.34011125673579057,1.1373621228868458,0.0021052330144859955,0.0021052365694081985,1,1,0.5020715128716163,0.5020654916349271 +208.199318161,40.77838683977396,29.435681318005436,1.880975015,8,0.0,-2.922515833882387,-6.136040157845907,0.3320203247784912,1.1219973188006103,0.33203136893776813,1.1219720068733139,0.001766187544559959,0.0017661873212098012,1,1,1.5650159740174434,1.5650103393291257 +208.503253991,40.77836239148464,29.435761148830714,1.8809018889,8,0.0,3.8165130662948474,-8.851013148049237,0.3406254491728051,1.10093016204679,0.34063646962201194,1.1009048959220957,0.001418921978211027,0.001418920742655081,1,1,2.6586213880302276,2.658607336232746 +208.803271343,40.77835150789018,29.43579207675972,1.8808315683,8,0.0,6.427338190420659,-10.059630439006732,0.3556145492725981,1.0773129132136992,0.35562554116867034,1.0772877036472186,0.001989674445937075,0.0019896718046142647,1,1,4.116871529285409,4.11685410317997 +209.103664681,40.778387484194006,29.435685246574995,1.8807570017,8,0.0,-2.590880275294716,-6.06447767580451,0.3483630865940661,1.0622589237739035,0.3483740531462246,1.062233763387323,0.001601763898840477,0.0016017624505604733,1,1,1.4519089550989024,1.4519032490686206 +209.40379154,40.7784472683364,29.435679090434643,1.8806865215,8,0.0,-3.1105564277392435,0.5745292564900835,0.33983498796130324,1.0611835505940521,0.3398459214286902,1.061158448168237,0.002141123369144472,0.0021411230761745788,1,1,0.43660275162343637,0.43660493721370885 +209.703375993,40.77843002085358,29.43576648945156,1.8806133166,8,0.0,4.267344663701926,-1.3407967141257542,0.3495080634641533,1.0561528385609267,0.34951897657563763,1.0561277847420574,0.00033764440122521246,0.0003376438682505258,1,1,0.6849003478866222,0.6848945569951421 +209.997105258,40.778351616073536,29.43561227756269,1.8805403553,8,0.0,-8.750663165426241,-10.047614336366124,0.3270952425831555,1.032664562661725,0.32710611667038203,1.0326395579199987,0.002667329790182831,0.002667333346968347,1,1,5.738410308470687,5.738405036436584 +210.30334163,40.778422007511686,29.435664255275864,1.8804696759,8,0.0,-4.362887015293894,-2.2306752893084236,0.31559441413130895,1.0258511154819943,0.3156052650772114,1.0258261647838138,0.0010720982938649988,0.0010721035308462721,1,1,1.030751265218347,1.0307512996744304 +210.601585775,40.778446468683384,29.435641732658063,1.8803967141,8,0.0,-6.264161075248447,0.4857300828240922,0.2994715163457035,1.0247032920796286,0.2994823370312899,1.024678392654886,0.0003292705332953426,0.00032926926762202733,1,1,1.5672141219578744,1.5672186664492282 +210.903689564,40.77838044585693,29.43580779443754,1.8803239167,8,0.0,7.754164641530924,-6.846078772845334,0.3177112716030369,1.0081592382464615,0.31772206963755995,1.0081343916996592,0.000372328338931491,0.0003723255508845647,1,1,3.3867073067988867,3.3866927375570737 +211.197593596,40.778355727743374,29.435695442212452,1.8802519148,8,0.0,-1.7302025292361611,-9.591019906378072,0.31270303129799404,0.9858633326508203,0.3127137981249447,0.9858385352542092,0.0006877670148789008,0.000687763069314713,1,1,2.6597830039996047,2.659772835578337 +211.503211169,40.77840679849157,29.435613685966292,1.880180298,8,0.0,-8.631763657648913,-3.9196275587843483,0.2908010552338997,0.9755092790668034,0.29081178507565103,0.9754845303378343,0.0007795984251452814,0.0007795910938480305,1,1,3.4214213593014247,3.4214228635376998 +211.797321869,40.77840063439097,29.435588406434256,1.8801084917,8,0.0,-10.76577003259499,-4.604145837457868,0.26362733234566077,0.9638679542219707,0.2636380451409334,0.9638432588799138,0.0013406559909924479,0.0013406448120028645,1,1,5.102110941769847,5.102113337222612 +212.099385157,40.778441986664575,29.435743609554578,1.8800366392,8,0.0,2.3359079275501182,-0.01199871924507621,0.26874583834120214,0.9618073617007162,0.26875652385585314,0.9617827151458631,0.0011711067092452256,0.0011711047684967008,1,1,0.1760669820472405,0.1760643053199722 +212.403669907,40.77837244455465,29.435645281308926,1.879963598,8,0.0,-5.964603784282201,-7.734622062046354,0.25338116630629404,0.9436021291477614,0.25339182780492814,0.9435775378807004,0.001705449456976182,0.001705447995240205,1,1,3.089435152713188,3.0894303857386918 +212.697466513,40.77844612375042,29.4356823811804,1.8798917325,8,0.0,-2.8327639576077392,0.4474232981645018,0.24589330735332515,0.9425594360673296,0.24590394108318908,0.9425348909371241,0.0014825559853933724,0.0014825570425944375,1,1,0.3488582370706723,0.34886006408874065 +213.003196686,40.77826855077544,29.435729490295046,1.8798177604,8,0.0,1.1440154255460053,-19.271989642530656,0.2480959574271672,0.9002478967351839,0.24810656522413166,0.9002233984115127,0.0011754777601980923,0.0011754762575273278,1,1,9.153781587802461,9.153758738214012 +213.303339171,40.77845818452313,29.435673510910124,1.8797470607,8,0.0,-3.581558552388763,1.786767946036047,0.23866360743935935,0.9020882865076997,0.23867418832986734,0.9020638451984344,0.0016440741043368297,0.0016440739405492672,1,1,0.546244968732761,0.5462488672896212 +213.59705765799998,40.77837703561215,29.43567411128646,1.8796750972,8,0.0,-3.5308813196154247,-7.224788400916581,0.22947382043703007,0.8851076291046,0.22948437636560165,0.8850832353179829,0.0004017136658760388,0.00040171492800196836,1,1,1.9870762962653528,1.9870703004522694 +213.902787418,40.778479754208696,29.43579117095744,1.8796038504,8,0.0,6.350861407089911,4.182075367268003,0.24440093811073002,0.8919878209378711,0.2444114691858706,0.8919634779477926,0.0021827865762801373,0.0021827865169682203,1,1,1.5935793442397947,1.5935782772705076 +214.203773851,40.778483400908904,29.43577723330713,1.8795305399,8,0.0,5.174297089933433,4.587039155346793,0.2564448349347204,0.8996918409739181,0.25645533919988345,0.8996675525538329,0.0014725590459507402,0.0014725584772920098,1,1,1.1810321370350199,1.1810324110979058 +214.497051272,40.778454503160276,29.43564835980683,1.879457653,8,0.0,-5.704721127191648,1.3779553010794385,0.24188445116545437,0.9007659740786604,0.24189493554034208,0.900741733224444,0.001027366218397106,0.0010273622425704268,1,1,1.2861548683570876,1.2861599046954992 +214.803362253,40.77838557518989,29.43567591343296,1.879386405,8,0.0,-3.378750221061697,-6.276471553064781,0.23304813614146436,0.8857473235754707,0.2330585889437945,0.8857231337684933,0.00012215410146270008,0.00012214988991926537,1,1,1.6228558687087353,1.6228508345070134 +215.101510066,40.778396177564396,29.435703401153187,1.8793140776,8,0.0,-1.058336786150073,-5.099082515104769,0.22990740886420413,0.8732765228470056,0.22991783784579928,0.8732523818952068,0.00032102695281996494,0.0003210286928577512,1,1,0.859951913711663,0.8599464213078403 +215.400480348,40.778319668971584,29.435730310809223,1.8792423982,8,0.0,1.2132794372457427,-13.595333122743991,0.23228750284391617,0.8431119105535515,0.23229790323579014,0.8430878175381807,0.0008214002740408642,0.000821400401743239,1,1,4.709502044315108,4.709485705289478 +215.700195633,40.77838539384375,29.435740772492284,1.879170182,8,0.0,2.0964154394749603,-6.296610447296364,0.23684290130383068,0.8282744479154339,0.23685327972856823,0.8282504021762941,0.0009208652681479901,0.0009208640933089808,1,1,1.263583659632485,1.2635745782678105 +216.00039672399998,40.778422182954984,29.43571347773916,1.8790983798,8,0.0,-0.20770813812256336,-2.211193659087466,0.23576536679890955,0.8218866235225036,0.23577570991494584,0.8218626256048317,0.0008330183928646998,0.0008330185019208339,1,1,0.21341197285098779,0.21340904092884155 +216.303182489,40.77839311113945,29.43567050466202,1.8790249538,8,0.0,-3.8353385390676835,-5.4396069441293875,0.22583119311567415,0.808912583675862,0.2258415176813205,0.8088886378999044,0.0013228084561967897,0.0013228075112026174,1,1,1.4729896900647947,1.472986018060252 +216.601523173,40.778362486944324,29.435691344458284,1.8789533762,8,0.0,-2.0761199618042343,-8.84041307768799,0.22022121372092862,0.788851246950562,0.22023151025810733,0.788827350260619,0.001115848239676063,0.0011158479068456022,1,1,2.27019809664218,2.2701894905999493 +216.900576054,40.77842335533913,29.43572740832561,1.8788814848,8,0.0,0.9682605899648489,-2.0810007762391103,0.22204550651637023,0.7829036130989705,0.22205578207959126,0.7828797640058777,0.0015653209725649357,0.0015653210649637975,1,1,0.20408896634742574,0.20408534773337564 +217.20010550199999,40.77844320053309,29.435665610116406,1.8788096413,8,0.0,-4.248515022005863,0.1228017791665142,0.21117322502410768,0.7815351228155039,0.2111834746359117,0.7815113219077767,0.0006544588133671373,0.0006544583832293143,1,1,0.7302241629040939,0.730226771772249 +217.503157429,40.77831048788778,29.435787432858607,1.8787370371,8,0.0,6.035320477838103,-14.614886678379492,0.22529598698629674,0.7496074038221213,0.22530621210513907,0.7495836567053407,0.0019174876872303291,0.0019174887218713515,1,1,6.516307197218631,6.5162865315139 +217.804135812,40.77847375875316,29.435749504558714,1.8786664764,8,0.0,2.833540943955305,3.516280076679321,0.23168448238239514,0.7553334226997278,0.2316946859065631,0.755309714716238,0.004403101232322932,0.004403101661528463,1,1,0.41616809571812413,0.4161691078883561 +218.103661013,40.77842204224407,29.435797856855274,1.8785955436,8,0.0,6.915265748492547,-2.226816328670205,0.24790271255873075,0.7491311154600964,0.24791288793731034,0.7491074602894359,0.0034159085273191944,0.0034159089610256627,1,1,1.8089655948038033,1.8089575228697228 +218.42945709399999,40.77844831776813,29.435838359063354,1.8785216395,8,0.0,10.334308755823217,0.6910748174929201,0.27249098502485203,0.7490615970212633,0.2725011466045575,0.7490379844872871,0.002856426575822525,0.00285642871071442,1,1,3.6676101772150513,3.667602708968356 +218.704153195,40.77845118312924,29.435632528849606,1.8784505215,8,0.0,-7.0411118697137525,1.009268239525499,0.2546848782581774,0.7495719912653616,0.25469500925385724,0.7495484300842672,0.0012452048957170376,0.0012452049414761034,1,1,1.9297683994378938,1.9297740295307428 +219.004181954,40.77846708713197,29.43575428047271,1.8783779322,8,0.0,3.2367060067776388,2.7753991883484987,0.261902193665769,0.7537833217542098,0.2619123073608072,0.7537598111379874,0.00041496323085915055,0.0004149597203301749,1,1,0.41222123709942954,0.41222118895097737 +219.303729822,40.778367834075205,29.435776657759313,1.8783046769,8,0.0,5.125720392402699,-8.24661470920742,0.27374324571074693,0.7351755978696879,0.2737533303203073,0.7351521320225627,0.00028236796983608894,0.00028235076343754935,1,1,2.6617643884406834,2.661751391850088 +219.597420878,40.7784269744315,29.435733306699685,1.8782330943,8,0.0,1.466179493282298,-1.6791018352717515,0.27661519959276815,0.730217132757474,0.276625266693518,0.7301937151642636,0.0005412944530720926,0.0005412867678774667,1,1,0.1814246371571146,0.18142123931246742 +219.898670907,40.778397727667105,29.435745846127173,1.8781613733,8,0.0,2.524712759719399,-4.926943833072522,0.28210801078258935,0.7184877456134358,0.28211804239026256,0.7184643752876272,0.0011030116922565493,0.0011030050187450788,1,1,0.8968399605732542,0.8968324139847599 +220.203290468,40.77836531809471,29.435744826934403,1.8780903537,8,0.0,2.4386774179246227,-8.526014775389381,0.2873161203234197,0.6994520218933508,0.28732613555540587,0.6994286970697008,0.0011669345903467187,0.0011669285915601594,1,1,2.07608823673764,2.0760770259616677 +220.504153178,40.778302214164725,29.43579785626807,1.8780177716,8,0.0,6.915228604514771,-15.533679752963492,0.30335515083666464,0.66600026320427,0.3033651456972723,0.6659769819832451,0.0010449729825189344,0.0010449675485216577,1,1,7.468173979195554,7.468152279172194 +220.798015042,40.778391907513154,29.43574959581245,1.8779451737,8,0.0,2.8412477292521365,-5.573269643437831,0.3095355064979058,0.6530727031526301,0.3095454692293621,0.6530494714832739,0.0015546615234802398,0.0015546570290498455,1,1,1.1014779764607905,1.1014696623367997 +221.103546626,40.77836981508313,29.435701605783617,1.8778740963,8,0.0,-1.2098958033891969,-8.026626194176503,0.30585892054515135,0.6352292276182685,0.30586886317326556,0.6352060389931562,0.0013238140340414263,0.0013238107714031474,1,1,1.765584736693717,1.7655768212964233 +221.396133767,40.778395938382054,29.435775561612623,1.877802873,8,0.0,5.03318553375068,-5.125641990484539,0.31730644057619867,0.6232955960420693,0.3173163515295861,0.6232724599873054,0.0018237127541247862,0.0018237079899479256,1,1,1.5467332000039116,1.5467238491678725 +221.704136968,40.77837962605595,29.43571300869773,1.8777299475,8,0.0,-0.24730304396588826,-6.93712142130582,0.3159346049049901,0.6077738093605097,0.3159444952259833,0.6077507162268918,0.0015216827495664665,0.0015216809937599227,1,1,1.2879359066207903,1.2879284967111335 +221.998018709,40.77840338688656,29.435728676249507,1.8776586907,8,0.0,1.0752943703951896,-4.298489976430463,0.3177732347323761,0.5976400552398713,0.31778309763657936,0.5976170145355908,0.0019991794559796054,0.0019991779271038013,1,1,0.5583167316646561,0.5583111313662621 +222.30374358699999,40.77833408727785,29.435736510919863,1.8775857121,8,0.0,1.7366703462573105,-11.99418550577267,0.32120002625148636,0.5717875811830391,0.32120986773760946,0.5717645822348045,0.0016679250557948132,0.0016679243372727172,1,1,3.6132614483144097,3.6132474790840616 +222.60367732,40.77840936575174,29.435803838115056,1.8775161632,8,0.0,7.420183057765079,-3.6345355874180365,0.3383501682201864,0.5631357014282342,0.33835998430098846,0.5631127455510586,0.0013344749995741348,0.001334476075821044,1,1,2.211893546337456,2.211884188972653 +222.903126649,40.77839298314996,29.435795662109285,1.8774429472,8,0.0,6.729996316474193,-5.453818063950935,0.3538091538175515,0.5507997094542423,0.3538189530546453,0.5507768061844004,0.001783305589446969,0.001783307719106125,1,1,2.281248454112022,2.2812377602991654 +223.19716947,40.778453878089145,29.435812276464254,1.8773712475,8,0.0,8.132512092899734,1.3085436517097895,0.37256521659280833,0.5523542533721426,0.3725749927181339,0.5523313941746624,0.0014396150448015307,0.0014396144925120254,1,1,2.1941981969774798,2.1941934764370297 +223.504094339,40.77844719712638,29.435594663525315,1.8772983478,8,0.0,-10.237562156522694,0.5666278340824447,0.3469832109168459,0.5524094215121562,0.34699296739602364,0.5523866073420937,0.001117547362966183,0.0011175472810279266,1,1,4.058419430573946,4.0584269279173695 +223.79747769899998,40.77840687113963,29.43568975246989,1.8772273059,8,0.0,-2.21050840115362,-3.9115647197618473,0.34079764031249576,0.5432391627506332,0.34080736540118,0.5432163985131034,0.001519111762300173,0.001519112569695895,1,1,0.6807858016884525,0.6807830516461899 +224.103079004,40.778394052664005,29.435705760387044,1.8771545424,8,0.0,-0.8591789121631639,-5.335051936707622,0.33791368491237783,0.5312090427035483,0.3379233888034765,0.5311863226843865,0.0012034535038688424,0.0012034540521141713,1,1,0.8235501298917233,0.823544994581468 +224.403159232,40.77839176466972,29.435759434800573,1.8770846922,8,0.0,3.671819214949249,-5.5891319877186625,0.34593383321634436,0.5186568081068292,0.3459435091114921,0.5186341365240598,0.0015863149775842576,0.0015863147331946152,1,1,1.2371951954134424,1.237186654213223 +224.704340142,40.77839923750462,29.43574964308012,1.8770117664,8,0.0,2.8452375809780146,-4.759276823161542,0.3519474253056418,0.5078732377408789,0.3519570810350564,0.5078506120575461,0.0012802486025565206,0.0012802478313579048,1,1,0.8472674553274746,0.8472603669200368 +225.004250797,40.778397264489,29.43579464220671,1.8769408685,8,0.0,6.643899436698957,-4.9783770386183175,0.36707894741706565,0.4966451019060154,0.36708858034200526,0.4966225229591826,0.0009946219506710248,0.0009946214460473423,1,1,2.099357432257814,2.099347508272279 +225.304189007,40.77843657596619,29.43584761264241,1.8768677077,8,0.0,11.115463432284622,-0.6128467862840316,0.3930180568979333,0.494380916754208,0.39302766821805474,0.494358380709231,0.0013658301749417193,0.0013658296059215625,1,1,4.192333383947309,4.1923247993960295 +225.59740471199999,40.7783906897843,29.435759579990993,1.8767964801,8,0.0,3.6840757200762737,-5.708497605831223,0.4009254307498998,0.48168328829424667,0.40093501580708363,0.48166079464271133,0.0010530265636902309,0.0010530296100101746,1,1,1.24967485089353,1.2496663269424313 +225.89871691,40.77836714017492,29.435830635865898,1.8767243522,8,0.0,9.682356944726234,-8.323667520590407,0.42331241209868226,0.46374600673006505,0.4233219821684394,0.4637235613879624,0.0013961478057345472,0.0013961534806236524,1,1,4.837038924053677,4.837023660118792 +226.198442427,40.778377961394916,29.43578683669042,1.8766521772,8,0.0,5.98498801732467,-7.121978994178274,0.43665418771942593,0.4482671158819105,0.43666373492766375,0.4482447129115671,0.0011206201341520494,0.0011206177396581082,1,1,2.400166747964662,2.400155305113844 +226.504401759,40.778455578551075,29.435805482441257,1.8765819934,8,0.0,7.558985800791426,1.4973787094342723,0.453767878362788,0.45040703294794987,0.45377740626725405,0.45038467374840185,0.0008677844568407685,0.0008677818830154794,1,1,1.853365209653578,1.8533613551824653 +226.804354344,40.77840586665935,29.435656930173586,1.8765093203,8,0.0,-4.981246349347886,-4.0231105357091534,0.4407456099573461,0.44128360605558,0.44075511043386045,0.4412612951121733,0.0011492316982397613,0.001149230831977195,1,1,1.5118463963518751,1.511845661892681 +227.097996913,40.778399300716465,29.435851096096062,1.8764379346,8,0.0,11.409530060263748,-4.752248929384701,0.4670829570577403,0.43069438817791394,0.46709243624247243,0.4306721200871195,0.0009085388829871122,0.0009085394215784832,1,1,4.939807936320388,4.939795246739859 +227.398579071,40.77842418506909,29.435744812999804,1.8763666146,8,0.0,2.4374989572380965,-1.988859234277475,0.4718605369328504,0.42578556629431175,0.4718699947640189,0.42576334632661905,0.001194601986361658,0.001194603456095746,1,1,0.27069939198635856,0.27069563906136307 +227.698686455,40.77838093477489,29.435751210296182,1.8762948019,8,0.0,2.9775370450964163,-6.791788077795425,0.4778572545537739,0.41108783291466827,0.4778666894226148,0.41106565414173685,0.001015877644940646,0.0010158794146575367,1,1,1.3896625850006106,1.389653712560238 +227.998105586,40.77844006161899,29.435747827370694,1.8762229577,8,0.0,2.6919603854108027,-0.22577419345831803,0.483219039006137,0.40982760347916886,0.483228458506454,0.409805466192743,0.0036772865978491,0.0036772870553572487,1,1,0.18578388643067778,0.18578174814783976 +228.304100355,40.77838158337719,29.43572817037182,1.8761506379,8,0.0,1.0325903670655676,-6.719761560400556,0.48450605075565784,0.39531239954349495,0.4845154427650548,0.3952903093172053,0.0018940334669063068,0.0018940337722954325,1,1,1.1460068418607259,1.1459994206809965 +228.59732469099998,40.77841090645134,29.435743193591538,1.8760786939,8,0.0,2.300794944785008,-3.4634448310360186,0.48883959609060545,0.38744644590136684,0.4888489615623264,0.387424403126646,0.001863030144245177,0.0018630303504581474,1,1,0.4514437556825902,0.4514387196929251 +228.90359085699998,40.77833628761098,29.43581430235011,1.8760087463,8,0.0,8.303544468258826,-11.749834883422848,0.5076441278195517,0.3628383254426046,0.5076534826663395,0.3628163146585743,0.004531565752348692,0.0045315673928665616,1,1,5.491368620548629,5.4913513818057496 +229.195924064,40.77845085039007,29.43569420934831,1.875935546,8,0.0,-1.834273861617139,0.9723145583862798,0.5019837604948567,0.36405158917637903,0.501993084874263,0.36402963129536536,0.0029607829533504063,0.002960782866922423,1,1,0.2060143413896089,0.20601651865539042 +229.504060475,40.77838964238319,29.43584432106984,1.8758649896,8,0.0,10.837608700205054,-5.824804094353463,0.526769867786306,0.3514991904220666,0.5267791722616677,0.3514772698687932,0.0015268726368444186,0.0015268736325696132,1,1,4.706510507929912,4.706497486905225 +229.797861234,40.778411991829124,29.43572445627887,1.8757935513,8,0.0,0.7190598151621108,-3.3429143559114953,0.5272408591703609,0.34403232949253904,0.527250145879101,0.34401045432351907,0.0011157457677046052,0.0011157462285645578,1,1,0.3061337402689645,0.3061299944272008 +230.098667492,40.77840910129859,29.43574253217183,1.8757215072,8,0.0,2.2449603824078466,-3.6639063883482827,0.5313558251990035,0.335925025785251,0.5313650926093707,0.33590319276028324,0.0013261958871958438,0.001326195786732683,1,1,0.4650991179879995,0.4650940513260493 +230.403682002,40.778473251524595,29.435669768835325,1.8756507842,8,0.0,-3.8974496587436973,3.4599530162700236,0.520746255593776,0.3422468319132319,0.5207554986831923,0.3422250415859963,0.003884248656791716,0.0038842486408231045,1,1,0.9250717002185709,0.925077705667198 +230.69619139899999,40.77842355473847,29.43569655570499,1.8755789744,8,0.0,-1.6362038370302265,-2.05885743659348,0.5155774685064782,0.3373860811083143,0.5155866890140549,0.3373643401729151,0.0024929717229173424,0.0024929713189531647,1,1,0.2964745406408715,0.29647364189007747 +231.004029186,40.778392815171884,29.435643100100403,1.8755056086,8,0.0,-6.148731624312092,-5.472472473273146,0.49965140787688617,0.3256056203509687,0.4996606011963245,0.32558392374649375,0.0012360086990778083,0.0012360072864465179,1,1,2.354946650327664,2.3549454375656556 +231.304340343,40.7784537161567,29.435749479379794,1.8754371465,8,0.0,2.8314162852037197,1.2905571903255144,0.5052130413526893,0.3275921729529241,0.5052222181752748,0.32757051189337405,0.003683531007394035,0.003683529096457823,1,1,0.21681169556112603,0.21681108444059957 +231.603677679,40.77845302229531,29.4356463548844,1.8753641771,8,0.0,-5.873969335317464,1.2135059292583292,0.48997232808608354,0.3293688008433546,0.4899814799854155,0.32934718905014415,0.00296231071446397,0.0029623093939361955,1,1,1.4846110799886885,1.4846161567753506 +231.903411922,40.77841899030643,29.435716112683778,1.8752920436,8,0.0,0.014724171444929617,-2.56573609469621,0.48880165197587966,0.32355010759388375,0.48881078386318305,0.3235285312366862,0.002408108342291109,0.0024081072175382635,1,1,0.19532210426119614,0.1953196223360257 +232.203139158,40.77837529679758,29.4357550618519,1.875221561,8,0.0,3.30267165824727,-7.4178832153553635,0.49554228932684086,0.3079202270258848,0.49555140116606233,0.3078986958639054,0.0009438500024228905,0.000943852503499951,1,1,1.6237862356151964,1.6237769231434283 +232.504048445,40.77851423848855,29.43569903783948,1.8751490776,8,0.0,-1.4266692590079033,8.01153925997167,0.49097120465272326,0.3234681739574492,0.4909802983715896,0.32344668648389957,0.0002342992122339536,0.00023430826340894954,1,1,1.4585042107472483,1.4585128825774287 +232.797975695,40.778475965455186,29.43566570244591,1.8750779507,8,0.0,-4.240718824341382,3.761334188922853,0.4796341762988815,0.3304013356372666,0.4796432407476237,0.33037989260619816,0.00042492979245214367,0.00042494295140992793,1,1,1.0710823317704254,1.0710887310779245 +233.103650475,40.778387404135344,29.43571757075883,1.8750074655,8,0.0,0.13780956278075496,-6.073368611840325,0.4788480514910764,0.3175131416471701,0.47885710040680113,0.3174917386568901,0.0006871361814493176,0.0006871437317332498,1,1,0.9200087027399855,0.9200027925144351 +233.397409996,40.77843612958158,29.435619903931684,1.8749357989,8,0.0,-8.106862258083325,-0.6624215356757726,0.45828125524430335,0.3155043210346894,0.4582902693829876,0.3154829651760167,0.0012813636529060552,0.001281375031648689,1,1,2.678931705763391,2.6789363633593726 +233.698994417,40.77844858554569,29.435617140963426,1.874864594,8,0.0,-8.340100245056366,0.720808901976751,0.4373488966640236,0.31633362861440023,0.43735789268108094,0.3163123136238784,0.0012708930777778325,0.0012708991096932298,1,1,2.79452256743672,2.794528675327712 +233.999009825,40.77841274285302,29.435704151348613,1.8747928933,8,0.0,-0.995007782319349,-3.25951340006702,0.433814837458973,0.3091338185328807,0.4338238054815091,0.30911255009130884,0.0018259253829114844,0.0018259301558834888,1,1,0.35950503985825927,0.3595025646129588 +234.303976399,40.7783503798036,29.435802382801214,1.8747202999,8,0.0,7.297337260003907,-10.184903224593082,0.4502469750399182,0.28801907921008524,0.4502559263589258,0.28799784972494846,0.0016243893103530806,0.0016243896806059678,1,1,4.157593585452564,4.157579175392518 +234.603464756,40.7784270850753,29.435612640346,1.8746495159,8,0.0,-8.720028435097229,-1.6668098928948964,0.42843728315047797,0.28406945813666634,0.42844620909024705,0.28404826731422417,0.0013874601048478358,0.0013874595518569332,1,1,3.117102702233297,3.117106765019213 +234.89729492,40.77839962816219,29.435701528622516,1.8745782347,8,0.0,-1.2164089198976125,-4.715894893201043,0.4244251439938552,0.27404693693136617,0.424434051446473,0.27402579491468754,0.0018998424521913537,0.001899841544094713,1,1,0.6558264445389937,0.6558227726123061 +235.198597898,40.778400420256,29.435698638274424,1.874507348,8,0.0,-1.4604015139575655,-4.627933127461411,0.41998376610540983,0.26419199352737066,0.41999265097788985,0.26417088951124185,0.0015702710827482753,0.0015702712911253541,1,1,0.6647063082330129,0.664702888907038 +235.498969058,40.77838975015607,29.43561887182916,1.8744351933,8,0.0,-8.193994228674011,-5.812839353743999,0.3993610861113906,0.2519760638782689,0.3993699471544582,0.25195500765859924,0.002093634669633845,0.0020936351996029305,1,1,3.499742148538569,3.4997419392137417 +235.799091187,40.77837845929551,29.435656962999836,1.8743633442,8,0.0,-4.978477323920296,-7.066688064070396,0.38662847854851123,0.23729948171722204,0.3866373184728727,0.2372784631116545,0.001746486563305214,0.0017464823480283856,1,1,2.2388627132547225,2.2388592652657224 +236.10398003,40.77850912024744,29.4357399526365,1.8742930644,8,0.0,2.027202437584888,7.443160623498868,0.3905679724892619,0.2517115469978379,0.39057678583331773,0.25169056878076934,0.0014057668691371415,0.001405765118276658,1,1,1.2566215785527708,1.2566272990774303 +236.397326058,40.77843445595672,29.435708243441983,1.8742209728,8,0.0,-0.6495680872748898,-0.8482813614142438,0.3880203983083142,0.24959027717305768,0.38802920036577176,0.24956934694712937,0.0018541225874657075,0.0018541212298111296,1,1,0.0660242763317793,0.06602390756716243 +236.698585542,40.77840860320651,29.435713912952394,1.8741497953,8,0.0,-0.17096907660589777,-3.7192196674240585,0.3867249690440747,0.24159212104667166,0.3867337445334647,0.24157122929959843,0.0014840419937159476,0.0014840411041627006,1,1,0.3630216543439458,0.36301829823664866 +236.998413456,40.77842819531521,29.435744197206446,1.8740787669,8,0.0,2.385515810835463,-1.5435229137516973,0.3914382187543028,0.2380878369087016,0.3914469827107148,0.23806699125144423,0.001910855942672248,0.001910856224415803,1,1,0.21521030041531547,0.21520736890806544 +237.298380818,40.77838573721162,29.43570019023753,1.8740076051,8,0.0,-1.3293907606596405,-6.258479750380181,0.3873723507529732,0.22503987962271027,0.38738108952579525,0.2250190695417036,0.0013867365681161086,0.0013867362519934248,1,1,1.0492880772240585,1.049283113878421 +237.5990186,40.77839705819594,29.4356097754345,1.8739358096,8,0.0,-8.961877718215874,-5.001283363589881,0.3651859054168521,0.21457017200640782,0.3651946187907955,0.21454940376501225,0.0026741553562430803,0.0026741541779906615,1,1,3.7612593912875614,3.7612604222011075 +237.89849733399998,40.77838547660966,29.435742218272026,1.873864917,8,0.0,2.2184628993943853,-6.287419289465436,0.3695454892137715,0.20157935882180508,0.36955418909352566,0.20155862615617468,0.00516354321741951,0.005163542273364852,1,1,1.0679504252549497,1.0679432270800802 +238.20341391099998,40.77838385940646,29.435733984917754,1.8737925043,8,0.0,1.5234331427479744,-6.467009276314225,0.37229123129570957,0.18823486333504408,0.37229990542947067,0.1882141761408525,0.0032447467387313514,0.003244746346615678,1,1,1.0411128277963304,1.0411059305899577 +238.49739267799998,40.7784435902442,29.43570882838341,1.8737215641,8,0.0,-0.6001894157997919,0.16607785855090001,0.36999230829818164,0.1882207591252488,0.3700009703779877,0.18820010465145215,0.0027468699839592907,0.002746868970644,1,1,0.03410701572986012,0.03410760407871765 +238.802973632,40.778475651933356,29.43562087456319,1.8736508429,8,0.0,-8.02492038636351,3.7265208400471947,0.350059733898819,0.19527116970710065,0.3500683681028226,0.19525056234645966,0.001093646276526255,0.0010936484030636886,1,1,2.820351169492799,2.8203596720676343 +239.10404558599998,40.77836639924333,29.43566490063175,1.8735783027,8,0.0,-4.308412043775845,-8.405952773698434,0.3390235247041952,0.1781159389836183,0.339032140760666,0.1780953726747021,0.0002912945423452659,0.0002913042996820027,1,1,2.434556839780899,2.434551824419483 +239.404060208,40.77849545990445,29.435617323728852,1.8735091917,8,0.0,-8.324666015882116,5.9261890037082665,0.3184246228714701,0.1895661996686892,0.3184332111420105,0.18954567317665177,0.000396322169002088,0.0003963362962450848,1,1,3.4439119524227064,3.443922611238587 +239.703371632,40.77846789741666,29.43575255732999,1.873437127,8,0.0,3.0912447123014064,2.8653809396741172,0.3250361762324606,0.19490228010880148,0.3250447466215922,0.19488179481705703,0.0006776769965690713,0.0006776793082823395,1,1,0.4370805794112408,0.437081315126539 +240.00339100899998,40.77843244692648,29.43569479232553,1.8733647808,8,0.0,-1.7850615882608711,-1.071383235020676,0.3200425204105677,0.19238923355483575,0.32005107409286854,0.19236878855515435,0.000725017251185917,0.0007250191618282185,1,1,0.19633419389727108,0.1963343398089642 +240.303458012,40.7783535087132,29.435604609836872,1.8732944535,8,0.0,-9.397944726077357,-9.8374366156276,0.2969791103640811,0.17239630989805996,0.2969876369191199,0.1723759059002743,0.0012733485173187552,0.0012733521235690772,1,1,5.651309367529483,5.651306198518668 +240.603941376,40.778442121209686,29.43565622425751,1.8732243347,8,0.0,-5.040834455018314,0.002943812564574763,0.2843534506362698,0.1720727411116501,0.28436195957574784,0.17205237858614275,0.0011439822296616742,0.001143985100250409,1,1,1.0278598175169764,1.0278629459929205 +240.90407771,40.778400069265366,29.435766577948222,1.873152452,8,0.0,4.274817144821004,-4.666909416670184,0.29377052981110086,0.16241104491675104,0.29377901263582973,0.1623907215990095,0.0016484385068043525,0.001648439502695151,1,1,1.0970265892564293,1.097019741589182 +241.196263715,40.77847797284255,29.435691866214874,1.8730817211,8,0.0,-2.0320716359174584,3.9842528750361765,0.2882676753082723,0.17002044270972785,0.2882761392633683,0.1700001618103296,0.0014066821825869339,0.0014066814796138524,1,1,0.5212246402274606,0.5212295320248358 +241.502943265,40.77841183355128,29.435706682365904,1.8730098256,8,0.0,-0.7813486152532915,-3.360491044933594,0.28576153822897016,0.16295083525664475,0.28576997520463004,0.16293058968814308,0.0011541846321987993,0.0011541845040398155,1,1,0.31960390736283056,0.31960136084278223 +241.803949827,40.77844241202139,29.435726469274524,1.8729379106,8,0.0,0.8889891068396545,0.035236682803650374,0.28716363205574275,0.1627601483036626,0.2871720563502388,0.16273994678023743,0.001639689500302884,0.0016396907694606077,1,1,0.013484627078132914,0.013484144263815293 +242.097732219,40.778393239721154,29.435683573181016,1.8728672241,8,0.0,-2.7321418634602956,-5.425328483399784,0.2800762343640178,0.1516118775587248,0.28008463213148305,0.15159170615794315,0.0013407039341971497,0.001340704798287733,1,1,1.0260323160670748,1.0260291042621084 +242.398553786,40.77837912866129,29.43570941049786,1.8727956901,8,0.0,-0.5510500082140086,-6.992356896448742,0.2780183959507024,0.13748524665295903,0.2780267839190971,0.13746512989600812,0.0017980100018136242,0.0017980099169625774,1,1,1.1646889599187793,1.1646830321155817 +242.703429107,40.77846731217525,29.435790324489282,1.872726425,8,0.0,6.279406918921143,2.8003921152300366,0.29224690771817263,0.14275679417177292,0.2922552741430168,0.14273671022300133,0.0014325390915051446,0.0014325402282996376,1,1,1.4568368227490827,1.4568355875771573 +243.00344599,40.77833925426742,29.4357128021649,1.8726537721,8,0.0,-0.264737955324262,-11.420393446819183,0.29090354234053667,0.11986141160616692,0.29091189726641986,0.11984136872456841,0.0010911931229564003,0.001091191322196265,1,1,2.99721232065589,2.99720228529642 +243.303922716,40.77837506227821,29.43564414947851,1.8725817324,8,0.0,-6.060148567879667,-7.44392476051157,0.2759145442372441,0.10479755576858026,0.2759228707763977,0.1047775503925018,0.0014817604471938613,0.0014817629096017804,1,1,2.7318667395836176,2.7318637902154714 +244.20499095899999,40.77847556204007,29.43558942459408,1.872440186,8,0.0,-10.679808706289874,3.7165415773154544,0.24992577518693823,0.11199131780420217,0.24993408179422194,0.1119713536186585,0.003254291335348077,0.003254292577564968,1,1,4.618589242647213,4.61859904790043 +244.205245705,40.77840490942533,29.435617691840754,1.872440186,8,0.0,-8.293602662636495,-4.129408046756472,0.22971131101208864,0.10357198717521364,0.22971959650513388,0.10355206198023104,0.0032606901721407267,0.00326069233093294,1,1,3.033286911517838,3.0332882460750414 +244.504277957,40.778450612809635,29.435679526692216,1.8722991805,8,0.0,-3.0737290311828485,0.9459317504609521,0.22187420632227514,0.10522087709563362,0.22188246903741535,0.10520099764710476,0.0016374420908489803,0.001637442617053803,1,1,0.40927169243049105,0.4092744147456847 +244.803869763,40.778445657317974,29.435558649609035,1.8722270044,8,0.0,-13.277723349832824,0.3956375104070018,0.18992627447661095,0.10580313781131959,0.1899345147435841,0.10578328978037335,0.001116081797011459,0.0011160797883800794,1,1,6.572043532544761,6.5720518316207635 +245.103862302,40.77837630397565,29.435747570182325,1.8721555779,8,0.0,2.6702520504971368,-7.306036721570807,0.19578031638930782,0.09110473286345643,0.19578853746363115,0.09108492874389593,0.0012738469544812227,0.0012738465616716993,1,1,1.4486438353546107,1.4486357926166498 +245.397823819,40.778378103493196,29.435602319252673,1.8720849076,8,0.0,-9.591304060312156,-7.106195240257439,0.1726480011645227,0.07684305099056525,0.172656203537917,0.07682327066663353,0.003619378099113752,0.003619378219122315,1,1,4.610230247757278,4.610229679251928 +245.698597951,40.77835859734691,29.435643182747633,1.8720137163,8,0.0,-6.141757997750772,-9.272349161035171,0.15774354654871262,0.05834077974269533,0.1577517288398058,0.05832104343202901,0.004209504953159402,0.0042095065500930605,1,1,3.3895276500258595,3.38952312686543 +245.998403455,40.77841322954978,29.435731270122513,1.8719427325,8,0.0,1.294259436735146,-3.20546586023553,0.1603908091391098,0.051817526655754696,0.16039897042763906,0.051797817636485555,0.006551395515755127,0.0065513969481485225,1,1,0.2844600105094002,0.28445646133517183 +246.303297803,40.77831467461996,29.435681408649106,1.8718727984,8,0.0,-2.914867179408103,-14.149953525091448,0.1531520353229044,0.023744148523841612,0.15316017871343918,0.023724481119632036,0.006225127545002551,0.006225129543478679,1,1,4.84526832693582,4.845257637350572 +246.603164948,40.7784162648881,29.43567465604433,1.8718007034,8,0.0,-3.4848927874030373,-2.8683919644822686,0.14453603816997793,0.0180525780355542,0.14454416270121476,0.01803295931751752,0.005365056562129279,0.005365058492509264,1,1,0.6639666650638633,0.6639662620913956 +246.90388537799998,40.77843858266533,29.435694306987973,1.8717304153,8,0.0,-1.8260318209931452,-0.39001171075255,0.1399305853438995,0.017193050611596167,0.13993869008234386,0.017173449408393823,0.007559666145381732,0.007559667919777099,1,1,0.1437221283358415,0.14372292479344312 +247.197835847,40.77848328052397,29.43556796652423,1.8716597563,8,0.0,-12.491216950529822,4.5736791808334765,0.11010929232098318,0.026217452979995205,0.1101173749116814,0.0261979026240672,0.004379911598730591,0.004379911694107097,1,1,6.215698399433934,6.215709765964963 +247.503379437,40.77838528512769,29.43560597036657,1.8715874178,8,0.0,-9.283089283552398,-6.308677803385986,0.08797659407980049,0.013679227336722386,0.08798465181003981,0.013659714189731092,0.0021064912710073037,0.002106490130029314,1,1,4.077245464633409,4.077245403542634 +247.795757596,40.77839631543211,29.435659858914736,1.8715161823,8,0.0,-4.734013436999648,-5.083770920266028,0.0765555767476564,0.003631311586212887,0.07656361903197216,0.0036118324258768812,0.0012617734693012297,0.0012617697965548779,1,1,1.4185657182610356,1.4185640774971569 +248.103856684,40.778409259122895,29.435597565924084,1.8714461139,8,0.0,-9.992558130899715,-3.6463736571873335,0.05286313365677662,-0.0035876215727629196,0.05287115251132625,-0.0036070658309780967,0.00033835774519238654,0.0003383456021641194,1,1,3.9528391848687052,3.9528418450483285 +248.397820831,40.77848239711899,29.43564397924845,1.8713748124,8,0.0,-6.074508994459558,4.475569341576192,0.03830860058037832,0.005283363118115839,0.03831660412488014,0.005263963611543612,0.0009250200655124288,0.0009250171441026272,1,1,1.8015977213350336,1.8016051548275729 +248.698864305,40.778449121426775,29.435650327460717,1.871304333,8,0.0,-5.538619568690952,0.7803156710618457,0.025235806373473543,0.006789658919205244,0.025243788417191514,0.006770292132289762,0.0008166519818114456,0.0008166481814868844,1,1,1.134761676222841,1.1347655656054616 +249.003253358,40.778401592189496,29.435635784887655,1.8712327231,8,0.0,-6.766254294039242,-4.497787402770968,0.009261690929049982,-0.0020973430632929713,0.009269651444605391,-0.0021166719925164905,0.0016803334529892544,0.001680331651354018,1,1,2.1160801847889807,2.116080195993258 +249.297607967,40.77836436294798,29.43574442742413,1.8711623371,8,0.0,2.404952238881516,-8.632083473774246,0.014828485007690757,-0.019079830712557207,0.014836430428532693,-0.019099119276085853,0.0007955249629929528,0.0007955229668434082,1,1,1.8702190011554347,1.87021017587231 +249.603289926,40.778454572216745,29.43567872017082,1.8710905314,8,0.0,-3.141812378911433,1.385622465309221,0.007398732950969863,-0.016304149463934443,0.007406661470602816,-0.016323398906181733,0.00023325397475688623,0.00023325665241297837,1,1,0.40331109940374593,0.4033141184859223 +249.902843103,40.778404495728346,29.435694704356546,1.8710209889,8,0.0,-1.7924883552586288,-4.175353369986468,0.003146402051389073,-0.024506736760377443,0.0031543075544205644,-0.02452594870074622,0.0011307285289632134,0.0011307290115006954,1,1,0.5031005425258587,0.5030979950343001 +250.195721409,40.7784431153487,29.4356744197365,1.8709505328,8,0.0,-3.504839613870402,0.11334169488701473,-0.0050996870845134434,-0.02421487761306955,-0.005091796464637059,-0.02423405229459952,0.0014404263362057421,0.001440426935727799,1,1,0.4440923407070843,0.44409445967736666 +250.498857735,40.77834877863698,29.43572427444866,1.8708791288,8,0.0,0.7037110438853348,-10.362715740923027,-0.0034482312443966704,-0.04462294850334583,-0.0034403702694663597,-0.044642082094654326,0.002350255847173166,0.002350254279832207,1,1,2.4051350926063626,2.4051258373697033 +250.8032682,40.778366948425,29.43572488684224,1.8708074397,8,0.0,0.7554069034873657,-8.344967568844256,-0.0016523500104647171,-0.06090283962593708,-0.0016445010940888951,-0.06092193889750966,0.002290008152475706,0.002290005303825048,1,1,1.5594221701637554,1.5594146450052597 +251.097331104,40.77834036154527,29.435653676100838,1.870736261,8,0.0,-5.255948402656929,-11.297428795538153,-0.013982498616907316,-0.08296420170684357,-0.01397466654744608,-0.08298327164781473,0.0010420031816564138,0.0010419996088572097,1,1,3.8151052675485606,3.815098652534113 +251.403508599,40.778375049826494,29.435772235730493,1.8706674254,8,0.0,4.752428205349595,-7.4453084732126715,-0.00279950994102221,-0.09749003691255086,-0.0027916982389006462,-0.09750906243674079,0.0011516634566688811,0.001151659473214364,1,1,2.029608033268786,2.029599073694986 +251.702841875,40.778395630938384,29.435755666721537,1.8705953509,8,0.0,3.3537315362683686,-5.159784446206371,0.005094034692140776,-0.10740845468470851,0.005101828229148333,-0.10742744717609837,0.002493712788081112,0.002493712802929661,1,1,0.978512239185149,0.9785060457450021 +251.995891298,40.77835838275788,29.435725864131008,1.8705243305,8,0.0,0.8379061937192552,-9.296181692864028,0.007078356359036958,-0.12548477359970317,0.007086137088718185,-0.12550372869845042,0.004532567334811822,0.0045325679268532594,1,1,1.9106502486681254,1.9106419856509327 +252.303959259,40.77834355693214,29.435658735691373,1.8704527201,8,0.0,-4.8288356690063985,-10.942582569448096,-0.004298117227107738,-0.14669328208876548,-0.004290358392081082,-0.14671220308529176,0.004790854027597281,0.004790854339411236,1,1,3.456325514525482,3.4563190670634345 +252.597659952,40.77843104524323,29.435733376673415,1.870382508,8,0.0,1.4720863272242444,-1.2270397071627486,-0.0008332028891615269,-0.14881330920490543,-0.0008254663614476296,-0.14883219292664124,0.0042971121848921654,0.004297112393791256,1,1,0.10465138974262836,0.10464965120491575 +252.89827935899999,40.77841918020328,29.43565510190179,1.8703111512,8,0.0,-5.135581325244578,-2.5446463394042085,-0.012884209569810956,-0.15350966228045035,-0.012876483309923779,-0.15352851208394522,0.0062699713412475416,0.006269971161099857,1,1,1.0787600829379054,1.0787609293406801 +253.199395544,40.778441268434726,29.435688658512998,1.8702407746,8,0.0,-2.3028550419752283,-0.09175788673556623,-0.018260074702953058,-0.1533897373439734,-0.018252370899659816,-0.15340854800499693,0.00540464814498929,0.005404648157627899,1,1,0.189146420782862,0.18914774786164104 +253.498829379,40.77838596076062,29.43562549243817,1.8701698168,8,0.0,-7.635106988479567,-6.233650901174644,-0.03614575178118319,-0.16530653252360564,-0.03613806065512923,-0.16532531599992872,0.007294001100924441,0.007294000994751155,1,1,2.917322868469448,2.9173219917012845 +253.79883007,40.77839998757836,29.435677299033493,1.8700996896,8,0.0,-3.261782163626035,-4.675981243665913,-0.04370698667454899,-0.1741358025970515,-0.043699318656703706,-0.174154542816282,0.0032394847656155063,0.003239484881635499,1,1,0.8295206277837665,0.8295186325045976 +254.098853013,40.778407041696376,29.43570585313676,1.8700293717,8,0.0,-0.8513491536290807,-3.892624737269753,-0.04562428454936972,-0.18137981588184496,-0.04561662921466421,-0.18139851508033464,0.001119200796133918,0.001119202271631055,1,1,0.33232523717250784,0.33232257218906763 +254.40324349899998,40.77838996307826,29.435768229749904,1.8699569857,8,0.0,4.4142568676241885,-5.7891976424003175,-0.03511232389215112,-0.19241933790933297,-0.035104695189453215,-0.19243800855868684,0.0003743217710166123,0.00037431284581463883,1,1,1.4194121538879967,1.419405009307568 +254.702822183,40.7782757455183,29.43582730657157,1.8698874487,8,0.0,9.401322846110043,-18.47301026966307,-0.013041240644228794,-0.22815424530214265,-0.013033625993295259,-0.228172875618426,0.0011578778349243403,0.001157883803902981,1,1,10.673762793313264,10.673742359343525 +255.002856977,40.77837301041108,29.435791141758408,1.8698180947,8,0.0,6.348406696546362,-7.671783596429271,0.0017996941274959002,-0.24272085494610512,0.0018072891494452358,-0.24273944429862662,0.0013923926279304183,0.001392396805746462,1,1,2.696456775699731,2.6964470913336585 +255.303874811,40.77846952131679,29.435684924050943,1.8697457,8,0.0,-2.6181033600270127,3.04571426298868,-0.004196692578745813,-0.23629410490003697,-0.004189112841063309,-0.23631266747809196,0.0024918830316290764,0.0024918840885970895,1,1,0.4890004374769825,0.48900460476446916 +255.597620382,40.77835598178479,29.435758795475053,1.8696746006,8,0.0,3.617851628629885,-9.56280801940639,0.004234367047547299,-0.2545149484129262,0.00424192927644983,-0.254533473132534,0.0022851645404480267,0.0022851650080165627,1,1,2.4156348354804966,2.41562512391521 +255.898230781,40.778384154689235,29.435780419070618,1.8696044634,8,0.0,5.443235351216564,-6.434216390091125,0.017097087293088436,-0.26659548492225105,0.01710463257755822,-0.26661397839064577,0.0033853156754016884,0.0033853155481119606,1,1,1.9193859420172137,1.9193778615717236 +256.203232521,40.778360459279064,29.4357356189762,1.869534461,8,0.0,1.6613749944107912,-9.065584651904599,0.020897845326391523,-0.28375533677766296,0.020905374947674162,-0.2837737956637024,0.0029490261797576692,0.002949023468928643,1,1,1.826579150991076,1.826570987454278 +256.503226584,40.778369572867895,29.435744003044874,1.8694629915,8,0.0,2.3691274907986597,-8.053523826154093,0.026405516967047085,-0.2989074029187936,0.02641303095689404,-0.2989258337600643,0.0023932408616816545,0.0023932386609984485,1,1,1.5470494376711466,1.5470417536997465 +256.795776045,40.77834489953559,29.43571307179408,1.8693926558,8,0.0,-0.2419768059658273,-10.793488529287211,0.025795763499804822,-0.3194185574920843,0.025803255149920795,-0.319436943533592,0.0033762528700120088,0.0033762503093550645,1,1,2.4622858540958417,2.46227736434101 +257.098856879,40.77837186979553,29.435712998162465,1.8693216944,8,0.0,-0.24819242164161193,-7.798451244308456,0.02516810468578237,-0.3339822873916261,0.025175581080646388,-0.33400064602925794,0.0017790476878695098,0.0017790449269914485,1,1,1.2519473910848131,1.2519413943739253 +257.39912739,40.77835257410234,29.43571233527547,1.8692504556,8,0.0,-0.3041510284700475,-9.941230758849096,0.024387528436747165,-0.35276064084488323,0.02439498487185296,-0.35277895488168576,0.0002891603976864569,0.00028913980467266433,1,1,2.0652403409557007,2.065232644390455 +257.698216735,40.778375807552706,29.43573903347116,1.8691800375,8,0.0,1.9496138875179974,-7.361164528253353,0.02889381051969872,-0.3663933042644998,0.02890124963478015,-0.36641158752410685,0.0018242352017355983,0.001824235201956013,1,1,1.230601816857559,1.230595047266711 +258.003176337,40.77844261111333,29.435792119292163,1.8691101723,8,0.0,6.430919840306086,0.057348506880595194,0.04384713969379805,-0.3655886575671421,0.043854558330393596,-0.36560690415357766,0.0022956788602553494,0.002295679656790697,1,1,1.4817001282904914,1.4816970418555337 +258.303193329,40.778431256686,29.43570692242369,1.8690401152,8,0.0,-0.7610835969498512,-1.2035591745001961,0.04200112285384302,-0.36720163830600916,0.04200853059867662,-0.36721985092118686,0.004222778113559967,0.004222778640289012,1,1,0.039044728264725846,0.039044476226810405 +258.595767839,40.77842865340152,29.435817956882705,1.8689696388,8,0.0,8.612035103882679,-1.4926479766589635,0.06199559061615688,-0.3693874812759739,0.062002982169981555,-0.3694056550359718,0.0038811000754536565,0.0038811004377268294,1,1,2.6762733303073363,2.676267836909057 +258.90295921,40.77844045728286,29.43569754790541,1.8688974417,8,0.0,-1.5524455442203413,-0.18183619397680392,0.05830069067801272,-0.36901799659591666,0.058308066696178565,-0.36903614318299716,0.005791717562454971,0.005791717648705371,1,1,0.09476547618087959,0.0947664892317902 +259.195759989,40.778447874972564,29.435765602027736,1.8688267233,8,0.0,4.19243050281263,0.6418965104012601,0.06791247565867896,-0.36704903190789273,0.06791983481392054,-0.36706713628759974,0.00308495925513884,0.0030849584324357943,1,1,0.6390290903711655,0.639027710624369 +259.4987702,40.7784284671484,29.435757585135427,1.8687561158,8,0.0,3.515675297245937,-1.5133354897026579,0.07607002586274238,-0.36928137763836133,0.07607736411793409,-0.3692994550384923,0.0019511498561382056,0.0019511465460851237,1,1,0.45789235534423767,0.45788959945548074 +259.798197072,40.77833973492295,29.435676778367338,1.8686857354,8,0.0,-3.3057378822720005,-11.367016097447657,0.06810702620942732,-0.3906524043142377,0.0681143494840358,-0.39067044270571905,0.00018719389676799308,0.00018719828616969197,1,1,3.1135542808095265,3.113547192800336 +260.103172177,40.778432905557395,29.435626766760684,1.8686160907,8,0.0,-7.5275280231889905,-1.02044883279212,0.050374392900242884,-0.391884188160584,0.050381697981368004,-0.39190219271033827,0.00014909793573413896,0.00014909664267035108,1,1,2.088919937128567,2.0889234402998325 +260.40349658,40.778396817520814,29.435682433808257,1.8685447753,8,0.0,-2.828323400576923,-5.028015129346968,0.04364820382326302,-0.4008696535707875,0.04365549368114374,-0.4008876258094019,0.0019238326342102788,0.0019238320791295242,1,1,0.7788062568103641,0.7788040446597801 +260.70277942399997,40.77840604839624,29.43573600552332,1.8684756423,8,0.0,1.6940047491940478,-4.00293020234865,0.04750667570207275,-0.40787953439928853,0.047513945066485784,-0.4078974703952632,0.0007105963286368263,0.0007105957688105033,1,1,0.3879684547579805,0.3879646963412504 +261.003816434,40.778362569797586,29.435584802448577,1.868403248,8,0.0,-11.070011632534298,-8.831204271643314,0.02154813697328466,-0.4242389628307905,0.021555386051852223,-0.42425685881148445,0.00028168563299695823,0.0002816793173496363,1,1,6.040787743675412,6.0407868229365915 +261.297650958,40.77840886199906,29.435715938260483,1.8683330769,8,0.0,-4.5420365587021855e-10,-3.690480852677215,0.02150321749865364,-0.4305438318025053,0.021510455596180006,-0.43056170108088854,0.001468096478161118,0.001468094810346289,1,1,0.23828318344652544,0.23828058265452767 +261.598462546,40.778328273942115,29.435761969044197,1.8682629671,8,0.0,3.8857545153673887,-12.639753447194659,0.030506165750884898,-0.45423117711928385,0.03051338327393554,-0.4542490095671558,0.0011905929857185212,0.0011905936438686368,1,1,3.8675092772865827,3.8674975181579483 +261.899470071,40.778400708923314,29.435671203932788,1.8681922043,8,0.0,-3.7763082222925903,-4.595875911243264,0.021637442061275727,-0.46224636597210367,0.02164464840141954,-0.46226416828402783,6.0114770528650156e-05,6.0101051220257615e-05,1,1,0.9055834498329803,0.9055821329646258 +262.203066545,40.778435937568425,29.435683841552812,1.8681204686,8,0.0,-2.7094851609680464,-0.6837484666522313,0.015284536593212165,-0.4626894631076162,0.01529172177236729,-0.4627072317046498,0.0010938502350539303,0.0010938495119449802,1,1,0.27002402989331536,0.2700252721272182 +262.495636907,40.77837830692365,29.435701109903377,1.8680505626,8,0.0,-1.2517560581422378,-7.083610469952194,0.012272470381496281,-0.4754771137553851,0.01227964614064636,-0.4754948404600867,0.0022598882606979847,0.002259887834199681,1,1,1.0369182091801086,1.0369136137353792 +262.803131006,40.778379713001705,29.43569297053996,1.8679811235,8,0.0,-1.9388515184382364,-6.927465878450192,0.007764829695512367,-0.4879918283054654,0.007771984785960391,-0.4880095286039199,0.00047251267756173867,0.00047251155395555336,1,1,1.066960076804146,1.0669559749897561 +263.097157869,40.77843285925593,29.43575450786935,1.8679105698,8,0.0,3.255903650989196,-1.0255937037091647,0.015339387338627417,-0.48902307728724737,0.015346527116474818,-0.48904074359011335,0.0005659315266160428,0.0005659314344171942,1,1,0.3868345780797886,0.38683247693918965 +263.398739851,40.778370544090045,29.43574189454026,1.8678403603,8,0.0,2.191135132673317,-7.945670023867834,0.020396759858356314,-0.5034722780463358,0.02040388034176676,-0.5034899073111575,0.0006477747713256216,0.0006477726894947798,1,1,1.4124652919587546,1.4124582892497886 +263.698820351,40.7784140995454,29.43574504379109,1.8677702532,8,0.0,2.456981877933039,-3.1088528762040157,0.02607966155078086,-0.5084968167844738,0.026086767645891667,-0.5085144156980298,0.0014117231368100892,0.0014117224023464474,1,1,0.3656507056356911,0.3656474022036141 +264.003949791,40.778401152001614,29.435718081005206,1.8676989739,8,0.0,0.18088266548272972,-4.5466731913405765,0.026472066710475545,-0.5163013357206525,0.026479158208989332,-0.5163189088823913,0.0015727334086750233,0.0015727331164827236,1,1,0.3650562857436369,0.3650530305740346 +264.297152142,40.778338597721906,29.435761816315157,1.8676291151,8,0.0,3.872861074575014,-11.493301572772955,0.03538687837621304,-0.5375342262052224,0.03539394966000622,-0.537551753814564,0.0027023626983309463,0.002702361027890978,1,1,3.224499747399942,3.224489171269408 +264.598733941,40.778359822328575,29.43570787449016,1.8675585904,8,0.0,-0.6807143962270604,-9.13631792108533,0.03371548973808004,-0.5541332355805418,0.03372254676104104,-0.554150733062554,0.0014831872747214337,0.0014831858701132962,1,1,1.6698271314386197,1.6698207633380366 +264.898707141,40.77836041251583,29.43585375861125,1.8674879442,8,0.0,11.63429663680337,-9.070768738792587,0.06074729846032948,-0.57062240977024,0.06075433819840513,-0.5706398717333094,0.00046503890713768385,0.0004650360650463879,1,1,6.471795811480385,6.471783254206115 +265.198799547,40.77843236110008,29.435740715844574,1.8674173292,8,0.0,2.0916319726963564,-1.08091414566976,0.06543710882634389,-0.5715900330983716,0.06544413268934751,-0.5716074618111343,0.0017856712082826947,0.0017856719767857668,1,1,0.15452507528838155,0.15452364626489434 +265.49816246,40.77844331803786,29.43563694290694,1.8673467,8,0.0,-6.668494372970546,0.13585242339682213,0.0498037048469786,-0.5702189724843019,0.04981071481197337,-0.5702363701027369,0.003586566842087137,0.0035865669178609554,1,1,1.646092931729873,1.6460968945452132 +265.799137266,40.77844476600733,29.43564723792934,1.8672766254,8,0.0,-5.799426689701271,0.29664816266617794,0.036190081237507665,-0.5685471396406857,0.03619707252247256,-0.5685645031312925,0.003920062846434072,0.003920062537866784,1,1,1.2503097066407571,1.2503133360521062 +266.103734082,40.77839267934117,29.43577799046431,1.8672075947,8,0.0,5.238220574102215,-5.487557122972517,0.048237564342415995,-0.5780574635975074,0.04824453581167043,-0.5780747846223062,0.0026425397645398548,0.002642539713230709,1,1,1.5160740794665972,1.5160676453766007 +266.397635836,40.77842491832042,29.435769961847814,1.8671374164,8,0.0,4.560471867319042,-1.9074309447150921,0.05881752993909535,-0.5805828592335274,0.05882449124136821,-0.5806001608130144,0.0014882435103279249,0.0014882434129596968,1,1,0.7735111618272453,0.773507862325954 +266.70393255199997,40.77847871196993,29.435620745110544,1.8670660767,8,0.0,-8.035847923765408,4.066336776955324,0.03995888149676692,-0.5716475080557537,0.03996582292406223,-0.5716647691696636,0.00031882048535376,0.00031880976532475743,1,1,2.844636082022006,2.8446437331920666 +266.997077702,40.77843111487173,29.43572115520059,1.8669953251,8,0.0,0.44039478874005683,-1.2193076215099532,0.040928928732925786,-0.5728407358702998,0.04093585622070963,-0.5728579707299258,0.001461312587589016,0.0014613101568007806,1,1,0.015149939723729227,0.015149239656859376 +267.28943772499997,40.77856611151056,29.43568712928919,3.1321564693,8,0.0,-2.4319418883498662,13.772019406891511,0.03516337177702008,-0.5452325157625894,0.03517028284852895,-0.5452497137802765,0.0009174251444992961,0.0009174109475492065,1,1,4.81623452452191,4.816246801218312 +267.604625593,40.778403749262964,29.43581856769981,1.8668555553,8,0.0,8.6636012621175,-4.258243221229028,0.05516888975579505,-0.5524012195639709,0.055175785480539336,-0.552418379305306,0.0008248158752887647,0.0008248106841896774,1,1,2.992139217042728,2.992132065574111 +267.898563217,40.778414467338074,29.435738890886512,1.8667854009,8,0.0,1.9375762861718695,-3.0680097910819137,0.05961709190430493,-0.5571951835907869,0.059623971858461376,-0.5572123188086475,0.0005497146682650967,0.0005497052276237267,1,1,0.2690866409904365,0.2690837758494481 +268.198671988,40.77842736252956,29.435618042213434,1.8667143676,8,0.0,-8.264022702334513,-1.6359992236286103,0.040271413963860414,-0.5592799294783207,0.04027827988908825,-0.5592970311499887,0.0006138506611808055,0.0006138512659048421,1,1,2.523910748328973,2.523914053476729 +268.498461181,40.77849450527387,29.435646385043295,1.8666436907,8,0.0,-5.871419781070175,5.82017528216943,0.026514350675660242,-0.5469834307949581,0.026521195016046342,-0.5470005009958546,0.0023295397398220585,0.0023295403251683425,1,1,2.1689402510460596,2.1689480493291358 +268.803323789,40.778480802306916,29.43571962337061,1.8665751324,8,0.0,0.31108313584573805,4.298463568524063,0.02720127536790238,-0.5376759592757099,0.027208107111875754,-0.5376929957707003,0.003101911334266421,0.003101912635259296,1,1,0.5272854233588323,0.5272889773456325 +269.095690755,40.77846557130771,29.435721870863325,1.8665049638,8,0.0,0.5008081321367022,2.607066777840361,0.028307576021119215,-0.5316040612265255,0.028314400034608726,-0.5316210626136456,0.002098716262810868,0.002098717717747022,1,1,0.22895221966401902,0.22895437885728384 +269.398801643,40.77847796183296,29.435737232548487,1.8664343202,8,0.0,1.7975837764892042,3.983030203074934,0.03239656386800862,-0.5229571516932964,0.032403356882320856,-0.5229741203076743,0.0007872373600186915,0.0007872396511979227,1,1,0.5680792312381004,0.5680817911284771 +269.698685199,40.778360113092724,29.435704888685294,1.8663636392,8,0.0,-0.9327652654254683,-9.10402864369426,0.030166046738023266,-0.5394345350818718,0.03017283034831901,-0.539451472740221,0.000666695004068334,0.0006666974304878904,1,1,1.6781454577532942,1.6781394264756884 +269.999304213,40.77844665058678,29.4356807549698,1.8662937454,8,0.0,-2.9700425877608123,0.5059283337499504,0.02316822433790632,-0.537422824080294,0.02317498470153653,-0.5374397232357058,0.001977476281855874,0.001977478724481342,1,1,0.34893126018598747,0.3489335167667722 +270.317683614,40.77846722000605,29.43566254460974,1.8662247353,8,0.0,-4.507292087177806,2.790155469690085,0.012679115431599983,-0.5310319609647337,0.012685863100698516,-0.5310488293853246,0.0025629113228880967,0.0025629143729650073,1,1,0.9873194495799128,0.9873241712680006 +270.603775176,40.77851172515572,29.435688544218078,1.8661533765,8,0.0,-2.3125009521060256,7.732434805243405,0.007323645275153824,-0.5151922270352868,0.007330379128073625,-0.5152090673701216,0.002429754144747996,0.0024297568982230232,1,1,1.7200120578626814,1.7200194176669423 +270.903781795,40.778359639473614,29.43576297740185,1.8660817024,8,0.0,3.9708746020562837,-9.156622862314865,0.016456519595305037,-0.5317417833903499,0.01646323372096753,-0.5317585821207582,0.003667968195783532,0.003667969457796019,1,1,2.23421070683503,2.2342022869264984 +271.203331636,40.778456391939095,29.435642042270803,1.8660126271,8,0.0,-6.2380237904697555,1.5877039172089458,0.001977442741106906,-0.5276853728553583,0.0019841428281898096,-0.5277021426407725,0.0032476711442471864,0.003247671725548732,1,1,1.5107198527081296,1.510724472331234 +271.496976403,40.77846074857146,29.43577626402996,1.8659431323,8,0.0,5.092476089343584,2.071505443251148,0.013771658031207279,-0.5226666333426818,0.01377833960135221,-0.5226833666890602,0.004426263558067757,0.004426263865006536,1,1,1.0851639722031845,1.0851634605017293 +271.798729185,40.77846840049198,29.435750770192673,1.8658732451,8,0.0,2.940381250166614,2.9212472064386246,0.020545888968639216,-0.5160856093290682,0.02055255695162994,-0.5161023117683334,0.0038037375671328517,0.0038037371651585736,1,1,0.5737047686677266,0.5737059326396442 +272.10366485,40.77840123824636,29.43571724371075,1.8658022519,8,0.0,0.11020133283488182,-4.537095746299795,0.020746554200852436,-0.5237815009055405,0.02075321129900244,-0.5237981734529712,0.003117957648301108,0.0031179570793388018,1,1,0.3614001214628167,0.3613970780402866 +272.39761187,40.77838597660264,29.43573308778381,1.8657316159,8,0.0,1.4477003137336668,-6.231895445305646,0.024067562954186758,-0.5347353847877242,0.02407419595716572,-0.5347520215882239,0.004202354039596872,0.004202352979858269,1,1,0.8011098956725954,0.8011049616455704 +272.703279793,40.77847154874509,29.43571173288702,1.8656632251,8,0.0,-0.35500185948275753,3.270858967485367,0.023184661113473184,-0.527425214205673,0.023191285318778745,-0.5274418224174257,0.0014628712209266068,0.0014628696630891013,1,1,0.3286313630187103,0.32863437315839567 +273.003094967,40.778364253699756,29.435722488682437,1.8655920796,8,0.0,0.552962949903893,-8.644215817500074,0.024411927342510284,-0.5429276720725693,0.0244185408388732,-0.5429442491046976,0.0003158146557563724,0.00031581190118168585,1,1,1.4815527018226295,1.4815464269940473 +273.297118707,40.778440012602715,29.435745213249945,1.8655225069,8,0.0,2.471286011143832,-0.2312175085060522,0.03008385335662126,-0.542383439404635,0.030090443600554337,-0.5423999854768021,0.0021168129128983377,0.0021168125553859296,1,1,0.2180334853473863,0.21803255075807743 +273.603716544,40.77847453039997,29.43582016350287,1.865451615,8,0.0,8.798303771330357,3.6019758530959343,0.05034862361869065,-0.5344313074546495,0.05035520365862979,-0.5344478193522344,0.001654245929507148,0.001654243779935011,1,1,3.1555290679171204,3.1555279608336018 +273.90352843,40.77852500756873,29.435694837107444,1.8653816697,8,0.0,-1.7812787919491784,9.207441699454023,0.046154457198074476,-0.5158273323828039,0.04616101227604073,-0.5158438126835996,0.000561504033573902,0.0005614958622589801,1,1,2.240581237392372,2.2405892906562928 +274.203461392,40.77849891312218,29.43565508823533,1.8653127063,8,0.0,-5.136728855772641,6.309664653631608,0.0341627892162544,-0.5027762235437512,0.03416933345017181,-0.5027926740951448,0.0013702714560654902,0.0013702726744941915,1,1,2.008989521862182,2.008996998636442 +274.503190878,40.77840930939248,29.43573279774542,1.8652418312,8,0.0,1.4232158308531802,-3.6407978430512897,0.037375437693460724,-0.5088217433987654,0.03738195903087174,-0.5088381617975402,0.0019302271981442918,0.0019302270438345192,1,1,0.2894872976432987,0.28948433723178446 +274.796942255,40.778436936506125,29.43574870147503,1.8651714653,8,0.0,2.765749160318788,-0.5728167864349709,0.04368007796101421,-0.5088831615668183,0.0436865919552759,-0.5088995498668417,0.003703472191270626,0.0037034718151067684,1,1,0.268482354408134,0.26848102292872117 +275.09869335999997,40.77844077389611,29.435735298879305,1.865101194,8,0.0,1.6343516011881711,-0.1466763928129529,0.047354253226113356,-0.5082279128705245,0.04736074672616021,-0.5082442686214734,0.0035233581386081925,0.003523357814806155,1,1,0.09415707825998489,0.0941565968937198 +275.403607959,40.77843126516621,29.435688452834185,1.8650321074,8,0.0,-2.320218031819269,-1.2026171245079664,0.04188762435486227,-0.5094823785569244,0.04189411397698136,-0.50949870740496,0.005305495431705511,0.005305494528193287,1,1,0.21287218663893578,0.21287278966941062 +275.703580149,40.77847555969524,29.435711044396676,1.8649604569,8,0.0,-0.4131216079174549,3.7162734943495392,0.04083056107181559,-0.5014617718455481,0.04083702760737923,-0.5014780649399991,0.002673985078668962,0.002673983838466936,1,1,0.4062956180098812,0.4062989120829188 +275.99694287,40.778402320955024,29.435624283716603,1.8648905656,8,0.0,-7.737140964292904,-4.416857311408389,0.022836957346014177,-0.5088437698257628,0.02284342177604272,-0.5088600357648424,0.0014707979863197974,0.001470792128214171,1,1,2.5235853724182964,2.523586156391368 +276.310078498,40.778475646087394,29.435765396474178,1.8648217238,8,0.0,4.175076697398716,3.7258684768468466,0.03244767138878435,-0.5008110870268548,0.03245411317073399,-0.5008273185006582,0.0005541562461193973,0.0005541586067371315,1,1,1.0221382724053927,1.0221394155232764 +276.59754389799997,40.7784486703666,29.435733999475126,1.8647511737,8,0.0,1.5246605420247161,0.7302236926374158,0.03589437192984604,-0.4985190182431253,0.035900791766604635,-0.49853521965736,0.0011988913586041946,0.0011988931248315465,1,1,0.11413179542857488,0.11413199569666953 +276.903749533,40.77836012351905,29.43571022779326,1.8646802747,8,0.0,-0.4820570376592554,-9.102870846332024,0.03469503579016549,-0.5148381640136057,0.03470145247673888,-0.5148543321104618,0.0024564490746739557,0.0024564502493205033,1,1,1.6632241136421664,1.6632181279683838 +277.253018789,40.77848259016348,29.43573614322104,1.8646116246,8,0.0,1.7056267277892736,4.497004565861994,0.038556709924947634,-0.5053092746643914,0.03856310754398558,-0.5053254126682997,0.0027381537282979355,0.0027381551751229443,1,1,0.6616756315725953,0.6616784787836653 +277.552806772,40.778409472206064,29.435759889921606,1.8645401651,8,0.0,3.7102378868922754,-3.6227166628337053,0.04704586140825223,-0.511237899430308,0.04705224796654401,-0.5112540119928065,0.0024415791635839733,0.002441579427659343,1,1,0.703107296139343,0.703103353427973 +277.85264258,40.77845694172977,29.435721887623977,1.86447102,8,0.0,0.5022230687116407,1.6487553559595054,0.04808133731792524,-0.507121632154286,0.048087705831030135,-0.5071377040791933,0.0036224178940353624,0.0036224181083705175,1,1,0.11167289128085514,0.11167423542194782 +278.14541577,40.77836707052859,29.435571426991274,1.8644006696,8,0.0,-12.19911860838489,-8.331398001361254,0.019824073735034645,-0.5220025404581577,0.01983043136154663,-0.5220185857120627,0.003069567308124096,0.0030695678375371135,1,1,6.775265856728367,6.7752658665040775 +278.453550982,40.778469491421646,29.43569562696507,1.8643325576,8,0.0,-1.714603453743606,3.042394154312833,0.015771383017763603,-0.5152631896724139,0.015777714756780952,-0.5152791982899758,0.0042340960613768425,0.004234096912626522,1,1,0.39221923570300127,0.3922225832038125 +278.753031992,40.77846509686193,29.435741860885305,1.8642617962,8,0.0,2.1882910011019625,2.5543800564925894,0.020806887199797876,-0.5093960622321725,0.02081321040348087,-0.5094120421326519,0.003548893215653678,0.0035488931047381817,1,1,0.3806152960392518,0.38061649849698137 +279.053571579,40.77837356439389,29.435697242350678,1.8641909684,8,0.0,-1.5782409239373612,-7.61026656613379,0.01711462760903505,-0.5228980205743291,0.01712093837507715,-0.5229139709337781,0.0023170355769054594,0.0023170355232157674,1,1,1.2183432626922297,1.2183389232713144 +279.337674009,40.77843458032128,29.435747104350504,1.8641202098,8,0.0,2.6309259189670087,-0.8344702848381501,0.02315402459024496,-0.5235096553006668,0.02316031770355779,-0.5235255772414619,0.0005239727777502072,0.0005239728848550157,1,1,0.24849167114045556,0.24849026030434618 +279.653776611,40.778483675703235,29.435705472788424,1.8640522702,8,0.0,-0.8834557502899881,4.617553207803806,0.021055695057348122,-0.5137378488790896,0.021061972405651407,-0.5137537378907782,0.00023647713629930327,0.00023647612648083753,1,1,0.619945087037932,0.6199491542180581 +279.945972457,40.77835798986471,29.43573608565609,1.8639824319,8,0.0,1.7007704895269469,-9.339812184156104,0.02493929668476379,-0.5305149531067472,0.024945560785803407,-0.5305308131812239,0.0012444682444953795,0.0012444683334596747,1,1,1.8415713535948177,1.841564328533295 +280.248957964,40.77842419998581,29.435711663350787,1.8639119664,8,0.0,-0.36087210450800306,-1.9872031319486427,0.024040337987850813,-0.5332843391065581,0.02404658638442035,-0.5333001685498131,0.0017132096338155632,0.0017132100044362007,1,1,0.052758759697351235,0.052757901980492676 +280.548562937,40.77848874196225,29.435722065233033,1.863842055,8,0.0,0.5172159156931064,5.180159356249179,0.025183414158494816,-0.5224093356463093,0.02518965311122639,-0.5224251371110102,0.0012220087578827272,0.001222008505866488,1,1,0.73783614716609,0.7378399652595293 +280.853561045,40.778499217481496,29.435691985336117,1.8637735819,8,0.0,-2.022015223948035,6.343462138622753,0.02046723949350875,-0.5093720383488146,0.020473459859559937,-0.5093878090749568,0.0007522492578428156,0.0007522496750733378,1,1,1.2039592783169784,1.20396504477676 +281.153513976,40.778424245163755,29.435880043290453,1.8637031204,8,0.0,13.853141137322664,-1.9821731889247405,0.05233912093671414,-0.5121629176446382,0.0523453308134747,-0.5121786589744124,0.0020052250718539445,0.0020052243557178123,1,1,6.947251515469955,6.947244270131741 +281.445984137,40.77841307771924,29.435801408699323,1.8636330416,8,0.0,7.215100297535353,-3.2223231827093124,0.06890896725187318,-0.5173231798127742,0.06891516109942408,-0.5173388934426821,0.003884642667094518,0.0038846423595070337,1,1,2.0138077036296758,2.013802591418708 +281.748929683,40.778477210475685,29.435739104489205,1.8635630507,8,0.0,1.9556059998566557,3.899592296763361,0.07321153268514861,-0.5089238020826645,0.07321771481949867,-0.5089394840350296,0.004094431932613511,0.004094431078687067,1,1,0.5640706746794585,0.564072931612959 +282.035654474,40.77849920117509,29.435741867625833,1.8634944475,8,0.0,2.188858891173333,6.341651364899994,0.07801743147410825,-0.49591885119716217,0.0780236019309842,-0.49593449220503455,0.003607631328558844,0.0036076304559293235,1,1,1.209552390846519,1.2095562427770414 +282.478655942,40.778382379621114,29.435837658913734,1.8634245498,8,0.0,10.275214889742484,-6.6313319145169185,0.1017339327981461,-0.5075982599979534,0.1017400846084452,-0.5076138993447532,0.006305090338439426,0.00630509073650735,1,1,4.589660648922605,4.589651821180665 +282.653797839,40.77848096925571,29.435846079983772,1.8633539363,8,0.0,10.98607475536787,4.317011312628038,0.1266580077805244,-0.4984030825870439,0.12666415265540393,-0.4984186766910866,0.004745153896785031,0.004745152765181176,1,1,4.791338148589906,4.79133668201819 +282.945962441,40.77850952199352,29.43569061879391,1.8632833202,8,0.0,-2.1373732148521505,7.487774408188371,0.12157036688601629,-0.483298579602696,0.12157648947335772,-0.4833141561010779,0.006433706905528325,0.0064337058194905514,1,1,1.60932217858773,1.609328747942614 +283.254100359,40.77847870974214,29.435768669000304,1.8632129648,8,0.0,4.45133086107853,4.0660863584939095,0.1314828227589454,-0.47466694163209855,0.1314889339623243,-0.4746824812999799,0.00295865645636329,0.0029586565878053444,1,1,1.138183773664446,1.1381850252417132 +283.547773331,40.77833565485886,29.435701318308993,1.863143805,8,0.0,-1.234164001806263,-11.820106321933958,0.12833983894918588,-0.49618759785447936,0.12834593133345046,-0.49620311109470944,0.0009402140695173,0.000940215563085831,1,1,2.942107621058108,2.9421003458068395 +283.84849928,40.77839620178323,29.435774555457424,1.8630740656,8,0.0,4.948249568786988,-5.096391445310566,0.13945130626488994,-0.5048746020189891,0.13945739062526386,-0.5048900834235656,0.0003823620064183646,0.00038237045935631176,1,1,1.3102497259338701,1.3102444192094804 +284.153699044,40.77849051796704,29.435727692616215,1.8630048397,8,0.0,0.9922583545821632,5.3773840779408655,0.1414051881542343,-0.4937565089200425,0.14141125515542766,-0.49377196264726525,0.001270428106764889,0.0012704306380169757,1,1,0.7990255287497549,0.799029223139543 +284.445772773,40.77849898489181,29.435612425261077,1.8629345089,8,0.0,-8.738175688389257,6.317638019811987,0.12095629487549739,-0.4807996906426883,0.12096235243167375,-0.4808151085175721,0.0025240109094768776,0.0025240122309338705,1,1,3.8790070412803463,3.8790156291575437 +284.703913807,40.77847799793939,29.43570954518796,1.8628662126,8,0.0,-0.5396791594424482,3.987039609930951,0.11947197162738686,-0.4723889558473982,0.11947801218498404,-0.4724043496832732,0.0025019764353918757,0.0025019785741455247,1,1,0.4615802371508445,0.46158360371504464 +285.003496494,40.778405407798594,29.43580987751714,1.8627955949,8,0.0,7.930007682608311,-4.074064280511094,0.1374428398413276,-0.4791832621814127,0.13744887159877084,-0.47919863316182715,0.0022398816109552764,0.002239882289641697,1,1,2.489224420139096,2.489218537731793 +285.329661651,40.7784090601992,29.435710567679642,1.8627263611,8,0.0,-0.45336472248514836,-3.6684707873426023,0.13604104179245827,-0.4852213867608752,0.13604705441006829,-0.48523671587243883,0.003556861714417211,0.003556861867883652,1,1,0.2397604790011918,0.23975854778731923 +285.60354247099997,40.77847930035441,29.435695960345672,1.862655726,8,0.0,-1.6864604648910433,4.1316724872387205,0.13188237955962376,-0.47651227473097507,0.13188837728333314,-0.47652758154609914,0.0019283575817287421,0.001928358741082183,1,1,0.5958430073881843,0.595846960263557 +285.903968583,40.778513028126916,29.435773589162135,1.8625881835,8,0.0,4.866669925366916,7.877130512071152,0.1427279782105747,-0.46066831185931645,0.1427339667048089,-0.4606835814435276,0.00030696573168695,0.0003069781838966667,1,1,2.3668697931935228,2.366873452689379 +286.203994602,40.778478157432495,29.43572856002279,1.8625178365,8,0.0,1.0654817423492269,4.004751316623872,0.1448539533474083,-0.45227049903987543,0.14485992411629214,-0.4522857408063939,0.0005822472025388755,0.0005822510064373096,1,1,0.47606000090985207,0.4760626487697947 +286.49637725499997,40.778500403044,29.435725901674456,1.862448321,8,0.0,0.8410736851678395,6.475118185193008,0.14644315539867114,-0.43910039985937127,0.14644911716355388,-0.43911560768644414,0.0017035943866467126,0.00170359737171458,1,1,1.0892666304289507,1.0892710453322731 +286.8034896,40.778423326596666,29.43573308274801,1.8623776266,8,0.0,1.447274398814537,-2.0841925372394976,0.14943500642651453,-0.44226049843288606,0.14944095147864755,-0.44227567972576404,0.002174810692246147,0.0021748114994295997,1,1,0.12145161423287108,0.12144993762832561 +287.103105001,40.77844715298521,29.43570944946449,1.8623087004,8,0.0,-0.5477600286207291,0.5617189159963873,0.14782042321488167,-0.440367520266781,0.147826356653518,-0.440382671592187,0.0021329113231230113,0.002132911078909509,1,1,0.040037837770921604,0.04003881754346484 +287.406024891,40.77844074289191,29.435769357652376,1.8622398152,8,0.0,4.509466848201795,-0.15011820432739317,0.1578626328593462,-0.4398121833502879,0.15786854876643952,-0.4398273063741113,0.0032633986916103873,0.0032633979201019533,1,1,0.6877831836679075,0.6877815152389188 +287.705420613,40.778425235830575,29.43571893552072,1.8621688005,8,0.0,0.2530176460184867,-1.8721729609944688,0.15805869145338314,-0.4425114552863628,0.15806459745439533,-0.44252654984591167,0.0008959872320646715,0.0008959858495479985,1,1,0.046150040855132045,0.04614903261796901 +287.999613992,40.77842342314981,29.435773612750882,1.8620986847,8,0.0,4.868667739982337,-2.0734688877578913,0.1689406630891939,-0.44561007556594884,0.16894655209650764,-0.44562514951828835,0.0009877684276828071,0.00098776823161628,1,1,0.859444196055857,0.8594410909025137 +288.422501909,40.778396600835705,29.435689821346354,1.8620269827,8,0.0,-2.2046944422913417,-5.052078142786221,0.16342871711781864,-0.4542849526894222,0.1634345959859958,-0.4542999901920832,0.0009708227215204954,0.0009708223154031719,1,1,0.6770664344386244,0.6770643429285582 +288.603068671,40.77847394847096,29.43565842031119,1.8619605402,8,0.0,-4.855449439156105,3.5373492174598344,0.15191945199279444,-0.44678469920298036,0.15192531157717892,-0.4467997089033073,0.0011208212416876835,0.0011208205902385633,1,1,1.2640640589299272,1.264068865940041 +288.902953514,40.77848060234019,29.4356609022413,1.8618900578,8,0.0,-4.645933749044853,4.276258788361765,0.14088367594674264,-0.43784141163238216,0.1408895267204566,-0.43785639190417686,0.002198949567115158,0.00219894874349147,1,1,1.3281749026041532,1.3281800980122196 +289.201364419,40.778469600683394,29.435624829901744,1.8618202689,8,0.0,-7.691026255226662,3.054531426448056,0.12294629256742179,-0.4313062315924919,0.12295212306365447,-0.43132118519335877,0.002270275917379688,0.002270273119905911,1,1,2.484007140721217,2.484012778588071 +289.50151780699997,40.77848507021624,29.435676323190023,1.8617504973,8,0.0,-3.34415503190225,4.772414062986847,0.11501152138941041,-0.4215251731083931,0.1150173367403121,-0.4215400987968131,0.0019838195772140543,0.0019838183260356603,1,1,1.038215778009479,1.0382207113698736 +289.80366317,40.778454770348596,29.43564863568076,1.8616821124,8,0.0,-5.681432855734335,1.4076264464615855,0.10164844469522971,-0.4180057768166278,0.10165425357383126,-0.4180206697760428,0.002997051331219604,0.0029970505369434335,1,1,1.2860998939204427,1.286103546711942 +290.095804659,40.77851596409689,29.435754536580127,1.8616121216,8,0.0,3.2583232472155923,8.203168006432598,0.10890325819486608,-0.4018050029972335,0.10890905213142033,-0.40181986804402464,0.0015626709724286458,0.001562670127397195,1,1,2.0193082825214557,2.019312696222871 +290.401625944,40.77847315215088,29.43570897584156,1.8615430173,8,0.0,-0.587741286030388,3.448916599306437,0.10727708064470984,-0.39447974432439203,0.10728286739633182,-0.3944945829122995,0.0005494572164911659,0.0005494464579182985,1,1,0.34866607206871475,0.34866892061755217 +290.698537385,40.778526499419286,29.435707538389465,1.8614731228,8,0.0,-0.7090850313822714,9.373110969891599,0.10542359237663722,-0.376153222213583,0.10542935986600006,-0.3761680314187191,0.002009462185058731,0.0020094578747588943,1,1,2.1549274825199154,2.1549342967116227 +291.00366236,40.778432805674505,29.43559941335878,1.8614041841,8,0.0,-9.836601001157538,-1.0315380836292891,0.08265132984982464,-0.37738028014110975,0.08265708389344843,-0.377395057547286,0.0023481957988713453,0.0023481929687846894,1,1,3.573425032753611,3.5734287342818205 +291.297378658,40.77853760373921,29.435593774270117,1.861334388,8,0.0,-10.312615792302037,10.606248731216516,0.05877713042403492,-0.35666997402971856,0.05878287548316058,-0.3566847265410772,0.0013797947067331865,0.0013797907973492048,1,1,6.59059669783482,6.590608266502542 +291.59890084799997,40.778394797438345,29.43569245631502,1.8612648816,8,0.0,-1.982260071305146,-5.252344808634157,0.05412939201446163,-0.3658615246881083,0.05413512813655469,-0.3658762491063264,0.00021565394938578944,0.00021567115883374392,1,1,0.6855205664484654,0.6855181865660002 +291.903581292,40.77845871668496,29.435697762861718,1.8611963427,8,0.0,-1.5342993100614306,1.8458636108193818,0.050421219844125745,-0.3617221368348684,0.05042693539973924,-0.361736833742006,0.001043460112901829,0.0010434672385416762,1,1,0.2002215140884851,0.20022362502274468 +292.197475857,40.7784879940047,29.435720745921827,1.861126448,8,0.0,0.40584464382671925,5.097098941158925,0.05125408360000686,-0.3514529868357308,0.05125979011967435,-0.3514676534118702,0.001473228095611445,0.0014732280753143373,1,1,0.670103215901057,0.6701066524666481 +292.499643288,40.77845034567635,29.435757847486247,1.861056971,8,0.0,3.5378208233853914,0.916266904300936,0.059265514984961166,-0.34907235221541305,0.05927120230574506,-0.34908699798233905,0.002502690697400392,0.002502689626977859,1,1,0.474182565780663,0.4741819635914408 +292.799125292,40.778476202993254,29.435716828302226,1.8609868715,8,0.0,0.07513398070022136,3.7877114894194763,0.05927894103680406,-0.34130274145613904,0.05928461824658412,-0.341317354204704,0.002492091252946696,0.0024920915310111882,1,1,0.3822265976517029,0.3822292965341587 +293.102848167,40.77850012604128,29.43560540965969,1.8609163799,8,0.0,-9.330406048894021,6.444362966264757,0.03778713378717826,-0.32857722244491183,0.0377927968455479,-0.32859180740604266,0.00120660565536255,0.001206605981387281,1,1,4.207274094650401,4.20728236745255 +293.403487339,40.77844933635102,29.435546274855835,1.8608480144,8,0.0,-14.322353230992332,0.8041947075384607,0.004854104804345553,-0.3264150056019125,0.004859755171783595,-0.3264295665506053,0.0008512708682703447,0.0008512618974262015,1,1,7.463697535247503,7.463704138472637 +293.697267762,40.77838157852752,29.43566068734664,1.860778319,8,0.0,-4.664081273914343,-6.7202987184284115,-0.005788878603752825,-0.33843702001900816,-0.00578324394380625,-0.3384515513510248,0.00036542599551048124,0.0003654227994185586,1,1,1.6990670708987068,1.6990648143367004 +293.999421671,40.778435102191935,29.435621681278697,1.8607086088,8,0.0,-7.956825330840435,-0.7765129353195184,-0.02411581077628458,-0.3392640236068234,-0.02411018923205503,-0.33927852573451284,0.0009016551731517889,0.0009016553736797213,1,1,2.283598509081198,2.2836014554344333 +294.303466054,40.77843889120201,29.435746093424022,1.8606406168,8,0.0,2.5455870838244383,-0.35574861567541016,-0.018151502592004588,-0.33929750293395977,-0.018145894877065524,-0.3393119792271804,0.0014841597840254996,0.0014841665125567974,1,1,0.2380771078289514,0.23807605570037585 +294.59588363,40.77852413173927,29.435779819405692,1.8605717368,8,0.0,5.392602500986918,9.110182910580571,-0.005767639531687914,-0.3215405175881877,-0.005762037419731433,-0.3215549659340535,0.0015457469883353677,0.001545747092246014,1,1,3.0498953119867918,3.0498992316291704 +294.903861985,40.77849528461829,29.435579145718076,1.8605013859,8,0.0,-11.547509410257826,5.906727865535233,-0.032205328029261494,-0.30990608800195396,-0.03219975258727767,-0.3099205077711474,0.002514506113248388,0.0025145093045742394,1,1,5.669393283783169,5.669401954600905 +295.197253871,40.77849185307673,29.43565536534237,1.8604316438,8,0.0,-5.113337069439771,5.525649211919013,-0.04380651715476169,-0.29893885788340013,-0.04380094651521953,-0.2989532505087826,0.0003762809956650403,0.00037629557184628047,1,1,1.6914619725168643,1.691467777258253 +295.503542773,40.77847310419132,29.435735080078196,1.8603613714,8,0.0,1.615880440486946,3.4435908617503457,-0.039996337569406716,-0.2919588724201795,-0.03999078570077939,-0.29197323844455053,0.0010455602263896217,0.0010455601840048403,1,1,0.4121560478802612,0.4121577881741532 +295.803523839,40.77847304517244,29.435662101572948,1.8602930808,8,0.0,-4.544691197094904,3.4370380549209196,-0.050318235766726206,-0.2849491747659671,-0.0503126950288208,-0.2849635171444798,0.00306247269731427,0.0030624713210859467,1,1,1.0422130066155109,1.0422172042006126 +296.095727303,40.77849498252054,29.435606505542513,1.8602239175,8,0.0,-9.237896482250257,5.873176780946917,-0.07128787089368203,-0.2734572206474359,-0.07128235059739221,-0.2734715361946372,0.00325769399846943,0.003257691265109237,1,1,3.8905210576980034,3.890528669108107 +296.403943616,40.77839127063501,29.435723178907214,1.8601539481,8,0.0,0.611228983577091,-5.643995242934993,-0.06979597676702926,-0.283446138183139,-0.06979045607311188,-0.2834604293953764,0.005267798192979828,0.005267795708769472,1,1,0.661019372329357,0.661015665044523 +296.703605934,40.77846185928872,29.435634642329212,1.8600859525,8,0.0,-6.862698692265215,2.1948516115980246,-0.08528138335000224,-0.27882834254283456,-0.08527588115062022,-0.27884260782117526,0.004819833973090521,0.004819832622757608,1,1,1.80092527076214,1.800929554525846 +297.003464354,40.77849807386383,29.43560762699521,1.8600158112,8,0.0,-9.143227260325418,6.21646918929905,-0.10598281366814377,-0.26665891324001684,-0.105977323841246,-0.2666731454947523,0.004022463500303526,0.004022462968443368,1,1,3.9004949871185173,3.9005027186105936 +297.303459518,40.77845041228938,29.435611619106172,1.8599460962,8,0.0,-8.806234649174716,0.9236686482225022,-0.12592464319903773,-0.2644282519121231,-0.12591916405169493,-0.2644424639599494,0.005847892182137913,0.005847891776317347,1,1,2.76080131864475,2.7608055213289835 +297.597394934,40.77854067652657,29.43562119563562,1.8598762392,8,0.0,-7.997808859154116,10.947477766561237,-0.14389199965093763,-0.24346712706055723,-0.14388653684412192,-0.24348130578948932,0.0038268129221376754,0.0038268114367836135,1,1,5.041915807907935,5.041926030911262 +297.903355325,40.77840077555022,29.435652614984523,1.8598080388,8,0.0,-5.345519196637931,-4.588476051677996,-0.15584527240687074,-0.2515678674795991,-0.15583981851190548,-0.25158202726036344,0.0026177388380643875,0.0026177370316904512,1,1,1.3971974912860459,1.3971967883013254 +298.19638368,40.778479860295505,29.435648652587492,1.8597389096,8,0.0,-5.680003515359396,4.193855722979953,-0.16843029237966153,-0.24326718392520552,-0.16842485312738814,-0.24328131439273212,0.002463091568877899,0.002463089438016018,1,1,1.541676034635188,1.541681017729215 +298.503519924,40.778435100363744,29.435620651427634,1.8596689305,8,0.0,-8.043761543805353,-0.7767158621810663,-0.186409990567061,-0.2442667618275166,-0.18640456634806146,-0.24428086238675512,0.0025013094683768787,0.0025013081677313148,1,1,2.2425438264312745,2.242546577415127 +298.797368807,40.77849100051126,29.435653100585967,1.8595992072,8,0.0,-5.304519323320004,5.430972267982189,-0.1981413467204092,-0.23364290271079036,-0.19813593179019084,-0.23365698205938007,0.0012777159810454712,0.0012777136249515029,1,1,1.6638325764770057,1.6638381556546524 +299.098796635,40.77849337034291,29.4356698790049,1.8595302489,8,0.0,-3.8881483822973744,5.69414031234963,-0.20653641931227787,-0.22255990390967953,-0.20653101508489963,-0.22257395814120665,0.0002632981573869946,0.0002633040192970834,1,1,1.2757677978694841,1.2757729677413434 +299.403377976,40.77842920757582,29.435674793398185,1.8594619654,8,0.0,-3.473297206425162,-1.4311113205209014,-0.21406503013190234,-0.22482400647876785,-0.21405964223255528,-0.2248380309105097,0.0014829796141387845,0.0014829819265824965,1,1,0.41738085606006364,0.4173813696567063 diff --git a/soc/software/fusion/output/model_compare_5min_20260713/model_comparison_scatter.png b/soc/software/fusion/output/model_compare_5min_20260713/model_comparison_scatter.png new file mode 100644 index 0000000000000000000000000000000000000000..9511b99c881bd83486281e3c1ec5c190b310b38b GIT binary patch literal 115754 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

  • !K+@5y+ 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 literal 0 HcmV?d00001 diff --git a/soc/software/fusion/output/model_compare_5min_20260713/model_comparison_timeseries.png b/soc/software/fusion/output/model_compare_5min_20260713/model_comparison_timeseries.png new file mode 100644 index 0000000000000000000000000000000000000000..2b48d8660e9e8d1acda85e55e4c1fc61fc47c39f GIT binary patch literal 291454 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�L!dGgl~ONc&LNB!cQO%p7@3afWD-L@21DR)_+qm?6u2utOpM@$6zxnq zr@fOtSmyB2i4niLvPe7usvnuoMp|z*u*VP=y&Hz;ScFWkj;m5t!!8(FNVs4O>H!yV z1E7!AK&CawlrXZz9;olAw+YeF(UOlg|LXfsDL8dZbBFBoYdDio0!hupWUk?r1+Xp$ zzZXNvga7H{4D9OSo;K+-OG2H3K%podqxr9J`7Ns+KMQjNsK_bf#E z%v&HZh5v)IdGW_pqo%>-YKIGN?xyc?N?i_w1SQ&Z@#>Z^o z)dn1i(Kd9KqfOz%2e9ol0dYE~bM)y(5KzQ3j$1ZxF~(u;D5*4|{I36&U6KQzMd>(i zd{BfMilXsP34*_?cJ*5!xkO zq;Crm=aKBp#$PS|IS(W{G$xUtsynH~j0T;Fh(O3TmU-3KGY};{U|!^N+(33e%0C&+ zD(JX+m*h)Kbet#7iOy+o=@?i$-WW^CEG;hPnpACp$>l)%^jP_V9eVWk$UqKneAe{d z`{!Jd9qN5?2Y=SUHO1~A@q&?KV<2`XhK90| ztV_&7P;^Km%p0vGTJ}uS)a2x=&PmwkP)aSsM%2o*=Y z8iF2Me3f~J)S-BVot;p~304~`?Aa1-*2~l}&xh>^UN3zVNG+UMfv`zTN;>3z?HW<) zh&Rz=W+WN$*q>@gnW(G$lxfnd4ywdWh0LxL5Z7CXnQAU#Pf`l_@p{htEtCgWHa_q~ zXb_hbhCAVu?mp9c4&#-?as^~XrY&z}vzW@Qvb95@7~kNK@wucX{{wnEb#J#a4fOOL z$KC4+qjUt7JOa@`QZ2Bh@p5H&FAxQp$!uIc0`1#ajh$W=F%Kdu< zUcaH$6K0|Z{$&>rPOX0b-veb-F07tBfM1DOO_jmd;M;>4-_4bkqLQ@Xq@%*>=AwKW zBbT_oZ5&;j7R*A7;i!e@pU;~USV&QE{_pjltCUeb%@h3<=|JoxW{fEX%>PnG@xvoO z@*t2L$|1K8V=YtE69Xir2FJ-qG=2XOt8nQjmZdd?k7KU1TsgTW`a8x+A(rOW;0Kh> zkS8j<2c}`+Pr*Ev{{ZEa^p#0u#fTduP#xH?Dus`$S!y?W2B>p3ti3*2zYB{lw%dsu zs}lkWdHwL=k=2;)s6!zk&KS7PE)dd!y$4K}f}K2^=m_9d>*& zcN80T8b`7y&`5U*WkifWgJy?nLmU~-Fp84F!Y#Z(J)7O+S8sL`D(a=pc$p5$xhs?n z?XX^nID9&V(XzkCBnWUk(d`ur7s&hl3-^$K;c3u7PL{L}fAAn0A`_K{hKA;Ef;i#; zQXh?r?9DB=^SD|uI?DVgrr=t&*TIE^!gU5Tp68E9G!#m=U54Qggn^8Fff4)$?H5_( zB9MeC95R4JE;vrXwl!N0P49-cK|D`5>;gc?*(1e%{8YaB9z*`VagdUcaHx;?Zm)ZW zNxEl~55gEM7?vK+0m&~iL?Xm5-4T;$CqxN&Q-QF)C+wRk+I=&(8!>Nn8sNw2N*GS; zPz7aT*E@)#J=g&4e;q&n=7&??WZO4IA0=Kp8rZUS300j+P9Sh_aM&vMs0>vM=EAC0 zV~WFCyC|_G95u0n)Gncu&I7A^hiCPHch1N<|Mx{7+JLU&L#{`dZ0k0I&s62GR@$mH z8^S$`K5_4R&rhkIKYu>soft|MPMb+b5+)Fa40-@mKwD4eA2viSC1yFULFk)V)kSlV zD6f#t?{tQ82HbBtm`A8PMn{Wf@YZg_2cS71a>>X!iZ;+WtJ~N5C*_+v_QkMJL}NG%JrJNiuQ#9M3NM=|A?bQ->!(eeH5>poSuW+$9Lq25-iWE zSjT3ZwZJ}nkV>=#;`Ibrg@5qyKSxTaWg30>h)3Q!8<2@v0{bz*SV6e-ChK zko=d>j<4jH6x0v3K&hF~=3yKULU+G#@n8_QV==A;EYOwRHSP4I3pKAuAwvG#IcsbT z(1To`l_fUoT8_P4n&mg1J z)59&wg#Mp8b&Af!QmA7Ir$Fj-%a%b22)VbyxPPYyMB1{6cZW#NIm`9N%Gg(%vvv6P-N!wD4~pUZHb%c&V5nXfzmCGO62_!!hn1QX4pI8z8kTphKL9KFGA;tpb#>(s9#MI2PY++kq` zYW0RTEYjbj$@C0n?B%hWo6*FYhMjU4#(58T%3W|D#LrLoMRUT%z1VPMc&7mbTiB`Z z0x?g6_2&hL(dh~3Y7@T|q`42o0S+4(x?O`rf3dGvN&xdZ43dRk&c4F~MUQxgP(GRP zkpXO`ARfr+OQbpzGdVzw>+o@yc`>?S0H!(Ly|SE0lITu8jrYVMgoZMyj)-*9UC{&= zkmNZ0TyvFRA0cU5TYZO=(%lpe z{$uU>A##^+xTX=615UOU*tm{>T@eHYZaUOmQSlh(RyZx-VUv9@0cPk6rcd1F1W{qg z;XNvsos%bIOK9u(jf+_JoYLi~M&)5ZBskZHr>c+F4WPNo`1Y{_b7`b7Fjv++S>J3b z#49Oz3A&6brcRmD=#nQRMN7C(#3@BeCZo@+i^C)yn9UKm18)ydkp@QYV>Q1_!HoGH z3&u@FpGN}-S%5*N56M|$;7ToI!W&9TDrYtsu_8;&WX3}k8>l@wp3Cp~|9ou z78D(xfZ>xIGeEW#oVDq2(dr2J;!uMojJ%V9Ww4$MGU@HbDe^q8(EE!sf))efxto+# zF1qVLn(HMxk=FC$0q5ab01k22;#{H0eGofOr`0XC#PP3CC5 z5n*I);kgaxcY4|eHpk#NVHZIXAA%9!{4JS@EzT^TPtk19Aca5#T^ur%Lz>?Cke-NJ zZH-86I6BBpe3pFFf-a9#bo89Remafg5xV#+twd26$)e$0f_#roNoV^&PN_6nf;lz^ z9NkNC$OFT8{9KGo;DiV@*S@&qR?>0N%`qRu8tT$7MoQ|^aQs&&KUJN#=UO2A&4fK; zM2#Bp!^*zfjh`#;n&|@2kE6&rm~n}%c|MJbc|C?$gUQhaq}_+iOeQ_8aMgLZ1;~IF zd9}bqa5p*9Z82k*45bu_z#EiFOF`jI+=_Jtf$f70+^JpBVXfhAxwxei9C-rQIq|;l zbpO%>+B_EQ19H-Wq(?SuyTK7ED5qAYJ%W(d1WQZF!YCXD1Z0Aiw+y*VHeH_y&_+w4 z3A430>>^W_Zrf3)s`gs)8Tv^x9d#A7hH+hM87RUX6CJKg zVF$K{qg3c&;1jf0=>;~MHgDNd>&Wq(V@Kw$qEPCE3r&Eo#Q6&a zN~GOC3*OA%?Vy-O5Wb|Xu2VK-a`|%b6)fOsD8o&pKw3iN|J*#LG!}PXe1u(Blc+RXIR)Voav1rljp1(R;RpFGE zDFE1^caJ(Qa&{r=h~y)7y3bz`FX2}=A(lD@06buJ7l@QV6w7gz?Vd2eP{|0OjomDo znEfe>z>LF4y!l1mI0q2n<=kT6#!N}8Hu~`bm6|n_r^}8(4J|SvgqaQDtG#ddrS4%~ zS_FlNsvBsHQ^-UtYS}M_3CV$kUZH2R;Lr`?2k)@QDNe#JLmJ*tWr!1T?giHa#YpkY zFFquNki(@=?%=Uh2T&u^&3XqJ`O_x$mz@4(AP!~$7i?(!>#l#fKf`v)n2co!<4TYy z-}X%qsR*Yugb;)%4=9$;e|+`_vacRRMA*1@LSTTki_ENMTn-hr)uVF_BNtD@R-;Hm zS)h-WMuuTx_LY$EDEO^Y-bK|t;#cFy)5HD-HU7m=AsiQ0&#$i``ZPjI`0~sDq}tZ3 zbm!ZK8+uP`GQQTT$#3(-_?2t_WAD$mcEc8*i5p7QFR+uq0WWkH_jwiFplb4BNS2&yv5e_e zn^_}tPzZ*B+44QfweSPuEVx0SFQTH5&j%nBYMI9Id)iS)nw4^mkOl6bo#$1*wvHuAjj8$#?gfOn%IR*|B{{`IDm$eX^AgnKQ!vq z;Jj}JtbK}g(4%A0SRO!@F}auk^)HWj&+shDKonV}J~;J2Ov;guN(wlcw1m@j)usY~ zF2F##Ndy2q1uss1(I|XZSY0#Xkw9tJz_W7kf(RfTH^WS0b5Myp8LkO(R04V~iRd?w ziH|m%vS;QFRhAqBhEiJhN8UOG^!`PE{OKo!ZB%401y({0p5XYf@v>^QvT^D$r^iW``%@&`v zR07{N<5IFEhj(BEd;>|k;9CVbm4H*Nzb6?|#$ulN4GG+vSVNhU)!!7IgaM6CyB7i{ zNpp2>qyzT?4w_YT5xXOsAA$QAYeDZ>MyGXz9^Og}L*aJCyj9azx3^DcjC*^Q;r;jP zz(eQ{NjVO#C#LvoaO3c*QutQH4;sba+hQW#ynnL%s#ED2?cTu=%AHuibj)*}0&FP) z5qiRb{_`7dPT@5UBDbWfc>n3GQNGLIIg&s;$uWw6p#(nbmAIypp>!znvuF~F?IUE} z9$@Lzx3lf!v^aJyrBPyb#jt%6RIoupd~R*n3ICSKtOe3~?G~7N3SOduAdaTR@|q1N z9&l130`pm6JSht8Y4XEaN1Z^`BpO!_aCHZnzkb*RD@VRI?7pqOmkf4|!f_8a;W3n) z*i`1}MqWW=FY&?in3Z)+ft`agNHn|+W+@Uxc#)c0OCG2y0?eoxQ=yg%`$NULstua-ZY4t4~4 z0}W<48iIp+;b@?oGK7Hk$!f#ld$mO8{iN*D@St zr5$R*fXf90E{n(kDzgmXi4jewzBKtkF>i0(kGuC;RbmK$Ythm%qT?q{js4>>y8b8G z5?BV#2n(f%T{Gq6mnnyM|FKK`M3QgXvpz9yV=NJi?QzOE*ds9f`VfA9)K&h>y?#$o zrxj>$+oz*JV#D|dTD@vn~xZ2dH=M+-U%fCiD1!KunL; zX;KJ6Lqpl?qGH)G*agd=T)xb?H>2MGR_c*3@qW1~k2=F_n2hG0-0mw|58rbN3$ZTX za#-L@#7P1zm~O*_qfQzKRACg3j3x&=)NYA=NdiXuHG3kFAp_TlA@o|vBqTW}F%vuX zFz6!CS#|zBL_MPze&a*c4jgtb|Ju5Ng{1{0Sc7ZfB!nn3i9)cnfdv}lgm8dF1TH;fZ$;@(!ixiY=8)pba`v1YnBRY zzmQ;y9rY8`I3x>lUR@&;i#wX2K(kJ0f|7yTR^#9+k~TkF?=W87f-M%q$M-}eptt));J5)~Sfy@`y57D*!6L?PL;h-jb?LS&XQl9|0DWQ8Kxdxb(| z6zP9GeZK$y@0|ZR-*Z0SBi`@Vc%J*Y@9Vnm>&BZdZDBZR7({JKQC|KizS?~W!U1pc z%lJE!!X6ZE2jsD~Ila>rlE3+x06GWMazGvio&{(vRH^tB15o_;UtqFl(1gpW%#0M# zR#A|I8S96?%CTF!JofkQ|M305loYzHK60#fzqJc;4IB>PgU;+qb_WXwoxn8XQJtw} zDqyVktr+{e0FC%zDTEQ_qyN%g^Lm@w)wi%V8BQRhC5_O4a*FbjYRS%p!n1b+L(xdrSSzGre$3eQjwHv@R-vszxtNV_2*;U?;Nh=I#OrSEe4L65NJefLi%k;&t#It zjBT<7%lTP{(EMCWfOWi`O6U^m9K6aik1T!+nKK-ZhEcw*CW>(+e66St*o}1FLW`q< zHvm~TX&hIH9Kv{sNnSxR!7LG`Rh~?&4D^=ih#E=>y*(dBouaCt?G~)z1 zg`X6WHUNlFLsE_YDs;2KI%)?=+==JPPpB-k=HA~ziOst~6ap9W_yX%8X}o=CQy%a4=tDhOG`{}_f9#B3V))ECmI2+*V$ zc$j8w5!hxZY+{iS$p;cW0F=7~p9Fl=ilWnu`OCcX+V-?|Xl}5bc}U;C^J`XsqC|#{ zt4t+S0?w4si_=$F&|Zu%$_-KiCr>Cl+zKmZq#NKLmP=A)luO)b#Y0Z74rx8X9npyM z8ZH{Y@j0Z_#WkEm;`CZOHS{z!60^WUEyd~ zA_@pXJs~<0K^%#qDC%CJ4kIKoD?ChfWVUH!Uw?uK7e~N)5O#1N$x&;v$8rpZ1RU7q z9C!uNrBBEfU>%UANp1x11DbFrt`yQUc6q=$|3vTFHwIN`0_(sMYLGNTZeQ32mS=c`xS=bnzgQoZ^Tywq~bM17^Go= z;Ai_=Q-rblgfe}S=|baZ8DT+ z#vt~~1KmSnLE35Mh*d>u6QvNAA$(pK$wtI6-i)Rs2XrIyz>Sj73|N2hL@@!(lRQJ* zFYm)X6fkf{fA{(WKz%brG;Hb5c*n2E1p*8GXUGmh4YdiWX^94C>-l31Mz{Z+2LSkk z2zrC=`zJM5YcsxK>V+}_!tLcBr_m8yX30$aGU1;Q#cNcAJw=@5d95TU?gJ00+njE= zs@#b#qy&g~Qq}?4$ziq*IPfx#b}5p@LsxI)mdqiy@=FDp<11n1S8f8Wrp@{TQcoOZZK@HHg8v#RhzCeu zK(Mg0B@CdoKy|f{FB6Gho?LJy<_ZvWCW={gHx#o#X<6 zickAO|%|atIi1oNLL8ozm6cgJYqC+Lx&BGeNB~Awttxb{x zocQA*kO5RjvVm;P9^k50hit-o{}_WH)+OylkmAgLPr_^DMweAjPbE(r$$+#DoU0e6 z-z7ub(mTb$XcH$mTqqxa#HqI-J&_}O1JVv%E~UsIWh6lXE6-Ful5yz2*Rwq>=|lY= zm_#7kfo^$jeJ!MD>BJR==xWe*)q>e2$%wsZSwdKYXiOY!qbr1CZ$1f=>x4VukL5KV~;XGSm9WZg; z4a(X?DTdln8^UDLgY_+S2ilxOY{rqfA|2}JGVU$$?RiJU&OmLxhggvK8j++f1RPletyY2USs4 zh(%Q17sZn-to}O+0ualo=rz!2cy=+}PBSvi)nt#2mhaQI%$LuCqY-odd94^wkruRa zAy(?kz>)zisS_ewXb`?ib9nhg434AXDG3oc78takg`#omZ7#)d9uJH~UH}v2Cd+}(MQ?FLB@!@cQs9t~WG%35G7lm9+NXEMG6-j` z#h61B@)t5Xc|7;r54}V~iG$Nbl71vs*RjS%o@9{q6{fcrA~YSB8l?42Ra8`RgbvGD zI+u>bg(m0w&2N2XOzQ>8R2iub1Pg39Y@43v~l3;+4s<5X#}_^Hbo z?PtW28+qawPAAfsr?yo>Na#~wUk$xo(>J8!P5A6t-3B0*kgGliACrjoQX;Tm3gy!lKWl4` z3@7mFLZ@(8D1>Z<*1)%(GZ9clZTmdH1%f<5uL%JolKL?+N+r;|9i;u8+CxVgdl2ti zqyv8a0M$VZx7Befp>BSG6yb2);gP)xX*&5Y5Y2|1*hchnJbwH-Tv#y%7&HM+O0Y;b z1E8uI7#jG;&LG-HL{?T0qkzO)+W{HX@4ZQz(K}K1(8nh;-yDf~U@RgzH!{N+X9HF< z6SU8T#rm!pg{Z+I)eZ+~T|S_T+#@CQcf$L7tCO|fG3&$8|W<-?`A0OXY zX^;?4t}fkVs6ZN%4G~QX&=lmcwHaM5tb|`+V|!-w3wwZQv^#jE;0Yk?_6^3nfx}@6 zh~~t4B%+h?>f10fQU?LBZpInKIyrIWo6x<2j4$0UJChWYA#1)u-Ay`3j5J4y2_<4V zffaB7YU>G9=ktEep1Q6u!bGwB3K zQm76f|weYA_|^lp0EX*?@DyV{hJLmC|LOi?wUQWL**Vfziq1HWl% zmy`F($aIe{UR{w%xDwi3fU39!WX}uYhX>>Pg4qTs0L5gC(HNlhOuB>D`K$Ek=I5u7 zc0oS$3ar*|EXWo>CL7sgbqL=N4JTo%Q5#(Y=|oBvawMa(@)K+&&T@tgvceq@za)y| zjZn`-*^gEU!HOciH#j6)ar_fYGc#OS$P(}D8{V(C>*wZRI7@t;K!1)CuQAkV z_~Q)Nxsm)`2yJBrRTUN0RaFP8Ea=KP15MC|V9^E& zhzOV_=J27f31WhF43DjifG^X4qZ|+XNt%|RQn*wn;+EcEDeW@L-Wk?PO(|`e{_aAl zmT@MS^08ZV&tsj???B2EV!cmP9xcM?A0P@ABn4;g%zwgDA=AEyGz>~X!`vNaIOS4D zy-^ILk+vsjaY*X<1&?hGw%lg|QAs_=@lPymF!Cs%=k}6Cgwf*SA}5-_$FuRo5^=5A z?xDoDC7XWhT^Qr+FVcST`z1W!z@Vm*zj z0tuMO--`!niKJfv%_YwOj$h3tL=LLnK#PIF2^;diKjP#6qi=O_wxXZB6gEr^|)r=?hxBST7KY7${&@Q-$mT=~p_SLud_7CxYS%j)n-OG`77_z0l? zYT;izT}Zj{6)gow7l>F(3?8r8OG>0O0zW6y!ASQP`B&K5ac~WW*^dxw?^upJl@DwQ-cb%fMEomd6u(ZWpLXoxF}9?nA2(1Ku*hJP@F zc7yngA29lm0#T$MN#=->6Id!S#m2`aqK+Z$W=I#~0g)yN7Z(?kE+3-*A&N_WoxID; z-IegW?&;|veT)DJ$-J+t4{N?;AnnE}u1}<`}vA{oyGmE0wOKp{j54-gNzQzD`uS;dH589J+h_55l_mgi0s zTIgURl;UB#5ntqJ#H*M%C5Z<;Un}#4Bt<%{Xr6N_p*8~&gKr{zkLmd-U_jzr?4(KNbKl zQlHcdj}&MkufW|AQ43Owj;2!msro~`pD|G>4!AP$^Iq%M7%5TDpHE{p64SUiNNue@ z-$4cZ4pg_A%KJlX@{uDwxZy0@VTHQCQV!!Mq&#zt6`v>UkDEhD5B zK$K6y2GHdR=(o@<)bw{{;fPnTf8?i4l)Ms_Gf33`d5?dXPzM)o;;}AxJ(wNnDDv2e zjy2!;t6tYruPol=3R8?9MC!q?d2_&l#0P=>#E%mKQ!?g@cyl^BN^ByDx+|aqvhGM! zmXg|?!1c}Xd0y@LU3wQKxuR=31fg+6|4t%SDtVXn4#*gfIAF*Q5)|TcTOJe-;HL>Q zF`k3ZmibY!%`qq*_bmeM{-At2$BFtnP&B)D@=%`l3A_0}oD$uxIP%Mos`LrN`=!-# zb3{g8*?MO+^=Ehy$>8EJ4b*xUg7{5xO$c)1@DL?rOUSo50wlr_m!u%X7!#tnZy*0y zLH!4u<06En1kc50kgT%!V3%PDt@(&8+Vjdcj2f+6Lf=T?1luCaRQg`;4(k&QJ&8tS zZ~79&4bc1$Ndq9Ywy0hP_d&3gSKi&^1K8cj;LPbO}0-I>|Jqvw@J2=%au2s%DA(m?;ALBw4@~pt~h>&8Dfnv=nP;R>K|tdmdgE zSJ8pXDN8&o`jm*rH>u|vHm$C{TVcAXHdG)DdF&XnlF!6u0yKtc+1<4mK;f`h0t4gg zzgz*(wWls2q!~N$frTXcI8xqHsDAp1;9dCSY_g zX(gqUcIQJriV7Jr4RgN<;{4~f{KE^8C?2`0iKZ;%P2lCTkG}Z;gc&7FT}wgOtq9{U zSig90q>=9HW>F= zTyYjQChz4)60k3rxL-;ix=dv8OftYc*P46Q&>O!Aj1d3NHPqzPmHPb<*Zu_$~X;80J` z-`0bin2q}o3V<1IyTb2K@m8G4AcXr-p>nyvyJ&htL3e6Ev=E=q2`Wp71i8%eqZtd~dY z=c;@Lsc~18%Ejy{eTr~4BKqZjL6%GGY0MW*%aE$$ryn-UTZK2&}FlpE1kf;b=j^Dz<3Akq#Z5 z0alaqm)B4Nq&(&}cSo@`yj&DM^3(6(LpMcgmWYbGQrO^|tjRulSOupce;hT9KrGrp zBoQ~tLEZ0kWMy_%1!ptNF&P{pzR11~W)YS-G^!NZWcoFTa96^Z{iv5Psg8~u~ zdCIlD=yHU@MlC^!1(j!^@;ue^%QS^7oJv?-STJheMnsD-+ItuA%_2=s)*_QL?$aRM ziLC&zT^`V4ULh7rk*nN!xW-u%vR-m-Qm8GrEd6xNUq13hpTfJ%**Fo)m7v~wpsj74Y`rzti6dGjpVeUZRbVfbBM%UclZIsq3|bs>Ph3f+Qq8 zG}QK&Pf#eqii(ZcdZeMk-LSNK<$=(7m#H&!V{1!Ww*M@C_aBGN5%e&|`9kvcp~H%2 z&ZPg|!71OBFT;@!Es8g7?z2IA96!+4U%gZ31Qw5sx1&C>hGKnVayoqvA76dHQPUvA zL$*V5KhgDg9f7UjdroK9?|x}-f!S=005DGa6bPM)1XdmGA;Ap&DCi64w3Y-NbbxG3 zeo0{)=RZX8(~08$09lin&QZ9eu4(HXlip^}t{@ObHX=AdhNg}$pw&?VPRz1-Bc)U~ zU%Qcw6i7Xi5Ib<0z4+YSb592rg;?uPkXUERaS5LODN$U)`#jb**Q~93oR(qxzu(8D z{6t#i;J6+-Tb9!eHVTMOAWr4a*>&D>-Sy#KR-gs2Z=&r30j!2LeiN_3&1>^H@}o(# zWVrv|K>5k?W|6^{)c+c)XgW&5ZvA*H;lPK6_&`F;!%3y8Km2~7;Tp<9${}S9qPfA_ z`0R;{e#G<-GBM(}>%o9KVacnL+iErCTgFdA`VUj9A5U$_AF~;+ojR7F*tH3VJK zd)6s%Olm&2w(+MrI!S~~m~IG(wo&RA-Av<0IQ3paM|0c{2FHQO1NlC{V&UFqci4+y z;R4qj`lh`5HTua;))=w2lx?>@w~EroRFptoOoRTVO(d^G>>6tOFC7I%iT5!K)4&s- zs3d8WGI~@xvJ}uBeD2zkCC_t$s%oQpTfiDyFVqw?1mdv=iv~8 zlz>2pHjbRt2XC-ax%Uhl?H}lY(#0<7ZSwAGn3)QAK^28Dp@btQmQfUwmS}u5aaBjR zSk{A=YbbeJZ~WRHFX%NMhk!3~ONQs{i+4<~4;2m`-=$@n|8B>F-H#<~M$IHZosj`` z$WEeQ0QCH6-`NfS+OGcp>01(d=8{9EFi!^^F)ElQN!&uos68cb21=i|&M*3%b^}?0 z<6mj$eJ_aW><#nmvdNwgW=*KxB%_p)-|^?!j!B&x!7e&)aYDE2j0*5jlhLH4wFosx zBA8&Z{Mg~Ea02bV9|75t*>y+;+iMR8h2pFYtV~C>lvDWR6(R>${pKl8|PU1 zxLiD(*ca#q@f=VZvk5VsUk2{2m{I1X*kT~O>akOr1kyB5dN3o=T~sU2eZO`*=r zuX8VVq`zl&Ad%Z0KPlzBXgMlSTyk+Dv2v)_XtYT~tyV!d~=X;4(; z^pU)SHr`!*zpd$0?W0+Ktpr3!D(Q~3#SGb0l|02_ru%uBf z1Ci`k&5^2@Ox7et7=%}tjs<5IbdqW@?Zpxo7Cy2b;LN7)EQ2(13@^S;D>r2Sm~Igt zk-)v%7dH=Pk?ThIxoJhg%3P`#1IR)Sxrw=h=fW{?0R$#d)(u5St!yDB9q`Fjp-??l z)27ld^eK$CKQ8u1mUzHpzjI`Pid29$Ssms&nMeEkS5~LrcSZaUwkrMPWsNmg-YxvV=MG2VDm%j$W$jTLr0iCMsJ z9RJ0vxOWPXGt_%C%IEr7b;hK3%M21!*JhI*Kx>5tCTv<}wF1nLPi!u<>%Nd-Q@;u{bj9~kiFzf%O`?~PaFc|ef>C!jy&X}qpvF_L z*s|*A>549<2iBTTxz(4LyI$&Wd9$ZD-?;H zjraaFBXzt1pF_G0QCTUcesKfaMtf)v#hN0^`BK8hejr#9x0!Vhx5>I$@_O6*E)FH# z{-^od)LCAKvL^f*Y;d@7a?+l)J2BNg)B4$e@wp$@MB*6%xA1?Hh(-i2kOVtonG{G2 z(7B=YCt(O005vdP2TyOL%>URNchx3zcIa!2GeWIXnZw<{2bjMkqb`${^~rr{U1y&#Fjzon6zXQ^fIBA(zS3EMQGe#@t_Zr1-0f+jz$b##|G!Z;mPLqCi>q|fBjM)iM7`8)%n~Z^M zf#@PR1A@I~7?4mTa+a@lmma)lTQk5vTJuRp>H8nHbdQOO?ELXxMz8dA z{Go77@C|H;nwV7R8j~(i)xGoL{hzh}9fdFjl~)06%bVupY`pt5D3Lld6d44v1-Ba8 z*4Fl7<5tRyJALf|pTbB1=Sap)&SO^_bteUGj4C|bcDmk1p|dYsXRZjBP8s^Jy{GWb zz=K<~6kGp_#EnS60%IYEs52Ys1qoxAZ3$Wz?PQknIjfG^yr&)>sMBpYXF%6dw>#nQ zL9}a=Q78bTqF5B(3@dC9YpeQI4<1!FDCqzbOZ%z9D^jJmbZSOl3Di;CnWr}Xce;?l z+W)lqA+45q{p;kLpt9ggL!%QJAG_5`mg0Sgtf3cGiGzgsMoS+sXo4(otGo7M&*?O_ zc#ezloH^e1#BX&Uf1VYZVQr2hO8~H=7KjlJvUnoexgqSXXjuy}aKaFv7eLU66brEN zNj6T(&{nqxjBb;Q-)9gM3hI7jRz^)ktMBG%9Z?u^O6 z)&F}f4fO&eWr(D?V3YYssUI!VIim#?$#yuEBR5L~eOCY(2%vsWc{06?w|oiDtU``~ zVMkb6*@szAsTYb{6aH2)SM9+qL3my#oN~+t;Yd&CyNgH_SL*2N(d<2~1xeit)&i4@ zMhZ2><1`FnlL9CM|0nAvF8Y9$Qy|TiSAl>6^{q72Mx5Zli0}&Win!>YqwKJxA*Gr{ zRxp%q(l&bcpY+fe=cuIv5C7M4g{{Lgc8Y-_7%!QU_wcmnxI4_V-}H#(OR%MNv;sN8g!yQKO;Y}7Er4ne(U%8tmU=~srKKx z?j&t$nNV=xQeb~Zp|lSEK@IGOJ#b!TE|{Q2_^VOpZn?ky#fSWJie7E{vk+Bi)o9;L zw^5jD52yF@^{Z%JT#b1_z5R+AzwH-8`R1rZ;Tv&9a>iBh}<_FJ=SfoyD>B^_{_s26c)>+-D&8fdMeJGF+pg= zBV+ECr|CM4u|~m~a#tVx`KH40mUPSR!^j+0O9P-wN6=nm`#b2SQNC&8#<-_&c4RuF zA$ftfR_DBY$u8~4jwR>7E5{xTh@SiGg4v$s=)KeUp(k7`x~XC-hwAnOBkn@u=jPt3 z$9xyA&*$i*wK`ey>`6X)m5D=~m);Q0(_VZ^8+kR-DJwtN{%%>BrvDpo{+bA#>b09O zk#6B{EZZ;;}7RyNup1W&5y@?M2EoOZ5pKP-*- zkLT0}ng{6N= zN>TEg$L}?iE2NY%m7YC3uQ?&=Iq=yyO8-j+508;*WUaNfy;oiGV*0Ab22b0Dj2bHi z=~US@-d!_TS^i}WlC1pTkzeu}@Wj$_Y&S{=pq-qFUm0905IjrU`sm2@b}>6mV^bT2 zhf?$om8)t-o-3|;q4DPwXIn>S=e^mAAur*=@i{e`(8Rx9AHPjCGSKQh!#xPn1s&9| zQFvZl%u=#YJXO~F_fKy*wsC((9sfPFrKd0JHW-zFQw#v=ZVEm8db%Q z#aL*0gMLzdQ2!;4(B4~XKkPYSFaB;I>*dS+gOP$lToILA{`CgdVdR^*U7kO{XknI1 zk%y-%1#WL4N-T`#-CXqNyOkG+MZpPP@>P8v!a=7EvrljFSB@07lS(ML#mJc8>guYT zc+r?sDJV6`xp)&KZ=!%GPcQBAe>5ET!C`#K^0*DRcI3EDWN7}k+V$Fz4e#T2!_s2? z+m*SrvkC6T-n4A2)of^1MlwQQ3jR9S;S!bulc)R!T+d9E+j5mPI@ONGsoYs88kI>0 zDV&@M+~|tOlhwZxH1D(j-@>O7n-uj}zH;RXeo4Fy?R!G?!VCGv33Lv->eSMdY-$IM ze{f~K6Uh3j65X3&L`x(N6B}b5h}Jm=aUYl;0Koc7{4_N7%md@5oW#`#atW7#W00UAp zhVLszLUI*r#f&+OlAATWRdXcxcAU%%{x&t`g$ZDko}clD$|Of4MJ5)Kd6nvfjf00} zo{sEqw8%9dT=Op&INnV7AV}A|X4*JSL-ednrSth5iMXI)mIO^dxr=MLRat9ArxLG3 z3LG!v(2mR)$XaALXLDFs7=#77Bfg}YYDI<^Br9_bN{Ox3vHEpy;y#yf(J0=>k9&Md zVsL|Jh80Luv?RudJTEMiirJ0Td;fxQjIw55!3IRQ*-x#mI&;QGHrIdqaf#y|K9=vr z)<{XQxD+XD#9Jt=Dym-WWIO5?r+u|{hV{dR@I=|!hP^J!y&zoHQV7{-3!_pOY|F`plqeJ3AuWJ&VzJCyl^zy0tK5F>BhgyjhZG8v18T?1cViB zuCwJHlkiapVN6K<5~ZmfIg_VhS$pwq%w)AbK;xTe=Z;B9*~nis{f_y{fx>Y<*^`+P z+lT7atis;=Zbo-wKlFrmfDh`gSpVAbO((U&cX1zrmQy=|E=2X2~_s>_NB}wkyMDM z=^%{$ec`=#WV`R$>DD&zlWFgyZIF`o#!xX^S?}v_D*J}wqAJ-xAI7Q$o_5_v>wN}~ zNXzx?ANgk-PTRCZ#8-0JF?@=?sdu%>b7|kdJ9EMTd}p_;3pyj=^C#S}0YBYjbt0^2 z507MXQEOnBe4x?&4cfEjHnqVKFIw$hCF$L{+2dHnrON9a->1+#AnJHKd;>o{hs8{h z?4ZqEF53UC93@G2(0DArfB$}tt5Je(?f))6$i(2-R`wVPqqUUo0nxgw%)G(R^V%Xm z^Nn9#t7YF7^KS(eoAFtf3w0L`*joVSDS2y zj?9LmtoayVv@0a`@H%Shemv>BY=0N4@Zh^0TFc;4)Ktq_F6b*#)P7~=lwxkd^}-Ry z=tdmu?o$$c95`gsA+nJe^cCq#&TOFZOVdjWefQ+XSE&c17OBo*hI`qza=z0Tu`R7y zpqvolR=iR^+*G7^{=8hurF#tx4IgF#a_2*Hmj!(VxP@6UooGzCm$C z+q*n+Xj{V;JlST&U?;ht*rXm|&Qr%@xD|2ZqG#2M-@FqV6O@*wgMi>;PtRnE1mBe? z4g;H7@8*I1y*65FbVg#7>uh!;eaY};#*4T=Q>VYO75bJ{Y`>~ct3>Vh{y5?taN6^N z0gvPVB1HdOnwv~k?%>JhmX@`UEx6w(nT?wM0EyXQ$&W+v$BVuljEW zH`^0VruDWlCd@E>pjPree}Qjxvvtcvp#Ka1ZEyN!F0X;~H8DPPR6KOFh-5r;L3GIy zXpJ-7ce6Q^1=A9F5hrNBP8n^TQGGCWN&V4F=34sl%D{t(Sr%hgZK@LaSBxj@6n{Jv zv+Uqi%0I&3MQJLs3_R4A}(-VcYIB<#w_@$C1>Z6nEN?yKPP4VkFBn!KBdDaa6 z)xJd|J_d@@(O&;OES%(`RJ?0yqQUQ$BBjf0I5onaIAm^WYB0gIPu_p+;bXT$ZbTaP z{%Cu8zHQ*5zp`yXiT_SK$~w6%^qb=PU$@RLLv*+Sf;D<9&rnO&%j(6$`zD;vG>?l; z+z`8fhey&ACR`A?%T+gnLS?eG9$oclr2}hb9-nbBh9)+MbALp-xX=7~*Ir{w5hwNy zXMgT{Suj3#Qo8X*WQf-b&4}8oW3O+Ro725+;Z{6%PI5Sb`SRK=`&<8jdG?g7q3>dQ zx=;0e`F%W4(^4rTPlKl%?jC#E2e=n$6B7{hUtQ$xX*_st>ldL6l{+a3Gk4@|!sC znWy!_xwdurVb@(tAAt92{KLMJw&Jn*?YFXfa84UM3xGFzcV#@0SgO-?0? zv52OIj)CBs9YW);eCH;lO7gWLg)3toc;i&}=PY^ErEfL1Q;Nx~=Db5hDbIv- z*lnv3anu>DXEnzUg#@bldFjqEM(pEOI_VZW)V=U0yj{(T*QYtF<4b8N1&hBNUBldC z+wUZI8h#lY-NL^uUeWp%Jcwe-q>MI_aNOULc3VsbK)f|n3&*mx>JOjAQ@B8uPo7q! zXTXh<%1x=x?asA|th`DNfA*g9QB{@TV5`VEA>jPyeTGC!{&>ryu#*C58Omv`23N0E zFvUMebzaMWSRU-&wqRu6!lSyzr#ZRl%Fp0@Rzv;OrGh8#bn@XCVoR22nJ#E8-gG^C zXBSKxtRVv{N7}K0BsKl8fzUJodH0@HkJrR!;*?BI)1Jl(7xj|CpG=yZG!_d@iKfPC z=j-J~{u%Ji2j^-Dqj8-VLWi9bz0{aU@4Mt0`0e<=#) zj0U6&zS}e{=5g70zzN~TtTA12Y8OL;U%q@PC@DGiQ!y|krry#fd`F!^P*RU*)qYd} z;>i*+3W1CX2!R4X1c3R&wD6^Ycd|rWvR9z<5yuuYH$FT*lDcH(Nm?oT#rwRDEbrB^soajrvJb`e1|5eMHEZ;0m9>`4i!trq{o!yD zUg4#Tt#mS|RIDKs75`({tv0rmR`8?{qtuAMMXu4BN6wtbxQ_=Eo<)mSwTbH zJGVcrZfmu@Gb_2at)k_u7tKuS>F+nViJlaL%a`{|B*)^!q5iGCW$D4$zw_A=aelvy zq>rMIXwC?h3Uc$d4sbUJbng@(tFW?z%jAQZ{*qQ6Ja?WaBv4xxeizrsv)=3b=usJx z1(rMv`0lT_x-H^@E>@G=V7l@lzvT0@hn5VZ_AUCv>D0eeQ8-|#UR>YRbG%atbpeHf z<6v!^MZuuxxg8JVvuZg7P5h48Jl10vpZo1=)7+|-_PjdPnSQqf1)Y`mqobpfGXr<> zBMz5Vs#&QpCIsKgt2oVQoD&JxBeS$3pe_a9SJXgGdXgvwP-}_m}$#|0|72RPdGe1 z;wJmy*%7vl+9*Ok#>jn9p~2wI*%sUP(q5rSEiKu1ySJxtWz~Q^ zbbCJ}v%WRiS51Wb2Usf}PCtH&qd=&^OE_=b;(gAsHxk>uJiRaS%VW%M6Cd8m3lude ztcH&r@~^rsiVN7-N+Hl1JRNzdaoShpg;vTt=r{TcCQ|QZHXNoU-suuIr}q>A`tSnW zy&cLGYGfwUh)~->8m>d5@DyR=-UEC74x{GRAB?i!x}5fR z?yYYl>tXx#N{7eTC*DFE`z4cs$&*W1)5~L?Se=KdY@Q5>Dwmt(R-;()=(H@{NETIFt`!?)x6F^F z7<$+BvU7>&%buv~N$y`ZIkKdg2aCY|qS=OfXbdk0XV4!Tq_i*L(BZ>0;8aWpr$Ry) zuUS|)Fe(b@m+aoYJ3@&UuSzdt>z+)(A3JbkIr)Hp))RIM$D;=sUlFFl~ zaN*5)-T{}>l4n9HoU0uJ;=eM~4_rJKxpDwQ zhFZ7-BVZp&jjvvngJ}FUFY%UJj09iDQ_Y_Ru><2WM>*Aflx6t`EmcyTU1ysW(<@D7 zr@2BASSap_qf^rFEFKy7y>o?z;@^?IT;IFA(Y!4k5|GrA-`5v|j{Mqo6Cr{g&_e9! zd5Qit0JGoD>b~gi?w*F5*5Of74V?PoGnm}m7@oCeu^za`%l6LQo{2iO*KA&^MjG~q zcPnTfsFS@IT)y9Q9~<361Dn@{Q(0$X)!xd<$)&>v@aCTheR^G8-Ne`pN9}$Hc=4#n z6eP0*M*0|5JiBpxQ{J0_th@&q45uivjfQRq-MyA25m9<{> z&)E6$1lc(*3FOF8&-7tEuqq$8?~j8#doR55$G2hQ#__?G2!X_Q-j zeTK)2N4j(2?fG^G%{y~8l5GqxF=uYmRl6OYoI92+!M9a|MWuMhVnxb(%~Or5-}LPN zo^7UCdt}|4O>~Q&4fMwMK6I&=F)R~2>D4KM(qtp4riKOFI9^Z-|(aR>iqotJ19Pas#Q3!N$qdmWWvFh^2_gs-Wy%p z5VZ}0&`7>oYHC}!d;xU9UE7;`1#mVY&GSGn`RC?_3~9rxCmH#J_A=HPXoPJmydm&& zZm#};Tsq8WiM{0Oc$nz~|iDna7=*w~$w zmD@}#EcM*lmjWmKQJ4#!?w<#SDfjZG6z}_5^sv%F0d*gi{iPKZYm)VfcgimJ)0bQQ z`C?TDSIaN$SC}|fXE4%vXr*muX`S)k%c=NsS;s?Ho=2iNPfCoI`w305PX5+t=W#AG z4fUk+cM4?Byc_s@wKCwMYglrz17m{Ie)?6zyrXoCwyc#^tIqJt=`Pms7t*EXkL>(j zOo*Kq17-w2_F{9Ok_DyhaL5`(Q;fJ|WGun8~|Lv5*aWOo+ zjmS$6Nn=KIIvO9CcI}co7zt14wR(TX)e|DiuViIsmsK5Eu~{5Ccw~c>b8|!=XoY(K z`VsYZyY$oQyMu1uc6)h{tsKPVCjH+{q18Xo4YB!;1zr_QrH>4?~_6`nlfvIij^mKFqQxjVoTPEh3d<6iYJ!(V{_}Jbq$>Zy?3Yx;MiSA)%RwgF* zH*bVSB`AJT%2N{)BF+YzFL{412wW?9oKsp*P*CpZw|m#LF(Jq_D<8ccpQr9CdgBkC zhKJuRDUmgkJdXjcvJ>OyvmPtN3Ge4`8L+pu{+O?ap`|7j2_tG*JU{qt!}0A8f8J z%6X3&zdvcxKjF3;)-^(>Uf*Jl%Kine-*Qy{(?Ni3Dm5>ePg)d*0k2wh~B#6!X z{G5@VWPfycQ?*%WO^y7h?Uup2UGc*Xxu&wgttU&ymiA4BDh@^q3>3S50UU}M$^FM~ zUc2mlGBD$~*d)4nn3u#o4Q8k&=)OMqW78BY_u?r9Jz4v@&^kyWugYSh+sbT>arHY$ z{OOM@meCu#v^F)ZvT_;R)$b=Y>3$xF_jEbi%4XtZx0v+yHxD+D<|#=drg&x>nPH6_ z)yF5_%*;J17vpOmzN!+OvXQDH`;t<}K&e=od`sxrA}4bZr*zSJIo6r2=Px~Y6jO%- z%A|Ytu#f5pljhv&*Dv&klFm4UzRxp%otsfOzR^Q>&KPrtl$w)6r3=T6o(h+_-ud6z z1em(ip;ea}-RO77!7Gc)eRtmNw<_7;F29?ft)sX z79Cs|RxKo1w3)(sqszu)>pH`qm>w-F0J;=YI7G}~_0@NDFmv(-O@>-p-e?DP{&Hdn zP4IFp|Jsv9sTOix56pfHRBrSs12Ly$)~z?P{3`m~HFnkuCpy8*wvHbFl7dkG2L~ zZca{oiR0$u+Z76Z9_0-d0Ge0mz{znJjzMdxg0>$w<$iCk`&VU)s~fcYBJa;+>(^Zx zOG!ylPPrui!=w^P8C9uUwEaony}09t@d@wwdS@*a3Q;jo{2skEeR6iaVPs0{#5Fx_ zEv@HzX}A1c4Ow39dOPG~113~t=E*|FOKiuFi{C_Yy&W!U&H9}Y7?ZuUreX==!`vUb zCMF4X`440~G^`#rQcfF5#4ld;G3x#4`Z(oq&{MAy+OrR}_1OMBT3i1H1|Rm{5#K!4 z_I-8!IHVh3@YLLNer~fz)=-6Xry1V$?T^ag=rf^O`QE#-Q3~f*V7QTM(;A}`mxeUJvW{_J?vuegq6i;!@WJKMK?Mm3b6xEzA zF;{#`F(=YHtT6-N;(Z6Drh~s6EaX_|4ZDVS?G&H-a>^-vp7(X7OS?5o?<o4R(OCb-66=k-Jot^Zh5Q&l?*-|ik{PQ^xzEh_CiMwS%-E`x{NkJl z-1;$8bDC|Cvg(q_8{N$IuKfke9GQ^JERLObJ6!G^5l$a5Anrf-h)HVZ`O*4)^#NJ4 zsSG#vR(@?6=UqXgYJW#Hu z9`ydY()nbwQP$KfUC@Cp;|S{1i7TX7M7?s4zF(;RoQ-XWd~OSIrP88l&0 zA#DJU^>`OyU{n%MNL|*kuh4>b%3)CbCp}$ru1mm504pEB;G-!esqdl`31>r6macYx zN&5-rT~tSl9-3HNZ|30O*y-j|If)|<(d_w;KcG}DPj=-$dYgt)MPed3vk%FoK%`@b zsdbb5!7`HT=oT`TEDsBmqv@22(&wYUypQnJ3VOgZ6)Vyu`08HBrYvO{^3WJ+N5&g4 zYpp4J%foMU!eX^N=aylUz=FYx<}Sw>5;T~HZHj7ac|XW?XjVNw2)tCc>9TPkb!Fm1 zVXes8so?v!#LQE@g-$=Ylic%GvrhZ;HO&W(DXNi-l>?%U)?tE*vac>Bee-;Btp82; z!((KH+JcRvqLiY?ac8eC#-~sy(kaiCyCGTvQp`wVia#tH^QLz_x| z0q^Xj^Gh2pL>4TE?8snPH+0NtGiq_(Jl_c0KVh{muBAH9e&la<2fufslFQ@28hK-? zN#~su>6Bu_EfZ0-mMyx*_Fv*kyqiVk3yyeZiCtHJ35P4K&>LB}z7q-`x1feG>C4$A&` z=y|JGnXs|oeeQ}ynp@CNrYp9cFGY7aHK89!%|l=el!WQ9r~OyWF5I44ShQ4)7d7uK zVS%GAEv%i4#@3vaf1F*pSv!)k8EU_@&3on7nq+D#8gU6aWILYIwy6cSxp)57j^gF< zxq{ieL|RqPA41<{A5#PWF3rr%-GLM&?>NX~ze4ybJj@$^GI$kJ`@RNSn#Q&!4_oYy z)o}rJ9T!6`pDv)Ry&--_vmj=-hmP{Ty@Lw zkRbSOu-v6cr(xqg{qVet;g=igIyP%zLbe*+=c~atTQ^9KmL3Sz2|PB*6rbN8Bxew7 z5w|7KSabZTq0P?1q9$eO`?04lP#%RWfrs8Viecc zu*ECa4&Dr+9yZ$2%pc@_CTC?s@!-WnvKdJ|E^!A1yKN4mkfl(Na(QHJdg)u3k)&5! z#;dxMJ4Z}2y3=i^=vg)%5nD}~%EXD7>SW!ykw-;oJDB5{xjOoP#`gcR=g?s#H}N_~ zE9H2xp4a?*d!+~zls6l1^~llG2`UOtSBxq#M#%Jv)@i&I;$7R!zQIg3O!U5xW~hOp zA**!ti@!;|9_EIDMT4UL799Rg+^dZEa@i*(<{rJ(tRC-k2MrBG)}UQyuGXz?Y6xaW zvzM85=iX;sQoQ#f^hVQt)~l*hH|^9QW6&cwSnZvMRp^31u;8sO2()6TW1(lxrOy2nRYQ`^b_!QE!&pxi&;2Us*+m5YH3bh}lYEtqEy^eBq$AD^ofIbc;LRD5C~7|$*M7|PvjO)|Dk1qGSz%A<7iP(5;(b!p<1o=9rR7N{~8Ne?TVpp zzgWqY?Z(i*=Mm4F`BNvaC1Li8^z!f4x1MOWPR>-h?){OGQtR+sSvgC#Cf2|1_W+2L zX^bne)iyM~5Xo{$X$$RRKR-WTyLW>1)aS2@W@vF%X?zHY^W$Pn5O#91(w5cfJ-(3FB`R>kn&eguyKJJ}lt@oXC%rSoRq|y8*M#9~B$C$(jvZTA)w@_5G z#JKuaal?HHltYAZVvuR;bmdC4u(R*n*;)}Rt4->1v|8Nlx@?!P+!q$C1V5!r3!0Bn z2s&mOb*`Q+L%wVr81d3%-a`#y`{04>ysN}fnA06X`WvWL;L--C@E1pz4W6(*Lx04k zMVm#J)*x6{VqD7jOKqkGA#bjT;-$g;i2mf2X@j@uWRbjpsl;yvZRh-E0vjY6SKwNn zgm}BID6LtH_pbVd(-b3?<()A3vcu^;6t_>=izTJT$)SgxtJ>z683~Ac4kX4uf4RSY_D~Ig;A>S_ad8pp`QTJSla^V8S4b-yq0_2AXy^n!$oj+ zA(v0FX&HAy0}O>|4w3Dlb#j z|2`I`+qqusGHAy(supWE7J2YVHtM+s{a1cwBO^a($8>G+p_kiLL=2bjuum&Xu#ffq z1dnILoH7e5YY-&#;aiaq(y>~rof^n{Aeu^+bSuBBDHrS^P+c?*y$8kJ#Ls1)tA=w# zblf`oUJ0&;hKAm{eVY<&nzG6`*0@V%=cVaJCMmv6Fq`!rSFa3v(PUNm+pO{rW5TOM zFXNr@I&b0b40$HR`SZPIy(z5goY?c%HIX|DTs)y?-$3}~Zo}G5WXg2@(F70|k*gMX zW=Gf{-Cfc8wzBda_>{jJmHII>fOZ*zjB>D!Nw%q(uTDs=D;W!%3}mWsu%yI@u;RDJ zi8}*StM*Mrt{vw5cE7VE>D}t?*-huNfX`&Zst@1aa7OuE%Ka<)x}x>dU4sm@z3B#& zCXHq#hbjy&*gk5nmL>H?L=oKz18?3RJU?|ISv1gUL}BX)OXqdI^MKe0g?^E0{NVRn zLKDYK;5S!04h}n$Mx5X%I%Q!jJL}ERsi{YzohfyUo@l zw%n)Zkyy~PLw(gUxS;H4TV52t^jsButb#2bf&a3~>FY@JtWHl#eg@DggKocj`#)Ms zdV*c#GkqUyV-Z`kt76ds|G2u~!&ohw1N7qBQ|d&UtUoJbZ)u?`xOMB+V+O(%o?ojk z)NwEiaV+VGlZ~8IKDWe`Q-a&OeUHA%>UNB~cM~n&ihqsBceriEX26GcjAv|6PiF^t zLVFc9PNu_dT{EW;TjnGG^Hc`>`&|~LPXLbj2^dFD`}zC7&ZT?ZVA(lQMGRnY9C#4d zATLGxL8OS6o?zI;KB1lA!85;JoO<`a;s`B=gkQ6=;`n~%!=EZAxKI%oPEvtrz<=?% zW>sAx41|#tn6ZNZj?~x5>FFnRWYq61^4dgTCX{W=o}VY`?FKDc7KG~dzYJ|Ivmwlr!UZ+Mm;Kn4ZuEj>r}!zDa>z31)(|1C&1%+ zy5Xz`kMMQ97->57*K`Wubl>at=5= z&12AISMm9jVIsbtJI*_0WcP*Ux1DJBI!V`Frupycj4mm~@7gfGpaFbzHfOsg5B*l0x#LWxxU5tI^&Op1$=6j!Wp?X zSPsBiS6BBP{NfQQCEXsV;w%FRZYoz3Gz=0gr~|DI#vh z&bXCd1enlq#Ke)y^#1Tok}9q+&!Y1FWTB}h_fm0)u7#AW%Zo3g>?;?!c#P9$X(u+LuPyCW2R^Ig z5TVNsqqh4H$N050Hmqytx#`R-T`#yAkUrG|AV`9~AJ1p+AHe0%2-4Q^R%6ud|U4bYu@9^DTp~dD~?xf;-V};46DP!qCqzR#N-s z8NR=G@e<0UQLJ}-VhjK+KR zP!9IB<;gNUqH)MAuKcBLvEQSLWhs<3>X!`Zp^-?KQP0Vs&&E25{?Q#ZDqZv%*bezCyK4<`Jtznp`s&Z84WfEX^}>OOY+7vbtD=rFv21k8CI{wtg6S%MjzwQ_epWu$S=&A>ET28KNReWl6T+ z{{LB}^a-_%4HLL5Q!Z4>oEBa_Af+-NlcSJ!!VUf;%#OT6LAwe&Oy0Ofyv!9HG z7znG?3Ms9#NAax}<^$%+EM0F0mXBBO+-KSH#`lhBTs-T3mY#r(n`t>zjK1w)-)OD6 zBEw*7*{|)TB~cQBxVC&;H)^9{mH=PIkBqm;WW`f>gJtX)bH??JLFa@3)9d^ZI~TAj zh9`5C?kHd}ISq^{4M|=@i)7xu-}7+`+a|_#QQj(HbwuHX?N2#JVEBrRz9^#2lf*pP(H>{1Y(F;1NiuYBXLX+$c(E_WHQJOEt81279BmCdQAD4e;u`R6U4 zmiuoy9m@=UH9bZtl}RU%8cZcaywAP_S08?>n1P_)wo)HD5co-0<)i(7lb7!ExLtwY zV>X4^!62_Zd%0byI4NcQJ;)1S;{X?O%TXrDCc5)7Uq&b0-2KlZlW34bZCZdz)7QiM zUQ)s#eW0JW#B*x*O6am7j|$hhAa^#gphG5HL2UfkCy^_AD-+F}$P^GJuNKp6AyejU z)f4w@jjmUfrm33b%JV&hJ92c(vQvQemP2a7EsORHpK&U1Jw*EX$^Y6fN2}|&{T18q z+!&6abB0vW7>nY<|;mAV)(-Fw<)hQ3g|EnDWkna-(lqL+M)y2ZNz2^iVy0W zxR>4A>n7hX!h|^gO+y zBKnv2nHi&s=b*5%=u_Z9y@y@r*JIm5Dyv>aF~DOX0$?-5&Rswl({f;YIx@ph&LmPq zmb@J)JY}gBDBw$Lk+j-!vTK`pRnvwWj_T4Vit>90dwt7sM08Eyd<<3J(}Uw zpbPCOmW4sfXiqhkD~XBE*#OUP0^7on4*|N(duB9>>77~Jz|EV(!{wfXn&A_wIOk4P z#=~|df4_(6MFy3%U+s^5 zm3ETg+|H2#(+$OC#rJ$MI^A>qIcmO}GhkDC4A-*A=DmnZCKS_}9Q6KCF~2Juj#?b2 zXK_x`T)))~`=W}&E~f+_Zw`~yJpjIdiLPMn8^9r9brj+XV7=?xycXsD?)&!(V7h1p z*JR4Wn=Ev`f|&)g z{xij!n8uU0CD0@B*>xVyXsh_>YM+4LUz}`#u>5IFf7jmF2kM$yg-U7iVy ztL~g^49fWYURm0t5yD=^HN=frQ=c|JX&QXu#2KLkd>mPU3U55F(p7poYe$*=Z|BWo zDNmNs;}ngVaR%vdnw!FA$6|}OV&>^uyGXF$l+0HO5IQ{|1})RH_fZvn7^q$fuHWhy zpwBXtg>ch9Ef?rgbXnUs-Zz5RuLF}9-tcpqTDg<|M$7nhtC75tUy;{8a>sebS{?N8 zejTFn?X0w2b>l(rpRSPg=A+`v6`@}5#nA;>Z5NeB3L_<%J?Ii#%#7yR9BMwQfV zV8awPzgK*8#!M-rsJ~ltl#yWiCkPQN!1JKBylAKrsvzCf%j?}1{$;@#h|$MDiJ_WTgCss{2?wAK7b%jc!;nwp=zUTUPtLMf2K{ zN#4r9gjJs)@p)Uo-yX-Yz9)|*yx1A{L3?Wx1nEVaxo&R~RfMK4bv_N4rS<+JEUe<3rXF*g zgteXtj6A<&=5(PH$(ki^eq%7PJOo=T9>aFiYc@8V=^!b4bnqqJejy)Cr?pG zdFjO*S0#E^+hy(_uVU}B5$9`#DDu|?{?l0>_&wnHQYa&kvbB)>!KcAn|EJ!XKK%I8 zamUZ^@9)2XB@X|xF)$=?@d!|-Ib5&?a(dKS!07%JcSgd%s!I7q4NV-YydpKXXfb-A z;l$Cf<+sU+Uns(C8OS2N|rg_Qr_7vjpJ)3=U z=1cb*@<0r1j%@KC-vBQuILKEiZ}8EcA9o}Qr-66TValT2Fancyt)JfgBnfBz%zO3m zt72N*;9{DzR0hae>cZbcggM3n!wp>zKiu@vvYhGx=W=nlFFdwwbDt?^cDQR7wCfw4 zBupYI^BD=yd5X;&&=ctMiEU-S7m8%P^@EaHq}aVPFsR@!D3%_bs$VILZ(#3zYmt;fx#G_>G z25609W)=!%IsyQIq4D&LNn_o%R&)Iavl8QMrM>DBzxb8^mN zaIEG`W)C7*bEy(|oP*N9V7Q=j|$ zm391K#Vse(Bz9t@z1;VKKhR&uUNw}a1rF7lWE@3 zegIX{DKNFOe+5%Vc*aX7NEKy1XcdelSDqYMmNjaol_eGF$c& zP1$LVk>Fv9n!}{3hbZix>m4~cxsN;9(>&4;kuZ!X;q_RW@GY0^spG^P?H9w0o$ksRnzc61%oiE%BlQF6sh(+1Hj=TYTElwOi&Gs19 z2nm)c?40qt!0pH}Eg_gF{BT%W?>@*Jsb)yfiiPg~DIY+U`S{Lsc6w*d2TxMFk$a-X zfFvc}unUFP(`E8Gxjyv@;tp%)sCW;$cs|Oy(G*uHo1i`gk>NMRg00HVJJciOO4$$TM~osc zW9)>(6Px!w?n+FjNVczn%T0 zo_I5|PIf~6gy3b#NT zCh1Z}0(q;tTAJdSy{$d` z2`ggRzxmB&R{;}TZ62)9#vRpIh5d_qbiZ*}MpV$HrE>kk0Vg=sT3TAZZx8g+cfMrS zioF!cDYgWeWEQ#|wn49df**{PO>O~q!+ zF%I?6P^DpZ$tnH6O+ojpQky#Y=#+4*n&HX0LuWS{iVCYy8Ki$QJ;>nu+BVxP(? zEk$5Talm(~N-S0+4&1&V6jk&=1{suBmBrz9^1w~VN>kLl>)eXQh;Y_5duK&dpU$0) zAs5Olm0jjNK*q(;kJ9L?5(o!E5lmF#E(@f8Gh-NR`+Xjc=tz z8~4XgD4sccnRb1G%bV%dPdk`U)4N4hO!7E+1V*QZU5a^NF3zp)HeC&u$tYo@S0Hy)+N%ou z@#M;9yk+ypUJ6TFm9*i16w2J^j3}7C?*K4VBv#a8pk@Gm=7k;=S+&675u%^OlZ4VD zYa11}|2*8%76J%qe+SBSFf~8TnUKkx0ys+`&kD)+^(UpVx~6V0`wnF@)Qqb<-Au1u zpa+Fs>`*;Crmi>*)FPKY%xq49&!U+IaU$A6xQJyg-nNrQSK;n$BkQJ!((=Jl@b9ahRPl=R)Y6!r z_F}?5d;B>>q55i)=WjO?FehuG!9iR1292wy<`oRG`{~XJQ(*coe^$4|*qd5#FpgF` z^(_ypo2D;h68;c>yV0rWrSq%wDfxi@Ooue8)atGZZR^|?HMcZcnRl3W)W@K^oXJRU zT8i#hAW~6|$Og?^U4bwL$xtg z6e+2*@7}#D#!NZn+q>Fk4%6K!i@#UB8c$a$_k^>0-m@$js5xg~>d4&RZP9qbjym*S zbJ6*SS?dtWsEU@C=F7vELQpUMFSA3HEVwmTcXiBQS2ua!sEtWu{3^7^=lvtANlCLU zl$(zVi>zzi^0#XiNUfcCj7C6wrMA~~14ehTFul$JrU9RXtoHaLNL>-w$fy)~<&1p5 z%OV#mMP8|i522%{m4^LQuIL@oD@Gojy)U!J*WfC{-J4<1#4X6tCRW+xSY`UQ&9DpN z`w^{fsMKa9;opnZpXq&Uy&F+BkQWLGr6A4}3JP|1_SOH#L`o<3;>mt`C@y(~Nd-j) zw}CtW29LuCvL^PEd7&NzG0IG}{aey1>*X`Z19N66z}NVf$^!l|LYO%|BQ6?{@P&RR zclXK%qtY`2`l32kZ&2q1=SSkJd`;5pPV6CJ^o$Ja$cGogvdyV$5^Z8EH{19ftwLt6 z8%ZMXo`|L0ti`9fU%w>5H}Il$Y?h-N2IbKhi@$G4Nl6leM?t^< z(wG^uxK;ojG3!)*ms7$cK_#_y$XN<(RG&D+)|~}gYG4F(3Km+P30QKmc?y0fLfJ@ z_E=-dwr4yy)SX(}Jv$w7LhWu!m1P>aul5_wC~-o`FUJXN_h5?IsK3Ev_ar{lE=P;# zhr)iG5SS?(K5q4J3)EEjEq};8gc1`hw{$ALYDV2Pf;v`h+BRGdKh8o zK?U3;po%O_9{HC1a*quvZPAv-B0J%phM6baGlO9{i==_3dlNH*Mx__TiGDMlx!pDc z+xflmMvxvjsL20tZ*Z}`+1{lz_daYg3a(&Q;6DYd0q5m$S>>;=S%fd@;M8$+g1Yu6O(;XNvJXBHGVbV;|KKrZ? zug-b&xyPWed$2clufYUJ4QUit=|Rxd9?hFO6g|5H4({U=kKy2C7pt9)Woa#W^5oFJ zP-GB|*khPROJoIV1nPY)(F_Qkz;IV|~%2k;|)cX)8RO3W?F7 z8c^0oIH52QhIYFH2mZ`brIEXSn=x1(39emWNMsiCy8hABrgGPl>sQ8y-L7^B{|OTP zDqvg(Lz>3hcn1+0YHWA^h>r?tqoH;oioqtem+^_C99z)jI+{KLqoH8R(W#f&bJFFv zU@_#_LnWb5cQMseEACW9IMqqyk-qg{@>V zJ!bdA<2td+Aw5TkQ#l5Q9&Nluj90kE!8|EI{3ia4ng_9>%r*~exl z`qoXg)OJeB_B!X43A12d| zIkGEvMCd#d5Wi7CT)>ZhvKyjO(VL~qTFR7Kd#h{ldORCXO8NC5IfR5YsEHN;Gph1C z${X(dX5LK$mZT1im1$f{;fUshf8apFCdOrfl&24{kYj$X;<3rTTAzK z_ol?u_;QftQpxY>2^6-(FWx(6YJg8OSEVFEDk$jLEVOphJ%zxk#QxB&cYoVjWo@eO5XX(R@@b50)S96owqi?2-AoT5TTV{y1N3>Gjv z9P;ulWSWSIEV-&r=|G%$Vn+HxPmsQ?5>!ea7&@>U@MZK#cdXq>+K5pF_u*$#Cc^x! zP}=H;QZ@`?>h= z{jRu_)$l~WU%S%; z@(fdUy}F+2{usRvXjn-KdTL!p;*9+KMC_dYwHs9`- zficaych{Vk#!bFBDt+BKK>;<}?I?@=tc3-z7A?d+(lG6IPCNH}6ukik=Vu$ui_B3` zG+2xD-8=@K##i4h#F`KhHEU#tlo?fWB0QnA@=oG!c8$JElo-X4z6jr!7a5aX{#J&U zfKaLHpO~DZcreS7s>D|ycIVp3$z2MWOksR3` z|Hk0z`WKRMHwfSF2O95pZ%i4mJy2Jq4_Wrj8}toOxeNC4slbE{maDV^A%eQxiJ8e@G(4Iv z^ro{gnnV_C3sr4+D)LTO`Ay2rFC;adP}qt5P}OFf;k8_>f#YIp;Z(400QM_R<4Nqz zpXj(mFa=}_CVCHli_4B1i@5C#>mR@%Pq%CMVyRrInw*HyVSd0h2Cv;eqRM&b`A3e2U^i409jDicl{ma0wpo2cD# zg}jkWAm!#(X2FOfRzz32+^ayx#&qo= zRLI8Zp}*(L&#YVfzGxwRmcPHcHgPLp|*rKZ;bajFuK6`lRPU1bd93}td-O{@ zrmTi0jUz3x6MjDI@>Wxrc5$mOG`YH(nwlQX_d4nqzs56JCgehQnO7ov$~W&$O?*j1 zW=)3~Brf7Q<3^5?eO#;fHm=0!3n>=ciG zFcQq-63CLj{jQb|Wi=P!F!&HH zb1x>G%YD@Ku$FTs$lC+*Ivc_6e^-4=K|L00l^%Y0p`9I*%;fbmW@RB_Fi+54FZHkj zoqFBE(bb9oPw4nwja#-!2%)`%R7?|@p0GY{jJ6w05N$HW!-W!Ew`kPwQI*_gxykR_ zrwA8csKgA25K?ty{&|TCgMw=SJ|hR2xgK~Lz3OZZfjR(;hp&n!?Y>{4T^Q1o%NC!B z#$;XLTJp=zV=5nq*TL4?8rUC9&D$#cTj8mK^-B0%Yfp=8(`T5eh{0nU;7hj;j2*JX z@Y*G)gN)#`AEelh@1G4t2siYMnE`id1TV*`CB^brqdpc!+vgQk$PVTvgy;cy>;*`8 z5?s{B@n^o~uyrqPpW|k}w6CpC)a#_gxYkXpg!#1>bX^{}r@Z*p2NQC=$HhQN$mDte z;FE~mu~+vZwUdia$mZd** zA4Y+$5g6a)_SVo(G~$iF&MB;aq?YGK)83Z zys+;JG1|Odv0y=)jq++O>a0tmX|cVzfrt`&!+(h7qdcq-4n~G|tE+Et9*w_8U6AB8 zYBtg~HLhIy2R0TMjMbz9os%z%JC)tbaaz zluJp?+0;sYGwQi#J67#0+$bvWiiXmtXK}|Lmo=Xo;W|4}85n$1`j9@@GL!8a?gnhI zq*;lCtzSI&5`VXB{Z529FMGCZ#$~6|k-(}25(0DvI`->@>qWGyrAo4Kqy#h~n;xur(oUz^q`uUwApw8sF{6)4u#2_mfo4 zzaK)QeZN3+1x7XicAkL*rKHAzp-lGf!rHw7RfPnQWg%>7ANi^4(;^;B3?M(3%Bpnk)&0+2mOIWbWAY zriJ>vl!@YntIy{@=%u#_4Z|H&r$F(+XK;~K^$P?SE+!ys-mkD74kFuButwB=)NG?Q zH*kdhb+N45T^QXWBr1rTDFFjAql-VEl+b+C=M-dnn9r$yd>RXm$`7E;Aq|Q7K9=kNCn!a z%RxFX<~AN??_7*Y0CDPN4&hI)^r=Mmi$_xy3q9hm0j8lQBvfA}%|g0N0t z-@64ZrcbklNr#QjxYHDcmh~K!J5=b36Kegin*K`YSlNVqPRzZlo*8tYJ`75HR;}S6 zvs3Ji2}ECdjB2v`3V)Dyl4y3C(>!TluK$O-nNZ4`-Bp&-enG$>DgL(70`{tij{TB7 z;FGYTuARy(bEh6ZSRtUrPygjxQs?0pTk0Vhm9DT7irt7Th(hppzxl5W@|YrdP)OTL zG%Q-JbRw84@Jg-YR2k28JR&5B@oA@l$;Pg3L9~ce5OK=^#^jLKQ(GH(SkajDylA}P zIbYc>Wp1(d6s43~2C0D9xP9U_oJ_<;<6iuyw@tq&Ko%e@c zB}TQQg2?vf;{U{l8{59=J$aBi&u}!!C!w9TUvZ*(t!0=zK<^aWD{w`;u2>)o-W~)_ z@wRcvO$U1myK9zf?DiB3 zPMJVWjMNaz-|96p5i^~Ew5jaRXpGUBnBg_P zyjyBaL(}WYuO3L%hQ23zcesF*a6a4q`KMPrlo*y76^XpOj2u$lb22Xt^h$dl1LzHj zgr8+iB|N%^d5g#6Kr#65c>uW4@fZo84*b=hw-QT9D2L@uBjN&CB4e6R^U&vd&U30m z5bLQNI?L5*kVY!#we5OQCKud59Jb3Y;U%Ir#fmy^h<*NQ6Zb#l%)NItSJ(Kxo&;BZ*M5gk`s;l@tetkx7xr= zOn9M>|y6D%T08r=<{ zCp_(PglV$-9;i+{D8L0%pIvvv6{3^i!9lgWkki?2oAZS7|Et{fmqpwcs>#=KA?Z6H ziA2tF6fp^hp#3$_n;>mP_rH2F=>KzTEn`CvDaU>duIVt{y#Lq5;PCFX6o0GP01K8h zN=-C4%}3O$>eLNl=%^iZ-k}9RB#7KP&G0*sfhjlsZetD_7`qx%g-N5!eWRE*g9~nq+b?j9tZiZMj z$IIA#;mGjue7G@nk_TczxzKtR>x%j=ed9Pe~V#A zda|CFqdC{wj$mj0e6CrRskuY*l%%9s90_%_yS0TsvMQIyqD8WZgiX}jhz%wWI9Xzj zHV@S2^?MF3(%GZ}@#T&`my&(fJwaT3o;E~x64BE9UG~`lTNRNYQ^o5RD)l&s+8T`N zEq6=jM$Pb5ClJM=i-#2Ad!>b|xdnBUGdtwDyyEXhel|qHzIP*QXMlh{3UeG!d@ZaY5RdBxASzOndccM%rwj(3 zGTo)IRfe1V-b|0X@+1Jxn07&`w5H~@VHcVz;$Kr*z_D(4yeY6l^|O85RJ^%Kp1jV? zcAzvz&uyH>*@Jequvm0r=x*RSqMwm4s*~$NvEtb5_5Z|_Ma1K(0r)Ug2^B)MudH#s zt|!`9RHwjKzg@lmo!)aEuMofBO6 zev#n_GxKzQmge-+0Fs`yRrto1JivM>9;m4ZOc)8J=Ld9~jPoR^7T4Bk1$Rf}$+axY z2Etco3pasB8;jFB@LB#ycZ}5=JDw}LBc!tv-S3H*Oo0mJgD@hanqhwt4%y`z)f@2r z2q)4d=Uiirc*F$n2J#0G0@4FO>!o<#udF$t9j9ip&&Db(c~wj)jM?`;GdYKXAI}(6 zMJ5wnSWO=k=H|E^O7ppHsn#TjugO`KO?brAyc2o0+##W>hDqtQ=o~6F#`X z8t;HBG(WCC^i&9}FH7E%QjN(w**~r9N)D;)*RwgQd5s&Qz{^s%J7DI!&`P>D7=bFc zoHc)Z?{weR=4Oji zzgv0imHPhS3!mrqEk`Sb z)hBRxQpU}(+`O1+c7oW>yHN{Pyp^H%+>!!(}Mb_V# zm+7*I;=5nr20xy6Ad1G6bjBG@2b1NbJ8ccQE*LMP?TtQ8p3VA&muu6HSrh>M6tDE& z5$EhR=wbnPAyZsxMks+gPd9=`3SJ8SG+Za6+|Gpo%Z=c>@-;Sd2go1b4${B5gL z>lz4DIR!OcE0;ZDI3VYwxu%|DwQVi>XY?60ta!cnxp7(opz4{Ce18<1blqOFEA6roYz2`xLT!a+pf|l>Uv~evkKiTBb zNH^U!RSM3r+8mWGDO*$L0W++#Mb6hTrhW}dP2t<=`t3DIHV;_<4t?vvgOOxMKnS$y zs3sY!jgoI!`PYAGiNkW7!_#OL#K5!t1ON{rf64B6_=n=KTwf30!b9ZJMd zYRu&e_R;f~IwL$Uba-EHw3gur?n}UNKn!%PEwt}=z*r=kvCnWGjYGP;T~Bk~e#Tve z&e!Ks1R-cp#Pa z-so^E?6-MzI~fy-I*x?QVf-LvnRRR0Z5@`*D8iwL4#G|Rsd1IHr~d5fBj2Va%!_tr zLw6p!q6JSt^@F{=JzHmIylZ130nMJ8gp7cY$_=O*MjsH^{oksD% zAEq}OIrOuk*4xh{9;+BsQDrgRiF7>r^ zIx-@9^S0$2iCM`5W&oAe5h~Bfn!{~@B06RM6-T*sIAzx2_dKk|tbZim2$VK{XxVpC z@kfdyCvshT`WE@CS)}3JaIBs-uj)?goGXrM8*hI@Lg~c%e}2WL;FEymvxUVMF4?JP z;abigUPJ&bXC5AGWWE2hvoZOab6*gt)GAuP0pEp!;*IA_XJy65i@C6(iG3Almk=yH z{;_x3b{z#a<7Y4k6Ef)x&BVLCjt%YOiP}cB(iUE9`*mK*YG*Gd=IjG-J%5KB3aX)q zC29TKBbpF=vFU$`E?$G0+G(H}qgG7+K*N?+E)5r>>6$*RK#oMHUjJ_frC(cH?>~Ng zX1vDAJ*}4@7GIZLEu3)y+*=1y5Xl)qp@pQ2{C2*Z>C<23f8#6ro3+KK#Eu7a*yXn} z4U?xlV3!H9$*Xwhl#$SnHcZy`Js0k{zP7n&jE1$jg@rz;VBVb?TOuIn;`Gz&96Zw7 z`Sjim8Z`a&uqCVoc^<$aMDf@rgW{UcU|J=qK*M~$M~XeGQ5CF@#Jz;dtwD(id1G|! zGmB_W`Jdup9k1btfB%X;U^HJdU8QbMMpS8tGfxgx_vgb6b6Au?ZYBCjAp*)Of~qEy zA|@d<8SK@o$b@ir&8Rb=q&f%rx?8Y+5c2X)weReiL!*}l3NN_F>4HrsNRp{j&X5$j zo3`W?`KtieW=Uy~AXDcQ&`l?)C}kju>313D#pqtyjeg%0A$$; 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≤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

    cY?(WdcElpf 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

    Tw69AIr)% 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.8 +numpy>=1.26 +pillow>=10.0 +pyserial>=3.5 diff --git a/soc/software/fusion/serial_capture.py b/soc/software/fusion/serial_capture.py new file mode 100644 index 0000000..47b5133 --- /dev/null +++ b/soc/software/fusion/serial_capture.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python3 +"""Capture a line-oriented bare-metal UART stream with host timestamps.""" + +from __future__ import annotations + +import argparse +import csv +import time +from pathlib import Path + +import serial + + +def parse_args() -> argparse.Namespace: + parser = argparse.ArgumentParser() + parser.add_argument("--port", default="/dev/ttyUSB2") + parser.add_argument("--baud", type=int, default=115200) + parser.add_argument("--duration", type=float, default=60.0) + parser.add_argument("--output", type=Path, required=True) + parser.add_argument( + "--stop-text", + help="stop early after a line containing this text (duration remains a limit)", + ) + return parser.parse_args() + + +def main() -> int: + args = parse_args() + args.output.parent.mkdir(parents=True, exist_ok=True) + + line_count = 0 + byte_count = 0 + start_wall_ns = time.time_ns() + start_mono_ns = time.monotonic_ns() + deadline_ns = start_mono_ns + int(args.duration * 1e9) + + with serial.Serial(args.port, args.baud, timeout=0.1) as uart, args.output.open( + "w", newline="", encoding="utf-8" + ) as stream: + writer = csv.writer(stream) + writer.writerow(["host_monotonic_s", "host_unix_s", "uart_line"]) + uart.reset_input_buffer() + + while time.monotonic_ns() < deadline_ns: + raw = uart.readline() + if not raw: + continue + now_mono_ns = time.monotonic_ns() + now_wall_ns = time.time_ns() + byte_count += len(raw) + line = raw.decode("utf-8", errors="replace").rstrip("\r\n") + writer.writerow( + [ + f"{(now_mono_ns - start_mono_ns) / 1e9:.9f}", + f"{now_wall_ns / 1e9:.9f}", + line, + ] + ) + line_count += 1 + if args.stop_text and args.stop_text in line: + break + + elapsed_s = (time.monotonic_ns() - start_mono_ns) / 1e9 + print( + f"captured lines={line_count} bytes={byte_count} " + f"elapsed={elapsed_s:.3f}s output={args.output} " + f"start_unix={start_wall_ns / 1e9:.6f}" + ) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/soc/software/fusion/synthetic_firmware_ab.py b/soc/software/fusion/synthetic_firmware_ab.py new file mode 100644 index 0000000..a9fee59 --- /dev/null +++ b/soc/software/fusion/synthetic_firmware_ab.py @@ -0,0 +1,144 @@ +#!/usr/bin/env python3 +"""Linearized same-input Monte Carlo comparison of legacy WLS and new FDE policy.""" + +from __future__ import annotations + +import argparse +import csv +import math +from pathlib import Path + +import numpy as np + + +CHI2_99 = {1: 6.634896601, 2: 9.210340372, 3: 11.34486673, + 4: 13.27670414, 5: 15.08627247} + + +def design_matrix(count: int) -> tuple[np.ndarray, np.ndarray]: + # Fixed, moderately realistic sky: azimuth degrees, elevation degrees. + sky = np.array([ + [10.0, 72.0], [55.0, 28.0], [102.0, 46.0], [151.0, 19.0], + [205.0, 61.0], [247.0, 34.0], [292.0, 23.0], [330.0, 52.0], + [178.0, 38.0], + ])[:count] + azimuth = np.radians(sky[:, 0]) + elevation = np.radians(sky[:, 1]) + los = np.column_stack(( + np.cos(elevation) * np.sin(azimuth), + np.cos(elevation) * np.cos(azimuth), + np.sin(elevation), + )) + matrix = np.column_stack((-los, np.ones(count))) + # Elevation-dependent standard deviation; low satellites carry less weight. + sigma = 3.0 / np.maximum(np.sin(elevation), 0.20) + return matrix, sigma + + +def solve(matrix: np.ndarray, sigma: np.ndarray, observation: np.ndarray) -> tuple[np.ndarray, float, float, bool]: + weight = 1.0 / np.square(sigma) + normal = matrix.T @ (weight[:, None] * matrix) + try: + state = np.linalg.solve(normal, matrix.T @ (weight * observation)) + except np.linalg.LinAlgError: + return np.full(4, np.nan), math.inf, math.inf, False + residual = observation - matrix @ state + chi2 = float(np.sum(weight * np.square(residual))) + dof = len(observation) - 4 + threshold = CHI2_99.get(dof, 0.0) + ratio = chi2 / threshold if threshold > 0.0 else math.inf + return state, chi2, ratio, threshold > 0.0 and chi2 <= threshold + + +def new_policy(matrix: np.ndarray, sigma: np.ndarray, observation: np.ndarray) -> tuple[np.ndarray, bool, bool]: + full_state, _, full_ratio, full_pass = solve(matrix, sigma, observation) + if full_pass or len(observation) < 7: + return full_state, full_pass, False + selected_state = full_state + selected_ratio = full_ratio + selected_pass = False + fde_applied = False + for excluded in range(len(observation)): + keep = np.arange(len(observation)) != excluded + state, _, ratio, passed = solve(matrix[keep], sigma[keep], observation[keep]) + if (passed and not selected_pass) or (passed == selected_pass and ratio < selected_ratio): + selected_state = state + selected_ratio = ratio + selected_pass = passed + fde_applied = True + return selected_state, selected_pass, fde_applied + + +def percentile(values: np.ndarray, percentage: float) -> float: + return float(np.percentile(values, percentage)) + + +def scenario(rng: np.random.Generator, count: int, epochs: int, fault_m: float) -> dict[str, float | int]: + matrix, sigma = design_matrix(count) + old_horizontal = np.empty(epochs) + new_horizontal = np.empty(epochs) + delta = np.empty(epochs) + valid = 0 + fde = 0 + improved = 0 + for epoch in range(epochs): + observation = rng.normal(0.0, sigma) + if fault_m != 0.0: + observation[epoch % count] += fault_m + old_state, _, _, _ = solve(matrix, sigma, observation) + new_state, new_valid, fde_applied = new_policy(matrix, sigma, observation) + old_horizontal[epoch] = np.linalg.norm(old_state[:2]) + new_horizontal[epoch] = np.linalg.norm(new_state[:2]) + delta[epoch] = np.linalg.norm(new_state[:3] - old_state[:3]) + valid += int(new_valid) + fde += int(fde_applied) + improved += int(new_horizontal[epoch] < old_horizontal[epoch]) + return { + "satellites": count, + "fault_m": fault_m, + "epochs": epochs, + "old_horizontal_mean_m": float(np.mean(old_horizontal)), + "old_horizontal_p95_m": percentile(old_horizontal, 95.0), + "new_horizontal_mean_m": float(np.mean(new_horizontal)), + "new_horizontal_p95_m": percentile(new_horizontal, 95.0), + "new_minus_old_mean_m": float(np.mean(new_horizontal - old_horizontal)), + "solver_position_delta_mean_m": float(np.mean(delta)), + "new_improved_rate_pct": 100.0 * improved / epochs, + "new_valid_rate_pct": 100.0 * valid / epochs, + "fde_rate_pct": 100.0 * fde / epochs, + } + + +def main() -> int: + parser = argparse.ArgumentParser() + parser.add_argument("--epochs", type=int, default=20000) + parser.add_argument("--seed", type=int, default=20260712) + parser.add_argument("--fault-m", type=float, default=75.0) + parser.add_argument("--output", type=Path, required=True) + args = parser.parse_args() + rng = np.random.default_rng(args.seed) + rows = [ + scenario(rng, count, args.epochs, fault) + for fault in (0.0, args.fault_m) + for count in range(4, 10) + ] + args.output.parent.mkdir(parents=True, exist_ok=True) + with args.output.open("w", newline="", encoding="utf-8") as stream: + writer = csv.DictWriter(stream, fieldnames=list(rows[0])) + writer.writeheader() + writer.writerows(rows) + for row in rows: + print( + f"fault={row['fault_m']:>4.0f}m sats={row['satellites']} " + f"old_mean={row['old_horizontal_mean_m']:.2f} " + f"new_mean={row['new_horizontal_mean_m']:.2f} " + f"delta={row['new_minus_old_mean_m']:+.2f} " + f"improved={row['new_improved_rate_pct']:.1f}% " + f"valid={row['new_valid_rate_pct']:.1f}% fde={row['fde_rate_pct']:.1f}%" + ) + print(f"wrote {args.output}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/soc/software/fusion/tests/Makefile b/soc/software/fusion/tests/Makefile new file mode 100644 index 0000000..5a213c5 --- /dev/null +++ b/soc/software/fusion/tests/Makefile @@ -0,0 +1,24 @@ +CC ?= cc +CFLAGS ?= -std=c11 -O2 -Wall -Wextra -Wpedantic +CFLAGS += -I../../gps_system/header +LDLIBS ?= -lm + +GPS_TIME_SOURCE := ../../gps_system/src/gps_time_anchor.c + +.PHONY: all test benchmark clean + +all: standalone_gps_integrity_test + +standalone_gps_integrity_test: standalone_gps_integrity_test.c $(GPS_TIME_SOURCE) + $(CC) $(CFLAGS) $^ -o $@ $(LDLIBS) + +test: standalone_gps_integrity_test + ./standalone_gps_integrity_test + +benchmark: standalone_gps_integrity_test + ./standalone_gps_integrity_test --bench-clean 100000 + ./standalone_gps_integrity_test --bench-single 100000 + ./standalone_gps_integrity_test --bench-double 100000 + +clean: + rm -f standalone_gps_integrity_test standalone_gps_integrity_test_san standalone_gps_integrity_test_gprof gmon.out diff --git a/soc/software/fusion/tests/standalone_gps_integrity_test.c b/soc/software/fusion/tests/standalone_gps_integrity_test.c new file mode 100644 index 0000000..2bd527c --- /dev/null +++ b/soc/software/fusion/tests/standalone_gps_integrity_test.c @@ -0,0 +1,864 @@ +#define _POSIX_C_SOURCE 200809L + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "gps_time_anchor.h" + +#define MAX_SATELLITES 9 +#define STATE_DIM 4 +#define PI 3.14159265358979323846 + +typedef struct { + unsigned prn; + double position_ecef_m[3]; + double pseudorange_m; + double sigma_m; +} measurement_t; + +typedef struct { + double state[STATE_DIM]; + double covariance_enu_m2[3][3]; + double hacc_m; + double vacc_m; + double residual_rms_m; + double weighted_residual_rms_m; + double chi_square; + double chi_square_threshold; + double chi_square_ratio; + double quality_score; + unsigned used_count; + unsigned dof; + uint32_t used_mask; + uint32_t excluded_mask; + bool residual_test_valid; + bool chi_square_pass; + bool fde_applied; + bool solution_valid; +} solution_t; + +typedef enum { + SOLVE_ABSOLUTE_WEIGHTS, + SOLVE_NORMALIZED_WEIGHTS, + SOLVE_UNIFORM_WEIGHTS +} solve_weight_mode_t; + +typedef struct { + int week; + double sec; +} test_tow_t; + +static int failures; +static volatile double benchmark_sink; + +#define CHECK(condition, message) do { \ + if (!(condition)) { \ + fprintf(stderr, "FAIL: %s\n", message); \ + failures++; \ + } \ +} while (0) + +static double square(double x) +{ + return x * x; +} + +static double test_tow_delta_sec(const test_tow_t* first, const test_tow_t* second) +{ + double delta = (double)(first->week - second->week) * 604800.0 + + first->sec - second->sec; + if (delta > 302400.0) { + delta -= 604800.0; + } else if (delta < -302400.0) { + delta += 604800.0; + } + return delta; +} + +static bool test_validate_tow(const test_tow_t tow[MAX_SATELLITES], unsigned count) +{ + unsigned best_cluster = 0; + for (unsigned candidate = 0; candidate < count; candidate++) { + unsigned cluster = 0; + for (unsigned row = 0; row < count; row++) { + if (fabs(test_tow_delta_sec(&tow[row], &tow[candidate])) <= 0.001) { + cluster++; + } + } + if (cluster > best_cluster) { + best_cluster = cluster; + } + } + if (best_cluster <= count / 2u) { + return false; + } + return best_cluster == count; +} + +static double vector_norm3(const double v[3]) +{ + return sqrt(square(v[0]) + square(v[1]) + square(v[2])); +} + +static double position_error_m(const solution_t* solution, const double truth[3]) +{ + double error[3] = { + solution->state[0] - truth[0], + solution->state[1] - truth[1], + solution->state[2] - truth[2] + }; + return vector_norm3(error); +} + +static bool inverse4(double input[STATE_DIM][STATE_DIM], + double inverse[STATE_DIM][STATE_DIM]) +{ + double augmented[STATE_DIM][2 * STATE_DIM]; + double scale = 0.0; + + for (unsigned row = 0; row < STATE_DIM; row++) { + for (unsigned col = 0; col < STATE_DIM; col++) { + augmented[row][col] = input[row][col]; + augmented[row][col + STATE_DIM] = (row == col) ? 1.0 : 0.0; + if (fabs(input[row][col]) > scale) { + scale = fabs(input[row][col]); + } + } + } + if (!(scale > 0.0) || !isfinite(scale)) { + return false; + } + + for (unsigned pivot = 0; pivot < STATE_DIM; pivot++) { + unsigned pivot_row = pivot; + double pivot_magnitude = fabs(augmented[pivot][pivot]); + for (unsigned row = pivot + 1; row < STATE_DIM; row++) { + double magnitude = fabs(augmented[row][pivot]); + if (magnitude > pivot_magnitude) { + pivot_magnitude = magnitude; + pivot_row = row; + } + } + if (pivot_magnitude <= scale * DBL_EPSILON * 128.0) { + return false; + } + if (pivot_row != pivot) { + for (unsigned col = 0; col < 2 * STATE_DIM; col++) { + double temporary = augmented[pivot][col]; + augmented[pivot][col] = augmented[pivot_row][col]; + augmented[pivot_row][col] = temporary; + } + } + + double divisor = augmented[pivot][pivot]; + for (unsigned col = 0; col < 2 * STATE_DIM; col++) { + augmented[pivot][col] /= divisor; + } + for (unsigned row = 0; row < STATE_DIM; row++) { + if (row == pivot) { + continue; + } + double factor = augmented[row][pivot]; + for (unsigned col = 0; col < 2 * STATE_DIM; col++) { + augmented[row][col] -= factor * augmented[pivot][col]; + } + } + } + + for (unsigned row = 0; row < STATE_DIM; row++) { + for (unsigned col = 0; col < STATE_DIM; col++) { + inverse[row][col] = augmented[row][col + STATE_DIM]; + if (!isfinite(inverse[row][col])) { + return false; + } + } + } + return true; +} + +static bool solve_normal_equations(double normal[STATE_DIM][STATE_DIM], + const double rhs[STATE_DIM], + double update[STATE_DIM]) +{ + double inverse[STATE_DIM][STATE_DIM]; + if (!inverse4(normal, inverse)) { + return false; + } + for (unsigned row = 0; row < STATE_DIM; row++) { + update[row] = 0.0; + for (unsigned col = 0; col < STATE_DIM; col++) { + update[row] += inverse[row][col] * rhs[col]; + } + } + return true; +} + +static double chi_square_threshold_99(unsigned dof) +{ + static const double thresholds[] = { + 0.0, + 6.634896601, + 9.210340372, + 11.34486673, + 13.27670414, + 15.08627247 + }; + return (dof < (sizeof(thresholds) / sizeof(thresholds[0]))) + ? thresholds[dof] : 0.0; +} + +static void geodetic_to_ecef(double latitude_rad, double longitude_rad, + double height_m, double ecef_m[3]) +{ + const double semi_major_axis_m = 6378137.0; + const double eccentricity_squared = 6.6943799901413165e-3; + double sin_latitude = sin(latitude_rad); + double cos_latitude = cos(latitude_rad); + double prime_vertical_radius = semi_major_axis_m / + sqrt(1.0 - eccentricity_squared * square(sin_latitude)); + + ecef_m[0] = (prime_vertical_radius + height_m) * cos_latitude * cos(longitude_rad); + ecef_m[1] = (prime_vertical_radius + height_m) * cos_latitude * sin(longitude_rad); + ecef_m[2] = (prime_vertical_radius * (1.0 - eccentricity_squared) + height_m) * sin_latitude; +} + +static void enu_axes(double latitude_rad, double longitude_rad, double axes[3][3]) +{ + double sin_latitude = sin(latitude_rad); + double cos_latitude = cos(latitude_rad); + double sin_longitude = sin(longitude_rad); + double cos_longitude = cos(longitude_rad); + + axes[0][0] = -sin_longitude; + axes[0][1] = cos_longitude; + axes[0][2] = 0.0; + axes[1][0] = -sin_latitude * cos_longitude; + axes[1][1] = -sin_latitude * sin_longitude; + axes[1][2] = cos_latitude; + axes[2][0] = cos_latitude * cos_longitude; + axes[2][1] = cos_latitude * sin_longitude; + axes[2][2] = sin_latitude; +} + +static void create_measurements(measurement_t measurements[MAX_SATELLITES], + unsigned count, + const double receiver_ecef_m[3], + double latitude_rad, + double longitude_rad, + double receiver_clock_bias_m, + const double noise_m[MAX_SATELLITES]) +{ + static const double azimuth_deg[MAX_SATELLITES] = + {5.0, 52.0, 104.0, 158.0, 214.0, 267.0, 318.0, 74.0, 242.0}; + static const double elevation_deg[MAX_SATELLITES] = + {72.0, 46.0, 31.0, 57.0, 26.0, 41.0, 12.0, 20.0, 35.0}; + double axes[3][3]; + enu_axes(latitude_rad, longitude_rad, axes); + + for (unsigned index = 0; index < count; index++) { + double azimuth = azimuth_deg[index] * PI / 180.0; + double elevation = elevation_deg[index] * PI / 180.0; + double los_enu[3] = { + cos(elevation) * sin(azimuth), + cos(elevation) * cos(azimuth), + sin(elevation) + }; + double los_ecef[3] = {0.0, 0.0, 0.0}; + for (unsigned component = 0; component < 3; component++) { + for (unsigned enu = 0; enu < 3; enu++) { + los_ecef[component] += axes[enu][component] * los_enu[enu]; + } + } + + double geometric_range_m = 20200000.0 + 170000.0 * index; + measurements[index].prn = index + 1; + for (unsigned component = 0; component < 3; component++) { + measurements[index].position_ecef_m[component] = + receiver_ecef_m[component] + geometric_range_m * los_ecef[component]; + } + double elevation_sigma_m = 3.0 / sin(elevation); + measurements[index].sigma_m = sqrt(square(2.4) + square(elevation_sigma_m)); + measurements[index].pseudorange_m = geometric_range_m + + receiver_clock_bias_m + noise_m[index]; + } +} + +static bool solve_subset(const measurement_t measurements[MAX_SATELLITES], + unsigned available_count, + uint32_t used_mask, + solve_weight_mode_t weight_mode, + const double seed[STATE_DIM], + double latitude_rad, + double longitude_rad, + solution_t* output) +{ + memset(output, 0, sizeof(*output)); + output->used_mask = used_mask; + output->excluded_mask = ((1u << available_count) - 1u) & ~used_mask; + for (unsigned index = 0; index < available_count; index++) { + if ((used_mask & (1u << index)) != 0u) { + output->used_count++; + } + } + if (output->used_count < STATE_DIM) { + return false; + } + memcpy(output->state, seed, sizeof(output->state)); + + for (unsigned iteration = 0; iteration < 20; iteration++) { + double normal[STATE_DIM][STATE_DIM] = {{0.0}}; + double rhs[STATE_DIM] = {0.0}; + double maximum_absolute_weight = 0.0; + for (unsigned index = 0; index < available_count; index++) { + if ((used_mask & (1u << index)) == 0u) { + continue; + } + double absolute_weight = 1.0 / square(measurements[index].sigma_m); + if (absolute_weight > maximum_absolute_weight) { + maximum_absolute_weight = absolute_weight; + } + } + + for (unsigned index = 0; index < available_count; index++) { + if ((used_mask & (1u << index)) == 0u) { + continue; + } + double receiver_to_satellite[3]; + for (unsigned component = 0; component < 3; component++) { + receiver_to_satellite[component] = + output->state[component] - measurements[index].position_ecef_m[component]; + } + double geometric_range_m = vector_norm3(receiver_to_satellite); + if (!(geometric_range_m > 1.0)) { + return false; + } + double design_row[STATE_DIM] = { + receiver_to_satellite[0] / geometric_range_m, + receiver_to_satellite[1] / geometric_range_m, + receiver_to_satellite[2] / geometric_range_m, + 1.0 + }; + double residual_m = measurements[index].pseudorange_m - + geometric_range_m - output->state[3]; + double absolute_weight = 1.0 / square(measurements[index].sigma_m); + double solve_weight = absolute_weight; + if (weight_mode == SOLVE_NORMALIZED_WEIGHTS) { + solve_weight /= maximum_absolute_weight; + } else if (weight_mode == SOLVE_UNIFORM_WEIGHTS) { + solve_weight = 1.0; + } + for (unsigned row = 0; row < STATE_DIM; row++) { + rhs[row] += solve_weight * design_row[row] * residual_m; + for (unsigned col = 0; col < STATE_DIM; col++) { + normal[row][col] += solve_weight * design_row[row] * design_row[col]; + } + } + } + + double update[STATE_DIM]; + if (!solve_normal_equations(normal, rhs, update)) { + return false; + } + for (unsigned index = 0; index < STATE_DIM; index++) { + output->state[index] += update[index]; + } + double position_update[3] = {update[0], update[1], update[2]}; + if (vector_norm3(position_update) < 1.0e-5 && fabs(update[3]) < 1.0e-5) { + break; + } + if (iteration == 19) { + return false; + } + } + + double absolute_normal[STATE_DIM][STATE_DIM] = {{0.0}}; + double residual_square_sum = 0.0; + double absolute_weight_sum = 0.0; + output->chi_square = 0.0; + for (unsigned index = 0; index < available_count; index++) { + if ((used_mask & (1u << index)) == 0u) { + continue; + } + double receiver_to_satellite[3]; + for (unsigned component = 0; component < 3; component++) { + receiver_to_satellite[component] = + output->state[component] - measurements[index].position_ecef_m[component]; + } + double geometric_range_m = vector_norm3(receiver_to_satellite); + double design_row[STATE_DIM] = { + receiver_to_satellite[0] / geometric_range_m, + receiver_to_satellite[1] / geometric_range_m, + receiver_to_satellite[2] / geometric_range_m, + 1.0 + }; + double residual_m = measurements[index].pseudorange_m - + geometric_range_m - output->state[3]; + double absolute_weight = 1.0 / square(measurements[index].sigma_m); + residual_square_sum += square(residual_m); + output->chi_square += absolute_weight * square(residual_m); + absolute_weight_sum += absolute_weight; + for (unsigned row = 0; row < STATE_DIM; row++) { + for (unsigned col = 0; col < STATE_DIM; col++) { + absolute_normal[row][col] += + absolute_weight * design_row[row] * design_row[col]; + } + } + } + + output->residual_rms_m = sqrt(residual_square_sum / output->used_count); + output->weighted_residual_rms_m = sqrt(output->chi_square / absolute_weight_sum); + output->dof = output->used_count - STATE_DIM; + output->chi_square_threshold = chi_square_threshold_99(output->dof); + output->residual_test_valid = output->dof > 0 && output->chi_square_threshold > 0.0; + if (output->residual_test_valid) { + output->chi_square_ratio = output->chi_square / output->chi_square_threshold; + output->quality_score = 100.0 / (1.0 + output->chi_square_ratio); + output->chi_square_pass = output->chi_square <= output->chi_square_threshold; + } else { + output->chi_square_ratio = INFINITY; + output->quality_score = 0.0; + } + output->solution_valid = output->residual_test_valid && output->chi_square_pass; + + double covariance_ecef[STATE_DIM][STATE_DIM]; + if (!inverse4(absolute_normal, covariance_ecef)) { + return false; + } + double axes[3][3]; + enu_axes(latitude_rad, longitude_rad, axes); + for (unsigned enu_row = 0; enu_row < 3; enu_row++) { + for (unsigned enu_col = 0; enu_col < 3; enu_col++) { + double covariance = 0.0; + for (unsigned ecef_row = 0; ecef_row < 3; ecef_row++) { + for (unsigned ecef_col = 0; ecef_col < 3; ecef_col++) { + covariance += axes[enu_row][ecef_row] * + covariance_ecef[ecef_row][ecef_col] * + axes[enu_col][ecef_col]; + } + } + output->covariance_enu_m2[enu_row][enu_col] = covariance; + } + } + output->hacc_m = sqrt(output->covariance_enu_m2[0][0] + + output->covariance_enu_m2[1][1]); + output->vacc_m = sqrt(output->covariance_enu_m2[2][2]); + return isfinite(output->hacc_m) && isfinite(output->vacc_m); +} + +static bool solve_with_fde_minimum(const measurement_t measurements[MAX_SATELLITES], + unsigned count, + unsigned minimum_available_for_fde, + const double seed[STATE_DIM], + double latitude_rad, + double longitude_rad, + solution_t* selected, + solution_t* full_solution) +{ + uint32_t full_mask = (1u << count) - 1u; + if (!solve_subset(measurements, count, full_mask, SOLVE_NORMALIZED_WEIGHTS, + seed, latitude_rad, longitude_rad, full_solution)) { + return false; + } + *selected = *full_solution; + if (full_solution->chi_square_pass || count < minimum_available_for_fde) { + return true; + } + + bool passing_candidate_found = false; + for (unsigned excluded = 0; excluded < count; excluded++) { + solution_t candidate; + uint32_t candidate_mask = full_mask & ~(1u << excluded); + if (!solve_subset(measurements, count, candidate_mask, SOLVE_NORMALIZED_WEIGHTS, + full_solution->state, latitude_rad, longitude_rad, &candidate)) { + continue; + } + + bool choose = false; + if (candidate.chi_square_pass) { + choose = !passing_candidate_found || + candidate.chi_square_ratio < selected->chi_square_ratio; + } else if (!passing_candidate_found && + candidate.chi_square_ratio < selected->chi_square_ratio) { + choose = true; + } + if (choose) { + *selected = candidate; + selected->fde_applied = true; + } + if (candidate.chi_square_pass) { + passing_candidate_found = true; + } + } + return true; +} + +static bool solve_with_fde(const measurement_t measurements[MAX_SATELLITES], + unsigned count, + const double seed[STATE_DIM], + double latitude_rad, + double longitude_rad, + solution_t* selected, + solution_t* full_solution) +{ + return solve_with_fde_minimum(measurements, count, 7u, seed, + latitude_rad, longitude_rad, + selected, full_solution); +} + +static void print_solution(const char* label, + const solution_t* solution, + const double receiver_truth[3]) +{ + printf("%-24s used=%u excluded=0x%03x error=%7.2f m residual=%7.2f m " + "chi2=%8.2f dof=%u ratio=%6.2f quality=%6.1f hAcc=%5.2f vAcc=%5.2f " + "pass=%u valid=%u\n", + label, + solution->used_count, + solution->excluded_mask, + position_error_m(solution, receiver_truth), + solution->residual_rms_m, + solution->chi_square, + solution->dof, + solution->chi_square_ratio, + solution->quality_score, + solution->hacc_m, + solution->vacc_m, + solution->chi_square_pass, + solution->solution_valid); +} + +static double monotonic_seconds(void) +{ + struct timespec now; + clock_gettime(CLOCK_MONOTONIC, &now); + return (double)now.tv_sec + (double)now.tv_nsec * 1.0e-9; +} + +static int run_benchmark(const char* scenario, + unsigned iterations, + const measurement_t clean[MAX_SATELLITES], + unsigned satellite_count, + const double seed[STATE_DIM], + double latitude_rad, + double longitude_rad) +{ + measurement_t measurements[MAX_SATELLITES]; + memcpy(measurements, clean, sizeof(measurements)); + if (strcmp(scenario, "clean") == 0) { + /* No injected fault: one WLS plus integrity/covariance work. */ + } else if (strcmp(scenario, "single") == 0) { + measurements[2].pseudorange_m += 100.0; + } else if (strcmp(scenario, "double") == 0) { + measurements[2].pseudorange_m += 100.0; + measurements[5].pseudorange_m += 50.0; + } else { + fprintf(stderr, "unknown benchmark scenario: %s\n", scenario); + return 2; + } + + solution_t selected; + solution_t full; + for (unsigned warmup = 0; warmup < 1000; warmup++) { + if (!solve_with_fde(measurements, satellite_count, seed, + latitude_rad, longitude_rad, &selected, &full)) { + return 3; + } + benchmark_sink += selected.quality_score * 1.0e-12; + } + + double start = monotonic_seconds(); + for (unsigned iteration = 0; iteration < iterations; iteration++) { + /* Prevent whole-loop constant folding while keeping the scenario's + * integrity classification unchanged. */ + measurements[0].pseudorange_m += (iteration & 1u) ? 1.0e-3 : -1.0e-3; + if (!solve_with_fde(measurements, satellite_count, seed, + latitude_rad, longitude_rad, &selected, &full)) { + return 3; + } + benchmark_sink += selected.quality_score * 1.0e-12; + } + double elapsed = monotonic_seconds() - start; + double nanoseconds_per_solution = elapsed * 1.0e9 / (double)iterations; + printf("benchmark scenario=%s iterations=%u elapsed=%.6f s " + "per_nav=%.1f ns (%.3f us) cpu@1Hz=%.6f%% cpu@10Hz=%.6f%% sink=%.9f\n", + scenario, iterations, elapsed, nanoseconds_per_solution, + nanoseconds_per_solution / 1000.0, + nanoseconds_per_solution / 1.0e7, + nanoseconds_per_solution / 1.0e6, + benchmark_sink); + return 0; +} + +int main(int argc, char** argv) +{ + const unsigned satellite_count = 7; + const double latitude_rad = 39.925 * PI / 180.0; + const double longitude_rad = 32.837 * PI / 180.0; + const double receiver_height_m = 890.0; + const double clock_bias_m = 74000.0; + double receiver_truth[3]; + geodetic_to_ecef(latitude_rad, longitude_rad, receiver_height_m, receiver_truth); + double seed[STATE_DIM] = { + receiver_truth[0] + 120.0, + receiver_truth[1] - 90.0, + receiver_truth[2] + 60.0, + clock_bias_m - 200.0 + }; + const double clean_noise[MAX_SATELLITES] = + {1.2, -1.8, 0.6, 2.0, -1.0, 1.5, -2.2, 0.0, 0.0}; + measurement_t clean[MAX_SATELLITES]; + create_measurements(clean, satellite_count, receiver_truth, + latitude_rad, longitude_rad, clock_bias_m, clean_noise); + + if (argc >= 2 && strncmp(argv[1], "--bench-", 8) == 0) { + unsigned iterations = (argc >= 3) ? (unsigned)strtoul(argv[2], NULL, 10) : 100000u; + if (iterations == 0u) { + iterations = 1u; + } + return run_benchmark(argv[1] + 8, iterations, clean, satellite_count, + seed, latitude_rad, longitude_rad); + } + + puts("Synthetic standalone GPS integrity/FDE comparison"); + puts("quality = 100/(1 + chi_square/threshold); 50 is the 99% reject boundary\n"); + + const double receiver_samples_per_second = 16368000.0; + int anchored_week = 0; + double anchored_tow = 0.0; + double anchor_age = 0.0; + CHECK(gps_time_from_sample_anchor(2300, 46386.0, + 100000000u, 99999999.75, + 100000000u, 99999999.75, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, &anchor_age) && + anchored_week == 2300 && fabs(anchored_tow - 46386.0) < 1.0e-9, + "simultaneous HOW/nav-solve event must have zero elapsed time"); + CHECK(gps_time_from_sample_anchor(2300, 46386.0, + 100000000u, 99999999.75, + 103273600u, 103273599.75, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, &anchor_age), + "200 ms sample-anchor conversion should succeed"); + CHECK(anchored_week == 2300 && fabs(anchored_tow - 46386.2) < 1.0e-9, + "200 ms event must be derived from receiver samples, not NAV timer ownership"); + + /* A channel enabled later receives a newer absolute HOW/sample anchor. + * Both channels must still calculate the same time for a common epoch. */ + int late_week = 0; + double late_tow = 0.0; + CHECK(gps_time_from_sample_anchor(2300, 46392.0, + 198208000u, 198207999.5, + 214576000u, 214575999.5, + receiver_samples_per_second, 12.0, + &late_week, &late_tow, NULL), + "late-enable channel anchor conversion should succeed"); + int early_week = 0; + double early_tow = 0.0; + CHECK(gps_time_from_sample_anchor(2300, 46386.0, + 100000000u, 99999999.5, + 214576000u, 214575999.5, + receiver_samples_per_second, 12.0, + &early_week, &early_tow, NULL), + "early channel anchor conversion should succeed"); + CHECK(early_week == late_week && fabs(early_tow - late_tow) < 1.0e-9, + "late-enable and early channels must agree at a common receiver sample"); + + CHECK(gps_time_from_sample_anchor(2300, 100.0, + 500000000u, 499999999.75, + 549104000u, 549103999.75, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, &anchor_age) && + fabs(anchored_tow - 103.0) < 1.0e-9, + "coalesced/missed NAV events must not lose elapsed GPS time"); + + uint32_t wrap_anchor = UINT32_MAX - 8183999u; + uint32_t wrap_event = wrap_anchor + 16368000u; + CHECK(gps_time_from_sample_anchor(2300, 200.0, + wrap_anchor, (double)wrap_anchor - 0.25, + wrap_event, (double)wrap_event - 0.25, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, NULL) && + fabs(anchored_tow - 201.0) < 1.0e-9, + "32-bit ABS_SAMPLE rollover must unwrap correctly"); + + CHECK(gps_time_from_sample_anchor(2300, 604794.0, + 700000000u, 699999999.5, + 814576000u, 814575999.5, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, NULL) && + anchored_week == 2301 && fabs(anchored_tow - 1.0) < 1.0e-9, + "GPS week rollover must increment the anchor week"); + CHECK(gps_time_resolve_how_week(true, 2300, 604794.0, 2300, 0.0) == 2301, + "HOW seconds-of-week rollover must resolve to the next week"); + CHECK(!gps_time_from_sample_anchor(2300, 100.0, + 100000000u, 99999999.5, + 312784001u, 312784000.5, + receiver_samples_per_second, 12.0, + &anchored_week, &anchored_tow, NULL), + "stale HOW anchor must be rejected"); + + test_tow_t mismatched_tow[MAX_SATELLITES] = { + {2300, 46386.8}, {2300, 46386.8}, {2300, 46386.8}, + {2300, 46386.8}, {2300, 46386.8}, {2300, 46386.6}, + {2300, 46386.8} + }; + CHECK(!test_validate_tow(mismatched_tow, 7u), + "200 ms TOW mismatch must reject instead of copying the majority TOW"); + test_tow_t coherent_tow[MAX_SATELLITES] = { + {2300, 46386.8}, {2300, 46386.8}, {2300, 46386.8}, + {2300, 46386.8}, {2300, 46386.8}, {2300, 46386.8}, + {2300, 46386.8} + }; + CHECK(test_validate_tow(coherent_tow, 7u), + "fully coherent TOW snapshot should pass"); + test_tow_t ambiguous_tow[MAX_SATELLITES] = { + {2300, 100.0}, {2300, 100.0}, {2300, 101.0}, {2300, 101.0} + }; + CHECK(!test_validate_tow(ambiguous_tow, 4u), + "two-versus-two TOW split must reject the navigation epoch"); + test_tow_t excessive_tow[MAX_SATELLITES] = { + {2300, 100.0}, {2300, 100.0}, {2300, 100.0}, {2300, 96.0} + }; + CHECK(!test_validate_tow(excessive_tow, 4u), + "large TOW disagreement must not be silently corrected"); + + solution_t absolute_solution; + solution_t normalized_solution; + uint32_t full_mask = (1u << satellite_count) - 1u; + CHECK(solve_subset(clean, satellite_count, full_mask, SOLVE_ABSOLUTE_WEIGHTS, + seed, latitude_rad, longitude_rad, &absolute_solution), + "absolute-weight clean solve"); + CHECK(solve_subset(clean, satellite_count, full_mask, SOLVE_NORMALIZED_WEIGHTS, + seed, latitude_rad, longitude_rad, &normalized_solution), + "normalized-weight clean solve"); + print_solution("clean absolute", &absolute_solution, receiver_truth); + print_solution("clean normalized", &normalized_solution, receiver_truth); + double normalization_state_difference[3] = { + absolute_solution.state[0] - normalized_solution.state[0], + absolute_solution.state[1] - normalized_solution.state[1], + absolute_solution.state[2] - normalized_solution.state[2] + }; + CHECK(vector_norm3(normalization_state_difference) < 1.0e-5, + "common weight normalization must not change WLS position"); + CHECK(normalized_solution.chi_square_pass, "clean epoch should pass chi-square"); + + measurement_t single_fault[MAX_SATELLITES]; + memcpy(single_fault, clean, sizeof(single_fault)); + single_fault[2].pseudorange_m += 100.0; + solution_t single_full; + solution_t single_selected; + CHECK(solve_with_fde(single_fault, satellite_count, seed, latitude_rad, longitude_rad, + &single_selected, &single_full), "single-fault FDE solve"); + print_solution("single fault: full", &single_full, receiver_truth); + print_solution("single fault: selected", &single_selected, receiver_truth); + CHECK(!single_full.chi_square_pass, "100 m fault should fail the global test"); + CHECK(single_selected.chi_square_pass, "leave-one-out should recover single fault"); + CHECK(single_selected.excluded_mask == (1u << 2), "FDE should exclude PRN 3 row"); + CHECK(position_error_m(&single_selected, receiver_truth) < + position_error_m(&single_full, receiver_truth), + "single-fault FDE should improve position"); + + /* With six available satellites, exclusion leaves five measurements and + * only one residual DOF. This deterministic nominal-noise epoch is a + * regression for the large exclusion-switch jumps seen on hardware. */ + const unsigned six_satellite_count = 6u; + const double ambiguous_six_noise[MAX_SATELLITES] = + {6.604, -11.586, 10.801, -5.068, 4.625, -22.908, 0.0, 0.0, 0.0}; + measurement_t ambiguous_six[MAX_SATELLITES]; + create_measurements(ambiguous_six, six_satellite_count, receiver_truth, + latitude_rad, longitude_rad, clock_bias_m, + ambiguous_six_noise); + solution_t unsafe_six_selected; + solution_t unsafe_six_full; + solution_t guarded_six_selected; + solution_t guarded_six_full; + CHECK(solve_with_fde_minimum(ambiguous_six, six_satellite_count, 6u, seed, + latitude_rad, longitude_rad, + &unsafe_six_selected, &unsafe_six_full), + "six-satellite legacy leave-one-out regression solve"); + CHECK(solve_with_fde(ambiguous_six, six_satellite_count, seed, + latitude_rad, longitude_rad, + &guarded_six_selected, &guarded_six_full), + "six-satellite guarded FDE solve"); + print_solution("six sat: full", &unsafe_six_full, receiver_truth); + print_solution("six sat: unsafe FDE", &unsafe_six_selected, receiver_truth); + print_solution("six sat: guarded", &guarded_six_selected, receiver_truth); + CHECK(!unsafe_six_full.chi_square_pass, + "six-satellite regression epoch should fail the full global test"); + CHECK(unsafe_six_selected.fde_applied && unsafe_six_selected.chi_square_pass, + "unsafe six-satellite leave-one-out should demonstrate a false isolation"); + CHECK(position_error_m(&unsafe_six_selected, receiver_truth) > + position_error_m(&unsafe_six_full, receiver_truth) + 50.0, + "unsafe six-satellite FDE should demonstrate the observed position regression"); + CHECK(!guarded_six_selected.fde_applied, + "six-satellite solution must not replace full WLS with a one-DOF subset"); + CHECK(!guarded_six_selected.solution_valid, + "failed six-satellite full solution must remain explicitly invalid"); + CHECK(memcmp(guarded_six_selected.state, guarded_six_full.state, + sizeof(guarded_six_selected.state)) == 0, + "guarded six-satellite output must retain the legacy full-WLS position"); + + measurement_t double_fault[MAX_SATELLITES]; + memcpy(double_fault, clean, sizeof(double_fault)); + double_fault[2].pseudorange_m += 100.0; + double_fault[5].pseudorange_m += 50.0; + solution_t double_full; + solution_t double_selected; + CHECK(solve_with_fde(double_fault, satellite_count, seed, latitude_rad, longitude_rad, + &double_selected, &double_full), "double-fault best-effort solve"); + print_solution("two faults: full", &double_full, receiver_truth); + print_solution("two faults: best effort", &double_selected, receiver_truth); + CHECK(!double_full.chi_square_pass, "two-fault full solution should fail"); + CHECK(!double_selected.chi_square_pass, + "one exclusion must not claim integrity with a remaining fault"); + CHECK(double_selected.chi_square_ratio < double_full.chi_square_ratio, + "best-effort candidate should retain a measurable improvement"); + CHECK(position_error_m(&double_selected, receiver_truth) < + position_error_m(&double_full, receiver_truth), + "chosen synthetic best-effort case should improve position without passing integrity"); + CHECK(!double_selected.solution_valid, + "improved but still inconsistent solution must remain operationally invalid"); + + double trusted_state[STATE_DIM]; + memcpy(trusted_state, normalized_solution.state, sizeof(trusted_state)); + if (double_selected.solution_valid) { + memcpy(trusted_state, double_selected.state, sizeof(trusted_state)); + } + CHECK(memcmp(trusted_state, normalized_solution.state, sizeof(trusted_state)) == 0, + "invalid best-effort solution must not update trusted last_solution/PPS state"); + + measurement_t low_elevation_fault[MAX_SATELLITES]; + memcpy(low_elevation_fault, clean, sizeof(low_elevation_fault)); + low_elevation_fault[6].pseudorange_m += 100.0; + solution_t weighted_low_elevation; + solution_t uniform_low_elevation; + CHECK(solve_subset(low_elevation_fault, satellite_count, full_mask, + SOLVE_NORMALIZED_WEIGHTS, seed, latitude_rad, longitude_rad, + &weighted_low_elevation), "weighted low-elevation solve"); + CHECK(solve_subset(low_elevation_fault, satellite_count, full_mask, + SOLVE_UNIFORM_WEIGHTS, seed, latitude_rad, longitude_rad, + &uniform_low_elevation), "uniform low-elevation solve"); + print_solution("low-el fault: weighted", &weighted_low_elevation, receiver_truth); + print_solution("low-el fault: uniform", &uniform_low_elevation, receiver_truth); + CHECK(position_error_m(&weighted_low_elevation, receiver_truth) < + position_error_m(&uniform_low_elevation, receiver_truth), + "elevation weighting should reduce a low-elevation fault's position effect"); + + CHECK(normalized_solution.covariance_enu_m2[0][0] > 0.0 && + normalized_solution.covariance_enu_m2[1][1] > 0.0 && + normalized_solution.covariance_enu_m2[2][2] > 0.0, + "ENU covariance diagonal must be positive"); + + if (failures == 0) { + puts("\nPASS: all synthetic integrity checks passed"); + return 0; + } + fprintf(stderr, "\n%d synthetic integrity check(s) failed\n", failures); + return 1; +} diff --git a/soc/software/gps_system/Makefile b/soc/software/gps_system/Makefile index 8843ad9..e39fb31 100644 --- a/soc/software/gps_system/Makefile +++ b/soc/software/gps_system/Makefile @@ -1,9 +1,15 @@ TARGET := gps_system +# The current Genesys2 Rocket/fabric domain that clocks the UART is 50 MHz. +# Keep the requested 115200 baud physical rather than producing 57600 baud +# with the common 100 MHz fallback divider. +BSP_UART_CLOCK_HZ ?= 50000000 + APP_SRCS := \ gps_test.c \ src/gps_ip.c \ src/gps_interrupt_handlers.c \ + src/gps_time_anchor.c \ src/gps_pps.c \ src/linked_list.c \ src/NavEquations.c \ @@ -17,3 +23,7 @@ LDLIBS += -lm ifeq ($(GPS_DEBUG),1) CFLAGS += -DDEBUG -DGPS_DEBUG_LEVEL=$(GPS_DEBUG_LEVEL) endif + +ifeq ($(GPS_NAV_DIAGNOSTICS),1) +CFLAGS += -DGPS_NAV_JUMP_DIAGNOSTICS=1 +endif diff --git a/soc/software/gps_system/gps_test.c b/soc/software/gps_system/gps_test.c index afa713f..7d694ed 100644 --- a/soc/software/gps_system/gps_test.c +++ b/soc/software/gps_system/gps_test.c @@ -9,7 +9,7 @@ int main() { - gps_startup_initialization(10u); + gps_startup_initialization(15); acq_start_loop(); diff --git a/soc/software/gps_system/header/NavEquations.h b/soc/software/gps_system/header/NavEquations.h index 2ddcd52..a65c80b 100644 --- a/soc/software/gps_system/header/NavEquations.h +++ b/soc/software/gps_system/header/NavEquations.h @@ -5,6 +5,56 @@ #include "gps_ip_defines.h" #include "matrixLib.h" + typedef struct { + double ecef_m[3]; + double clock_bias_m; + double latitude_deg; + double longitude_deg; + double height_m; + double covariance_enu_m2[3][3]; + double hacc_m; + double vacc_m; + double gdop; + double pdop; + double hdop; + double vdop; + double tdop; + double residual_rms_m; + double max_abs_residual_m; + double postfit_residual_m[GPS_TRCK_IP_COUNT]; + double elevation_deg[GPS_TRCK_IP_COUNT]; + double measurement_sigma_m[GPS_TRCK_IP_COUNT]; + double full_postfit_residual_m[GPS_TRCK_IP_COUNT]; + double full_elevation_deg[GPS_TRCK_IP_COUNT]; + double full_measurement_sigma_m[GPS_TRCK_IP_COUNT]; + double weighted_residual_rms_m; + double weighted_residual_sum; + double chi_square_threshold; + double chi_square_ratio; + double full_chi_square_ratio; + double postfit_position_correction_m; + double postfit_clock_correction_m; + double full_postfit_position_correction_m; + double full_postfit_clock_correction_m; + double quality_score; + unsigned int available_satellite_count; + unsigned int used_satellite_count; + unsigned int degrees_of_freedom; + uint32_t used_row_mask; + uint32_t excluded_row_mask; + uint64_t candidate_cycles; + uint64_t full_solution_cycles; + uint64_t fde_cycles; + uint64_t total_wls_cycles; + unsigned int iteration_count; + unsigned int fde_trial_count; + bool candidate_valid; + bool residual_test_valid; + bool chi_square_pass; + bool fde_applied; + bool solution_valid; + } gps_nav_solution_t; + void satpos(gps_ephemeris_t* eph, double* pos, double* vel, double* clk, double* clockCorr); void computeRange(double* psTVLTime, unsigned char sat_no, range_t* rho, gps_ephemeris_t* eph, ionoutc_t* ionoutc, double* xyz, t_temp_pos* tempPos, double* clockCorr, mat_type *satellitePositions, mat_type * velocities); double check_t(long double tkl); @@ -15,7 +65,7 @@ mat_type * az, mat_type * el, const unsigned char* ura_indices, const ionoutc_t* ionoutc, double gps_tow, - double solution_out[4]); // x/y/z and common clock bias in metres + gps_nav_solution_t* solution_out); void rotateSatelliteSTD(double const traveltime, const mat_type* X_sat, mat_type* X_sat_rot); void topocent(const double* XPtr, const double* dxPtr, int size, t_phi_Lambda_h * phi_Lambda_h, t_topocentData* topcent); void togeod(double a, double finv, double X, double Y, double Z, t_phi_Lambda_h * phi_Lambda_h, t_topocentData* topcent); diff --git a/soc/software/gps_system/header/gps_interrupt_handlers.h b/soc/software/gps_system/header/gps_interrupt_handlers.h index f0584a6..2c71c41 100644 --- a/soc/software/gps_system/header/gps_interrupt_handlers.h +++ b/soc/software/gps_system/header/gps_interrupt_handlers.h @@ -3,6 +3,19 @@ #include "gps_ip_defines.h" + typedef struct { + uint32_t event_overflow_total; + uint32_t plic_drain_limit_total; + uint32_t plic_repeat_total; + uint32_t nav_epoch_coalesced_total; + uint32_t satellite_connected_total; + uint32_t satellite_lost_total; + uint32_t last_connected_prn; + uint32_t last_lost_prn; + uint64_t last_connected_tick; + uint64_t last_lost_tick; + } gps_runtime_diagnostics_t; + bool assign_tracking_from_result(const gps_acq_result_t* result); void acq_intr_handler(unsigned char engine_id); void gps_dispatch_irq(unsigned int irq_id); @@ -10,6 +23,8 @@ void gps_process_isr_events(void); void gps_acq_scheduler_run(void); void gps_background_task(void); + bool gps_take_nav_solve_period_ready(void); + void gps_get_runtime_diagnostics(gps_runtime_diagnostics_t* diagnostics); void trck_intr_handler(volatile gps_trck_t* const trck_ip, volatile gps_frame_t *gps_frame_parsed, volatile int unsigned gps_subframe[10], unsigned char trck_ip_no); diff --git a/soc/software/gps_system/header/gps_ip_defines.h b/soc/software/gps_system/header/gps_ip_defines.h index 2d071a6..ba54447 100644 --- a/soc/software/gps_system/header/gps_ip_defines.h +++ b/soc/software/gps_system/header/gps_ip_defines.h @@ -45,11 +45,26 @@ #define GPS_ACQ_INTR_LINE(index) (BSP_GPS_ACQ_IRQ + ((unsigned int)(index) * BSP_GPS_ACQ_IRQ_STRIDE)) #define GPS_EVENT_QUEUE_SIZE 64u #define GPS_SYSTICK_HZ 20u + #define GPS_NAV_SOLVE_TIMER_TICK_MS 20u + #define GPS_NAV_SOLVE_TIMER_TICKS 50u + #define GPS_NAV_SOLVE_PERIOD_MS (GPS_NAV_SOLVE_TIMER_TICKS * GPS_NAV_SOLVE_TIMER_TICK_MS) + /* Keep integrity statistics active, but do not let leave-one-out FDE + * replace the full-WLS position until the real measurement-noise model + * is calibrated. The live stationary test produced a 22.7% exclusion + * rate and substantially worse position dispersion. */ + #define GPS_NAV_ENABLE_FDE 0u + #define GPS_PROFILE_CPU_HZ 50000000ULL #define GPS_ACQ_RETRY_DELAY_TICKS (GPS_SYSTICK_HZ / 2u) #define GPS_ACQ_STUCK_WARN_TICKS (GPS_SYSTICK_HZ * 2u) #define GPS_NAV_STATUS_LOG_PERIOD_TICKS GPS_SYSTICK_HZ #define GPS_TRK_MEASUREMENT_STALE_TICKS (GPS_SYSTICK_HZ * 3u) #define GPS_NAV_ABS_SAMPLE_SYNC_WINDOW_MS 25u + #define GPS_NAV_TOW_CLUSTER_TOLERANCE_SEC 0.001 + #define GPS_HOW_ANCHOR_MAX_AGE_SEC 12.0 + + _Static_assert(GPS_NAV_SOLVE_PERIOD_MS == 1000u, "NAV solve period must be 1 second"); + _Static_assert((GPS_NAV_ENABLE_FDE == 0u) || (GPS_NAV_ENABLE_FDE == 1u), + "GPS_NAV_ENABLE_FDE must be zero or one"); #if (ACQ_ENGINE_COUNT < 1UL) #error "ACQ_ENGINE_COUNT must be at least 1" @@ -430,13 +445,19 @@ unsigned int gps_get_acq_intr_line(unsigned int engine_id); bool gps_prn_valid(unsigned int prn_no); uint64_t gps_get_systick(void); + static inline uint64_t gps_read_cycle_counter(void) + { + uint64_t cycles; + asm volatile("rdcycle %0" : "=r"(cycles)); + return cycles; + } bool gps_get_ionoutc(ionoutc_t* ionoutc); void gps_background_task(void); void gps_process_isr_events(void); void gps_acq_scheduler_run(void); // parse functions. Generic parse function. unsigned char parse_subframe(int unsigned* subframe, gps_frame_t* gps_frame, - bool update_tow); + unsigned int* how_tow_sec_out); #ifdef EKF_ENABLE void calculate_position(Ekf* g_ekf); #else diff --git a/soc/software/gps_system/header/gps_macros.h b/soc/software/gps_system/header/gps_macros.h index 1e4a5d7..dfd1e95 100644 --- a/soc/software/gps_system/header/gps_macros.h +++ b/soc/software/gps_system/header/gps_macros.h @@ -7,8 +7,8 @@ * Verbosity is cumulative: * 1: navigation result (position and DOP) * 2: tracked channel/PRN summary - * 3: state transitions, warnings and errors - * 4: per-epoch and low-level diagnostic detail + * 3: state transitions, warnings/errors and integrity summary + * 4: performance, NAV satellite and low-level diagnostic detail * * The aliases keep call sites descriptive without creating extra verbosity * levels. GPS_DEBUG_LEVEL should normally be in the range 1..4. diff --git a/soc/software/gps_system/header/gps_time_anchor.h b/soc/software/gps_system/header/gps_time_anchor.h new file mode 100644 index 0000000..67bef24 --- /dev/null +++ b/soc/software/gps_system/header/gps_time_anchor.h @@ -0,0 +1,34 @@ +#ifndef GPS_TIME_ANCHOR_H_INCLUDED +#define GPS_TIME_ANCHOR_H_INCLUDED + +#include +#include + +#define GPS_TIME_WEEK_SECONDS 604800.0 +#define GPS_TIME_HALF_WEEK_SECONDS 302400.0 + +/* Resolve the week of a newly received HOW against the previous HOW anchor. + * The HOW contains seconds-of-week; the signed half-week rule makes the + * Saturday/Sunday rollover explicit without depending on a NAV timer. */ +int gps_time_resolve_how_week(bool previous_valid, + int previous_week, + double previous_tow_sec, + int fallback_week, + double how_tow_sec); + +/* Convert a receiver-sample timestamp to GPS time from a HOW/sample anchor. + * raw counters are modulo 2^32. max_age_sec must keep the signed difference + * unambiguous (and also rejects a stale HOW anchor). */ +bool gps_time_from_sample_anchor(int anchor_week, + double anchor_tow_sec, + uint32_t anchor_raw_sample, + double anchor_corrected_sample, + uint32_t event_raw_sample, + double event_corrected_sample, + double samples_per_second, + double max_age_sec, + int* event_week_out, + double* event_tow_sec_out, + double* elapsed_sec_out); + +#endif diff --git a/soc/software/gps_system/header/linked_list.h b/soc/software/gps_system/header/linked_list.h index 4ed5b8d..2c58e56 100644 --- a/soc/software/gps_system/header/linked_list.h +++ b/soc/software/gps_system/header/linked_list.h @@ -3,17 +3,16 @@ #include "gps_ip_defines.h" -typedef enum { - GPS_TOW_SOURCE_HOW = 0, - GPS_TOW_SOURCE_NAV_SOLVE -} gps_tow_source_t; - typedef struct gps_ephem_ll { volatile gps_ephemeris_t* data_p; unsigned char tracking_ip_no; struct gps_ephem_ll* next; volatile unsigned int gps_subframe_mask; - volatile gps_tow_source_t gps_tow_source; + volatile gpstime_t gps_how_tow; + volatile uint32_t gps_how_abs_sample; + volatile double gps_how_corrected_abs_sample; + volatile uint64_t gps_how_tick; + volatile bool gps_how_anchor_valid; volatile uint32_t gps_nav_solve_sequence; volatile uint32_t gps_nav_solve_consumed_sequence; volatile uint32_t gps_last_nav_solve_abs_sample; diff --git a/soc/software/gps_system/src/NavEquations.c b/soc/software/gps_system/src/NavEquations.c index 9e31893..8c29794 100644 --- a/soc/software/gps_system/src/NavEquations.c +++ b/soc/software/gps_system/src/NavEquations.c @@ -4,6 +4,7 @@ #include "gps_ip_defines.h" #include "gps.h" #include +#include #include "defines.h" @@ -370,6 +371,36 @@ static double covariance_along_axis(const mat_type* covariance, const double axi return value; } +static double covariance_between_axes(const mat_type* covariance, + const double first_axis[3], + const double second_axis[3]) +{ + double value = 0.0; + for(int row = 0 ; row < 3 ; row++) + { + for(int col = 0 ; col < 3 ; col++) + { + value += first_axis[row] * covariance->matrix[row][col] * second_axis[col]; + } + } + return value; +} + +static double least_squares_chi_square_threshold_99(unsigned int degrees_of_freedom) +{ + /* 99th percentile for chi-square distributions with 1..5 DOF. The + * current hardware has at most nine GPS channels and four WLS states. */ + static const double threshold[6] = { + 0.0, + 6.634896601, + 9.210340372, + 11.34486673, + 13.27670414, + 15.08627247 + }; + return (degrees_of_freedom < 6u) ? threshold[degrees_of_freedom] : 0.0; +} + static bool least_squares_solve_weighted_update(const mat_type* A, const mat_type* omc, const double* weights, @@ -492,22 +523,118 @@ static double klobuchar_delay_meters(const ionoutc_t* ionoutc, return obliquity * delay_seconds * SPEED_OF_LIGHT; } +static bool least_squares_build_postfit(const mat_type* satpos, + const mat_type* obs, + int satellite_count, + const unsigned char* ura_indices, + const ionoutc_t* ionoutc, + double gps_tow, + const double state[4], + mat_type* design, + mat_type* az, + mat_type* el, + double* residuals_m, + double* absolute_weights) +{ + if((satpos == NULL) || (obs == NULL) || (ura_indices == NULL) || + (state == NULL) || (design == NULL) || (az == NULL) || (el == NULL) || + (residuals_m == NULL) || (absolute_weights == NULL)) + { + return false; + } + + const double dtr = 0.01745329251994329576923690768489; + for(int i = 0 ; i < satellite_count ; i++) + { + double dx = satpos->matrix[i][0] - state[0]; + double dy = satpos->matrix[i][1] - state[1]; + double dz = satpos->matrix[i][2] - state[2]; + double approximate_range = sqrt(dx*dx + dy*dy + dz*dz); + if(!isfinite(approximate_range) || (approximate_range <= 1.0)) + { + return false; + } + + double travel_time = approximate_range / SPEED_OF_LIGHT; + double omega_tau = OMEGA_EARTH * travel_time; + double cos_omega_tau = cos(omega_tau); + double sin_omega_tau = sin(omega_tau); + double rotated_satellite[3] = { + cos_omega_tau * satpos->matrix[i][0] + sin_omega_tau * satpos->matrix[i][1], + -sin_omega_tau * satpos->matrix[i][0] + cos_omega_tau * satpos->matrix[i][1], + satpos->matrix[i][2] + }; + double difference[3] = { + rotated_satellite[0] - state[0], + rotated_satellite[1] - state[1], + rotated_satellite[2] - state[2] + }; + double geometric_range = normVect(difference); + if(!isfinite(geometric_range) || (geometric_range <= 1.0)) + { + return false; + } + + t_phi_Lambda_h geodetic; + t_topocentData topocentric; + memset(&geodetic, 0, sizeof(geodetic)); + memset(&topocentric, 0, sizeof(topocentric)); + topocent(state, difference, 3, &geodetic, &topocentric); + az->matrix[0][i] = topocentric.azim; + el->matrix[0][i] = topocentric.elv; + + double weight = least_squares_measurement_weight(ura_indices[i], topocentric.elv, true); + if(!isfinite(weight) || (weight <= 0.0)) + { + return false; + } + absolute_weights[i] = weight; + + double iono = klobuchar_delay_meters(ionoutc, gps_tow, + geodetic.phi, geodetic.lambda, + topocentric.azim, topocentric.elv); + double trop = 0.0; + if((topocentric.elv > 0.0) && + (topocentric.height >= -1000.0) && (topocentric.height <= 15000.0)) + { + trop = tropo(sin(topocentric.elv * dtr), topocentric.height / 1000.0); + if(!isfinite(trop) || (trop < 0.0)) + { + trop = 0.0; + } + } + + residuals_m[i] = obs->matrix[0][i] - geometric_range - state[3] - trop - iono; + if(!isfinite(residuals_m[i])) + { + return false; + } + for(int component = 0 ; component < 3 ; component++) + { + design->matrix[i][component] = -difference[component] / geometric_range; + } + design->matrix[i][3] = 1.0; + } + return true; +} + +static bool gps_wls_last_solution_valid = false; +static double gps_wls_last_solution[4] = {0.0, 0.0, 0.0, 0.0}; + // Function leastSquaresSTD // Definition : initialize all matc cpp class variables. // Arguments : // satpos - type mat_type*, matc class type replacement // obs - type mat_type*, matc class type replacement -bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber, - mat_type * az, mat_type * el, - const unsigned char* ura_indices, - const ionoutc_t* ionoutc, double gps_tow, - double solution_out[4]) +static bool least_squares_candidate(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber, + mat_type * az, mat_type * el, + const unsigned char* ura_indices, + const ionoutc_t* ionoutc, double gps_tow, + const double seed[4], bool seed_valid, + gps_nav_solution_t* solution_out) { //TODO computeRange i kapatmıştım, onu tekrar açmalıyım. - static bool last_solution_valid = false; - static double last_solution[4] = {0.0, 0.0, 0.0, 0.0}; - if((satpos == NULL) || (obs == NULL) || (az == NULL) || (el == NULL) || - (ura_indices == NULL) || + (ura_indices == NULL) || (solution_out == NULL) || (satpos->matrix == NULL) || (obs->matrix == NULL) || (ActiveSatellitesNumber < MIN_NEEDED_SATELLITE) || ((unsigned int)ActiveSatellitesNumber > GPS_TRCK_IP_COUNT)) @@ -516,6 +643,8 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber ActiveSatellitesNumber); return false; } + memset(solution_out, 0, sizeof(*solution_out)); + uint64_t candidate_start_cycles = gps_read_cycle_counter(); //BURASI MATLAB GIRDILERININ KULLANILARAK, LEAST SQUARE IN, CROSS-CHECK ETMEK ICIN KULLANILDIGI YER. KALDIRILABILIR //***************************************************************************************************************** @@ -601,14 +730,14 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber //initialize_vec(&obs->matrix[0][0], precisePseudoRanges); //TODO:Burası DEBUG da kontrol edilecek YUSUF, belki de hiç precisePseudoRanges olmamalı mat_type* omc = create_matrix(1, ActiveSatellitesNumber, "omc"); //1x6 matrix for DEBUG mat_type* A = create_matrix(ActiveSatellitesNumber, 4, "A"); //6x4 matrix for DEBUG - double* satWeights = (double*)malloc(ActiveSatellitesNumber * sizeof(double)); - if((posVec == NULL) || (omc == NULL) || (A == NULL) || (satWeights == NULL)) + double* absoluteWeights = (double*)malloc(ActiveSatellitesNumber * sizeof(double)); + if((posVec == NULL) || (omc == NULL) || (A == NULL) || (absoluteWeights == NULL)) { GPS_LOG(DEBUG_ERROR, GPS_LOG_CAT_MEM, "least squares matrix allocation failed\r\n"); free_matrix(posVec); free_matrix(omc); free_matrix(A); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; @@ -619,30 +748,31 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber initialize_all(0.0, A); for(int i = 0 ; i < ActiveSatellitesNumber ; i++) { - satWeights[i] = least_squares_measurement_weight(ura_indices[i], 0.0, false); + absoluteWeights[i] = least_squares_measurement_weight(ura_indices[i], 0.0, false); } - bool seeded_from_last_solution = last_solution_valid; + bool seeded_from_last_solution = seed_valid && (seed != NULL); for(int i = 0 ; seeded_from_last_solution && (i <= POSITION_VECTOR_COL) ; i++) { - if(!isfinite(last_solution[i])) + if(!isfinite(seed[i])) { seeded_from_last_solution = false; - last_solution_valid = false; - GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "discarded non-finite cached position\r\n"); + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "discarded non-finite WLS seed\r\n"); } } if(seeded_from_last_solution) { for(int i = 0 ; i <= POSITION_VECTOR_COL ; i++) { - posVec->matrix[0][i] = last_solution[i]; + posVec->matrix[0][i] = seed[i]; } } + unsigned int iteration_count = 0u; //=============== Iteratively Find receiver position ================================================================= for (unsigned iteration = 0; iteration < NUMBER_OF_ITERATIONS; iteration++) { + iteration_count = iteration + 1u; mat_type* Rot_X = create_matrix(1, 3, "Rot_X"); //1x3 matrix for DEBUG if(Rot_X == NULL) { @@ -713,7 +843,7 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber //TODO: topocent e giren matrix lerin elemanları doğru yükleniyor mu diye bakılacak. !!!!!!!!!!!!!!!!!1 az->matrix[0][i] = topcent->azim; el->matrix[0][i] = topcent->elv; - satWeights[i] = least_squares_measurement_weight(ura_indices[i], topcent->elv, true); + absoluteWeights[i] = least_squares_measurement_weight(ura_indices[i], topcent->elv, true); iono = klobuchar_delay_meters(ionoutc, gps_tow, phi_lambda_h->phi, phi_lambda_h->lambda, topcent->azim, topcent->elv); @@ -771,13 +901,18 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber // for(int n = 0 ; n < posVec->rows*posVec->columns ; n++) // posVec->matrix[0][n] = 0; // TODO rank 4'ten kucukse denklem cozulemez, dolayısıyla bır ust sevıyeye donulmesi gerekir.. //} - if(!least_squares_normalize_weights(satWeights, ActiveSatellitesNumber)) + double solveWeights[GPS_TRCK_IP_COUNT]; + for(int weight_index = 0 ; weight_index < ActiveSatellitesNumber ; weight_index++) + { + solveWeights[weight_index] = absoluteWeights[weight_index]; + } + if(!least_squares_normalize_weights(solveWeights, ActiveSatellitesNumber)) { GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "weighted least squares rejected invalid URA/elevation weights\r\n"); goto least_squares_fail; } double xVec[4] = {0.0, 0.0, 0.0, 0.0}; - bool weighted_ok = least_squares_solve_weighted_update(A, omc, satWeights, xVec); + bool weighted_ok = least_squares_solve_weighted_update(A, omc, solveWeights, xVec); if(!weighted_ok) { GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, @@ -805,9 +940,14 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber #ifdef COUT_DEBUG printf(" posVec[0]: %.12lf \n posVec[1]: %.12lf \n posVec[2]: %.12lf \n posVec[3]: %.12lf \n",posVec->matrix[0][0],posVec->matrix[0][1],posVec->matrix[0][2],posVec->matrix[0][3] ); #endif - double norm = normVect(xVec); + double update_norm = sqrt((xVec[0] * xVec[0]) + + (xVec[1] * xVec[1]) + + (xVec[2] * xVec[2]) + + (xVec[3] * xVec[3])); - if(norm < 1e-4) + /* Position and receiver clock bias are all WLS states. Ignoring the + * clock term can stop with an unconverged common-mode residual. */ + if(update_norm < 1e-4) { break; } @@ -827,7 +967,7 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber ecef_radius, X1, Y1, Z1); free_matrix(A); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; @@ -841,29 +981,108 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber phi_lambda_h->phi, phi_lambda_h->lambda, phi_lambda_h->height); free_matrix(A); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; } - /* DOP describes geometry, not the URA/elevation stochastic model used by - * WLS. Build an unweighted normal matrix, then rotate its ECEF position - * covariance into local ENU before reporting horizontal and vertical DOP. */ + double residuals_m[GPS_TRCK_IP_COUNT]; + if(!least_squares_build_postfit(satpos, obs, ActiveSatellitesNumber, + ura_indices, ionoutc, gps_tow, + posVec->matrix[0], A, az, el, + residuals_m, absoluteWeights)) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "post-fit residual construction failed\r\n"); + free_matrix(A); + free_matrix(posVec); + free(absoluteWeights); + free(phi_lambda_h); + free(topcent); + return false; + } + + double residual_square_sum = 0.0; + double absolute_weight_sum = 0.0; + double weighted_residual_sum = 0.0; + for(int i = 0 ; i < ActiveSatellitesNumber ; i++) + { + residual_square_sum += residuals_m[i] * residuals_m[i]; + absolute_weight_sum += absoluteWeights[i]; + weighted_residual_sum += absoluteWeights[i] * residuals_m[i] * residuals_m[i]; + } + if(!isfinite(residual_square_sum) || !isfinite(absolute_weight_sum) || + !isfinite(weighted_residual_sum) || (absolute_weight_sum <= 0.0)) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "post-fit residual statistics invalid\r\n"); + free_matrix(A); + free_matrix(posVec); + free(absoluteWeights); + free(phi_lambda_h); + free(topcent); + return false; + } + + unsigned int degrees_of_freedom = (unsigned int)ActiveSatellitesNumber - 4u; + double chi_square_threshold = least_squares_chi_square_threshold_99(degrees_of_freedom); + bool residual_test_valid = (degrees_of_freedom > 0u) && (chi_square_threshold > 0.0); + double chi_square_ratio = residual_test_valid + ? (weighted_residual_sum / chi_square_threshold) + : INFINITY; + bool chi_square_pass = residual_test_valid && + (weighted_residual_sum <= chi_square_threshold); + + /* Absolute weights retain the physical 1/m^2 scale needed by covariance. + * The normalized weights above are used only by the numerical WLS solve. */ + mat_type* covariance_normal = least_squares_weighted_normal_matrix(A, absoluteWeights); + mat_type* position_covariance = (covariance_normal != NULL) + ? calculate_matrix_inverse(covariance_normal) : NULL; + free_matrix(covariance_normal); + if(position_covariance == NULL) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "position covariance skipped singular geometry\r\n"); + free_matrix(A); + free_matrix(posVec); + free(absoluteWeights); + free(phi_lambda_h); + free(topcent); + return false; + } + double postfit_rhs[4] = {0.0, 0.0, 0.0, 0.0}; + for(int col = 0 ; col < 4 ; col++) + { + for(int row = 0 ; row < ActiveSatellitesNumber ; row++) + { + postfit_rhs[col] += A->matrix[row][col] * absoluteWeights[row] * residuals_m[row]; + } + } + double postfit_correction[4] = {0.0, 0.0, 0.0, 0.0}; + for(int row = 0 ; row < 4 ; row++) + { + for(int col = 0 ; col < 4 ; col++) + { + postfit_correction[row] += position_covariance->matrix[row][col] * postfit_rhs[col]; + } + } + solution_out->postfit_position_correction_m = normVect(postfit_correction); + solution_out->postfit_clock_correction_m = postfit_correction[3]; + + /* DOP describes geometry only, so it uses an unweighted normal matrix. */ double dop_weights[GPS_TRCK_IP_COUNT]; for(int i = 0 ; i < ActiveSatellitesNumber ; i++) { dop_weights[i] = 1.0; } mat_type* dop_normal = least_squares_weighted_normal_matrix(A, dop_weights); - free_matrix(A); mat_type* dop_covariance = (dop_normal != NULL) ? calculate_matrix_inverse(dop_normal) : NULL; free_matrix(dop_normal); if(dop_covariance == NULL) { GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "DOP skipped singular geometry\r\n"); + free_matrix(position_covariance); + free_matrix(A); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; @@ -897,8 +1116,10 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "DOP rejected invalid ENU geometry h2=%e v2=%e p2=%e t2=%e g2=%e\r\n", hdop2, vdop2, pdop2, tdop2, gdop2); + free_matrix(position_covariance); + free_matrix(A); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; @@ -909,37 +1130,85 @@ bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber double hdop = sqrt(hdop2); double vdop = sqrt(vdop2); double tdop = sqrt(tdop2); - GPS_LOG(DEBUG_STATUS, GPS_LOG_CAT_NAV, - "DOP GDOP=%.10lf PDOP=%.10lf HDOP=%.10lf VDOP=%.10lf TDOP=%.10lf\r\n", - gdop, pdop, hdop, vdop, tdop); - (void)gdop; - (void)pdop; - (void)hdop; - (void)vdop; - (void)tdop; - GPS_LOG(DEBUG_STATUS, GPS_LOG_CAT_NAV, - "position lat=%.20lf lon=%.20lf height=%.20lf\r\n", - phi_lambda_h->phi, phi_lambda_h->lambda, phi_lambda_h->height); - int UTMzone = findUtmZone(phi_lambda_h->phi, phi_lambda_h->lambda); - GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "UTM zone=%d\r\n", UTMzone); - (void)UTMzone; - for(int i = 0 ; i <= POSITION_VECTOR_COL ; i++) + const double* enu_axes[3] = {east, north, up}; + for(int row = 0 ; row < 3 ; row++) { - last_solution[i] = posVec->matrix[0][i]; - if(solution_out != NULL) + for(int col = 0 ; col < 3 ; col++) { - solution_out[i] = posVec->matrix[0][i]; + solution_out->covariance_enu_m2[row][col] = + covariance_between_axes(position_covariance, enu_axes[row], enu_axes[col]); } } - last_solution_valid = true; + free_matrix(position_covariance); + free_matrix(A); + + double horizontal_variance = solution_out->covariance_enu_m2[0][0] + + solution_out->covariance_enu_m2[1][1]; + double vertical_variance = solution_out->covariance_enu_m2[2][2]; + if(!isfinite(horizontal_variance) || !isfinite(vertical_variance) || + (horizontal_variance < 0.0) || (vertical_variance < 0.0)) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "position covariance rejected hvar=%e vvar=%e\r\n", + horizontal_variance, vertical_variance); + free_matrix(posVec); + free(absoluteWeights); + free(phi_lambda_h); + free(topcent); + return false; + } + + for(int component = 0 ; component < 3 ; component++) + { + solution_out->ecef_m[component] = posVec->matrix[0][component]; + } + solution_out->clock_bias_m = posVec->matrix[0][3]; + solution_out->latitude_deg = phi_lambda_h->phi; + solution_out->longitude_deg = phi_lambda_h->lambda; + solution_out->height_m = phi_lambda_h->height; + solution_out->hacc_m = sqrt(horizontal_variance); + solution_out->vacc_m = sqrt(vertical_variance); + solution_out->gdop = gdop; + solution_out->pdop = pdop; + solution_out->hdop = hdop; + solution_out->vdop = vdop; + solution_out->tdop = tdop; + solution_out->residual_rms_m = sqrt(residual_square_sum / (double)ActiveSatellitesNumber); + for(int i = 0 ; i < ActiveSatellitesNumber ; i++) + { + solution_out->postfit_residual_m[i] = residuals_m[i]; + solution_out->elevation_deg[i] = el->matrix[0][i]; + solution_out->measurement_sigma_m[i] = 1.0 / sqrt(absoluteWeights[i]); + if(fabs(residuals_m[i]) > solution_out->max_abs_residual_m) + { + solution_out->max_abs_residual_m = fabs(residuals_m[i]); + } + } + solution_out->weighted_residual_rms_m = sqrt(weighted_residual_sum / absolute_weight_sum); + solution_out->weighted_residual_sum = weighted_residual_sum; + solution_out->chi_square_threshold = chi_square_threshold; + solution_out->chi_square_ratio = chi_square_ratio; + solution_out->quality_score = residual_test_valid ? (100.0 / (1.0 + chi_square_ratio)) : 0.0; + solution_out->available_satellite_count = (unsigned int)ActiveSatellitesNumber; + solution_out->used_satellite_count = (unsigned int)ActiveSatellitesNumber; + solution_out->degrees_of_freedom = degrees_of_freedom; + solution_out->used_row_mask = (1u << (unsigned int)ActiveSatellitesNumber) - 1u; + solution_out->excluded_row_mask = 0u; + solution_out->candidate_valid = true; + solution_out->residual_test_valid = residual_test_valid; + solution_out->chi_square_pass = chi_square_pass; + solution_out->fde_applied = false; + solution_out->solution_valid = chi_square_pass; + solution_out->iteration_count = iteration_count; + solution_out->candidate_cycles = gps_read_cycle_counter() - candidate_start_cycles; //free(phi_lambda_h, sizeof(t_phi_Lambda_h)); //free(topcent, sizeof(t_topocentData));; //TODO: re-create by malloc free(phi_lambda_h); free(topcent); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); //=============================================================================================== return true; @@ -947,12 +1216,227 @@ least_squares_fail: free_matrix(A); free_matrix(omc); free_matrix(posVec); - free(satWeights); + free(absoluteWeights); free(phi_lambda_h); free(topcent); return false; } +bool leastSquaresSTD(mat_type* satpos, mat_type* obs, int ActiveSatellitesNumber, + mat_type * az, mat_type * el, + const unsigned char* ura_indices, + const ionoutc_t* ionoutc, double gps_tow, + gps_nav_solution_t* solution_out) +{ + if(solution_out == NULL) + { + return false; + } + memset(solution_out, 0, sizeof(*solution_out)); + uint64_t total_wls_start_cycles = gps_read_cycle_counter(); + + gps_nav_solution_t full_solution; + if(!least_squares_candidate(satpos, obs, ActiveSatellitesNumber, + az, el, ura_indices, ionoutc, gps_tow, + gps_wls_last_solution, + gps_wls_last_solution_valid, + &full_solution)) + { + return false; + } + + gps_nav_solution_t selected_solution = full_solution; + bool passing_candidate_found = full_solution.chi_square_pass; + uint32_t full_row_mask = (1u << (unsigned int)ActiveSatellitesNumber) - 1u; + uint64_t fde_start_cycles = 0u; + unsigned int fde_trial_count = 0u; + + /* Six available measurements leave only five after exclusion (one residual + * DOF). In that geometry several leave-one-out candidates can pass while + * producing widely separated positions. Keep the legacy full-WLS position + * as an explicitly invalid best effort until at least two residual DOF remain + * after exclusion (seven available measurements). */ + if((GPS_NAV_ENABLE_FDE != 0u) && !full_solution.chi_square_pass && + (ActiveSatellitesNumber >= 7)) + { + fde_start_cycles = gps_read_cycle_counter(); + for(int excluded_row = 0 ; excluded_row < ActiveSatellitesNumber ; excluded_row++) + { + fde_trial_count++; + int subset_count = ActiveSatellitesNumber - 1; + mat_type* subset_satpos = create_matrix(subset_count, 3, "fdeSatpos"); + mat_type* subset_obs = create_matrix(1, subset_count, "fdeObs"); + mat_type* subset_az = create_matrix(1, subset_count, "fdeAz"); + mat_type* subset_el = create_matrix(1, subset_count, "fdeEl"); + unsigned char subset_ura[GPS_TRCK_IP_COUNT]; + if((subset_satpos == NULL) || (subset_obs == NULL) || + (subset_az == NULL) || (subset_el == NULL)) + { + free_matrix(subset_satpos); + free_matrix(subset_obs); + free_matrix(subset_az); + free_matrix(subset_el); + GPS_LOG(DEBUG_ERROR, GPS_LOG_CAT_MEM, "FDE subset allocation failed\r\n"); + break; + } + initialize_all(0.0, subset_satpos); + initialize_all(0.0, subset_obs); + initialize_all(0.0, subset_az); + initialize_all(0.0, subset_el); + + int subset_row = 0; + for(int original_row = 0 ; original_row < ActiveSatellitesNumber ; original_row++) + { + if(original_row == excluded_row) + { + continue; + } + for(int component = 0 ; component < 3 ; component++) + { + subset_satpos->matrix[subset_row][component] = + satpos->matrix[original_row][component]; + } + subset_obs->matrix[0][subset_row] = obs->matrix[0][original_row]; + subset_ura[subset_row] = ura_indices[original_row]; + subset_row++; + } + + double full_seed[4] = { + full_solution.ecef_m[0], full_solution.ecef_m[1], + full_solution.ecef_m[2], full_solution.clock_bias_m + }; + gps_nav_solution_t candidate; + bool candidate_ok = least_squares_candidate(subset_satpos, subset_obs, subset_count, + subset_az, subset_el, subset_ura, + ionoutc, gps_tow, + full_seed, true, &candidate); + free_matrix(subset_satpos); + free_matrix(subset_obs); + free_matrix(subset_az); + free_matrix(subset_el); + if(!candidate_ok) + { + continue; + } + + candidate.available_satellite_count = (unsigned int)ActiveSatellitesNumber; + candidate.used_row_mask = full_row_mask & ~(1u << (unsigned int)excluded_row); + candidate.excluded_row_mask = 1u << (unsigned int)excluded_row; + candidate.fde_applied = true; + double mapped_residuals[GPS_TRCK_IP_COUNT] = {0.0}; + double mapped_elevations[GPS_TRCK_IP_COUNT] = {0.0}; + double mapped_sigmas[GPS_TRCK_IP_COUNT] = {0.0}; + subset_row = 0; + for(int original_row = 0 ; original_row < ActiveSatellitesNumber ; original_row++) + { + if(original_row != excluded_row) + { + mapped_residuals[original_row] = candidate.postfit_residual_m[subset_row]; + mapped_elevations[original_row] = candidate.elevation_deg[subset_row]; + mapped_sigmas[original_row] = candidate.measurement_sigma_m[subset_row]; + subset_row++; + } + } + memcpy(candidate.postfit_residual_m, mapped_residuals, sizeof(mapped_residuals)); + memcpy(candidate.elevation_deg, mapped_elevations, sizeof(mapped_elevations)); + memcpy(candidate.measurement_sigma_m, mapped_sigmas, sizeof(mapped_sigmas)); + + bool choose_candidate = false; + if(candidate.chi_square_pass) + { + choose_candidate = !passing_candidate_found || + (candidate.chi_square_ratio < selected_solution.chi_square_ratio); + } + else if(!passing_candidate_found && + (candidate.chi_square_ratio < selected_solution.chi_square_ratio)) + { + /* Preserve the best statistical improvement as an explicitly invalid + * best-effort navigation result. */ + choose_candidate = true; + } + if(choose_candidate) + { + selected_solution = candidate; + } + if(candidate.chi_square_pass) + { + passing_candidate_found = true; + } + } + } + + selected_solution.available_satellite_count = (unsigned int)ActiveSatellitesNumber; + selected_solution.full_chi_square_ratio = full_solution.chi_square_ratio; + selected_solution.full_postfit_position_correction_m = + full_solution.postfit_position_correction_m; + selected_solution.full_postfit_clock_correction_m = + full_solution.postfit_clock_correction_m; + memcpy(selected_solution.full_postfit_residual_m, + full_solution.postfit_residual_m, + sizeof(selected_solution.full_postfit_residual_m)); + memcpy(selected_solution.full_elevation_deg, + full_solution.elevation_deg, + sizeof(selected_solution.full_elevation_deg)); + memcpy(selected_solution.full_measurement_sigma_m, + full_solution.measurement_sigma_m, + sizeof(selected_solution.full_measurement_sigma_m)); + selected_solution.full_solution_cycles = full_solution.candidate_cycles; + selected_solution.fde_trial_count = fde_trial_count; + selected_solution.fde_cycles = (fde_start_cycles != 0u) + ? (gps_read_cycle_counter() - fde_start_cycles) : 0u; + selected_solution.total_wls_cycles = gps_read_cycle_counter() - total_wls_start_cycles; + selected_solution.solution_valid = selected_solution.candidate_valid && + selected_solution.residual_test_valid && + selected_solution.chi_square_pass; + if(selected_solution.solution_valid) + { + gps_wls_last_solution[0] = selected_solution.ecef_m[0]; + gps_wls_last_solution[1] = selected_solution.ecef_m[1]; + gps_wls_last_solution[2] = selected_solution.ecef_m[2]; + gps_wls_last_solution[3] = selected_solution.clock_bias_m; + gps_wls_last_solution_valid = true; + } + *solution_out = selected_solution; + + GPS_LOG(DEBUG_STATUS, GPS_LOG_CAT_NAV, + "GDOP=%.10lf\r\n", solution_out->gdop); + GPS_LOG(DEBUG_STATUS, GPS_LOG_CAT_NAV, + "position lat=%.20lf lon=%.20lf height=%.3lf\r\n", + solution_out->latitude_deg, solution_out->longitude_deg, + solution_out->height_m); + GPS_LOG(DEBUG_EVENTS, GPS_LOG_CAT_NAV, + "NAVSOL valid=%u integrity=%u fde=%u sats=%u/%u excluded=0x%03x " + "residual_rms=%.3lf max_residual=%.3lf weighted_rms=%.3lf " + "chi2=%.3lf dof=%u threshold=%.3lf ratio=%.3lf quality=%.1lf " + "hacc=%.3lf vacc=%.3lf\r\n", + solution_out->solution_valid ? 1u : 0u, + solution_out->chi_square_pass ? 1u : 0u, + solution_out->fde_applied ? 1u : 0u, + solution_out->used_satellite_count, + solution_out->available_satellite_count, + solution_out->excluded_row_mask, + solution_out->residual_rms_m, + solution_out->max_abs_residual_m, + solution_out->weighted_residual_rms_m, + solution_out->weighted_residual_sum, + solution_out->degrees_of_freedom, + solution_out->chi_square_threshold, + solution_out->chi_square_ratio, + solution_out->quality_score, + solution_out->hacc_m, + solution_out->vacc_m); + for(int row = 0 ; row < ActiveSatellitesNumber ; row++) + { + if((solution_out->used_row_mask & (1u << (unsigned int)row)) != 0u) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "postfit row=%d residual=%.3lf m\r\n", + row, solution_out->postfit_residual_m[row]); + } + } + return true; +} + void rotateSatelliteSTD(double const traveltime, const mat_type* X_sat, mat_type* X_sat_rot) // x_sat -> vector type { double omegatau = OMEGA_EARTH * traveltime; diff --git a/soc/software/gps_system/src/gps_interrupt_handlers.c b/soc/software/gps_system/src/gps_interrupt_handlers.c index fc12d24..09c9e99 100644 --- a/soc/software/gps_system/src/gps_interrupt_handlers.c +++ b/soc/software/gps_system/src/gps_interrupt_handlers.c @@ -2,6 +2,7 @@ #include "gps_interrupt_handlers.h" #include "Navigation.h" #include "gps_pps.h" +#include "gps_time_anchor.h" #include #include #include @@ -68,6 +69,8 @@ static volatile unsigned int gps_plic_drain_limit_count = 0; static volatile unsigned int gps_plic_repeat_count = 0; static volatile bool gps_acq_schedule_pending = true; static volatile bool gps_timer_maintenance_pending = true; +static volatile bool gps_nav_solve_period_pending = false; +static volatile gps_runtime_diagnostics_t gps_runtime_diagnostics; static unsigned int gps_acq_round_robin_prn = 0; #define GPS_PLIC_DRAIN_LIMIT (GPS_TRCK_IP_COUNT + GPS_ACQ_IP_COUNT + 4u) @@ -98,45 +101,6 @@ static double gps_correct_abs_sample(uint32_t abs_sample, uint32_t rem_code_phas return (double)abs_sample - ((double)rem_code_phase / CODE_FREQ_BASIS); } -static double gps_normalize_tow(double tow_sec, volatile int* week) -{ - while(tow_sec >= SECONDS_IN_WEEK) - { - tow_sec -= SECONDS_IN_WEEK; - if(week != NULL) - { - (*week)++; - } - } - while(tow_sec < 0.0) - { - tow_sec += SECONDS_IN_WEEK; - if(week != NULL) - { - (*week)--; - } - } - return tow_sec; -} - -static bool gps_advance_tow_from_nav_timer(volatile gps_ephemeris_t* eph, - uint32_t nav_solve_timer, - uint32_t event_count, - double* delta_sec_out) -{ - if((eph == NULL) || (nav_solve_timer == 0u) || (event_count == 0u)) - { - return false; - } - double delta_sec = (double)event_count * (double)nav_solve_timer * 0.020; - eph->tow.sec = gps_normalize_tow(eph->tow.sec + delta_sec, &eph->tow.week); - if(delta_sec_out != NULL) - { - *delta_sec_out = delta_sec; - } - return true; -} - static uint64_t gps_systick_interval(void) { uint64_t interval = BSP_CLINT_TIMEBASE_HZ / GPS_SYSTICK_HZ; @@ -176,6 +140,7 @@ static bool gps_event_push_isr(const gps_isr_event_t* event) if(next == gps_event_tail) { gps_event_overflow_count++; + gps_runtime_diagnostics.event_overflow_total++; return false; } @@ -243,6 +208,52 @@ static bool gps_take_timer_maintenance_pending(void) return pending; } +bool gps_take_nav_solve_period_ready(void) +{ + bool tracking_shadow_pending = false; + bool acquisition_shadow_pending = false; + uint64_t irq_state = bsp_irq_save(); + for(unsigned int i = 0 ; i < GPS_TRCK_IP_COUNT ; i++) + { + if(trk_shadow[i].drop_pending || trk_shadow[i].nav_bits_pending || + trk_shadow[i].nav_solve_pending || trk_shadow[i].misc_pending) + { + tracking_shadow_pending = true; + break; + } + } + for(unsigned int i = 0 ; i < GPS_ACQ_IP_COUNT ; i++) + { + if(acq_shadow_pending[i]) + { + acquisition_shadow_pending = true; + break; + } + } + bool pipeline_idle = (gps_event_head == gps_event_tail) && + !tracking_shadow_pending && !acquisition_shadow_pending; + bool ready = gps_nav_solve_period_pending && pipeline_idle; + if(ready) + { + /* One foreground attempt per hardware NAV period. A failed WLS is not + * retried by an unrelated NAV-bit, acquisition or SysTick wake-up. */ + gps_nav_solve_period_pending = false; + } + bsp_irq_restore(irq_state); + return ready; +} + +void gps_get_runtime_diagnostics(gps_runtime_diagnostics_t* diagnostics) +{ + if(diagnostics == NULL) + { + return; + } + uint64_t irq_state = bsp_irq_save(); + *diagnostics = gps_runtime_diagnostics; + bsp_irq_restore(irq_state); +} + static void gps_clear_tracking_slot(unsigned char trck_ip_no) { if(trck_ip_no >= GPS_TRCK_IP_COUNT) @@ -277,6 +288,10 @@ static void gps_runtime_state_init(void) gps_plic_repeat_count = 0; gps_acq_schedule_pending = true; gps_timer_maintenance_pending = true; + gps_nav_solve_period_pending = false; + memset((void*)&gps_runtime_diagnostics, 0, sizeof(gps_runtime_diagnostics)); + gps_runtime_diagnostics.last_connected_prn = GPS_PRN_INVALID; + gps_runtime_diagnostics.last_lost_prn = GPS_PRN_INVALID; gps_acq_round_robin_prn = 0; for(unsigned int i = 0 ; i < GPS_ACQ_IP_COUNT ; i++) @@ -441,6 +456,7 @@ void gps_irq_handler(void) { bsp_plic_complete(irq_id); gps_plic_repeat_count++; + gps_runtime_diagnostics.plic_repeat_total++; return; } seen_mask |= irq_bit; @@ -451,6 +467,7 @@ void gps_irq_handler(void) } gps_plic_drain_limit_count++; + gps_runtime_diagnostics.plic_drain_limit_total++; } static bool gps_tracking_prn_active(unsigned int prn_no) @@ -483,6 +500,9 @@ static void gps_mark_satellite_tracking(unsigned int prn_no, unsigned char trck_ satellite_tracking_ip[prn_no] = trck_ip_no; if((previous_state != GPS_SAT_TRACKING) || (previous_ip != trck_ip_no)) { + gps_runtime_diagnostics.satellite_connected_total++; + gps_runtime_diagnostics.last_connected_prn = prn_no; + gps_runtime_diagnostics.last_connected_tick = gps_get_systick(); GPS_LOG(DEBUG_INFO, GPS_LOG_CAT_TRK, "satellite connected: prn=%u trk=%u previous=%s previous_trk=%u\r\n", prn_no, trck_ip_no, gps_satellite_state_name(previous_state), previous_ip); @@ -500,6 +520,9 @@ static void gps_mark_satellite_lost(unsigned int prn_no) satellite_tracking_ip[prn_no] = GPS_PRN_INVALID; if(previous_state != GPS_SAT_LOST) { + gps_runtime_diagnostics.satellite_lost_total++; + gps_runtime_diagnostics.last_lost_prn = prn_no; + gps_runtime_diagnostics.last_lost_tick = gps_get_systick(); GPS_LOG(DEBUG_INFO, GPS_LOG_CAT_TRK, "satellite lost: prn=%u previous=%s previous_trk=%u\r\n", prn_no, gps_satellite_state_name(previous_state), previous_ip); @@ -623,7 +646,8 @@ void trck_intr_handler(volatile gps_trck_t* const trck_ip, event.status = status_reg; event.control = trck_ip->CONTROL_REG; event.prn = trck_ip->PRN_NUMBER; - /* Hardware updates ABS_SAMPLE when the nav-solve interrupt is raised. */ + /* Hardware latches ABS_SAMPLE and REM_CODE_PHASE together for both a valid + * subframe and a nav-solve event. */ event.abs_sample_raw = trck_ip->ABS_SAMPLE; event.rem_code_phase = trck_ip->REM_CODE_PHASE_REG; event.corrected_abs_sample = gps_correct_abs_sample(event.abs_sample_raw, event.rem_code_phase); @@ -889,15 +913,39 @@ static void gps_process_tracking_nav_bits(const gps_isr_event_t* event) gps_frame_parsed->gps_ephems.abs_sample = event->corrected_abs_sample; gps_frame_parsed->gps_ephems.SVID = (unsigned char)event->prn; - /* Enabling an interrupt is not a timing event. HOW remains the TOW owner - * until this channel's first nav-solve event is actually consumed. */ - bool update_tow = node->gps_tow_source == GPS_TOW_SOURCE_HOW; + unsigned int how_tow_sec = 0u; unsigned char subframe_id = parse_subframe((unsigned int*)gps_subframe, (gps_frame_t*)gps_frame_parsed, - update_tow); + &how_tow_sec); if((subframe_id >= 1u) && (subframe_id <= 5u)) { node->gps_subframe_mask |= (1u << subframe_id); + int fallback_week = gps_frame_parsed->gps_ephems.tow.week; + if(subframe_id == 1u) + { + /* WN is ten bits in LNAV. Keeping it in the same modulo domain as + * the ephemeris is sufficient for satellite-time differences. */ + fallback_week = (int)((gps_subframe[2] >> 20) & 0x3ffu); + } + /* A subframe-1 WN is authoritative in its native 10-bit domain. On + * other subframes, resolve the HOW seconds rollover from the previous + * anchor. This also upgrades a pre-SF1 temporary week immediately. */ + int anchor_week = (subframe_id == 1u) ? fallback_week : + gps_time_resolve_how_week(node->gps_how_anchor_valid, + node->gps_how_tow.week, + node->gps_how_tow.sec, + fallback_week, + (double)how_tow_sec); + node->gps_how_tow.week = anchor_week; + node->gps_how_tow.sec = (double)how_tow_sec; + node->gps_how_abs_sample = event->abs_sample_raw; + node->gps_how_corrected_abs_sample = event->corrected_abs_sample; + node->gps_how_tick = event->tick; + node->gps_how_anchor_valid = true; + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "HOW anchor: trk=%u prn=%u week=%d tow=%.3f abs=%u corrected=%.6f\r\n", + trck_ip_no, event->prn, anchor_week, (double)how_tow_sec, + event->abs_sample_raw, event->corrected_abs_sample); } else { @@ -934,6 +982,8 @@ static void gps_process_tracking_nav_solve(const gps_isr_event_t* event) } if(nav_solve_event_count > event->nav_solve_event_count) { + gps_runtime_diagnostics.nav_epoch_coalesced_total += + nav_solve_event_count - event->nav_solve_event_count; GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, "recovered %u coalesced nav-solve epochs: trk=%u prn=%u\r\n", nav_solve_event_count, trck_ip_no, event->prn); @@ -947,26 +997,39 @@ static void gps_process_tracking_nav_solve(const gps_isr_event_t* event) node->gps_last_pps_capture_sequence += nav_solve_event_count; } - double tow_delta_sec = 0.0; - if(!gps_advance_tow_from_nav_timer(&gps_frame_parsed->gps_ephems, - event->nav_solve_timer, - nav_solve_event_count, - &tow_delta_sec)) + if(!node->gps_how_anchor_valid) { GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, - "nav solve has invalid timer: trk=%u prn=%u timer=%u\r\n", - trck_ip_no, event->prn, event->nav_solve_timer); + "nav solve rejected without HOW/sample anchor: trk=%u prn=%u\r\n", + trck_ip_no, event->prn); return; } - if(node->gps_tow_source == GPS_TOW_SOURCE_HOW) + int tow_week = 0; + double tow_sec = 0.0; + double tow_delta_sec = 0.0; + if(!gps_time_from_sample_anchor(node->gps_how_tow.week, + node->gps_how_tow.sec, + node->gps_how_abs_sample, + node->gps_how_corrected_abs_sample, + event->abs_sample_raw, + event->corrected_abs_sample, + SAMPLES_PER_CODE * 1000.0, + GPS_HOW_ANCHOR_MAX_AGE_SEC, + &tow_week, + &tow_sec, + &tow_delta_sec)) { - node->gps_tow_source = GPS_TOW_SOURCE_NAV_SOLVE; - GPS_LOG(DEBUG_INFO, GPS_LOG_CAT_NAV, - "TOW ownership transferred to nav solve: trk=%u prn=%u tow=%.3f\r\n", - trck_ip_no, event->prn, gps_frame_parsed->gps_ephems.tow.sec); + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "nav solve rejected by stale/invalid HOW anchor: trk=%u prn=%u anchor_tow=%.3f anchor_abs=%u event_abs=%u\r\n", + trck_ip_no, event->prn, node->gps_how_tow.sec, + node->gps_how_abs_sample, event->abs_sample_raw); + return; } + gps_frame_parsed->gps_ephems.tow.week = tow_week; + gps_frame_parsed->gps_ephems.tow.sec = tow_sec; gps_frame_parsed->gps_ephems.abs_sample = event->corrected_abs_sample; node->gps_nav_solve_sequence += nav_solve_event_count; + gps_nav_solve_period_pending = true; node->gps_last_nav_solve_abs_sample = event->abs_sample_raw; node->gps_last_nav_solve_corrected_abs_sample = event->corrected_abs_sample; if(event->pps_capture_valid) diff --git a/soc/software/gps_system/src/gps_ip.c b/soc/software/gps_system/src/gps_ip.c index 61a3e0f..044ea4a 100644 --- a/soc/software/gps_system/src/gps_ip.c +++ b/soc/software/gps_system/src/gps_ip.c @@ -1,6 +1,8 @@ #include #include #include +#include +#include #include "NavEquations.h" #include "Navigation.h" #include "gps_ip_defines.h" @@ -131,6 +133,94 @@ static bool gps_snapshot_has_svid(const gps_ephemeris_t snapshot[GPS_TRCK_IP_COU return false; } +static uint32_t gps_nav_tow_mismatch_total; +static uint32_t gps_nav_tow_reject_total; + +static double gps_snapshot_tow_delta_sec(const gpstime_t* first, const gpstime_t* second) +{ + double delta = ((double)(first->week - second->week) * 604800.0) + + (first->sec - second->sec); + if(delta > 302400.0) + { + delta -= 604800.0; + } + else if(delta < -302400.0) + { + delta += 604800.0; + } + return delta; +} + +static bool gps_validate_snapshot_tow(const gps_ephemeris_t snapshot[GPS_TRCK_IP_COUNT], + unsigned int satellite_count) +{ + if((snapshot == NULL) || (satellite_count < MIN_NEEDED_SATELLITE)) + { + return false; + } + + unsigned int reference_row = 0u; + unsigned int reference_cluster_count = 0u; + for(unsigned int candidate = 0u ; candidate < satellite_count ; candidate++) + { + unsigned int cluster_count = 0u; + for(unsigned int row = 0u ; row < satellite_count ; row++) + { + double delta = gps_snapshot_tow_delta_sec(&snapshot[row].tow, + &snapshot[candidate].tow); + if(fabs(delta) <= GPS_NAV_TOW_CLUSTER_TOLERANCE_SEC) + { + cluster_count++; + } + } + if(cluster_count > reference_cluster_count) + { + reference_cluster_count = cluster_count; + reference_row = candidate; + } + } + + if(reference_cluster_count <= (satellite_count / 2u)) + { + gps_nav_tow_reject_total++; + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "NAV epoch rejected: no majority TOW cluster sats=%u best_cluster=%u rejects=%u\r\n", + satellite_count, reference_cluster_count, gps_nav_tow_reject_total); + return false; + } + + unsigned int mismatch_count = 0u; + double maximum_mismatch_sec = 0.0; + unsigned int maximum_mismatch_row = reference_row; + for(unsigned int row = 0u ; row < satellite_count ; row++) + { + double delta = gps_snapshot_tow_delta_sec(&snapshot[row].tow, + &snapshot[reference_row].tow); + if(fabs(delta) <= GPS_NAV_TOW_CLUSTER_TOLERANCE_SEC) + { + continue; + } + mismatch_count++; + if(!isfinite(delta) || (fabs(delta) > fabs(maximum_mismatch_sec))) + { + maximum_mismatch_sec = delta; + maximum_mismatch_row = row; + } + } + if(mismatch_count != 0u) + { + gps_nav_tow_mismatch_total += mismatch_count; + gps_nav_tow_reject_total++; + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "NAV epoch rejected: TOW mismatch count=%u SVID=%u delta=%.6lf s reference_svid=%u mismatches=%u rejects=%u\r\n", + mismatch_count, snapshot[maximum_mismatch_row].SVID, + maximum_mismatch_sec, snapshot[reference_row].SVID, + gps_nav_tow_mismatch_total, gps_nav_tow_reject_total); + return false; + } + return true; +} + static int32_t gps_sign_extend(uint32_t value, unsigned int bits) { if((bits == 0u) || (bits >= 32u)) @@ -418,15 +508,13 @@ static void gps_stage_ephemeris_subframe(const unsigned int* subframe, } unsigned char parse_subframe(int unsigned* subframe, gps_frame_t* gps_frame, - bool update_tow) + unsigned int* how_tow_sec_out) { unsigned char subframe_id = (unsigned char)((subframe[1] >> 8) & 0x07); unsigned int how_tow = (subframe[1] >> 13) * 6u; - if(update_tow) + if(how_tow_sec_out != NULL) { - gps_frame->gps_ephems.tow.sec = (double)how_tow; - GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "tow.sec initialized from HOW as %lf\n", - gps_frame->gps_ephems.tow.sec); + *how_tow_sec_out = how_tow; } if((subframe_id >= 1u) && (subframe_id <= 3u)) { @@ -708,9 +796,11 @@ static void gps_consume_nav_sequences_locked(const unsigned char snapshot_ips[GP static bool nav_software_from_snapshot(const gps_ephemeris_t* ephemeris, const uint64_t pps_counters[GPS_TRCK_IP_COUNT], const uint32_t pps_capture_sequences[GPS_TRCK_IP_COUNT], - unsigned int satellite_count) + unsigned int satellite_count, + gps_nav_solution_t* solution_out) { - if((ephemeris == NULL) || (satellite_count < MIN_NEEDED_SATELLITE)) + if((ephemeris == NULL) || (solution_out == NULL) || + (satellite_count < MIN_NEEDED_SATELLITE)) { GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "nav solve skipped, usable satellites=%u\r\n", satellite_count); return false; @@ -731,7 +821,9 @@ static bool nav_software_from_snapshot(const gps_ephemeris_t* ephemeris, ionoutc_t ionoutc_snapshot; const ionoutc_t* ionoutc = gps_get_ionoutc(&ionoutc_snapshot) ? &ionoutc_snapshot : NULL; bool ok = false; - double solution[4] = {0.0, 0.0, 0.0, 0.0}; + gps_nav_solution_t solution; + memset(&solution, 0, sizeof(solution)); + memset(solution_out, 0, sizeof(*solution_out)); GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "Klobuchar correction %s for this solve\r\n", (ionoutc != NULL) ? "available" : "waiting for subframe 4 page 18"); @@ -802,14 +894,28 @@ static bool nav_software_from_snapshot(const gps_ephemeris_t* ephemeris, ok = leastSquaresSTD(satellitePositions, localPseudoRanges, satellite_count, az, el, ura_indices, - ionoutc, ephemeris[0].tow.sec, solution); - if(ok && (pps_capture_sequences[minimum_index] != 0u)) + ionoutc, ephemeris[0].tow.sec, &solution); + if(ok && solution.fde_applied) + { + for(unsigned int row = 0 ; row < satellite_count ; row++) + { + if((solution.excluded_row_mask & (1u << row)) != 0u) + { + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "FDE excluded row=%u SVID=%u\r\n", row, ephemeris[row].SVID); + } + } + } + bool pps_reference_used = ok && + ((solution.used_row_mask & (1u << minimum_index)) != 0u); + if(ok && solution.solution_valid && pps_reference_used && + (pps_capture_sequences[minimum_index] != 0u)) { /* The synthetic STARTOFFSET datum is absorbed by WLS b. Removing b/c * recovers the reference satellite's physical flight time; POSTPONE_TOW * is applied exactly once here, just as it is in satpos(). */ double receiver_tow = ephemeris[minimum_index].tow.sec + POSTPONE_TOW + - (STARTOFFSET / 1000.0) - (solution[3] / SPEED_OF_LIGHT); + (STARTOFFSET / 1000.0) - (solution.clock_bias_m / SPEED_OF_LIGHT); if(!gps_pps_commit_solution(pps_counters[minimum_index], ephemeris[minimum_index].tow.week, receiver_tow)) @@ -817,6 +923,18 @@ static bool nav_software_from_snapshot(const gps_ephemeris_t* ephemeris, GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "PPS anchor skipped: mailbox busy or invalid time\r\n"); } } + else if(ok && solution.solution_valid && !pps_reference_used) + { + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "PPS anchor protected: FDE excluded pseudorange reference row=%u SVID=%u\r\n", + minimum_index, ephemeris[minimum_index].SVID); + } + else if(ok && !solution.solution_valid) + { + GPS_LOG(DEBUG_WARNING, GPS_LOG_CAT_NAV, + "PPS/last_solution protected from invalid best-effort NAVSOL quality=%.1lf ratio=%.3lf\r\n", + solution.quality_score, solution.chi_square_ratio); + } cleanup: if(preciseTxTimes != NULL) free_matrix(preciseTxTimes); @@ -828,9 +946,118 @@ cleanup: free(rho0); free(psTVLtime); free(clockCorr); + *solution_out = solution; return ok; } +#ifdef GPS_NAV_JUMP_DIAGNOSTICS +static void gps_log_nav_jump_diagnostic(const gps_nav_solution_t* solution, + const gps_ephemeris_t* ephemeris, + unsigned int satellite_count) +{ + static bool previous_valid = false; + static double previous_ecef_m[3]; + static double previous_height_m = 0.0; + static uint32_t previous_excluded_mask = 0u; + static uint32_t previous_satellite_mask = 0u; + static uint64_t last_jump_log_tick = 0u; + if((solution == NULL) || (ephemeris == NULL)) + { + return; + } + + double step_3d_m = 0.0; + double vertical_step_m = 0.0; + if(previous_valid) + { + double delta[3] = { + solution->ecef_m[0] - previous_ecef_m[0], + solution->ecef_m[1] - previous_ecef_m[1], + solution->ecef_m[2] - previous_ecef_m[2] + }; + step_3d_m = normVect(delta); + vertical_step_m = solution->height_m - previous_height_m; + } + bool exclusion_changed = previous_valid && + (solution->excluded_row_mask != previous_excluded_mask); + uint32_t satellite_mask = 0u; + for(unsigned int row = 0 ; row < satellite_count ; row++) + { + if(ephemeris[row].SVID < 32u) + { + satellite_mask |= 1u << ephemeris[row].SVID; + } + } + bool satellite_set_changed = previous_valid && (satellite_mask != previous_satellite_mask); + bool position_jumped = previous_valid && (step_3d_m >= 20.0); + uint64_t now = gps_get_systick(); + bool rate_limit_pass = (now - last_jump_log_tick) >= GPS_SYSTICK_HZ; + if(exclusion_changed || satellite_set_changed || (position_jumped && rate_limit_pass)) + { + double minimum_abs_sample = ephemeris[0].abs_sample; + for(unsigned int row = 1u ; row < satellite_count ; row++) + { + if(ephemeris[row].abs_sample < minimum_abs_sample) + { + minimum_abs_sample = ephemeris[row].abs_sample; + } + } + gps_runtime_diagnostics_t runtime_diagnostics; + gps_get_runtime_diagnostics(&runtime_diagnostics); + uint64_t loss_age_ticks = (runtime_diagnostics.satellite_lost_total != 0u) + ? (now - runtime_diagnostics.last_lost_tick) : 0u; + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "NAVDIAG step3d=%.2lf vertical=%.2lf valid=%u fde=%u " + "excluded=0x%03x previous_excluded=0x%03x svmask=0x%08x previous_svmask=0x%08x " + "full_ratio=%.3lf selected_ratio=%.3lf math_corr=%.6lf full_math_corr=%.6lf " + "math_clock_corr=%.6lf full_math_clock_corr=%.6lf " + "isr_overflow=%u plic_repeat=%u drain_limit=%u coalesced=%u " + "lost_total=%u last_lost_prn=%u loss_age_ticks=%lu\r\n", + step_3d_m, vertical_step_m, + solution->solution_valid ? 1u : 0u, + solution->fde_applied ? 1u : 0u, + solution->excluded_row_mask, previous_excluded_mask, + satellite_mask, previous_satellite_mask, + solution->full_chi_square_ratio, solution->chi_square_ratio, + solution->postfit_position_correction_m, + solution->full_postfit_position_correction_m, + solution->postfit_clock_correction_m, + solution->full_postfit_clock_correction_m, + runtime_diagnostics.event_overflow_total, + runtime_diagnostics.plic_repeat_total, + runtime_diagnostics.plic_drain_limit_total, + runtime_diagnostics.nav_epoch_coalesced_total, + runtime_diagnostics.satellite_lost_total, + runtime_diagnostics.last_lost_prn, + (unsigned long)loss_age_ticks); + for(unsigned int row = 0 ; row < satellite_count ; row++) + { + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "NAVSAT row=%u svid=%u abs_sample=%.6lf raw_delta_m=%.2lf " + "full_residual=%.2lf elevation=%.1lf sigma=%.2lf used=%u excluded=%u\r\n", + row, ephemeris[row].SVID, + ephemeris[row].abs_sample, + ((ephemeris[row].abs_sample - minimum_abs_sample) / SAMPLES_PER_CODE) * + (SPEED_OF_LIGHT / 1000.0), + solution->full_postfit_residual_m[row], + solution->full_elevation_deg[row], + solution->full_measurement_sigma_m[row], + (solution->used_row_mask & (1u << row)) ? 1u : 0u, + (solution->excluded_row_mask & (1u << row)) ? 1u : 0u); + } + last_jump_log_tick = now; + } + for(int component = 0 ; component < 3 ; component++) + { + previous_ecef_m[component] = solution->ecef_m[component]; + } + previous_height_m = solution->height_m; + previous_excluded_mask = solution->excluded_row_mask; + previous_satellite_mask = satellite_mask; + previous_valid = true; +} +#endif + #ifdef EKF_ENABLE void calculate_position(Ekf* g_ekf) #else @@ -857,6 +1084,8 @@ void calculate_position() #ifdef EKF_ENABLE (void)g_ekf; #endif + bool nav_period_ready = gps_take_nav_solve_period_ready(); + uint64_t nav_period_start_cycles = nav_period_ready ? gps_read_cycle_counter() : 0u; uint64_t irq_state = bsp_irq_save(); @@ -873,16 +1102,21 @@ void calculate_position() /* The nav-bit snapshot is used only to qualify ephemeris and select the * channels. Position input must come from a coherent nav-solve epoch. */ gps_enable_nav_solve_for_snapshot_locked(snapshot_ips, ready_count); - satellite_count = gps_collect_nav_snapshot_locked(snapshot, snapshot_ips, true, true); - coherent_nav_count = satellite_count; - run_nav = (satellite_count >= MIN_NEEDED_SATELLITE) && - (satellite_count >= ready_count); - initial_run = !gps_initial_position_valid; - if(run_nav) + if(nav_period_ready) { - gps_capture_nav_metadata_locked(snapshot_ips, snapshot_sequences, - snapshot_pps_counters, snapshot_pps_sequences, - satellite_count); + satellite_count = gps_collect_nav_snapshot_locked(snapshot, snapshot_ips, true, true); + coherent_nav_count = satellite_count; + bool tow_coherent = (satellite_count >= MIN_NEEDED_SATELLITE) && + (satellite_count >= ready_count) && + gps_validate_snapshot_tow(snapshot, satellite_count); + run_nav = tow_coherent; + initial_run = !gps_initial_position_valid; + if(run_nav) + { + gps_capture_nav_metadata_locked(snapshot_ips, snapshot_sequences, + snapshot_pps_counters, snapshot_pps_sequences, + satellite_count); + } } } @@ -914,14 +1148,67 @@ void calculate_position() GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "nav solve period\r\n"); } GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "navigation software running with %u satellites\r\n", satellite_count); + gps_nav_solution_t nav_solution; + memset(&nav_solution, 0, sizeof(nav_solution)); + uint64_t nav_software_start_cycles = gps_read_cycle_counter(); bool nav_ok = nav_software_from_snapshot(snapshot, snapshot_pps_counters, - snapshot_pps_sequences, satellite_count); + snapshot_pps_sequences, satellite_count, + &nav_solution); + uint64_t nav_software_cycles = gps_read_cycle_counter() - nav_software_start_cycles; if(nav_ok) { uint64_t consume_irq_state = bsp_irq_save(); gps_consume_nav_sequences_locked(snapshot_ips, snapshot_sequences, satellite_count); bsp_irq_restore(consume_irq_state); - if(initial_run) + } + uint64_t foreground_cycles = gps_read_cycle_counter() - nav_period_start_cycles; + uint64_t period_budget_cycles = (GPS_PROFILE_CPU_HZ * GPS_NAV_SOLVE_PERIOD_MS) / 1000u; + bool period_overrun = foreground_cycles >= period_budget_cycles; + gps_runtime_diagnostics_t runtime_diagnostics; + gps_get_runtime_diagnostics(&runtime_diagnostics); + GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, + "NAVPERF period_ms=%u cpu_hz=%lu foreground_cycles=%lu " + "nav_cycles=%lu wls_cycles=%lu full_cycles=%lu " + "fde_cycles=%lu fde_trials=%u selected_iterations=%u sats=%u/%u " + "fde=%u valid=%u budget_cycles=%lu overrun=%u math_corr=%.6lf " + "math_clock_corr=%.6lf " + "isr_overflow=%u plic_repeat=%u drain_limit=%u coalesced=%u lost=%u " + "tow_mismatch=%u tow_rejected=%u\r\n", + GPS_NAV_SOLVE_PERIOD_MS, + (unsigned long)GPS_PROFILE_CPU_HZ, + (unsigned long)foreground_cycles, + (unsigned long)nav_software_cycles, + (unsigned long)nav_solution.total_wls_cycles, + (unsigned long)nav_solution.full_solution_cycles, + (unsigned long)nav_solution.fde_cycles, + nav_solution.fde_trial_count, + nav_solution.iteration_count, + nav_solution.used_satellite_count, + nav_solution.available_satellite_count, + nav_solution.fde_applied ? 1u : 0u, + nav_solution.solution_valid ? 1u : 0u, + (unsigned long)period_budget_cycles, + period_overrun ? 1u : 0u, + nav_solution.postfit_position_correction_m, + nav_solution.postfit_clock_correction_m, + runtime_diagnostics.event_overflow_total, + runtime_diagnostics.plic_repeat_total, + runtime_diagnostics.plic_drain_limit_total, + runtime_diagnostics.nav_epoch_coalesced_total, + runtime_diagnostics.satellite_lost_total, + gps_nav_tow_mismatch_total, + gps_nav_tow_reject_total); + (void)foreground_cycles; + (void)nav_software_cycles; + (void)period_budget_cycles; + (void)period_overrun; + (void)runtime_diagnostics; +#ifdef GPS_NAV_JUMP_DIAGNOSTICS + gps_log_nav_jump_diagnostic(&nav_solution, snapshot, satellite_count); +#endif + if(nav_ok) + { + if(initial_run && nav_solution.solution_valid) { gps_initial_position_valid = true; } @@ -929,7 +1216,8 @@ void calculate_position() * perturb collection of the input epoch. */ if(GPS_DEBUG_ENABLED(DEBUG_CHANNELS)) { - GPS_LOG(DEBUG_CHANNELS, GPS_LOG_CAT_TRK, "tracked=%u prns=[", busy_count); + GPS_LOG(DEBUG_CHANNELS, GPS_LOG_CAT_TRK, + "tracked satellites=%u prns=[", busy_count); for(unsigned int i = 0 ; i < busy_count ; i++) { PRINT_DEBUG(DEBUG_CHANNELS, "%s%u", @@ -1040,10 +1328,18 @@ void gps_startup_initialization(unsigned int nsp_tick) { (void)bsp_irq_save(); + GPS_LOG(DEBUG_EVENTS, GPS_LOG_CAT_NAV, + "NAV schedule timer_ticks=%u tick_ms=%u period_ms=%u profile_cpu_hz=%lu fde_enabled=%u\r\n", + nsp_tick, GPS_NAV_SOLVE_TIMER_TICK_MS, + nsp_tick * GPS_NAV_SOLVE_TIMER_TICK_MS, + (unsigned long)GPS_PROFILE_CPU_HZ, + GPS_NAV_ENABLE_FDE); gps_init_acq_tables(); gps_pps_init(nsp_tick); gps_ionoutc_valid = false; gps_last_ionoutc = (ionoutc_t){0}; + gps_nav_tow_mismatch_total = 0u; + gps_nav_tow_reject_total = 0u; for(unsigned int i = 0 ; i < GPS_ACQ_IP_COUNT ; i++) { acq_ips[i]->CONTROL_REG = (1u << GPS_ACQ_INTPRT_CLR); diff --git a/soc/software/gps_system/src/gps_time_anchor.c b/soc/software/gps_system/src/gps_time_anchor.c new file mode 100644 index 0000000..23646db --- /dev/null +++ b/soc/software/gps_system/src/gps_time_anchor.c @@ -0,0 +1,88 @@ +#include "gps_time_anchor.h" + +#include +#include + +static double gps_time_normalize_week(double tow_sec, int* week) +{ + while(tow_sec >= GPS_TIME_WEEK_SECONDS) + { + tow_sec -= GPS_TIME_WEEK_SECONDS; + (*week)++; + } + while(tow_sec < 0.0) + { + tow_sec += GPS_TIME_WEEK_SECONDS; + (*week)--; + } + return tow_sec; +} + +int gps_time_resolve_how_week(bool previous_valid, + int previous_week, + double previous_tow_sec, + int fallback_week, + double how_tow_sec) +{ + if(!previous_valid || !isfinite(previous_tow_sec) || !isfinite(how_tow_sec)) + { + return fallback_week; + } + + int week = previous_week; + double delta_sec = how_tow_sec - previous_tow_sec; + if(delta_sec < -GPS_TIME_HALF_WEEK_SECONDS) + { + week++; + } + else if(delta_sec > GPS_TIME_HALF_WEEK_SECONDS) + { + week--; + } + return week; +} + +bool gps_time_from_sample_anchor(int anchor_week, + double anchor_tow_sec, + uint32_t anchor_raw_sample, + double anchor_corrected_sample, + uint32_t event_raw_sample, + double event_corrected_sample, + double samples_per_second, + double max_age_sec, + int* event_week_out, + double* event_tow_sec_out, + double* elapsed_sec_out) +{ + if((event_week_out == NULL) || (event_tow_sec_out == NULL) || + !(samples_per_second > 0.0) || !(max_age_sec > 0.0) || + !isfinite(anchor_tow_sec) || !isfinite(anchor_corrected_sample) || + !isfinite(event_corrected_sample)) + { + return false; + } + + /* The integer part is unwrapped modulo 2^32. Preserve the code-phase + * fractions from both simultaneous ABS_SAMPLE/REM_CODE_PHASE latches. */ + int32_t raw_delta = (int32_t)(event_raw_sample - anchor_raw_sample); + double anchor_fraction = anchor_corrected_sample - (double)anchor_raw_sample; + double event_fraction = event_corrected_sample - (double)event_raw_sample; + double sample_delta = (double)raw_delta + event_fraction - anchor_fraction; + double elapsed_sec = sample_delta / samples_per_second; + if(!isfinite(elapsed_sec) || (elapsed_sec < -0.001) || + (elapsed_sec > max_age_sec)) + { + return false; + } + + int event_week = anchor_week; + double event_tow_sec = gps_time_normalize_week(anchor_tow_sec + elapsed_sec, + &event_week); + *event_week_out = event_week; + *event_tow_sec_out = event_tow_sec; + if(elapsed_sec_out != NULL) + { + *elapsed_sec_out = elapsed_sec; + } + return true; +} diff --git a/soc/software/gps_system/src/linked_list.c b/soc/software/gps_system/src/linked_list.c index 10307df..ebc44f6 100644 --- a/soc/software/gps_system/src/linked_list.c +++ b/soc/software/gps_system/src/linked_list.c @@ -60,7 +60,12 @@ bool insert_element(volatile gps_ephem_ll_t** node, new_node->tracking_ip_no = trck_ip_no; new_node->next = NULL; new_node->gps_subframe_mask = 0u; - new_node->gps_tow_source = GPS_TOW_SOURCE_HOW; + new_node->gps_how_tow.week = 0; + new_node->gps_how_tow.sec = 0.0; + new_node->gps_how_abs_sample = 0u; + new_node->gps_how_corrected_abs_sample = 0.0; + new_node->gps_how_tick = 0u; + new_node->gps_how_anchor_valid = false; new_node->gps_nav_solve_sequence = 0u; new_node->gps_nav_solve_consumed_sequence = 0u; new_node->gps_last_nav_solve_abs_sample = 0u; diff --git a/soc/software/gps_system/src/matrixLib.c b/soc/software/gps_system/src/matrixLib.c index 8ddab25..848cebc 100644 --- a/soc/software/gps_system/src/matrixLib.c +++ b/soc/software/gps_system/src/matrixLib.c @@ -491,12 +491,9 @@ mat_type* calculate_matrix_inverse(mat_type* matrix) // Create a new matrix to store the inverse mat_type* inverse = create_matrix(n, n, "inverse_matrix"); - // Create a temporary matrix to store intermediate results - mat_type* temp = create_matrix(n, n, "temp_matrix"); - if((inverse == NULL) || (temp == NULL)) + if(inverse == NULL) { free_matrix(inverse); - free_matrix(temp); return NULL; } @@ -524,7 +521,6 @@ mat_type* calculate_matrix_inverse(mat_type* matrix) "singular/ill-conditioned matrix, pivot=%e tolerance=%e\r\n", maxVal, pivot_tolerance); free_matrix(inverse); - free_matrix(temp); return NULL; } @@ -566,15 +562,11 @@ mat_type* calculate_matrix_inverse(mat_type* matrix) GPS_LOG(DEBUG_TRACE, GPS_LOG_CAT_NAV, "inverse produced non-finite value at row=%d col=%d\r\n", row, col); free_matrix(inverse); - free_matrix(temp); return NULL; } } } - // Free the temporary matrix - free_matrix(temp); - return inverse; } diff --git a/soc/software/pmod_spi_test/Makefile b/soc/software/pmod_spi_test/Makefile index 57e1cd3..839cd2e 100644 --- a/soc/software/pmod_spi_test/Makefile +++ b/soc/software/pmod_spi_test/Makefile @@ -1,4 +1,9 @@ TARGET := pmod_spi_test APP_SRCS := pmod_spi_test.c -BSP_SRCS := init.c uart.c plic.c irq.c spi_flash.c pmod_spi.c +BSP_SRCS := init.c uart.c pmod_spi.c + +# Genesys2 defaults. Board-level builds may override these on the command line. +BSP_UART_CLOCK_HZ ?= 50000000 +BSP_CLINT_TIMEBASE_HZ ?= 500000 + include ../common/app.mk diff --git a/soc/software/pmod_spi_test/build/bsp_init.c.o b/soc/software/pmod_spi_test/build/bsp_init.c.o index 79082e6c5019426d860ea9c3c968ebe4b939b518..fdaca78f599d4de12f75d3e574d4efc236d755a2 100644 GIT binary patch delta 22 ecmcb>eSv#|GxyhDOp{w#6@*z?IX3z=u>t^M_XlnO delta 22 ecmcb>eSv#|GxyW4tdm<=6@*z?1vdIMu>t^M5C>!c diff --git a/soc/software/pmod_spi_test/build/bsp_irq.c.o b/soc/software/pmod_spi_test/build/bsp_irq.c.o deleted file mode 100644 index 6dc30ac662ee937228ba54276510f3054a1929cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1736 zcmcIjO=}ZD7=E`&OiVq*o{EB`prW8d5@L{^qNN6;cpQ#e;5v;L#R=KxW8RP5`FOs&cV{gKz>NUD!7t@pfJ!mr zC4_EDyRZ&b(3k4%8NQ5=kYirBc(;k1kYfA0F|J+o_^jR9(HYt@b$;4>B7pD z11R8c)hJ*kf0R>W)ehJ?r~GhuK=IuZGdAAt*2z(TtV@0-L9vm0f7j_5`A$20P5v1w zvO)Nf{0pROgrCW0q$`A9$nTJL^&nD@n1GA(|GwjFuLFHO36v*htp9w|`w5E*=6)ZxrLk zsHi_RQd7r&gF2?$Q|r!$tJWoQ+Zlvwo<5J--iEH{zoDzMNxnTdwvRhM&c95)f76zf z=YxO4?0Vapf1BULTwAk&|NLsQ$Ch_nrM*xp zA#p>MKs*AxK@OY{m+}BS2;u=?#@;2?)+Z2i@b}F(Gdt_?_~p){hYiO8V-Ea;xo1>> zsax_ULa(4bSb=3|Ty#!mi{RdWztU`dIX=3#0j&%D*MrX=KEn66SHB(~%@*6OHyTg- zrGJV(4Ep`;_Kg=^HsXA1)E(Yzce-B3+k^)a8|0DX``|=K7gn43es?SKvrdrs*=E3q zjr`0HhV2VH zV-_V9H%+owC;{NfgG8|qQRO9$4O3#Oz#B5fzzd}WkEcl@Ca6tPCA`7or+1`cd>6c8 zn?0sf9)){K(1QP)UBPnN8vBd)^s(C-4cHsGjsdE-H}cRFSV*~5+dzkQ<8SM4V=bL& z|9PhWWsFtL^f!1HgN9f0-c_9nw{v$ehIh{@DFrq4$_m)^5KaYXB`gJWnGld%M`rn3*x19h0 diff --git a/soc/software/pmod_spi_test/build/bsp_pmod_spi.c.o b/soc/software/pmod_spi_test/build/bsp_pmod_spi.c.o index fb5d1f6505599ae1e5244193049734e5668399a8..61f1e371cb97e288da0fe10503a0d7f60d6ab7be 100644 GIT binary patch delta 2088 zcmZ8hUr1zS6rXQ&cCPE#&L76_UjNL@?)WfT;_8MGlsY208y31)Z4t#vh#Rr2u*nj# zXpx$PH2$gw5z-z^mUeO6nC)@x!9YmHhaw^beOO!{mKDr=t8fAx4j z%Z>lHrLzN5MfVSjx|Mnfmwe+YhYg=rZ{o42`(c^DW7DkD82;LN&5?l~m!-aSkz`4q85&gb2!l zNoUendH+&|^YS&f!D7%>vywV1W#-UG4d;X}OMF>)4jGE)gs)=9pQjvHYM zsZbCT;RLSG`g7P;e_=GF33-@JWQlJI-^LbkLW(~^D9p%w7ir?V!uO^BzVJiLQ~Z$m zbi~3yBnUfVs~V_?CR`y*p;3@|6Rrv}e-|0T5s8ej)0s2}AE9k{(X}O$QfF42v&_*J zwS4S)8Lvf?PTu5cij=tW^5UH%FK>Gl?naX|@?ew)=YHEJkB^|vl}Cd|HFlyk=!ynl zm)q)zWId7lIKVtrIAC68(c{7wcMjn5@}v_m5$+gc$y@wzO^$XJOmE(u z(n4ce7ue(6am{efrQVSW_oUiAapsJZPrUHja{@j5RA_MVBul~ed^$ThOwXs&OU5rd|IYwfs0)2QycVjIasf)LG otBUaY-?m748 zdEM>U=*Xp1F8^AKr=C6j*(v+x(cOQ_>bAAYmnOe0FLRuSLB&T()#F;_T{VNfO0CWz zQuT>SBU7bSui%(qPOvDrB)B5DCitsh89EMWH7~fvh>=5qYC?gsJ%ZN-#|7u0+{@uv z=hY{p_+2?E47oZSc~x`xK=qHv9S9j9bMXRsHFJI%?Ff z&=}F-o8|UM$NAc*?;%5K-vM>Xs7c%=b@+h#ol&Pzid+ucOyMRIe06iB@!vv3^Os69r#g3W5()o0X;M*YI5 ze^TV<{C~l@XY$9*8ZVjr4<Jp8ie<8pNxn@6=ekG*4z ziZG2vkCAxTX@-UrYYpenDb8MT_A)=xZ`6Qd6n`CU4zni1o0u}3!%gXR6ZvBaq&!cJ zNv&JRP}f_+b5b`ad?!}S6+i*0huO122!*QzLd0Ug8_gfHO+@g?EQC=g#3zJg8S zE5cWyYPBMywXUI+_?qx_3=v;vj{{til%xhk2foC&k$c%!rnZ(BQ(75|tx$He)-a$c~U4@8|eswO33sq>;P z8kJ9?!BQ8c%QEtHyemAPRpaCndfjr;u8@bWjpGSq>pa>MUfWX{`4k1pu2c3m&K}vZ z=5iPp>RMDBpVc+1U2*S9pBGl2H>^G`h5|a>9-I|`e#Vx-~Q8$g4U{=eRKtG67Lb-2SwHUgbyG?>VWWJo}C&N zew}B4WgVyyJfZ9eXQu-f{V@+g5GcB@LLH8q$??I|?DwTO&h~J^ntGF^PDqO>X+0&* z8RO&+W&bYV0rbZ})0@K{9nYLNi&o8Mt7cK0i&Aq@_=+rN1%7>^lDD}9AJ)IC{(w56 z!yT(%l~rX2h5Cel@N?bedebLd5p4TQnNreRJKW@~Rjdt9s8!miT=acQO{1064~)v+ z!2T7@rhYUw=y1SN_peu02a##eYLF|aQQ@P)@1R6^+Frs*Yzwl7ZW7|N>_PhEhI#}) z{+7z3E8edDrhgAntX5RuemrHpZN*b%&&yGrxX7WK!i#cDQixTcR1w2gBBf%8B->RE VU4&WOOSVUnCwYF3a}D`;;$Js5Xv6>j diff --git a/soc/software/pmod_spi_test/build/bsp_spi_flash.c.o b/soc/software/pmod_spi_test/build/bsp_spi_flash.c.o deleted file mode 100644 index 0aaea07d68becc3a2fda98379b77181e64651925..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3640 zcmcJR-)kII6vxkGf23*ECRuBP2@(=bb+JQs8xqY!$xl~8?UQ+{Y$h|a?dWc@&P-|| zs7u(O@dt_zR$36rgOv&*73^aJ(ULzvus&Hs&>|5kworVj_s*P?y*axBB6?xwob$Qg zd+xnwe!ekz;+ZB*18N%l3AKnQz~X_>PY5#-xFc`?_QPmf)3wVvbNeEUYRi?&xs@Zw zuYGrQD5te%n!CnV-nsLW^aJnSaz$%P?xeTRiSfTy0D9~zqObGNinh5yOp>>9TQjMJ zI|mcSaz(~1xsNyG*q)nx+d~st>*_>uhxGAv@=}SJWN&vIC?=aqRF2nFHTpqIBXxXz z%-Wh+vxW}EAeBgbpD+%`08T>;mR?TY?zz>sGj&t0p_b>?o;=zl^<1jf{Pb$g?>xK; z7tY1CAK!oBJ?*htHCA(L<*xN6zsKIP#+*s9cUdjD=XCYU>eP+wDrJ^6>HV}Bp4*+P zbGoWgZ|8Jelhv!mRZ!#9!tLEYZQ??69LyU>Vx-=h8MCP7YgUsZuR(3?U%y#}-pWNt z#DBg5x$*Jg?#E9L8U@oFC=6OpbY}+jjNT8Up18oS{Z9~+|Vi5bEYlS0+vb(#f)?eqck5nMb|R}&on|~2_t4{+~mC+ zhd=H$>WwwL(?MKoamgFBn8?K2{Q;^N3`xIVoH9?ttXIzOE;;YaIX*+K?b-Fru=0*or!=hH zJEm2Xf@&*E_Mkk8c2perN)O`h;0*Aju=k-aO&Wd4!+Sjh1ISats#llzG3+PvY=oXT z*DprsiF5sOgq}Fpf2ip9p)U<_t`DCpfRxav`z6lxpJPs`SD#+uTrZyo*?4~9T)!Tu zL%q6w;#|L}=+*TT=lU&0udbgs*WXq2YJTEezYm|+lo+S3pE%dIN9c)j{UZ^2;#{AO z&=cqSF-5QLmpIoKBlN_%{&hvK)`vLPza60`&h_Ub^u)RTQiPs3*MAeCC(iZXqF%nQ z)Nk6Rl1HsGah~TFMX%P4IM?4ry?h@Y#Ctd}y0=vFjakq=-wo{<@?7z**L{1@2i-D! z1N2$X1Kpf2mFzje=H`7{&z+n;>iLHG66nF7kZ$&!0r;`8udv~H0^E?s>#W!@2a z674VCR~X5Ek-e=`gz_I@WG{y6_z53DD{ClIQ7t=A--n$4DGl?9P|ubVd}n0Ne>*;d z^Y>$ZGBp3g1klp_WQPSOUzI-p57$2>28p$o)v?m2@jmO|bIG{TRGSD}(Y6R(yEu6L eCFivh2(HtQADfVc&=xVi1Ahum$z)37xI%D(12ew>!$kX+lXVzt82KhoWE5wV0h20VQfKlfLUn^EgUNy{;*us%5dk301!aRMyUB*E2&W1IMTC%K9l&}$pduhy5QYH{uxtR7 e3z89mNdf7A%?DZA85tucd$N}^&X|0V{W$=)aU@m% delta 315 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 literal 7896 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 B8wLOX diff --git a/soc/software/pmod_spi_test/build/pmod_spi_test.dump b/soc/software/pmod_spi_test/build/pmod_spi_test.dump index 36f4995..71ca27e 100644 --- a/soc/software/pmod_spi_test/build/pmod_spi_test.dump +++ b/soc/software/pmod_spi_test/build/pmod_spi_test.dump @@ -5,13932 +5,14783 @@ build/pmod_spi_test.elf: file format elf64-littleriscv Disassembly of section .text: 0000000080000000 <_start>: - 80000000: 30401073 csrw mie,zero - 80000004: 42a1 li t0,8 - 80000006: 3002b073 csrc mstatus,t0 - 8000000a: 0000a197 auipc gp,0xa - 8000000e: 34618193 addi gp,gp,838 # 8000a350 <__global_pointer$> - 80000012: 6299 lui t0,0x6 - 80000014: 3002a073 csrs mstatus,t0 - 80000018: 00100117 auipc sp,0x100 - 8000001c: fe810113 addi sp,sp,-24 # 80100000 <_stack_top> - 80000020: 34818293 addi t0,gp,840 # 8000a698 - 80000024: 0000b317 auipc t1,0xb - 80000028: 91430313 addi t1,t1,-1772 # 8000a938 <__bss_end> - 8000002c: 0062f663 bgeu t0,t1,80000038 <_start+0x38> - 80000030: 0002b023 sd zero,0(t0) # 6000 - 80000034: 02a1 addi t0,t0,8 - 80000036: bfdd j 8000002c <_start+0x2c> - 80000038: 144000ef jal 8000017c - 8000003c: 50a000ef jal 80000546

    - 80000040: a215 j 80000164 <_exit> + 80000000: 0000100f fence.i + 80000004: 30401073 csrw mie,zero + 80000008: 42a1 li t0,8 + 8000000a: 3002b073 csrc mstatus,t0 + 8000000e: 0000b197 auipc gp,0xb + 80000012: cfa18193 addi gp,gp,-774 # 8000ad08 <__global_pointer$> + 80000016: 6299 lui t0,0x6 + 80000018: 3002a073 csrs mstatus,t0 + 8000001c: 00100117 auipc sp,0x100 + 80000020: fe410113 addi sp,sp,-28 # 80100000 <_stack_top> + 80000024: 34818293 addi t0,gp,840 # 8000b050 + 80000028: 0000b317 auipc t1,0xb + 8000002c: 3a030313 addi t1,t1,928 # 8000b3c8 <__bss_end> + 80000030: 0062f663 bgeu t0,t1,8000003c <_start+0x3c> + 80000034: 0002b023 sd zero,0(t0) # 6000 + 80000038: 02a1 addi t0,t0,8 + 8000003a: bfdd j 80000030 <_start+0x30> + 8000003c: 144000ef jal 80000180 + 80000040: 73e000ef jal 8000077e
    + 80000044: a215 j 80000168 <_exit> -0000000080000042 <_sbrk>: - 80000042: 3481b783 ld a5,840(gp) # 8000a698 - 80000046: e799 bnez a5,80000054 <_sbrk+0x12> - 80000048: 0000b797 auipc a5,0xb - 8000004c: 8f878793 addi a5,a5,-1800 # 8000a940 <__heap_start> - 80000050: 34f1b423 sd a5,840(gp) # 8000a698 - 80000054: 953e add a0,a0,a5 - 80000056: 000fc717 auipc a4,0xfc - 8000005a: faa70713 addi a4,a4,-86 # 800fc000 <__heap_end> - 8000005e: 00a76863 bltu a4,a0,8000006e <_sbrk+0x2c> - 80000062: 0000b717 auipc a4,0xb - 80000066: 8de70713 addi a4,a4,-1826 # 8000a940 <__heap_start> - 8000006a: 00e57d63 bgeu a0,a4,80000084 <_sbrk+0x42> - 8000006e: 1141 addi sp,sp,-16 - 80000070: e406 sd ra,8(sp) - 80000072: 7e6000ef jal 80000858 <__errno> - 80000076: 60a2 ld ra,8(sp) - 80000078: 47b1 li a5,12 - 8000007a: c11c sw a5,0(a0) - 8000007c: 57fd li a5,-1 - 8000007e: 853e mv a0,a5 - 80000080: 0141 addi sp,sp,16 - 80000082: 8082 ret - 80000084: 34a1b423 sd a0,840(gp) # 8000a698 - 80000088: 853e mv a0,a5 - 8000008a: 8082 ret +0000000080000046 <_sbrk>: + 80000046: 3481b783 ld a5,840(gp) # 8000b050 + 8000004a: e799 bnez a5,80000058 <_sbrk+0x12> + 8000004c: 0000b797 auipc a5,0xb + 80000050: 38478793 addi a5,a5,900 # 8000b3d0 <__heap_start> + 80000054: 34f1b423 sd a5,840(gp) # 8000b050 + 80000058: 953e add a0,a0,a5 + 8000005a: 000fc717 auipc a4,0xfc + 8000005e: fa670713 addi a4,a4,-90 # 800fc000 <__heap_end> + 80000062: 00a76863 bltu a4,a0,80000072 <_sbrk+0x2c> + 80000066: 0000b717 auipc a4,0xb + 8000006a: 36a70713 addi a4,a4,874 # 8000b3d0 <__heap_start> + 8000006e: 00e57d63 bgeu a0,a4,80000088 <_sbrk+0x42> + 80000072: 1141 addi sp,sp,-16 + 80000074: e406 sd ra,8(sp) + 80000076: 6cb000ef jal 80000f40 <__errno> + 8000007a: 60a2 ld ra,8(sp) + 8000007c: 47b1 li a5,12 + 8000007e: c11c sw a5,0(a0) + 80000080: 57fd li a5,-1 + 80000082: 853e mv a0,a5 + 80000084: 0141 addi sp,sp,16 + 80000086: 8082 ret + 80000088: 34a1b423 sd a0,840(gp) # 8000b050 + 8000008c: 853e mv a0,a5 + 8000008e: 8082 ret -000000008000008c <_write>: - 8000008c: 1101 addi sp,sp,-32 - 8000008e: e822 sd s0,16(sp) - 80000090: ec06 sd ra,24(sp) - 80000092: 357d addiw a0,a0,-1 - 80000094: 4785 li a5,1 - 80000096: 00c58433 add s0,a1,a2 - 8000009a: 02a7f463 bgeu a5,a0,800000c2 <_write+0x36> - 8000009e: 7ba000ef jal 80000858 <__errno> - 800000a2: 47a5 li a5,9 - 800000a4: c11c sw a5,0(a0) - 800000a6: 557d li a0,-1 - 800000a8: 60e2 ld ra,24(sp) - 800000aa: 6442 ld s0,16(sp) - 800000ac: 6105 addi sp,sp,32 - 800000ae: 8082 ret - 800000b0: 0005c503 lbu a0,0(a1) - 800000b4: e432 sd a2,8(sp) - 800000b6: e02e sd a1,0(sp) - 800000b8: 0d4000ef jal 8000018c - 800000bc: 6582 ld a1,0(sp) - 800000be: 6622 ld a2,8(sp) - 800000c0: 0585 addi a1,a1,1 - 800000c2: fe8597e3 bne a1,s0,800000b0 <_write+0x24> - 800000c6: 0006051b sext.w a0,a2 - 800000ca: bff9 j 800000a8 <_write+0x1c> +0000000080000090 <_write>: + 80000090: 1101 addi sp,sp,-32 + 80000092: e822 sd s0,16(sp) + 80000094: ec06 sd ra,24(sp) + 80000096: 357d addiw a0,a0,-1 + 80000098: 4785 li a5,1 + 8000009a: 00c58433 add s0,a1,a2 + 8000009e: 02a7f463 bgeu a5,a0,800000c6 <_write+0x36> + 800000a2: 69f000ef jal 80000f40 <__errno> + 800000a6: 47a5 li a5,9 + 800000a8: c11c sw a5,0(a0) + 800000aa: 557d li a0,-1 + 800000ac: 60e2 ld ra,24(sp) + 800000ae: 6442 ld s0,16(sp) + 800000b0: 6105 addi sp,sp,32 + 800000b2: 8082 ret + 800000b4: 0005c503 lbu a0,0(a1) + 800000b8: e432 sd a2,8(sp) + 800000ba: e02e sd a1,0(sp) + 800000bc: 0d4000ef jal 80000190 + 800000c0: 6582 ld a1,0(sp) + 800000c2: 6622 ld a2,8(sp) + 800000c4: 0585 addi a1,a1,1 + 800000c6: fe8597e3 bne a1,s0,800000b4 <_write+0x24> + 800000ca: 0006051b sext.w a0,a2 + 800000ce: bff9 j 800000ac <_write+0x1c> -00000000800000cc <_read>: - 800000cc: 1101 addi sp,sp,-32 - 800000ce: e822 sd s0,16(sp) - 800000d0: ec06 sd ra,24(sp) - 800000d2: 4401 li s0,0 - 800000d4: cd19 beqz a0,800000f2 <_read+0x26> - 800000d6: 782000ef jal 80000858 <__errno> - 800000da: 47a5 li a5,9 - 800000dc: c11c sw a5,0(a0) - 800000de: 557d li a0,-1 - 800000e0: 60e2 ld ra,24(sp) - 800000e2: 6442 ld s0,16(sp) - 800000e4: 6105 addi sp,sp,32 - 800000e6: 8082 ret - 800000e8: 008587b3 add a5,a1,s0 - 800000ec: 00a78023 sb a0,0(a5) - 800000f0: 0405 addi s0,s0,1 - 800000f2: 00860a63 beq a2,s0,80000106 <_read+0x3a> - 800000f6: e432 sd a2,8(sp) - 800000f8: e02e sd a1,0(sp) - 800000fa: 0c0000ef jal 800001ba - 800000fe: 6582 ld a1,0(sp) - 80000100: 6622 ld a2,8(sp) - 80000102: fe0553e3 bgez a0,800000e8 <_read+0x1c> - 80000106: 0004051b sext.w a0,s0 - 8000010a: bfd9 j 800000e0 <_read+0x14> +00000000800000d0 <_read>: + 800000d0: 1101 addi sp,sp,-32 + 800000d2: e822 sd s0,16(sp) + 800000d4: ec06 sd ra,24(sp) + 800000d6: 4401 li s0,0 + 800000d8: cd19 beqz a0,800000f6 <_read+0x26> + 800000da: 667000ef jal 80000f40 <__errno> + 800000de: 47a5 li a5,9 + 800000e0: c11c sw a5,0(a0) + 800000e2: 557d li a0,-1 + 800000e4: 60e2 ld ra,24(sp) + 800000e6: 6442 ld s0,16(sp) + 800000e8: 6105 addi sp,sp,32 + 800000ea: 8082 ret + 800000ec: 008587b3 add a5,a1,s0 + 800000f0: 00a78023 sb a0,0(a5) + 800000f4: 0405 addi s0,s0,1 + 800000f6: 00860a63 beq a2,s0,8000010a <_read+0x3a> + 800000fa: e432 sd a2,8(sp) + 800000fc: e02e sd a1,0(sp) + 800000fe: 0c0000ef jal 800001be + 80000102: 6582 ld a1,0(sp) + 80000104: 6622 ld a2,8(sp) + 80000106: fe0553e3 bgez a0,800000ec <_read+0x1c> + 8000010a: 0004051b sext.w a0,s0 + 8000010e: bfd9 j 800000e4 <_read+0x14> -000000008000010c <_close>: - 8000010c: 557d li a0,-1 - 8000010e: 8082 ret +0000000080000110 <_close>: + 80000110: 557d li a0,-1 + 80000112: 8082 ret -0000000080000110 <_fstat>: - 80000110: c581 beqz a1,80000118 <_fstat+0x8> - 80000112: 01f5551b srliw a0,a0,0x1f - 80000116: c919 beqz a0,8000012c <_fstat+0x1c> - 80000118: 1141 addi sp,sp,-16 - 8000011a: e406 sd ra,8(sp) - 8000011c: 73c000ef jal 80000858 <__errno> - 80000120: 60a2 ld ra,8(sp) - 80000122: 47a5 li a5,9 - 80000124: c11c sw a5,0(a0) - 80000126: 557d li a0,-1 - 80000128: 0141 addi sp,sp,16 - 8000012a: 8082 ret - 8000012c: 6789 lui a5,0x2 - 8000012e: c1dc sw a5,4(a1) - 80000130: 8082 ret +0000000080000114 <_fstat>: + 80000114: c581 beqz a1,8000011c <_fstat+0x8> + 80000116: 01f5551b srliw a0,a0,0x1f + 8000011a: c919 beqz a0,80000130 <_fstat+0x1c> + 8000011c: 1141 addi sp,sp,-16 + 8000011e: e406 sd ra,8(sp) + 80000120: 621000ef jal 80000f40 <__errno> + 80000124: 60a2 ld ra,8(sp) + 80000126: 47a5 li a5,9 + 80000128: c11c sw a5,0(a0) + 8000012a: 557d li a0,-1 + 8000012c: 0141 addi sp,sp,16 + 8000012e: 8082 ret + 80000130: 6789 lui a5,0x2 + 80000132: c1dc sw a5,4(a1) + 80000134: 8082 ret -0000000080000132 <_isatty>: - 80000132: 00353513 sltiu a0,a0,3 - 80000136: 8082 ret +0000000080000136 <_isatty>: + 80000136: 00353513 sltiu a0,a0,3 + 8000013a: 8082 ret -0000000080000138 <_lseek>: - 80000138: 1141 addi sp,sp,-16 - 8000013a: e406 sd ra,8(sp) - 8000013c: 71c000ef jal 80000858 <__errno> - 80000140: 60a2 ld ra,8(sp) - 80000142: 47f5 li a5,29 - 80000144: c11c sw a5,0(a0) - 80000146: 557d li a0,-1 - 80000148: 0141 addi sp,sp,16 - 8000014a: 8082 ret - -000000008000014c <_getpid>: - 8000014c: 4505 li a0,1 +000000008000013c <_lseek>: + 8000013c: 1141 addi sp,sp,-16 + 8000013e: e406 sd ra,8(sp) + 80000140: 601000ef jal 80000f40 <__errno> + 80000144: 60a2 ld ra,8(sp) + 80000146: 47f5 li a5,29 + 80000148: c11c sw a5,0(a0) + 8000014a: 557d li a0,-1 + 8000014c: 0141 addi sp,sp,16 8000014e: 8082 ret -0000000080000150 <_kill>: - 80000150: 1141 addi sp,sp,-16 - 80000152: e406 sd ra,8(sp) - 80000154: 704000ef jal 80000858 <__errno> - 80000158: 60a2 ld ra,8(sp) - 8000015a: 47d9 li a5,22 - 8000015c: c11c sw a5,0(a0) - 8000015e: 557d li a0,-1 - 80000160: 0141 addi sp,sp,16 - 80000162: 8082 ret +0000000080000150 <_getpid>: + 80000150: 4505 li a0,1 + 80000152: 8082 ret -0000000080000164 <_exit>: - 80000164: 1542 slli a0,a0,0x30 - 80000166: 5a5a07b7 lui a5,0x5a5a0 - 8000016a: 9141 srli a0,a0,0x30 - 8000016c: 8d5d or a0,a0,a5 - 8000016e: 34051073 csrw mscratch,a0 - 80000172: 0ff0000f fence - 80000176: 10500073 wfi - 8000017a: bff5 j 80000176 <_exit+0x12> +0000000080000154 <_kill>: + 80000154: 1141 addi sp,sp,-16 + 80000156: e406 sd ra,8(sp) + 80000158: 5e9000ef jal 80000f40 <__errno> + 8000015c: 60a2 ld ra,8(sp) + 8000015e: 47d9 li a5,22 + 80000160: c11c sw a5,0(a0) + 80000162: 557d li a0,-1 + 80000164: 0141 addi sp,sp,16 + 80000166: 8082 ret -000000008000017c : - 8000017c: 65f1 lui a1,0x1c - 8000017e: 05f5e537 lui a0,0x5f5e - 80000182: 20058593 addi a1,a1,512 # 1c200 - 80000186: 10050513 addi a0,a0,256 # 5f5e100 <__dtim_size+0x5e5e100> - 8000018a: a899 j 800001e0 +0000000080000168 <_exit>: + 80000168: 1542 slli a0,a0,0x30 + 8000016a: 5a5a07b7 lui a5,0x5a5a0 + 8000016e: 9141 srli a0,a0,0x30 + 80000170: 8d5d or a0,a0,a5 + 80000172: 34051073 csrw mscratch,a0 + 80000176: 0ff0000f fence + 8000017a: 10500073 wfi + 8000017e: bff5 j 8000017a <_exit+0x12> -000000008000018c : - 8000018c: 1141 addi sp,sp,-16 - 8000018e: e022 sd s0,0(sp) - 80000190: e406 sd ra,8(sp) - 80000192: 47a9 li a5,10 - 80000194: 842a mv s0,a0 - 80000196: 00f51563 bne a0,a5,800001a0 - 8000019a: 4535 li a0,13 - 8000019c: ff1ff0ef jal 8000018c - 800001a0: 10013737 lui a4,0x10013 - 800001a4: 0721 addi a4,a4,8 # 10013008 <__dtim_size+0xff13008> - 800001a6: 431c lw a5,0(a4) - 800001a8: 8b85 andi a5,a5,1 - 800001aa: dff5 beqz a5,800001a6 - 800001ac: 100137b7 lui a5,0x10013 - 800001b0: 60a2 ld ra,8(sp) - 800001b2: c380 sw s0,0(a5) - 800001b4: 6402 ld s0,0(sp) - 800001b6: 0141 addi sp,sp,16 - 800001b8: 8082 ret +0000000080000180 : + 80000180: 65f1 lui a1,0x1c + 80000182: 02faf537 lui a0,0x2faf + 80000186: 20058593 addi a1,a1,512 # 1c200 + 8000018a: 08050513 addi a0,a0,128 # 2faf080 <__dtim_size+0x2eaf080> + 8000018e: a899 j 800001e4 -00000000800001ba : - 800001ba: 100137b7 lui a5,0x10013 - 800001be: 47dc lw a5,12(a5) - 800001c0: 557d li a0,-1 - 800001c2: 8b85 andi a5,a5,1 - 800001c4: c791 beqz a5,800001d0 - 800001c6: 100137b7 lui a5,0x10013 - 800001ca: 43c8 lw a0,4(a5) - 800001cc: 0ff57513 zext.b a0,a0 - 800001d0: 8082 ret +0000000080000190 : + 80000190: 1141 addi sp,sp,-16 + 80000192: e022 sd s0,0(sp) + 80000194: e406 sd ra,8(sp) + 80000196: 47a9 li a5,10 + 80000198: 842a mv s0,a0 + 8000019a: 00f51563 bne a0,a5,800001a4 + 8000019e: 4535 li a0,13 + 800001a0: ff1ff0ef jal 80000190 + 800001a4: 10013737 lui a4,0x10013 + 800001a8: 0721 addi a4,a4,8 # 10013008 <__dtim_size+0xff13008> + 800001aa: 431c lw a5,0(a4) + 800001ac: 8b85 andi a5,a5,1 + 800001ae: dff5 beqz a5,800001aa + 800001b0: 100137b7 lui a5,0x10013 + 800001b4: 60a2 ld ra,8(sp) + 800001b6: c380 sw s0,0(a5) + 800001b8: 6402 ld s0,0(sp) + 800001ba: 0141 addi sp,sp,16 + 800001bc: 8082 ret -00000000800001d2 : - 800001d2: 10013737 lui a4,0x10013 - 800001d6: 0721 addi a4,a4,8 # 10013008 <__dtim_size+0xff13008> - 800001d8: 431c lw a5,0(a4) - 800001da: 8b85 andi a5,a5,1 - 800001dc: dff5 beqz a5,800001d8 - 800001de: 8082 ret +00000000800001be : + 800001be: 100137b7 lui a5,0x10013 + 800001c2: 47dc lw a5,12(a5) + 800001c4: 557d li a0,-1 + 800001c6: 8b85 andi a5,a5,1 + 800001c8: c791 beqz a5,800001d4 + 800001ca: 100137b7 lui a5,0x10013 + 800001ce: 43c8 lw a0,4(a5) + 800001d0: 0ff57513 zext.b a0,a0 + 800001d4: 8082 ret -00000000800001e0 : - 800001e0: cd95 beqz a1,8000021c - 800001e2: cd0d beqz a0,8000021c - 800001e4: 0015d79b srliw a5,a1,0x1 - 800001e8: 9fa9 addw a5,a5,a0 - 800001ea: 02b7d7bb divuw a5,a5,a1 - 800001ee: 1101 addi sp,sp,-32 - 800001f0: e822 sd s0,16(sp) - 800001f2: ec06 sd ra,24(sp) - 800001f4: 4709 li a4,2 - 800001f6: 843e mv s0,a5 - 800001f8: 00e7f363 bgeu a5,a4,800001fe - 800001fc: 843a mv s0,a4 - 800001fe: e42e sd a1,8(sp) - 80000200: e02a sd a0,0(sp) - 80000202: fd1ff0ef jal 800001d2 - 80000206: 6502 ld a0,0(sp) - 80000208: 65a2 ld a1,8(sp) - 8000020a: 100137b7 lui a5,0x10013 - 8000020e: cb88 sw a0,16(a5) - 80000210: cbcc sw a1,20(a5) - 80000212: 60e2 ld ra,24(sp) - 80000214: cf80 sw s0,24(a5) - 80000216: 6442 ld s0,16(sp) - 80000218: 6105 addi sp,sp,32 - 8000021a: 8082 ret - 8000021c: 8082 ret +00000000800001d6 : + 800001d6: 10013737 lui a4,0x10013 + 800001da: 0721 addi a4,a4,8 # 10013008 <__dtim_size+0xff13008> + 800001dc: 431c lw a5,0(a4) + 800001de: 8b85 andi a5,a5,1 + 800001e0: dff5 beqz a5,800001dc + 800001e2: 8082 ret -000000008000021e : - 8000021e: 100137b7 lui a5,0x10013 - 80000222: 4b88 lw a0,16(a5) - 80000224: 8082 ret +00000000800001e4 : + 800001e4: cd95 beqz a1,80000220 + 800001e6: cd0d beqz a0,80000220 + 800001e8: 0015d79b srliw a5,a1,0x1 + 800001ec: 9fa9 addw a5,a5,a0 + 800001ee: 02b7d7bb divuw a5,a5,a1 + 800001f2: 1101 addi sp,sp,-32 + 800001f4: e822 sd s0,16(sp) + 800001f6: ec06 sd ra,24(sp) + 800001f8: 4709 li a4,2 + 800001fa: 843e mv s0,a5 + 800001fc: 00e7f363 bgeu a5,a4,80000202 + 80000200: 843a mv s0,a4 + 80000202: e42e sd a1,8(sp) + 80000204: e02a sd a0,0(sp) + 80000206: fd1ff0ef jal 800001d6 + 8000020a: 6502 ld a0,0(sp) + 8000020c: 65a2 ld a1,8(sp) + 8000020e: 100137b7 lui a5,0x10013 + 80000212: cb88 sw a0,16(a5) + 80000214: cbcc sw a1,20(a5) + 80000216: 60e2 ld ra,24(sp) + 80000218: cf80 sw s0,24(a5) + 8000021a: 6442 ld s0,16(sp) + 8000021c: 6105 addi sp,sp,32 + 8000021e: 8082 ret + 80000220: 8082 ret -0000000080000226 : - 80000226: 100137b7 lui a5,0x10013 - 8000022a: 4bc8 lw a0,20(a5) - 8000022c: 8082 ret +0000000080000222 : + 80000222: 100137b7 lui a5,0x10013 + 80000226: 4b88 lw a0,16(a5) + 80000228: 8082 ret -000000008000022e : - 8000022e: 100137b7 lui a5,0x10013 - 80000232: 4f88 lw a0,24(a5) - 80000234: 8082 ret +000000008000022a : + 8000022a: 100137b7 lui a5,0x10013 + 8000022e: 4bc8 lw a0,20(a5) + 80000230: 8082 ret -0000000080000236 : - 80000236: 10015737 lui a4,0x10015 - 8000023a: 0731 addi a4,a4,12 # 1001500c <__dtim_size+0xff1500c> - 8000023c: 431c lw a5,0(a4) - 8000023e: 8b85 andi a5,a5,1 - 80000240: dff5 beqz a5,8000023c - 80000242: 10015737 lui a4,0x10015 - 80000246: 431c lw a5,0(a4) - 80000248: 8b85 andi a5,a5,1 - 8000024a: fff5 bnez a5,80000246 - 8000024c: 8082 ret +0000000080000232 : + 80000232: 100137b7 lui a5,0x10013 + 80000236: 4f88 lw a0,24(a5) + 80000238: 8082 ret -000000008000024e : - 8000024e: cd01 beqz a0,80000266 - 80000250: 0200c7b7 lui a5,0x200c - 80000254: ff87b683 ld a3,-8(a5) # 200bff8 <__dtim_size+0x1f0bff8> - 80000258: 1502 slli a0,a0,0x20 - 8000025a: 17e1 addi a5,a5,-8 - 8000025c: 9101 srli a0,a0,0x20 - 8000025e: 6398 ld a4,0(a5) - 80000260: 8f15 sub a4,a4,a3 - 80000262: fea76ee3 bltu a4,a0,8000025e - 80000266: 8082 ret +000000008000023a : + 8000023a: 10015737 lui a4,0x10015 + 8000023e: 0731 addi a4,a4,12 # 1001500c <__dtim_size+0xff1500c> + 80000240: 431c lw a5,0(a4) + 80000242: 8b85 andi a5,a5,1 + 80000244: dff5 beqz a5,80000240 + 80000246: 10015737 lui a4,0x10015 + 8000024a: 431c lw a5,0(a4) + 8000024c: 8b85 andi a5,a5,1 + 8000024e: fff5 bnez a5,8000024a + 80000250: 8082 ret -0000000080000268 : - 80000268: 1141 addi sp,sp,-16 - 8000026a: e406 sd ra,8(sp) - 8000026c: fcbff0ef jal 80000236 - 80000270: 4789 li a5,2 - 80000272: 0000a717 auipc a4,0xa - 80000276: 8cf72f23 sw a5,-1826(a4) # 80009b50 - 8000027a: 60a2 ld ra,8(sp) - 8000027c: 10015737 lui a4,0x10015 - 80000280: c31c sw a5,0(a4) - 80000282: 0141 addi sp,sp,16 - 80000284: 8082 ret +0000000080000252 : + 80000252: cd0d beqz a0,8000028c + 80000254: 1502 slli a0,a0,0x20 + 80000256: 0007a7b7 lui a5,0x7a + 8000025a: 12078793 addi a5,a5,288 # 7a120 + 8000025e: 9101 srli a0,a0,0x20 + 80000260: 02f50533 mul a0,a0,a5 + 80000264: 000f47b7 lui a5,0xf4 + 80000268: 23f78793 addi a5,a5,575 # f423f + 8000026c: 953e add a0,a0,a5 + 8000026e: 000f47b7 lui a5,0xf4 + 80000272: 24078793 addi a5,a5,576 # f4240 + 80000276: 02f55533 divu a0,a0,a5 + 8000027a: 0200c7b7 lui a5,0x200c + 8000027e: ff87b683 ld a3,-8(a5) # 200bff8 <__dtim_size+0x1f0bff8> + 80000282: 17e1 addi a5,a5,-8 + 80000284: 6398 ld a4,0(a5) + 80000286: 8f15 sub a4,a4,a3 + 80000288: fea76ee3 bltu a4,a0,80000284 + 8000028c: 8082 ret -0000000080000286 : - 80000286: 0000a797 auipc a5,0xa - 8000028a: 8ca7a783 lw a5,-1846(a5) # 80009b50 +000000008000028e : 8000028e: 1141 addi sp,sp,-16 - 80000290: e022 sd s0,0(sp) - 80000292: e406 sd ra,8(sp) - 80000294: 4705 li a4,1 - 80000296: ffb7f413 andi s0,a5,-5 - 8000029a: 00e51463 bne a0,a4,800002a2 - 8000029e: 0047e413 ori s0,a5,4 - 800002a2: 8819 andi s0,s0,6 - 800002a4: f93ff0ef jal 80000236 - 800002a8: 0000a797 auipc a5,0xa - 800002ac: 8a87a423 sw s0,-1880(a5) # 80009b50 - 800002b0: 100157b7 lui a5,0x10015 - 800002b4: 60a2 ld ra,8(sp) - 800002b6: c380 sw s0,0(a5) - 800002b8: 6402 ld s0,0(sp) - 800002ba: 0141 addi sp,sp,16 - 800002bc: 8082 ret + 80000290: e406 sd ra,8(sp) + 80000292: fa9ff0ef jal 8000023a + 80000296: 4789 li a5,2 + 80000298: 0000a717 auipc a4,0xa + 8000029c: 26f72823 sw a5,624(a4) # 8000a508 + 800002a0: 60a2 ld ra,8(sp) + 800002a2: 10015737 lui a4,0x10015 + 800002a6: c31c sw a5,0(a4) + 800002a8: 0141 addi sp,sp,16 + 800002aa: 8082 ret -00000000800002be : - 800002be: 0000a517 auipc a0,0xa - 800002c2: 89252503 lw a0,-1902(a0) # 80009b50 - 800002c6: 0025551b srliw a0,a0,0x2 - 800002ca: 8905 andi a0,a0,1 - 800002cc: 8082 ret +00000000800002ac : + 800002ac: 0000a797 auipc a5,0xa + 800002b0: 25c7a783 lw a5,604(a5) # 8000a508 + 800002b4: 1141 addi sp,sp,-16 + 800002b6: e022 sd s0,0(sp) + 800002b8: e406 sd ra,8(sp) + 800002ba: 4705 li a4,1 + 800002bc: ffb7f413 andi s0,a5,-5 + 800002c0: 00e51463 bne a0,a4,800002c8 + 800002c4: 0047e413 ori s0,a5,4 + 800002c8: 8819 andi s0,s0,6 + 800002ca: f71ff0ef jal 8000023a + 800002ce: 0000a797 auipc a5,0xa + 800002d2: 2287ad23 sw s0,570(a5) # 8000a508 + 800002d6: 100157b7 lui a5,0x10015 + 800002da: 60a2 ld ra,8(sp) + 800002dc: c380 sw s0,0(a5) + 800002de: 6402 ld s0,0(sp) + 800002e0: 0141 addi sp,sp,16 + 800002e2: 8082 ret -00000000800002ce : - 800002ce: 00a03533 snez a0,a0 - 800002d2: bf55 j 80000286 +00000000800002e4 : + 800002e4: 0000a517 auipc a0,0xa + 800002e8: 22452503 lw a0,548(a0) # 8000a508 + 800002ec: 0025551b srliw a0,a0,0x2 + 800002f0: 8905 andi a0,a0,1 + 800002f2: 8082 ret -00000000800002d4 : - 800002d4: 34a1ae23 sw a0,860(gp) # 8000a6ac - 800002d8: 34b1ac23 sw a1,856(gp) # 8000a6a8 - 800002dc: 34c1aa23 sw a2,852(gp) # 8000a6a4 - 800002e0: 34d1a823 sw a3,848(gp) # 8000a6a0 - 800002e4: 8082 ret +00000000800002f4 : + 800002f4: 00a03533 snez a0,a0 + 800002f8: bf55 j 800002ac -00000000800002e6 : - 800002e6: 1101 addi sp,sp,-32 - 800002e8: e426 sd s1,8(sp) - 800002ea: 0000a497 auipc s1,0xa - 800002ee: 86648493 addi s1,s1,-1946 # 80009b50 - 800002f2: e822 sd s0,16(sp) - 800002f4: 4080 lw s0,0(s1) - 800002f6: ec06 sd ra,24(sp) - 800002f8: f3fff0ef jal 80000236 - 800002fc: 00447793 andi a5,s0,4 - 80000300: 60e2 ld ra,24(sp) - 80000302: 6442 ld s0,16(sp) - 80000304: c09c sw a5,0(s1) - 80000306: 10015737 lui a4,0x10015 - 8000030a: c31c sw a5,0(a4) - 8000030c: 64a2 ld s1,8(sp) - 8000030e: 6105 addi sp,sp,32 - 80000310: 8082 ret +00000000800002fa : + 800002fa: 34a1ae23 sw a0,860(gp) # 8000b064 + 800002fe: 34b1ac23 sw a1,856(gp) # 8000b060 + 80000302: 34c1aa23 sw a2,852(gp) # 8000b05c + 80000306: 34d1a823 sw a3,848(gp) # 8000b058 + 8000030a: 8082 ret -0000000080000312 : - 80000312: 1101 addi sp,sp,-32 - 80000314: e426 sd s1,8(sp) - 80000316: 0000a497 auipc s1,0xa - 8000031a: 83a48493 addi s1,s1,-1990 # 80009b50 - 8000031e: e822 sd s0,16(sp) - 80000320: 4080 lw s0,0(s1) - 80000322: ec06 sd ra,24(sp) - 80000324: f13ff0ef jal 80000236 - 80000328: 00647793 andi a5,s0,6 - 8000032c: 60e2 ld ra,24(sp) - 8000032e: 6442 ld s0,16(sp) - 80000330: 0027e793 ori a5,a5,2 - 80000334: c09c sw a5,0(s1) - 80000336: 10015737 lui a4,0x10015 - 8000033a: c31c sw a5,0(a4) - 8000033c: 64a2 ld s1,8(sp) - 8000033e: 6105 addi sp,sp,32 - 80000340: 8082 ret +000000008000030c : + 8000030c: 1101 addi sp,sp,-32 + 8000030e: e426 sd s1,8(sp) + 80000310: 0000a497 auipc s1,0xa + 80000314: 1f848493 addi s1,s1,504 # 8000a508 + 80000318: e822 sd s0,16(sp) + 8000031a: 4080 lw s0,0(s1) + 8000031c: ec06 sd ra,24(sp) + 8000031e: f1dff0ef jal 8000023a + 80000322: 00447793 andi a5,s0,4 + 80000326: 60e2 ld ra,24(sp) + 80000328: 6442 ld s0,16(sp) + 8000032a: c09c sw a5,0(s1) + 8000032c: 10015737 lui a4,0x10015 + 80000330: c31c sw a5,0(a4) + 80000332: 64a2 ld s1,8(sp) + 80000334: 6105 addi sp,sp,32 + 80000336: 8082 ret -0000000080000342 : - 80000342: 100157b7 lui a5,0x10015 - 80000346: 47c8 lw a0,12(a5) - 80000348: 8905 andi a0,a0,1 - 8000034a: c509 beqz a0,80000354 - 8000034c: 4388 lw a0,0(a5) - 8000034e: fff54513 not a0,a0 - 80000352: 8905 andi a0,a0,1 - 80000354: 8082 ret +0000000080000338 : + 80000338: 1101 addi sp,sp,-32 + 8000033a: e426 sd s1,8(sp) + 8000033c: 0000a497 auipc s1,0xa + 80000340: 1cc48493 addi s1,s1,460 # 8000a508 + 80000344: e822 sd s0,16(sp) + 80000346: 4080 lw s0,0(s1) + 80000348: ec06 sd ra,24(sp) + 8000034a: ef1ff0ef jal 8000023a + 8000034e: 00647793 andi a5,s0,6 + 80000352: 60e2 ld ra,24(sp) + 80000354: 6442 ld s0,16(sp) + 80000356: 0027e793 ori a5,a5,2 + 8000035a: c09c sw a5,0(s1) + 8000035c: 10015737 lui a4,0x10015 + 80000360: c31c sw a5,0(a4) + 80000362: 64a2 ld s1,8(sp) + 80000364: 6105 addi sp,sp,32 + 80000366: 8082 ret -0000000080000356 : - 80000356: 100157b7 lui a5,0x10015 - 8000035a: 4388 lw a0,0(a5) - 8000035c: 8082 ret +0000000080000368 : + 80000368: 100157b7 lui a5,0x10015 + 8000036c: 47c8 lw a0,12(a5) + 8000036e: 8905 andi a0,a0,1 + 80000370: c509 beqz a0,8000037a + 80000372: 4388 lw a0,0(a5) + 80000374: fff54513 not a0,a0 + 80000378: 8905 andi a0,a0,1 + 8000037a: 8082 ret -000000008000035e : - 8000035e: 100157b7 lui a5,0x10015 - 80000362: 4788 lw a0,8(a5) - 80000364: 8082 ret +000000008000037c : + 8000037c: 100157b7 lui a5,0x10015 + 80000380: 4388 lw a0,0(a5) + 80000382: 8082 ret -0000000080000366 : - 80000366: 1141 addi sp,sp,-16 - 80000368: e406 sd ra,8(sp) - 8000036a: e022 sd s0,0(sp) - 8000036c: 842a mv s0,a0 - 8000036e: ec9ff0ef jal 80000236 - 80000372: 4501 li a0,0 - 80000374: f13ff0ef jal 80000286 - 80000378: 0184179b slliw a5,s0,0x18 - 8000037c: 10015737 lui a4,0x10015 - 80000380: c35c sw a5,4(a4) - 80000382: eb5ff0ef jal 80000236 - 80000386: 100157b7 lui a5,0x10015 - 8000038a: 4788 lw a0,8(a5) - 8000038c: 60a2 ld ra,8(sp) - 8000038e: 6402 ld s0,0(sp) - 80000390: 0ff57513 zext.b a0,a0 - 80000394: 0141 addi sp,sp,16 - 80000396: 8082 ret +0000000080000384 : + 80000384: 100157b7 lui a5,0x10015 + 80000388: 4788 lw a0,8(a5) + 8000038a: 8082 ret -0000000080000398 : - 80000398: 7179 addi sp,sp,-48 - 8000039a: f406 sd ra,40(sp) - 8000039c: f022 sd s0,32(sp) - 8000039e: ec26 sd s1,24(sp) - 800003a0: e84a sd s2,16(sp) - 800003a2: e44e sd s3,8(sp) - 800003a4: 892a mv s2,a0 - 800003a6: 89ae mv s3,a1 - 800003a8: 84b2 mv s1,a2 - 800003aa: f3dff0ef jal 800002e6 - 800003ae: 35c1a503 lw a0,860(gp) # 8000a6ac - 800003b2: 4401 li s0,0 - 800003b4: e9bff0ef jal 8000024e - 800003b8: 02941163 bne s0,s1,800003da - 800003bc: 3541a503 lw a0,852(gp) # 8000a6a4 - 800003c0: e8fff0ef jal 8000024e - 800003c4: f4fff0ef jal 80000312 - 800003c8: 7402 ld s0,32(sp) - 800003ca: 70a2 ld ra,40(sp) - 800003cc: 64e2 ld s1,24(sp) - 800003ce: 6942 ld s2,16(sp) - 800003d0: 69a2 ld s3,8(sp) - 800003d2: 3501a503 lw a0,848(gp) # 8000a6a0 - 800003d6: 6145 addi sp,sp,48 - 800003d8: bd9d j 8000024e - 800003da: 0ff00513 li a0,255 - 800003de: 00090663 beqz s2,800003ea - 800003e2: 008907b3 add a5,s2,s0 - 800003e6: 0007c503 lbu a0,0(a5) # 10015000 <__dtim_size+0xff15000> - 800003ea: f7dff0ef jal 80000366 - 800003ee: 00098663 beqz s3,800003fa - 800003f2: 008987b3 add a5,s3,s0 - 800003f6: 00a78023 sb a0,0(a5) - 800003fa: 0405 addi s0,s0,1 - 800003fc: fa947ee3 bgeu s0,s1,800003b8 - 80000400: 3581a503 lw a0,856(gp) # 8000a6a8 - 80000404: e4bff0ef jal 8000024e - 80000408: bf45 j 800003b8 +000000008000038c : + 8000038c: 1141 addi sp,sp,-16 + 8000038e: e406 sd ra,8(sp) + 80000390: e022 sd s0,0(sp) + 80000392: 842a mv s0,a0 + 80000394: ea7ff0ef jal 8000023a + 80000398: 4501 li a0,0 + 8000039a: f13ff0ef jal 800002ac + 8000039e: 0184179b slliw a5,s0,0x18 + 800003a2: 10015737 lui a4,0x10015 + 800003a6: c35c sw a5,4(a4) + 800003a8: e93ff0ef jal 8000023a + 800003ac: 100157b7 lui a5,0x10015 + 800003b0: 4788 lw a0,8(a5) + 800003b2: 60a2 ld ra,8(sp) + 800003b4: 6402 ld s0,0(sp) + 800003b6: 0ff57513 zext.b a0,a0 + 800003ba: 0141 addi sp,sp,16 + 800003bc: 8082 ret -000000008000040a : - 8000040a: 7179 addi sp,sp,-48 - 8000040c: f406 sd ra,40(sp) - 8000040e: f022 sd s0,32(sp) - 80000410: ec26 sd s1,24(sp) - 80000412: 842a mv s0,a0 - 80000414: 84b6 mv s1,a3 - 80000416: e84a sd s2,16(sp) - 80000418: e44e sd s3,8(sp) - 8000041a: e052 sd s4,0(sp) - 8000041c: 89ae mv s3,a1 - 8000041e: 8a32 mv s4,a2 - 80000420: ec7ff0ef jal 800002e6 - 80000424: 35c1a503 lw a0,860(gp) # 8000a6ac - 80000428: e27ff0ef jal 8000024e - 8000042c: 8522 mv a0,s0 - 8000042e: f39ff0ef jal 80000366 - 80000432: 3581a903 lw s2,856(gp) # 8000a6a8 - 80000436: 4401 li s0,0 - 80000438: 854a mv a0,s2 - 8000043a: e15ff0ef jal 8000024e - 8000043e: 02941263 bne s0,s1,80000462 - 80000442: 3541a503 lw a0,852(gp) # 8000a6a4 - 80000446: e09ff0ef jal 8000024e - 8000044a: ec9ff0ef jal 80000312 - 8000044e: 7402 ld s0,32(sp) - 80000450: 70a2 ld ra,40(sp) - 80000452: 64e2 ld s1,24(sp) - 80000454: 6942 ld s2,16(sp) - 80000456: 69a2 ld s3,8(sp) - 80000458: 6a02 ld s4,0(sp) - 8000045a: 3501a503 lw a0,848(gp) # 8000a6a0 - 8000045e: 6145 addi sp,sp,48 - 80000460: b3fd j 8000024e - 80000462: 854e mv a0,s3 - 80000464: f03ff0ef jal 80000366 - 80000468: 008a07b3 add a5,s4,s0 - 8000046c: 00a78023 sb a0,0(a5) - 80000470: 0405 addi s0,s0,1 - 80000472: fc9476e3 bgeu s0,s1,8000043e - 80000476: 854a mv a0,s2 - 80000478: dd7ff0ef jal 8000024e - 8000047c: b7c9 j 8000043e +00000000800003be : + 800003be: 7179 addi sp,sp,-48 + 800003c0: f406 sd ra,40(sp) + 800003c2: f022 sd s0,32(sp) + 800003c4: ec26 sd s1,24(sp) + 800003c6: e84a sd s2,16(sp) + 800003c8: e44e sd s3,8(sp) + 800003ca: 892a mv s2,a0 + 800003cc: 89ae mv s3,a1 + 800003ce: 84b2 mv s1,a2 + 800003d0: f3dff0ef jal 8000030c + 800003d4: 35c1a503 lw a0,860(gp) # 8000b064 + 800003d8: 4401 li s0,0 + 800003da: e79ff0ef jal 80000252 + 800003de: 02941163 bne s0,s1,80000400 + 800003e2: 3541a503 lw a0,852(gp) # 8000b05c + 800003e6: e6dff0ef jal 80000252 + 800003ea: f4fff0ef jal 80000338 + 800003ee: 7402 ld s0,32(sp) + 800003f0: 70a2 ld ra,40(sp) + 800003f2: 64e2 ld s1,24(sp) + 800003f4: 6942 ld s2,16(sp) + 800003f6: 69a2 ld s3,8(sp) + 800003f8: 3501a503 lw a0,848(gp) # 8000b058 + 800003fc: 6145 addi sp,sp,48 + 800003fe: bd91 j 80000252 + 80000400: 0ff00513 li a0,255 + 80000404: 00090663 beqz s2,80000410 + 80000408: 008907b3 add a5,s2,s0 + 8000040c: 0007c503 lbu a0,0(a5) # 10015000 <__dtim_size+0xff15000> + 80000410: f7dff0ef jal 8000038c + 80000414: 00098663 beqz s3,80000420 + 80000418: 008987b3 add a5,s3,s0 + 8000041c: 00a78023 sb a0,0(a5) + 80000420: 0405 addi s0,s0,1 + 80000422: fa947ee3 bgeu s0,s1,800003de + 80000426: 3581a503 lw a0,856(gp) # 8000b060 + 8000042a: e29ff0ef jal 80000252 + 8000042e: bf45 j 800003de -000000008000047e : - 8000047e: 1141 addi sp,sp,-16 - 80000480: e406 sd ra,8(sp) - 80000482: e022 sd s0,0(sp) - 80000484: 842a mv s0,a0 - 80000486: db1ff0ef jal 80000236 - 8000048a: 4505 li a0,1 - 8000048c: dfbff0ef jal 80000286 - 80000490: 100157b7 lui a5,0x10015 - 80000494: c3c0 sw s0,4(a5) - 80000496: da1ff0ef jal 80000236 - 8000049a: 60a2 ld ra,8(sp) - 8000049c: 6402 ld s0,0(sp) - 8000049e: 100157b7 lui a5,0x10015 - 800004a2: 4788 lw a0,8(a5) - 800004a4: 0141 addi sp,sp,16 - 800004a6: 8082 ret +0000000080000430 : + 80000430: 7179 addi sp,sp,-48 + 80000432: f406 sd ra,40(sp) + 80000434: f022 sd s0,32(sp) + 80000436: ec26 sd s1,24(sp) + 80000438: 842a mv s0,a0 + 8000043a: 84b6 mv s1,a3 + 8000043c: e84a sd s2,16(sp) + 8000043e: e44e sd s3,8(sp) + 80000440: e052 sd s4,0(sp) + 80000442: 89ae mv s3,a1 + 80000444: 8a32 mv s4,a2 + 80000446: ec7ff0ef jal 8000030c + 8000044a: 35c1a503 lw a0,860(gp) # 8000b064 + 8000044e: e05ff0ef jal 80000252 + 80000452: 8522 mv a0,s0 + 80000454: f39ff0ef jal 8000038c + 80000458: 3581a903 lw s2,856(gp) # 8000b060 + 8000045c: 4401 li s0,0 + 8000045e: 854a mv a0,s2 + 80000460: df3ff0ef jal 80000252 + 80000464: 02941263 bne s0,s1,80000488 + 80000468: 3541a503 lw a0,852(gp) # 8000b05c + 8000046c: de7ff0ef jal 80000252 + 80000470: ec9ff0ef jal 80000338 + 80000474: 7402 ld s0,32(sp) + 80000476: 70a2 ld ra,40(sp) + 80000478: 64e2 ld s1,24(sp) + 8000047a: 6942 ld s2,16(sp) + 8000047c: 69a2 ld s3,8(sp) + 8000047e: 6a02 ld s4,0(sp) + 80000480: 3501a503 lw a0,848(gp) # 8000b058 + 80000484: 6145 addi sp,sp,48 + 80000486: b3f1 j 80000252 + 80000488: 854e mv a0,s3 + 8000048a: f03ff0ef jal 8000038c + 8000048e: 008a07b3 add a5,s4,s0 + 80000492: 00a78023 sb a0,0(a5) + 80000496: 0405 addi s0,s0,1 + 80000498: fc9476e3 bgeu s0,s1,80000464 + 8000049c: 854a mv a0,s2 + 8000049e: db5ff0ef jal 80000252 + 800004a2: b7c9 j 80000464 -00000000800004a8 : - 800004a8: 7179 addi sp,sp,-48 - 800004aa: f022 sd s0,32(sp) - 800004ac: ec26 sd s1,24(sp) - 800004ae: f406 sd ra,40(sp) - 800004b0: 84aa mv s1,a0 - 800004b2: 4401 li s0,0 - 800004b4: 00c41763 bne s0,a2,800004c2 - 800004b8: 70a2 ld ra,40(sp) - 800004ba: 7402 ld s0,32(sp) - 800004bc: 64e2 ld s1,24(sp) - 800004be: 6145 addi sp,sp,48 - 800004c0: 8082 ret - 800004c2: 0ff00513 li a0,255 - 800004c6: c489 beqz s1,800004d0 - 800004c8: 008487b3 add a5,s1,s0 - 800004cc: 0007c503 lbu a0,0(a5) # 10015000 <__dtim_size+0xff15000> - 800004d0: e432 sd a2,8(sp) - 800004d2: e02e sd a1,0(sp) - 800004d4: e93ff0ef jal 80000366 - 800004d8: 6582 ld a1,0(sp) - 800004da: 6622 ld a2,8(sp) - 800004dc: c589 beqz a1,800004e6 - 800004de: 008587b3 add a5,a1,s0 - 800004e2: 00a78023 sb a0,0(a5) - 800004e6: 0405 addi s0,s0,1 - 800004e8: b7f1 j 800004b4 +00000000800004a4 : + 800004a4: 1141 addi sp,sp,-16 + 800004a6: e406 sd ra,8(sp) + 800004a8: e022 sd s0,0(sp) + 800004aa: 842a mv s0,a0 + 800004ac: d8fff0ef jal 8000023a + 800004b0: 4505 li a0,1 + 800004b2: dfbff0ef jal 800002ac + 800004b6: 100157b7 lui a5,0x10015 + 800004ba: c3c0 sw s0,4(a5) + 800004bc: d7fff0ef jal 8000023a + 800004c0: 60a2 ld ra,8(sp) + 800004c2: 6402 ld s0,0(sp) + 800004c4: 100157b7 lui a5,0x10015 + 800004c8: 4788 lw a0,8(a5) + 800004ca: 0141 addi sp,sp,16 + 800004cc: 8082 ret -00000000800004ea : - 800004ea: c211 beqz a2,800004ee - 800004ec: b575 j 80000398 - 800004ee: 8082 ret +00000000800004ce : + 800004ce: 7179 addi sp,sp,-48 + 800004d0: f022 sd s0,32(sp) + 800004d2: ec26 sd s1,24(sp) + 800004d4: f406 sd ra,40(sp) + 800004d6: 84aa mv s1,a0 + 800004d8: 4401 li s0,0 + 800004da: 00c41763 bne s0,a2,800004e8 + 800004de: 70a2 ld ra,40(sp) + 800004e0: 7402 ld s0,32(sp) + 800004e2: 64e2 ld s1,24(sp) + 800004e4: 6145 addi sp,sp,48 + 800004e6: 8082 ret + 800004e8: 0ff00513 li a0,255 + 800004ec: c489 beqz s1,800004f6 + 800004ee: 008487b3 add a5,s1,s0 + 800004f2: 0007c503 lbu a0,0(a5) # 10015000 <__dtim_size+0xff15000> + 800004f6: e432 sd a2,8(sp) + 800004f8: e02e sd a1,0(sp) + 800004fa: e93ff0ef jal 8000038c + 800004fe: 6582 ld a1,0(sp) + 80000500: 6622 ld a2,8(sp) + 80000502: c589 beqz a1,8000050c + 80000504: 008587b3 add a5,a1,s0 + 80000508: 00a78023 sb a0,0(a5) + 8000050c: 0405 addi s0,s0,1 + 8000050e: b7f1 j 800004da -00000000800004f0 : - 800004f0: 1101 addi sp,sp,-32 - 800004f2: 00a10423 sb a0,8(sp) - 800004f6: 00b104a3 sb a1,9(sp) - 800004fa: 0028 addi a0,sp,8 - 800004fc: 4609 li a2,2 - 800004fe: 4581 li a1,0 - 80000500: ec06 sd ra,24(sp) - 80000502: e97ff0ef jal 80000398 - 80000506: 60e2 ld ra,24(sp) - 80000508: 6105 addi sp,sp,32 - 8000050a: 8082 ret +0000000080000510 : + 80000510: c211 beqz a2,80000514 + 80000512: b575 j 800003be + 80000514: 8082 ret -000000008000050c : - 8000050c: c299 beqz a3,80000512 - 8000050e: c211 beqz a2,80000512 - 80000510: bded j 8000040a - 80000512: 8082 ret - -0000000080000514 : - 80000514: 1101 addi sp,sp,-32 - 80000516: 57fd li a5,-1 - 80000518: 00f10613 addi a2,sp,15 - 8000051c: 4685 li a3,1 - 8000051e: ec06 sd ra,24(sp) - 80000520: 00f107a3 sb a5,15(sp) - 80000524: ee7ff0ef jal 8000040a - 80000528: 60e2 ld ra,24(sp) - 8000052a: 00f14503 lbu a0,15(sp) +0000000080000516 : + 80000516: 1101 addi sp,sp,-32 + 80000518: 00a10423 sb a0,8(sp) + 8000051c: 00b104a3 sb a1,9(sp) + 80000520: 0028 addi a0,sp,8 + 80000522: 4609 li a2,2 + 80000524: 4581 li a1,0 + 80000526: ec06 sd ra,24(sp) + 80000528: e97ff0ef jal 800003be + 8000052c: 60e2 ld ra,24(sp) 8000052e: 6105 addi sp,sp,32 80000530: 8082 ret -0000000080000532 : - 80000532: 0200c7b7 lui a5,0x200c - 80000536: ff87b683 ld a3,-8(a5) # 200bff8 <__dtim_size+0x1f0bff8> - 8000053a: 17e1 addi a5,a5,-8 - 8000053c: 6398 ld a4,0(a5) - 8000053e: 8f15 sub a4,a4,a3 - 80000540: fea76ee3 bltu a4,a0,8000053c - 80000544: 8082 ret +0000000080000532 : + 80000532: c299 beqz a3,80000538 + 80000534: c211 beqz a2,80000538 + 80000536: bded j 80000430 + 80000538: 8082 ret -0000000080000546
    : - 80000546: 711d addi sp,sp,-96 - 80000548: 00009517 auipc a0,0x9 - 8000054c: ac850513 addi a0,a0,-1336 # 80009010 <__clzdi2+0x36> - 80000550: ec86 sd ra,88(sp) - 80000552: e0ca sd s2,64(sp) - 80000554: e8a2 sd s0,80(sp) - 80000556: e4a6 sd s1,72(sp) - 80000558: fc4e sd s3,56(sp) - 8000055a: f852 sd s4,48(sp) - 8000055c: f456 sd s5,40(sp) - 8000055e: 2ca000ef jal 80000828 - 80000562: 100155b7 lui a1,0x10015 - 80000566: 00009517 auipc a0,0x9 - 8000056a: ad250513 addi a0,a0,-1326 # 80009038 <__clzdi2+0x5e> - 8000056e: 2ba000ef jal 80000828 - 80000572: 00009517 auipc a0,0x9 - 80000576: aee50513 addi a0,a0,-1298 # 80009060 <__clzdi2+0x86> - 8000057a: 2ae000ef jal 80000828 - 8000057e: cebff0ef jal 80000268 - 80000582: 4501 li a0,0 - 80000584: d03ff0ef jal 80000286 - 80000588: 46a9 li a3,10 - 8000058a: 8536 mv a0,a3 - 8000058c: 8636 mv a2,a3 - 8000058e: 85b6 mv a1,a3 - 80000590: d45ff0ef jal 800002d4 - 80000594: 3e800513 li a0,1000 - 80000598: f9bff0ef jal 80000532 - 8000059c: 00009517 auipc a0,0x9 - 800005a0: aec50513 addi a0,a0,-1300 # 80009088 <__clzdi2+0xae> - 800005a4: 284000ef jal 80000828 - 800005a8: 4911 li s2,4 +000000008000053a : + 8000053a: 1101 addi sp,sp,-32 + 8000053c: 57fd li a5,-1 + 8000053e: 00f10613 addi a2,sp,15 + 80000542: 4685 li a3,1 + 80000544: ec06 sd ra,24(sp) + 80000546: 00f107a3 sb a5,15(sp) + 8000054a: ee7ff0ef jal 80000430 + 8000054e: 60e2 ld ra,24(sp) + 80000550: 00f14503 lbu a0,15(sp) + 80000554: 6105 addi sp,sp,32 + 80000556: 8082 ret + +0000000080000558 : + 80000558: 0007a7b7 lui a5,0x7a + 8000055c: 12078793 addi a5,a5,288 # 7a120 + 80000560: 02f50533 mul a0,a0,a5 + 80000564: 3e800793 li a5,1000 + 80000568: 3e750513 addi a0,a0,999 + 8000056c: 02f55533 divu a0,a0,a5 + 80000570: 0200c7b7 lui a5,0x200c + 80000574: ff87b683 ld a3,-8(a5) # 200bff8 <__dtim_size+0x1f0bff8> + 80000578: 17e1 addi a5,a5,-8 + 8000057a: 6398 ld a4,0(a5) + 8000057c: 8f15 sub a4,a4,a3 + 8000057e: fea76ee3 bltu a4,a0,8000057a + 80000582: 8082 ret + +0000000080000584 : + 80000584: 4785 li a5,1 + 80000586: 872a mv a4,a0 + 80000588: 17fa slli a5,a5,0x3e + 8000058a: 00f76563 bltu a4,a5,80000594 + 8000058e: 4501 li a0,0 + 80000590: e781 bnez a5,80000598 + 80000592: 8082 ret + 80000594: 8389 srli a5,a5,0x2 + 80000596: bfd5 j 8000058a + 80000598: 00f506b3 add a3,a0,a5 + 8000059c: 8105 srli a0,a0,0x1 + 8000059e: 00d76463 bltu a4,a3,800005a6 + 800005a2: 8f15 sub a4,a4,a3 + 800005a4: 953e add a0,a0,a5 + 800005a6: 8389 srli a5,a5,0x2 + 800005a8: b7e5 j 80000590 + +00000000800005aa : 800005aa: 0ff00593 li a1,255 - 800005ae: 0f500513 li a0,245 - 800005b2: f63ff0ef jal 80000514 - 800005b6: 0005049b sext.w s1,a0 - 800005ba: 842a mv s0,a0 - 800005bc: 85a6 mv a1,s1 - 800005be: 00009517 auipc a0,0x9 - 800005c2: ada50513 addi a0,a0,-1318 # 80009098 <__clzdi2+0xbe> - 800005c6: 397d addiw s2,s2,-1 - 800005c8: 260000ef jal 80000828 - 800005cc: fc091fe3 bnez s2,800005aa - 800005d0: 00009517 auipc a0,0x9 - 800005d4: bb850513 addi a0,a0,-1096 # 80009188 <__clzdi2+0x1ae> - 800005d8: 250000ef jal 80000828 - 800005dc: 0ff00593 li a1,255 - 800005e0: 09100513 li a0,145 - 800005e4: f31ff0ef jal 80000514 - 800005e8: 0005059b sext.w a1,a0 - 800005ec: 00009517 auipc a0,0x9 - 800005f0: ab450513 addi a0,a0,-1356 # 800090a0 <__clzdi2+0xc6> - 800005f4: 234000ef jal 80000828 - 800005f8: 04400793 li a5,68 - 800005fc: 1cf41463 bne s0,a5,800007c4 - 80000600: 85a2 mv a1,s0 - 80000602: 00009517 auipc a0,0x9 - 80000606: ac650513 addi a0,a0,-1338 # 800090c8 <__clzdi2+0xee> - 8000060a: 003d1437 lui s0,0x3d1 - 8000060e: 64a1 lui s1,0x8 - 80000610: 218000ef jal 80000828 - 80000614: 90040413 addi s0,s0,-1792 # 3d0900 <__dtim_size+0x2d0900> - 80000618: d0048493 addi s1,s1,-768 # 7d00 - 8000061c: 45bd li a1,15 - 8000061e: 04e00513 li a0,78 - 80000622: ecfff0ef jal 800004f0 - 80000626: 6531 lui a0,0xc - 80000628: 35050513 addi a0,a0,848 # c350 - 8000062c: f07ff0ef jal 80000532 - 80000630: 0ff00593 li a1,255 - 80000634: 0ce00513 li a0,206 - 80000638: eddff0ef jal 80000514 - 8000063c: 89aa mv s3,a0 - 8000063e: 0ff00593 li a1,255 - 80000642: 0cf00513 li a0,207 - 80000646: ecfff0ef jal 80000514 - 8000064a: 8a2a mv s4,a0 - 8000064c: 0ff00593 li a1,255 - 80000650: 0d000513 li a0,208 - 80000654: ec1ff0ef jal 80000514 - 80000658: 0005069b sext.w a3,a0 - 8000065c: 000a061b sext.w a2,s4 - 80000660: 0009859b sext.w a1,s3 - 80000664: 00009517 auipc a0,0x9 - 80000668: b7c50513 addi a0,a0,-1156 # 800091e0 <__clzdi2+0x206> - 8000066c: 1bc000ef jal 80000828 - 80000670: 00009517 auipc a0,0x9 - 80000674: bb050513 addi a0,a0,-1104 # 80009220 <__clzdi2+0x246> - 80000678: 69e1 lui s3,0x18 - 8000067a: 1ae000ef jal 80000828 - 8000067e: 6a21 lui s4,0x8 - 80000680: 6a098993 addi s3,s3,1696 # 186a0 - 80000684: 0ff00593 li a1,255 - 80000688: 0ad00513 li a0,173 - 8000068c: e89ff0ef jal 80000514 - 80000690: 8aaa mv s5,a0 - 80000692: 46b9 li a3,14 - 80000694: 0810 addi a2,sp,16 - 80000696: 0ff00593 li a1,255 - 8000069a: 09d00513 li a0,157 - 8000069e: e6fff0ef jal 8000050c - 800006a2: 01815783 lhu a5,24(sp) - 800006a6: 01415703 lhu a4,20(sp) - 800006aa: 01215683 lhu a3,18(sp) - 800006ae: 0087d893 srli a7,a5,0x8 - 800006b2: 0087979b slliw a5,a5,0x8 - 800006b6: 00f888bb addw a7,a7,a5 - 800006ba: 01615783 lhu a5,22(sp) - 800006be: 01c15583 lhu a1,28(sp) - 800006c2: 0108989b slliw a7,a7,0x10 - 800006c6: 0087d813 srli a6,a5,0x8 - 800006ca: 0087979b slliw a5,a5,0x8 - 800006ce: 00f8083b addw a6,a6,a5 - 800006d2: 00875793 srli a5,a4,0x8 - 800006d6: 0087171b slliw a4,a4,0x8 - 800006da: 9fb9 addw a5,a5,a4 - 800006dc: 0086d713 srli a4,a3,0x8 - 800006e0: 0086969b slliw a3,a3,0x8 - 800006e4: 9f35 addw a4,a4,a3 - 800006e6: 01015683 lhu a3,16(sp) - 800006ea: 0108181b slliw a6,a6,0x10 - 800006ee: 0107979b slliw a5,a5,0x10 - 800006f2: 0086d613 srli a2,a3,0x8 - 800006f6: 0086969b slliw a3,a3,0x8 - 800006fa: 9e35 addw a2,a2,a3 - 800006fc: 0106161b slliw a2,a2,0x10 - 80000700: 4106561b sraiw a2,a2,0x10 - 80000704: 03360633 mul a2,a2,s3 - 80000708: 668d lui a3,0x3 - 8000070a: 3c068693 addi a3,a3,960 # 33c0 - 8000070e: 0107171b slliw a4,a4,0x10 - 80000712: 4108d89b sraiw a7,a7,0x10 - 80000716: 4108581b sraiw a6,a6,0x10 - 8000071a: 4107d79b sraiw a5,a5,0x10 - 8000071e: 4107571b sraiw a4,a4,0x10 - 80000722: 028888b3 mul a7,a7,s0 - 80000726: 00009517 auipc a0,0x9 - 8000072a: b2a50513 addi a0,a0,-1238 # 80009250 <__clzdi2+0x276> - 8000072e: 02d64633 div a2,a2,a3 - 80000732: 0085d693 srli a3,a1,0x8 - 80000736: 0085959b slliw a1,a1,0x8 - 8000073a: 9ead addw a3,a3,a1 - 8000073c: 0106969b slliw a3,a3,0x10 - 80000740: 4106d69b sraiw a3,a3,0x10 - 80000744: 01a15583 lhu a1,26(sp) - 80000748: 028686b3 mul a3,a3,s0 - 8000074c: 02980833 mul a6,a6,s1 - 80000750: 0346c6b3 div a3,a3,s4 - 80000754: 029787b3 mul a5,a5,s1 - 80000758: 02970733 mul a4,a4,s1 - 8000075c: 0347c7b3 div a5,a5,s4 - 80000760: 0348c8b3 div a7,a7,s4 - 80000764: 03484833 div a6,a6,s4 - 80000768: 03474733 div a4,a4,s4 - 8000076c: e436 sd a3,8(sp) - 8000076e: 0085d693 srli a3,a1,0x8 - 80000772: 0085959b slliw a1,a1,0x8 - 80000776: 9ead addw a3,a3,a1 - 80000778: 0106969b slliw a3,a3,0x10 - 8000077c: 4106d69b sraiw a3,a3,0x10 - 80000780: 028686b3 mul a3,a3,s0 - 80000784: 85ca mv a1,s2 - 80000786: 2905 addiw s2,s2,1 - 80000788: 0346c6b3 div a3,a3,s4 - 8000078c: e036 sd a3,0(sp) - 8000078e: 6699 lui a3,0x6 - 80000790: 1a868693 addi a3,a3,424 # 61a8 - 80000794: 96b2 add a3,a3,a2 - 80000796: 000a861b sext.w a2,s5 - 8000079a: 08e000ef jal 80000828 - 8000079e: 6561 lui a0,0x18 - 800007a0: 6a050513 addi a0,a0,1696 # 186a0 - 800007a4: d8fff0ef jal 80000532 - 800007a8: 02800793 li a5,40 - 800007ac: ecf91ce3 bne s2,a5,80000684 - 800007b0: 00009517 auipc a0,0x9 - 800007b4: ad050513 addi a0,a0,-1328 # 80009280 <__clzdi2+0x2a6> - 800007b8: 070000ef jal 80000828 - 800007bc: a17ff0ef jal 800001d2 - 800007c0: 4501 li a0,0 - 800007c2: a891 j 80000816 - 800007c4: 04700793 li a5,71 - 800007c8: 02f41163 bne s0,a5,800007ea - 800007cc: 85a2 mv a1,s0 - 800007ce: 00009517 auipc a0,0x9 - 800007d2: 92250513 addi a0,a0,-1758 # 800090f0 <__clzdi2+0x116> - 800007d6: 001e8437 lui s0,0x1e8 - 800007da: 6491 lui s1,0x4 - 800007dc: 04c000ef jal 80000828 - 800007e0: 48040413 addi s0,s0,1152 # 1e8480 <__dtim_size+0xe8480> - 800007e4: e8048493 addi s1,s1,-384 # 3e80 - 800007e8: bd15 j 8000061c - 800007ea: 85a6 mv a1,s1 - 800007ec: 00009517 auipc a0,0x9 - 800007f0: 92c50513 addi a0,a0,-1748 # 80009118 <__clzdi2+0x13e> - 800007f4: 034000ef jal 80000828 - 800007f8: 00009517 auipc a0,0x9 - 800007fc: 95050513 addi a0,a0,-1712 # 80009148 <__clzdi2+0x16e> - 80000800: 028000ef jal 80000828 - 80000804: 00009517 auipc a0,0x9 - 80000808: 98c50513 addi a0,a0,-1652 # 80009190 <__clzdi2+0x1b6> - 8000080c: 01c000ef jal 80000828 - 80000810: 9c3ff0ef jal 800001d2 - 80000814: 4505 li a0,1 - 80000816: 60e6 ld ra,88(sp) - 80000818: 6446 ld s0,80(sp) - 8000081a: 64a6 ld s1,72(sp) - 8000081c: 6906 ld s2,64(sp) - 8000081e: 79e2 ld s3,56(sp) - 80000820: 7a42 ld s4,48(sp) - 80000822: 7aa2 ld s5,40(sp) - 80000824: 6125 addi sp,sp,96 - 80000826: 8082 ret + 800005ae: 08056513 ori a0,a0,128 + 800005b2: b761 j 8000053a -0000000080000828 : - 80000828: 00009317 auipc t1,0x9 - 8000082c: 33033303 ld t1,816(t1) # 80009b58 <_impure_ptr> - 80000830: 711d addi sp,sp,-96 - 80000832: f832 sd a2,48(sp) - 80000834: fc36 sd a3,56(sp) - 80000836: f42e sd a1,40(sp) - 80000838: e0ba sd a4,64(sp) - 8000083a: e4be sd a5,72(sp) - 8000083c: e8c2 sd a6,80(sp) - 8000083e: ecc6 sd a7,88(sp) - 80000840: 01033583 ld a1,16(t1) - 80000844: 1034 addi a3,sp,40 - 80000846: 862a mv a2,a0 - 80000848: 851a mv a0,t1 - 8000084a: ec06 sd ra,24(sp) - 8000084c: e436 sd a3,8(sp) - 8000084e: 014000ef jal 80000862 <_vfprintf_r> - 80000852: 60e2 ld ra,24(sp) - 80000854: 6125 addi sp,sp,96 - 80000856: 8082 ret +00000000800005b4 : + 800005b4: 7139 addi sp,sp,-64 + 800005b6: 02d00513 li a0,45 + 800005ba: fc06 sd ra,56(sp) + 800005bc: fefff0ef jal 800005aa + 800005c0: 8921 andi a0,a0,8 + 800005c2: 10050a63 beqz a0,800006d6 + 800005c6: 46b9 li a3,14 + 800005c8: 0830 addi a2,sp,24 + 800005ca: 0ff00593 li a1,255 + 800005ce: 09d00513 li a0,157 + 800005d2: f61ff0ef jal 80000532 + 800005d6: 01815783 lhu a5,24(sp) + 800005da: 78e1 lui a7,0xffff8 + 800005dc: 0087d313 srli t1,a5,0x8 + 800005e0: 0087979b slliw a5,a5,0x8 + 800005e4: 00f3033b addw t1,t1,a5 + 800005e8: 01a15783 lhu a5,26(sp) + 800005ec: 0103131b slliw t1,t1,0x10 + 800005f0: 4103531b sraiw t1,t1,0x10 + 800005f4: 0087d713 srli a4,a5,0x8 + 800005f8: 0087979b slliw a5,a5,0x8 + 800005fc: 9f3d addw a4,a4,a5 + 800005fe: 01c15783 lhu a5,28(sp) + 80000602: 0107171b slliw a4,a4,0x10 + 80000606: 4107571b sraiw a4,a4,0x10 + 8000060a: 0087d693 srli a3,a5,0x8 + 8000060e: 0087979b slliw a5,a5,0x8 + 80000612: 9ebd addw a3,a3,a5 + 80000614: 01e15783 lhu a5,30(sp) + 80000618: 0106969b slliw a3,a3,0x10 + 8000061c: 4106d69b sraiw a3,a3,0x10 + 80000620: 0087d613 srli a2,a5,0x8 + 80000624: 0087979b slliw a5,a5,0x8 + 80000628: 9e3d addw a2,a2,a5 + 8000062a: 02015783 lhu a5,32(sp) + 8000062e: 0106161b slliw a2,a2,0x10 + 80000632: 4106561b sraiw a2,a2,0x10 + 80000636: 0087d593 srli a1,a5,0x8 + 8000063a: 0087979b slliw a5,a5,0x8 + 8000063e: 9dbd addw a1,a1,a5 + 80000640: 02215783 lhu a5,34(sp) + 80000644: 0105959b slliw a1,a1,0x10 + 80000648: 4105d59b sraiw a1,a1,0x10 + 8000064c: 0087d513 srli a0,a5,0x8 + 80000650: 0087979b slliw a5,a5,0x8 + 80000654: 9d3d addw a0,a0,a5 + 80000656: 02415783 lhu a5,36(sp) + 8000065a: 0105151b slliw a0,a0,0x10 + 8000065e: 4105551b sraiw a0,a0,0x10 + 80000662: 0087d813 srli a6,a5,0x8 + 80000666: 0087979b slliw a5,a5,0x8 + 8000066a: 00f8083b addw a6,a6,a5 + 8000066e: 0108181b slliw a6,a6,0x10 + 80000672: 4108581b sraiw a6,a6,0x10 + 80000676: 00e11523 sh a4,10(sp) + 8000067a: 00d11623 sh a3,12(sp) + 8000067e: 00c11723 sh a2,14(sp) + 80000682: 00b11823 sh a1,16(sp) + 80000686: 00a11923 sh a0,18(sp) + 8000068a: 01011a23 sh a6,20(sp) + 8000068e: 03130f63 beq t1,a7,800006cc + 80000692: 003c addi a5,sp,8 + 80000694: 00e10e13 addi t3,sp,14 + 80000698: 00279e83 lh t4,2(a5) + 8000069c: 031e8863 beq t4,a7,800006cc + 800006a0: 00879e83 lh t4,8(a5) + 800006a4: 031e8463 beq t4,a7,800006cc + 800006a8: 0789 addi a5,a5,2 + 800006aa: ffc797e3 bne a5,t3,80000698 + 800006ae: 3781a883 lw a7,888(gp) # 8000b080 + 800006b2: 4785 li a5,1 + 800006b4: 06f89b63 bne a7,a5,8000072a + 800006b8: 3741a883 lw a7,884(gp) # 8000b07c + 800006bc: 02088063 beqz a7,800006dc + 800006c0: 3741a783 lw a5,884(gp) # 8000b07c + 800006c4: 37fd addiw a5,a5,-1 + 800006c6: 36f1aa23 sw a5,884(gp) # 8000b07c + 800006ca: a031 j 800006d6 + 800006cc: 3641a783 lw a5,868(gp) # 8000b06c + 800006d0: 2785 addiw a5,a5,1 + 800006d2: 36f1a223 sw a5,868(gp) # 8000b06c + 800006d6: 70e2 ld ra,56(sp) + 800006d8: 6121 addi sp,sp,64 + 800006da: 8082 ret + 800006dc: 3701a303 lw t1,880(gp) # 8000b078 + 800006e0: 6785 lui a5,0x1 + 800006e2: 9c378793 addi a5,a5,-1597 # 9c3 + 800006e6: fe67e8e3 bltu a5,t1,800006d6 + 800006ea: ce36 sw a3,28(sp) + 800006ec: d22e sw a1,36(sp) + 800006ee: d42a sw a0,40(sp) + 800006f0: cc3a sw a4,24(sp) + 800006f2: d032 sw a2,32(sp) + 800006f4: d642 sw a6,44(sp) + 800006f6: 0834 addi a3,sp,24 + 800006f8: 3a818513 addi a0,gp,936 # 8000b0b0 + 800006fc: 4599 li a1,6 + 800006fe: 00389713 slli a4,a7,0x3 + 80000702: 972a add a4,a4,a0 + 80000704: 6310 ld a2,0(a4) + 80000706: 429c lw a5,0(a3) + 80000708: 2885 addiw a7,a7,1 # ffffffffffff8001 <_stack_top+0xffffffff7fef8001> + 8000070a: 0691 addi a3,a3,4 + 8000070c: 963e add a2,a2,a5 + 8000070e: 02f787b3 mul a5,a5,a5 + 80000712: e310 sd a2,0(a4) + 80000714: 7b10 ld a2,48(a4) + 80000716: 97b2 add a5,a5,a2 + 80000718: fb1c sd a5,48(a4) + 8000071a: feb892e3 bne a7,a1,800006fe + 8000071e: 3701a783 lw a5,880(gp) # 8000b078 + 80000722: 2785 addiw a5,a5,1 + 80000724: 36f1a823 sw a5,880(gp) # 8000b078 + 80000728: b77d j 800006d6 + 8000072a: 3781a883 lw a7,888(gp) # 8000b080 + 8000072e: 4789 li a5,2 + 80000730: faf893e3 bne a7,a5,800006d6 + 80000734: 3a818793 addi a5,gp,936 # 8000b0b0 + 80000738: 0607b883 ld a7,96(a5) + 8000073c: 989a add a7,a7,t1 + 8000073e: 0717b023 sd a7,96(a5) + 80000742: 0687b883 ld a7,104(a5) + 80000746: 9746 add a4,a4,a7 + 80000748: f7b8 sd a4,104(a5) + 8000074a: 7bb8 ld a4,112(a5) + 8000074c: 9736 add a4,a4,a3 + 8000074e: fbb8 sd a4,112(a5) + 80000750: 7fb8 ld a4,120(a5) + 80000752: 9732 add a4,a4,a2 + 80000754: ffb8 sd a4,120(a5) + 80000756: 63d8 ld a4,128(a5) + 80000758: 972e add a4,a4,a1 + 8000075a: e3d8 sd a4,128(a5) + 8000075c: 67d8 ld a4,136(a5) + 8000075e: 972a add a4,a4,a0 + 80000760: e7d8 sd a4,136(a5) + 80000762: 6bd8 ld a4,144(a5) + 80000764: 9742 add a4,a4,a6 + 80000766: ebd8 sd a4,144(a5) + 80000768: 36c1a783 lw a5,876(gp) # 8000b074 + 8000076c: 2785 addiw a5,a5,1 + 8000076e: 36f1a623 sw a5,876(gp) # 8000b074 + 80000772: 3681a783 lw a5,872(gp) # 8000b070 + 80000776: 2785 addiw a5,a5,1 + 80000778: 36f1a423 sw a5,872(gp) # 8000b070 + 8000077c: bfa9 j 800006d6 -0000000080000858 <__errno>: - 80000858: 00009517 auipc a0,0x9 - 8000085c: 30053503 ld a0,768(a0) # 80009b58 <_impure_ptr> - 80000860: 8082 ret +000000008000077e
    : + 8000077e: 7125 addi sp,sp,-416 + 80000780: 00009517 auipc a0,0x9 + 80000784: f9050513 addi a0,a0,-112 # 80009710 <__clzdi2+0x4e> + 80000788: ef06 sd ra,408(sp) + 8000078a: eb22 sd s0,400(sp) + 8000078c: e726 sd s1,392(sp) + 8000078e: e34a sd s2,384(sp) + 80000790: fece sd s3,376(sp) + 80000792: fad2 sd s4,368(sp) + 80000794: f6d6 sd s5,360(sp) + 80000796: f2da sd s6,352(sp) + 80000798: eede sd s7,344(sp) + 8000079a: eae2 sd s8,336(sp) + 8000079c: e6e6 sd s9,328(sp) + 8000079e: e2ea sd s10,320(sp) + 800007a0: be22 fsd fs0,312(sp) + 800007a2: ba26 fsd fs1,304(sp) + 800007a4: b64a fsd fs2,296(sp) + 800007a6: b24e fsd fs3,288(sp) + 800007a8: ae52 fsd fs4,280(sp) + 800007aa: 766000ef jal 80000f10 + 800007ae: 100155b7 lui a1,0x10015 + 800007b2: 00009517 auipc a0,0x9 + 800007b6: f8650513 addi a0,a0,-122 # 80009738 <__clzdi2+0x76> + 800007ba: 756000ef jal 80000f10 + 800007be: 00009517 auipc a0,0x9 + 800007c2: f9a50513 addi a0,a0,-102 # 80009758 <__clzdi2+0x96> + 800007c6: 74a000ef jal 80000f10 + 800007ca: 00009517 auipc a0,0x9 + 800007ce: fbe50513 addi a0,a0,-66 # 80009788 <__clzdi2+0xc6> + 800007d2: 73e000ef jal 80000f10 + 800007d6: ab9ff0ef jal 8000028e + 800007da: 4501 li a0,0 + 800007dc: ad1ff0ef jal 800002ac + 800007e0: 46a9 li a3,10 + 800007e2: 8636 mv a2,a3 + 800007e4: 85b6 mv a1,a3 + 800007e6: 8536 mv a0,a3 + 800007e8: b13ff0ef jal 800002fa + 800007ec: 0200c7b7 lui a5,0x200c + 800007f0: ff87b603 ld a2,-8(a5) # 200bff8 <__dtim_size+0x1f0bff8> + 800007f4: 17e1 addi a5,a5,-8 + 800007f6: 1f300693 li a3,499 + 800007fa: 6398 ld a4,0(a5) + 800007fc: 8f11 sub a4,a4,a2 + 800007fe: fee6fee3 bgeu a3,a4,800007fa + 80000802: 07500513 li a0,117 + 80000806: da5ff0ef jal 800005aa + 8000080a: f42a sd a0,40(sp) + 8000080c: 4545 li a0,17 + 8000080e: d9dff0ef jal 800005aa + 80000812: 75a2 ld a1,40(sp) + 80000814: 04700793 li a5,71 + 80000818: 84aa mv s1,a0 + 8000081a: 02f59763 bne a1,a5,80000848 + 8000081e: 6791 lui a5,0x4 + 80000820: d0978793 addi a5,a5,-759 # 3d09 + 80000824: 00009517 auipc a0,0x9 + 80000828: fa450513 addi a0,a0,-92 # 800097c8 <__clzdi2+0x106> + 8000082c: 36f1a023 sw a5,864(gp) # 8000b068 + 80000830: 06f00413 li s0,111 + 80000834: 6dc000ef jal 80000f10 + 80000838: c4bd beqz s1,800008a6 + 8000083a: 0004859b sext.w a1,s1 + 8000083e: 00009517 auipc a0,0x9 + 80000842: ffa50513 addi a0,a0,-6 # 80009838 <__clzdi2+0x176> + 80000846: a805 j 80000876 + 80000848: 04400793 li a5,68 + 8000084c: 02f59063 bne a1,a5,8000086c + 80000850: 67a1 lui a5,0x8 + 80000852: a1278793 addi a5,a5,-1518 # 7a12 + 80000856: 00009517 auipc a0,0x9 + 8000085a: f9250513 addi a0,a0,-110 # 800097e8 <__clzdi2+0x126> + 8000085e: 36f1a023 sw a5,864(gp) # 8000b068 + 80000862: 08f00413 li s0,143 + 80000866: 6aa000ef jal 80000f10 + 8000086a: b7f9 j 80000838 + 8000086c: 2581 sext.w a1,a1 + 8000086e: 00009517 auipc a0,0x9 + 80000872: f9a50513 addi a0,a0,-102 # 80009808 <__clzdi2+0x146> + 80000876: 69a000ef jal 80000f10 + 8000087a: 95dff0ef jal 800001d6 + 8000087e: 4505 li a0,1 + 80000880: 60fa ld ra,408(sp) + 80000882: 645a ld s0,400(sp) + 80000884: 64ba ld s1,392(sp) + 80000886: 691a ld s2,384(sp) + 80000888: 79f6 ld s3,376(sp) + 8000088a: 7a56 ld s4,368(sp) + 8000088c: 7ab6 ld s5,360(sp) + 8000088e: 7b16 ld s6,352(sp) + 80000890: 6bf6 ld s7,344(sp) + 80000892: 6c56 ld s8,336(sp) + 80000894: 6cb6 ld s9,328(sp) + 80000896: 6d16 ld s10,320(sp) + 80000898: 3472 fld fs0,312(sp) + 8000089a: 34d2 fld fs1,304(sp) + 8000089c: 3932 fld fs2,296(sp) + 8000089e: 3992 fld fs3,288(sp) + 800008a0: 2a72 fld fs4,280(sp) + 800008a2: 611d addi sp,sp,416 + 800008a4: 8082 ret + 800008a6: 03200513 li a0,50 + 800008aa: cafff0ef jal 80000558 + 800008ae: 4581 li a1,0 + 800008b0: 04e00513 li a0,78 + 800008b4: c63ff0ef jal 80000516 + 800008b8: 4505 li a0,1 + 800008ba: c9fff0ef jal 80000558 + 800008be: 4581 li a1,0 + 800008c0: 06500513 li a0,101 + 800008c4: c53ff0ef jal 80000516 + 800008c8: 0ef00593 li a1,239 + 800008cc: 04f00513 li a0,79 + 800008d0: c47ff0ef jal 80000516 + 800008d4: 85a2 mv a1,s0 + 800008d6: 05000513 li a0,80 + 800008da: c3dff0ef jal 80000516 + 800008de: 05100513 li a0,81 + 800008e2: cc9ff0ef jal 800005aa + 800008e6: 892a mv s2,a0 + 800008e8: 05300513 li a0,83 + 800008ec: cbfff0ef jal 800005aa + 800008f0: 01097593 andi a1,s2,16 + 800008f4: 84aa mv s1,a0 + 800008f6: 0ca5e593 ori a1,a1,202 + 800008fa: 05100513 li a0,81 + 800008fe: c19ff0ef jal 80000516 + 80000902: 0e14f593 andi a1,s1,225 + 80000906: 0145e593 ori a1,a1,20 + 8000090a: 05300513 li a0,83 + 8000090e: c09ff0ef jal 80000516 + 80000912: 07700593 li a1,119 + 80000916: 05200513 li a0,82 + 8000091a: bfdff0ef jal 80000516 + 8000091e: 4581 li a1,0 + 80000920: 06500513 li a0,101 + 80000924: bf3ff0ef jal 80000516 + 80000928: 45bd li a1,15 + 8000092a: 04e00513 li a0,78 + 8000092e: be9ff0ef jal 80000516 + 80000932: 03200513 li a0,50 + 80000936: c23ff0ef jal 80000558 + 8000093a: 04e00513 li a0,78 + 8000093e: c6dff0ef jal 800005aa + 80000942: 84aa mv s1,a0 + 80000944: 04f00513 li a0,79 + 80000948: c63ff0ef jal 800005aa + 8000094c: 892a mv s2,a0 + 8000094e: 05000513 li a0,80 + 80000952: c59ff0ef jal 800005aa + 80000956: 89aa mv s3,a0 + 80000958: 05200513 li a0,82 + 8000095c: c4fff0ef jal 800005aa + 80000960: 8a2a mv s4,a0 + 80000962: 05100513 li a0,81 + 80000966: c45ff0ef jal 800005aa + 8000096a: 8aaa mv s5,a0 + 8000096c: 05300513 li a0,83 + 80000970: c3bff0ef jal 800005aa + 80000974: 0005081b sext.w a6,a0 + 80000978: 000a879b sext.w a5,s5 + 8000097c: 000a071b sext.w a4,s4 + 80000980: 0009869b sext.w a3,s3 + 80000984: 0009061b sext.w a2,s2 + 80000988: 0004859b sext.w a1,s1 + 8000098c: 00009517 auipc a0,0x9 + 80000990: ee450513 addi a0,a0,-284 # 80009870 <__clzdi2+0x1ae> + 80000994: 57c000ef jal 80000f10 + 80000998: 06500513 li a0,101 + 8000099c: c0fff0ef jal 800005aa + 800009a0: 0005059b sext.w a1,a0 + 800009a4: 00009517 auipc a0,0x9 + 800009a8: f0c50513 addi a0,a0,-244 # 800098b0 <__clzdi2+0x1ee> + 800009ac: 564000ef jal 80000f10 + 800009b0: 04e00513 li a0,78 + 800009b4: bf7ff0ef jal 800005aa + 800009b8: 47bd li a5,15 + 800009ba: 02f51d63 bne a0,a5,800009f4 + 800009be: 04f00513 li a0,79 + 800009c2: be9ff0ef jal 800005aa + 800009c6: 0ef00793 li a5,239 + 800009ca: 02f51563 bne a0,a5,800009f4 + 800009ce: 05000513 li a0,80 + 800009d2: bd9ff0ef jal 800005aa + 800009d6: 00851f63 bne a0,s0,800009f4 + 800009da: 05200513 li a0,82 + 800009de: bcdff0ef jal 800005aa + 800009e2: 07700793 li a5,119 + 800009e6: 00f51763 bne a0,a5,800009f4 + 800009ea: 06500513 li a0,101 + 800009ee: bbdff0ef jal 800005aa + 800009f2: c901 beqz a0,80000a02 + 800009f4: 00009517 auipc a0,0x9 + 800009f8: ef450513 addi a0,a0,-268 # 800098e8 <__clzdi2+0x226> + 800009fc: 514000ef jal 80000f10 + 80000a00: bdad j 8000087a + 80000a02: 02d00513 li a0,45 + 80000a06: ba5ff0ef jal 800005aa + 80000a0a: 00009517 auipc a0,0x9 + 80000a0e: f0650513 addi a0,a0,-250 # 80009910 <__clzdi2+0x24e> + 80000a12: 3601ac23 sw zero,888(gp) # 8000b080 + 80000a16: 4fa000ef jal 80000f10 + 80000a1a: 6505 lui a0,0x1 + 80000a1c: bb850513 addi a0,a0,-1096 # bb8 + 80000a20: 6485 lui s1,0x1 + 80000a22: 0200ca37 lui s4,0x200c + 80000a26: b33ff0ef jal 80000558 + 80000a2a: 4985 li s3,1 + 80000a2c: 9c448493 addi s1,s1,-1596 # 9c4 + 80000a30: 3a818913 addi s2,gp,936 # 8000b0b0 + 80000a34: 1a61 addi s4,s4,-8 # 200bff8 <__dtim_size+0x1f0bff8> + 80000a36: 6685 lui a3,0x1 + 80000a38: 9c468693 addi a3,a3,-1596 # 9c4 + 80000a3c: 460d li a2,3 + 80000a3e: 85ce mv a1,s3 + 80000a40: 00009517 auipc a0,0x9 + 80000a44: f1850513 addi a0,a0,-232 # 80009958 <__clzdi2+0x296> + 80000a48: 4c8000ef jal 80000f10 + 80000a4c: 3601ac23 sw zero,888(gp) # 8000b080 + 80000a50: 06400793 li a5,100 + 80000a54: 36f1aa23 sw a5,884(gp) # 8000b07c + 80000a58: 3601a823 sw zero,880(gp) # 8000b078 + 80000a5c: 4781 li a5,0 + 80000a5e: 4699 li a3,6 + 80000a60: 00379713 slli a4,a5,0x3 + 80000a64: 974a add a4,a4,s2 + 80000a66: 00073023 sd zero,0(a4) # 10015000 <__dtim_size+0xff15000> + 80000a6a: 02073823 sd zero,48(a4) + 80000a6e: 2785 addiw a5,a5,1 + 80000a70: fed798e3 bne a5,a3,80000a60 + 80000a74: 4785 li a5,1 + 80000a76: 36f1ac23 sw a5,888(gp) # 8000b080 + 80000a7a: 000a3b03 ld s6,0(s4) + 80000a7e: 6405 lui s0,0x1 + 80000a80: 003d1ab7 lui s5,0x3d1 + 80000a84: 9c340413 addi s0,s0,-1597 # 9c3 + 80000a88: 8ffa8a93 addi s5,s5,-1793 # 3d08ff <__dtim_size+0x2d08ff> + 80000a8c: 3701a783 lw a5,880(gp) # 8000b078 + 80000a90: 2ef47563 bgeu s0,a5,80000d7a + 80000a94: 3601ac23 sw zero,888(gp) # 8000b080 + 80000a98: 0094 addi a3,sp,64 + 80000a9a: 1898 addi a4,sp,112 + 80000a9c: 4781 li a5,0 + 80000a9e: 8cb6 mv s9,a3 + 80000aa0: 8c3a mv s8,a4 + 80000aa2: 4599 li a1,6 + 80000aa4: 00379613 slli a2,a5,0x3 + 80000aa8: 964a add a2,a2,s2 + 80000aaa: 6208 ld a0,0(a2) + 80000aac: 7a10 ld a2,48(a2) + 80000aae: 2785 addiw a5,a5,1 + 80000ab0: e288 sd a0,0(a3) + 80000ab2: e310 sd a2,0(a4) + 80000ab4: 06a1 addi a3,a3,8 + 80000ab6: 0721 addi a4,a4,8 + 80000ab8: feb796e3 bne a5,a1,80000aa4 + 80000abc: 4b01 li s6,0 + 80000abe: 4e200d13 li s10,1250 + 80000ac2: 1100 addi s0,sp,160 + 80000ac4: 0d810a93 addi s5,sp,216 + 80000ac8: 03000b93 li s7,48 + 80000acc: 016c87b3 add a5,s9,s6 + 80000ad0: 639c ld a5,0(a5) + 80000ad2: 3007ce63 bltz a5,80000dee + 80000ad6: 4e278793 addi a5,a5,1250 + 80000ada: 0297c7b3 div a5,a5,s1 + 80000ade: 01640733 add a4,s0,s6 + 80000ae2: e31c sd a5,0(a4) + 80000ae4: 016c0733 add a4,s8,s6 + 80000ae8: 6318 ld a4,0(a4) + 80000aea: 02975733 divu a4,a4,s1 + 80000aee: 02f787b3 mul a5,a5,a5 + 80000af2: 40f70533 sub a0,a4,a5 + 80000af6: 00f737b3 sltu a5,a4,a5 + 80000afa: 17fd addi a5,a5,-1 + 80000afc: 8d7d and a0,a0,a5 + 80000afe: a87ff0ef jal 80000584 + 80000b02: 016a87b3 add a5,s5,s6 + 80000b06: e388 sd a0,0(a5) + 80000b08: 0b21 addi s6,s6,8 + 80000b0a: fd7b11e3 bne s6,s7,80000acc + 80000b0e: 758a ld a1,160(sp) + 80000b10: 762a ld a2,168(sp) + 80000b12: 76ca ld a3,176(sp) + 80000b14: 02b587b3 mul a5,a1,a1 + 80000b18: fc2e sd a1,56(sp) + 80000b1a: f832 sd a2,48(sp) + 80000b1c: f436 sd a3,40(sp) + 80000b1e: 7b75 lui s6,0xffffd + 80000b20: ccdb0b13 addi s6,s6,-819 # ffffffffffffcccd <_stack_top+0xffffffff7fefcccd> + 80000b24: 8c22 mv s8,s0 + 80000b26: 02c60733 mul a4,a2,a2 + 80000b2a: 02d68533 mul a0,a3,a3 + 80000b2e: 97ba add a5,a5,a4 + 80000b30: 953e add a0,a0,a5 + 80000b32: a53ff0ef jal 80000584 + 80000b36: 3601a703 lw a4,864(gp) # 8000b068 + 80000b3a: 4789 li a5,2 + 80000b3c: 8baa mv s7,a0 + 80000b3e: 02f747b3 div a5,a4,a5 + 80000b42: 03e80537 lui a0,0x3e80 + 80000b46: 01f40837 lui a6,0x1f40 + 80000b4a: 75e2 ld a1,56(sp) + 80000b4c: 7642 ld a2,48(sp) + 80000b4e: 76a2 ld a3,40(sp) + 80000b50: 9b5e add s6,s6,s7 + 80000b52: 0f010e13 addi t3,sp,240 + 80000b56: 8322 mv t1,s0 + 80000b58: 14700e93 li t4,327 + 80000b5c: 983e add a6,a6,a5 + 80000b5e: 97aa add a5,a5,a0 + 80000b60: 02e84833 div a6,a6,a4 + 80000b64: 8556 mv a0,s5 + 80000b66: 02e7c7b3 div a5,a5,a4 + 80000b6a: 6709 lui a4,0x2 + 80000b6c: 99a70713 addi a4,a4,-1638 # 199a + 80000b70: 00eb3b33 sltu s6,s6,a4 + 80000b74: 6118 ld a4,0(a0) + 80000b76: 00eee563 bltu t4,a4,80000b80 + 80000b7a: 6d18 ld a4,24(a0) + 80000b7c: 28e87063 bgeu a6,a4,80000dfc + 80000b80: 4b01 li s6,0 + 80000b82: 0521 addi a0,a0,8 # 3e80008 <__dtim_size+0x3d80008> + 80000b84: 0321 addi t1,t1,8 + 80000b86: ffc517e3 bne a0,t3,80000b74 + 80000b8a: 682e ld a6,200(sp) + 80000b8c: 678e ld a5,192(sp) + 80000b8e: 776a ld a4,184(sp) + 80000b90: 88de mv a7,s7 + 80000b92: 00009517 auipc a0,0x9 + 80000b96: e5650513 addi a0,a0,-426 # 800099e8 <__clzdi2+0x326> + 80000b9a: 376000ef jal 80000f10 + 80000b9e: 65ee ld a1,216(sp) + 80000ba0: 760e ld a2,224(sp) + 80000ba2: 76ae ld a3,232(sp) + 80000ba4: 774e ld a4,240(sp) + 80000ba6: 77ee ld a5,248(sp) + 80000ba8: 6812 ld a6,256(sp) + 80000baa: 00009897 auipc a7,0x9 + 80000bae: b5688893 addi a7,a7,-1194 # 80009700 <__clzdi2+0x3e> + 80000bb2: 000b0663 beqz s6,80000bbe + 80000bb6: 00009897 auipc a7,0x9 + 80000bba: b4288893 addi a7,a7,-1214 # 800096f8 <__clzdi2+0x36> + 80000bbe: 00009517 auipc a0,0x9 + 80000bc2: e6250513 addi a0,a0,-414 # 80009a20 <__clzdi2+0x35e> + 80000bc6: 34a000ef jal 80000f10 + 80000bca: 240b8f63 beqz s7,80000e28 + 80000bce: 240b0d63 beqz s6,80000e28 + 80000bd2: 4609 li a2,2 + 80000bd4: 02cbc633 div a2,s7,a2 + 80000bd8: 4701 li a4,0 + 80000bda: 44018893 addi a7,gp,1088 # 8000b148 + 80000bde: 45018513 addi a0,gp,1104 # 8000b158 + 80000be2: 45b1 li a1,12 + 80000be4: 000c3683 ld a3,0(s8) + 80000be8: 00e69793 slli a5,a3,0xe + 80000bec: 2207c763 bltz a5,80000e1a + 80000bf0: 97b2 add a5,a5,a2 + 80000bf2: 0377c7b3 div a5,a5,s7 + 80000bf6: 9e9d subw a3,a3,a5 + 80000bf8: 00e88833 add a6,a7,a4 + 80000bfc: 00d82023 sw a3,0(a6) # 1f40000 <__dtim_size+0x1e40000> + 80000c00: 018c3683 ld a3,24(s8) + 80000c04: 00e507b3 add a5,a0,a4 + 80000c08: 0711 addi a4,a4,4 + 80000c0a: c394 sw a3,0(a5) + 80000c0c: 0c21 addi s8,s8,8 + 80000c0e: fcb71be3 bne a4,a1,80000be4 + 80000c12: 4541a783 lw a5,1108(gp) # 8000b15c + 80000c16: 4581a803 lw a6,1112(gp) # 8000b160 + 80000c1a: 4501a703 lw a4,1104(gp) # 8000b158 + 80000c1e: 4481a683 lw a3,1096(gp) # 8000b150 + 80000c22: 4441a603 lw a2,1092(gp) # 8000b14c + 80000c26: 4401a583 lw a1,1088(gp) # 8000b148 + 80000c2a: 00009517 auipc a0,0x9 + 80000c2e: e2650513 addi a0,a0,-474 # 80009a50 <__clzdi2+0x38e> + 80000c32: 2de000ef jal 80000f10 + 80000c36: 4785 li a5,1 + 80000c38: 2985 addiw s3,s3,1 + 80000c3a: 4711 li a4,4 + 80000c3c: 1ee98863 beq s3,a4,80000e2c + 80000c40: de078be3 beqz a5,80000a36 + 80000c44: 12c00593 li a1,300 + 80000c48: 00009517 auipc a0,0x9 + 80000c4c: e7850513 addi a0,a0,-392 # 80009ac0 <__clzdi2+0x3fe> + 80000c50: 2c0000ef jal 80000f10 + 80000c54: 00009517 auipc a0,0x9 + 80000c58: eac50513 addi a0,a0,-340 # 80009b00 <__clzdi2+0x43e> + 80000c5c: 2b4000ef jal 80000f10 + 80000c60: 3601ac23 sw zero,888(gp) # 8000b080 + 80000c64: 3601a623 sw zero,876(gp) # 8000b074 + 80000c68: 3601a423 sw zero,872(gp) # 8000b070 + 80000c6c: 4781 li a5,0 + 80000c6e: 469d li a3,7 + 80000c70: 00379713 slli a4,a5,0x3 + 80000c74: 974a add a4,a4,s2 + 80000c76: 06073023 sd zero,96(a4) + 80000c7a: 2785 addiw a5,a5,1 + 80000c7c: fed79ae3 bne a5,a3,80000c70 + 80000c80: 4789 li a5,2 + 80000c82: 0200ca37 lui s4,0x200c + 80000c86: 36f1ac23 sw a5,888(gp) # 8000b080 + 80000c8a: ff8a3983 ld s3,-8(s4) # 200bff8 <__dtim_size+0x1f0bff8> + 80000c8e: 0003d7b7 lui a5,0x3d + 80000c92: 09078793 addi a5,a5,144 # 3d090 + 80000c96: 99be add s3,s3,a5 + 80000c98: 00009797 auipc a5,0x9 + 80000c9c: 7d87b907 fld fs2,2008(a5) # 8000a470 <__clz_tab+0x100> + 80000ca0: 00009797 auipc a5,0x9 + 80000ca4: 7d87b407 fld fs0,2008(a5) # 8000a478 <__clz_tab+0x108> + 80000ca8: 00009797 auipc a5,0x9 + 80000cac: 7d87b987 fld fs3,2008(a5) # 8000a480 <__clz_tab+0x110> + 80000cb0: 00009797 auipc a5,0x9 + 80000cb4: 7d87ba07 fld fs4,2008(a5) # 8000a488 <__clz_tab+0x118> + 80000cb8: 00009797 auipc a5,0x9 + 80000cbc: 7d87b487 fld fs1,2008(a5) # 8000a490 <__clz_tab+0x120> + 80000cc0: 1a61 addi s4,s4,-8 + 80000cc2: 1f400493 li s1,500 + 80000cc6: 4b1d li s6,7 + 80000cc8: 000a3783 ld a5,0(s4) + 80000ccc: 1737e363 bltu a5,s3,80000e32 + 80000cd0: 36c1a683 lw a3,876(gp) # 8000b074 + 80000cd4: 8622 mv a2,s0 + 80000cd6: 4781 li a5,0 + 80000cd8: 00379713 slli a4,a5,0x3 + 80000cdc: 974a add a4,a4,s2 + 80000cde: 732c ld a1,96(a4) + 80000ce0: 2785 addiw a5,a5,1 + 80000ce2: 0621 addi a2,a2,8 + 80000ce4: feb63c23 sd a1,-8(a2) + 80000ce8: 06073023 sd zero,96(a4) + 80000cec: ff6796e3 bne a5,s6,80000cd8 + 80000cf0: 3601a623 sw zero,876(gp) # 8000b074 + 80000cf4: 3681a703 lw a4,872(gp) # 8000b070 + 80000cf8: 3e800613 li a2,1000 + 80000cfc: 02c4d5bb divuw a1,s1,a2 + 80000d00: 02c4f63b remuw a2,s1,a2 + 80000d04: 12069a63 bnez a3,80000e38 + 80000d08: 86ba mv a3,a4 + 80000d0a: 00009517 auipc a0,0x9 + 80000d0e: e3e50513 addi a0,a0,-450 # 80009b48 <__clzdi2+0x486> + 80000d12: 1fe000ef jal 80000f10 + 80000d16: 0003d7b7 lui a5,0x3d + 80000d1a: 09078793 addi a5,a5,144 # 3d090 + 80000d1e: 99be add s3,s3,a5 + 80000d20: 000497b7 lui a5,0x49 + 80000d24: 1f44849b addiw s1,s1,500 + 80000d28: 5d478793 addi a5,a5,1492 # 495d4 + 80000d2c: f8f49ee3 bne s1,a5,80000cc8 + 80000d30: 4581 li a1,0 + 80000d32: 04e00513 li a0,78 + 80000d36: 3601ac23 sw zero,888(gp) # 8000b080 + 80000d3a: fdcff0ef jal 80000516 + 80000d3e: 4505 li a0,1 + 80000d40: 819ff0ef jal 80000558 + 80000d44: 4581 li a1,0 + 80000d46: 06500513 li a0,101 + 80000d4a: fccff0ef jal 80000516 + 80000d4e: 02d00513 li a0,45 + 80000d52: 859ff0ef jal 800005aa + 80000d56: 3681a583 lw a1,872(gp) # 8000b070 + 80000d5a: 3641a683 lw a3,868(gp) # 8000b06c + 80000d5e: 00025637 lui a2,0x25 + 80000d62: 9f060613 addi a2,a2,-1552 # 249f0 + 80000d66: 00009517 auipc a0,0x9 + 80000d6a: e9250513 addi a0,a0,-366 # 80009bf8 <__clzdi2+0x536> + 80000d6e: 1a2000ef jal 80000f10 + 80000d72: c64ff0ef jal 800001d6 + 80000d76: 4501 li a0,0 + 80000d78: b621 j 80000880 + 80000d7a: 83bff0ef jal 800005b4 + 80000d7e: 000a3783 ld a5,0(s4) + 80000d82: 416787b3 sub a5,a5,s6 + 80000d86: d0faf3e3 bgeu s5,a5,80000a8c + 80000d8a: 3701a583 lw a1,880(gp) # 8000b078 + 80000d8e: 6605 lui a2,0x1 + 80000d90: 9c460613 addi a2,a2,-1596 # 9c4 + 80000d94: 00009517 auipc a0,0x9 + 80000d98: bfc50513 addi a0,a0,-1028 # 80009990 <__clzdi2+0x2ce> + 80000d9c: 174000ef jal 80000f10 + 80000da0: 02d00513 li a0,45 + 80000da4: 807ff0ef jal 800005aa + 80000da8: 842a mv s0,a0 + 80000daa: 04e00513 li a0,78 + 80000dae: ffcff0ef jal 800005aa + 80000db2: 0005061b sext.w a2,a0 + 80000db6: 0004059b sext.w a1,s0 + 80000dba: 00009517 auipc a0,0x9 + 80000dbe: c0e50513 addi a0,a0,-1010 # 800099c8 <__clzdi2+0x306> + 80000dc2: 14e000ef jal 80000f10 + 80000dc6: 4581 li a1,0 + 80000dc8: 04e00513 li a0,78 + 80000dcc: 3601ac23 sw zero,888(gp) # 8000b080 + 80000dd0: f46ff0ef jal 80000516 + 80000dd4: 4505 li a0,1 + 80000dd6: f82ff0ef jal 80000558 + 80000dda: 06500513 li a0,101 + 80000dde: 4581 li a1,0 + 80000de0: f36ff0ef jal 80000516 + 80000de4: 00009517 auipc a0,0x9 + 80000de8: c9c50513 addi a0,a0,-868 # 80009a80 <__clzdi2+0x3be> + 80000dec: b901 j 800009fc + 80000dee: 40fd07b3 sub a5,s10,a5 + 80000df2: 0297c7b3 div a5,a5,s1 + 80000df6: 40f007b3 neg a5,a5 + 80000dfa: b1d5 j 80000ade + 80000dfc: 01833883 ld a7,24(t1) + 80000e00: 40f00733 neg a4,a5 + 80000e04: 00e8a733 slt a4,a7,a4 + 80000e08: 0117a8b3 slt a7,a5,a7 + 80000e0c: 01176733 or a4,a4,a7 + 80000e10: 00173713 seqz a4,a4 + 80000e14: 00eb7b33 and s6,s6,a4 + 80000e18: b3ad j 80000b82 + 80000e1a: 40f607b3 sub a5,a2,a5 + 80000e1e: 0377c7b3 div a5,a5,s7 + 80000e22: 40f007b3 neg a5,a5 + 80000e26: bbc1 j 80000bf6 + 80000e28: 4781 li a5,0 + 80000e2a: b539 j 80000c38 + 80000e2c: e0079ce3 bnez a5,80000c44 + 80000e30: bf59 j 80000dc6 + 80000e32: f82ff0ef jal 800005b4 + 80000e36: bd49 j 80000cc8 + 80000e38: d2168753 fcvt.d.wu fa4,a3 + 80000e3c: 4781 li a5,0 + 80000e3e: 03800513 li a0,56 + 80000e42: 00f408b3 add a7,s0,a5 + 80000e46: 0008b883 ld a7,0(a7) + 80000e4a: 00fa8833 add a6,s5,a5 + 80000e4e: 07a1 addi a5,a5,8 + 80000e50: d228f7d3 fcvt.d.l fa5,a7 + 80000e54: 1ae7f7d3 fdiv.d fa5,fa5,fa4 + 80000e58: 00f83027 fsd fa5,0(a6) + 80000e5c: fea793e3 bne a5,a0,80000e42 + 80000e60: 3601a783 lw a5,864(gp) # 8000b068 + 80000e64: 35ae fld fa1,232(sp) + 80000e66: 360e fld fa2,224(sp) + 80000e68: d2078753 fcvt.d.w fa4,a5 + 80000e6c: 4441a783 lw a5,1092(gp) # 8000b14c + 80000e70: 26ee fld fa3,216(sp) + 80000e72: 1b277753 fdiv.d fa4,fa4,fs2 + 80000e76: d20787d3 fcvt.d.w fa5,a5 + 80000e7a: 4401a783 lw a5,1088(gp) # 8000b148 + 80000e7e: 00009517 auipc a0,0x9 + 80000e82: cfa50513 addi a0,a0,-774 # 80009b78 <__clzdi2+0x4b6> + 80000e86: 0af5f5d3 fsub.d fa1,fa1,fa5 + 80000e8a: d20787d3 fcvt.d.w fa5,a5 + 80000e8e: 4581a783 lw a5,1112(gp) # 8000b160 + 80000e92: 1b36f6d3 fdiv.d fa3,fa3,fs3 + 80000e96: 0af67653 fsub.d fa2,fa2,fa5 + 80000e9a: d2078553 fcvt.d.w fa0,a5 + 80000e9e: 27b2 fld fa5,264(sp) + 80000ea0: 4541a783 lw a5,1108(gp) # 8000b15c + 80000ea4: 0aa7f7d3 fsub.d fa5,fa5,fa0 + 80000ea8: d2078553 fcvt.d.w fa0,a5 + 80000eac: 4501a783 lw a5,1104(gp) # 8000b158 + 80000eb0: 12e7f7d3 fmul.d fa5,fa5,fa4 + 80000eb4: 1297f7d3 fmul.d fa5,fa5,fs1 + 80000eb8: ac3e fsd fa5,24(sp) + 80000eba: 2792 fld fa5,256(sp) + 80000ebc: 0aa7f7d3 fsub.d fa5,fa5,fa0 + 80000ec0: d2078553 fcvt.d.w fa0,a5 + 80000ec4: 4481a783 lw a5,1096(gp) # 8000b150 + 80000ec8: 12e7f7d3 fmul.d fa5,fa5,fa4 + 80000ecc: 1297f7d3 fmul.d fa5,fa5,fs1 + 80000ed0: a83e fsd fa5,16(sp) + 80000ed2: 37ee fld fa5,248(sp) + 80000ed4: 0aa7f7d3 fsub.d fa5,fa5,fa0 + 80000ed8: 12e7f7d3 fmul.d fa5,fa5,fa4 + 80000edc: d2078753 fcvt.d.w fa4,a5 + 80000ee0: 1297f7d3 fmul.d fa5,fa5,fs1 + 80000ee4: a43e fsd fa5,8(sp) + 80000ee6: 37ce fld fa5,240(sp) + 80000ee8: 0ae7f7d3 fsub.d fa5,fa5,fa4 + 80000eec: 1287f7d3 fmul.d fa5,fa5,fs0 + 80000ef0: a03e fsd fa5,0(sp) + 80000ef2: 1285f7d3 fmul.d fa5,fa1,fs0 + 80000ef6: e20788d3 fmv.x.d a7,fa5 + 80000efa: 128677d3 fmul.d fa5,fa2,fs0 + 80000efe: e2078853 fmv.x.d a6,fa5 + 80000f02: 0346f7d3 fadd.d fa5,fa3,fs4 + 80000f06: e20787d3 fmv.x.d a5,fa5 + 80000f0a: 006000ef jal 80000f10 + 80000f0e: b521 j 80000d16 -0000000080000862 <_vfprintf_r>: - 80000862: db010113 addi sp,sp,-592 - 80000866: 24113423 sd ra,584(sp) - 8000086a: 24813023 sd s0,576(sp) - 8000086e: 22913c23 sd s1,568(sp) - 80000872: 21613823 sd s6,528(sp) - 80000876: f036 sd a3,32(sp) - 80000878: 8b32 mv s6,a2 - 8000087a: 84ae mv s1,a1 - 8000087c: 842a mv s0,a0 - 8000087e: e42a sd a0,8(sp) - 80000880: 2ad020ef jal 8000332c <_localeconv_r> - 80000884: 611c ld a5,0(a0) - 80000886: 853e mv a0,a5 - 80000888: ecbe sd a5,88(sp) - 8000088a: 196030ef jal 80003a20 - 8000088e: e8aa sd a0,80(sp) - 80000890: e982 sd zero,208(sp) - 80000892: ed82 sd zero,216(sp) - 80000894: c409 beqz s0,8000089e <_vfprintf_r+0x3c> - 80000896: 643c ld a5,72(s0) - 80000898: e399 bnez a5,8000089e <_vfprintf_r+0x3c> - 8000089a: 42a0106f j 80001cc4 <_vfprintf_r+0x1462> - 8000089e: 01049783 lh a5,16(s1) - 800008a2: 0ac4a703 lw a4,172(s1) - 800008a6: 6609 lui a2,0x2 - 800008a8: 03279693 slli a3,a5,0x32 - 800008ac: 2606c163 bltz a3,80000b0e <_vfprintf_r+0x2ac> - 800008b0: 76f9 lui a3,0xffffe - 800008b2: 8fd1 or a5,a5,a2 - 800008b4: 16fd addi a3,a3,-1 # ffffffffffffdfff <_stack_top+0xffffffff7fefdfff> - 800008b6: 8f75 and a4,a4,a3 - 800008b8: 00f49823 sh a5,16(s1) - 800008bc: 0107979b slliw a5,a5,0x10 - 800008c0: 4107d79b sraiw a5,a5,0x10 - 800008c4: 0ae4a623 sw a4,172(s1) - 800008c8: 0087f713 andi a4,a5,8 - 800008cc: 1e070d63 beqz a4,80000ac6 <_vfprintf_r+0x264> - 800008d0: 6c98 ld a4,24(s1) - 800008d2: 1e070a63 beqz a4,80000ac6 <_vfprintf_r+0x264> - 800008d6: 8be9 andi a5,a5,26 - 800008d8: 4729 li a4,10 - 800008da: 20e78163 beq a5,a4,80000adc <_vfprintf_r+0x27a> - 800008de: 23413023 sd s4,544(sp) - 800008e2: 16010a13 addi s4,sp,352 - 800008e6: 23313423 sd s3,552(sp) - 800008ea: 21513c23 sd s5,536(sp) - 800008ee: fbea sd s10,496(sp) - 800008f0: 23213823 sd s2,560(sp) - 800008f4: 21713423 sd s7,520(sp) - 800008f8: 21813023 sd s8,512(sp) - 800008fc: ffe6 sd s9,504(sp) - 800008fe: f7ee sd s11,488(sp) - 80000900: f982 sd zero,240(sp) - 80000902: d582 sw zero,232(sp) - 80000904: f1d2 sd s4,224(sp) - 80000906: 8d52 mv s10,s4 - 80000908: f802 sd zero,48(sp) - 8000090a: f082 sd zero,96(sp) - 8000090c: f882 sd zero,112(sp) - 8000090e: e502 sd zero,136(sp) - 80000910: f482 sd zero,104(sp) - 80000912: ec02 sd zero,24(sp) - 80000914: 499d li s3,7 - 80000916: 4441 li s0,16 - 80000918: 8ada mv s5,s6 - 8000091a: e826 sd s1,16(sp) - 8000091c: 000ac683 lbu a3,0(s5) - 80000920: 8b56 mv s6,s5 - 80000922: fdb68713 addi a4,a3,-37 - 80000926: 00e03733 snez a4,a4 - 8000092a: 00d037b3 snez a5,a3 - 8000092e: 8ff9 and a5,a5,a4 - 80000930: c3a9 beqz a5,80000972 <_vfprintf_r+0x110> - 80000932: 001b4683 lbu a3,1(s6) - 80000936: 0b05 addi s6,s6,1 - 80000938: fdb68713 addi a4,a3,-37 - 8000093c: 00e03733 snez a4,a4 - 80000940: 00d037b3 snez a5,a3 - 80000944: 8ff9 and a5,a5,a4 - 80000946: f7f5 bnez a5,80000932 <_vfprintf_r+0xd0> - 80000948: 415b0bbb subw s7,s6,s5 - 8000094c: 020b8363 beqz s7,80000972 <_vfprintf_r+0x110> - 80000950: 774e ld a4,240(sp) - 80000952: 57ae lw a5,232(sp) - 80000954: 015d3023 sd s5,0(s10) - 80000958: 975e add a4,a4,s7 - 8000095a: 2785 addiw a5,a5,1 - 8000095c: 017d3423 sd s7,8(s10) - 80000960: f9ba sd a4,240(sp) - 80000962: d5be sw a5,232(sp) - 80000964: 0d41 addi s10,s10,16 - 80000966: 18f9c863 blt s3,a5,80000af6 <_vfprintf_r+0x294> - 8000096a: 67e2 ld a5,24(sp) - 8000096c: 017787bb addw a5,a5,s7 - 80000970: ec3e sd a5,24(sp) - 80000972: e299 bnez a3,80000978 <_vfprintf_r+0x116> - 80000974: 3d20106f j 80001d46 <_vfprintf_r+0x14e4> - 80000978: 001b4e03 lbu t3,1(s6) - 8000097c: 001b0a93 addi s5,s6,1 - 80000980: 0a0103a3 sb zero,167(sp) - 80000984: 4b81 li s7,0 - 80000986: 4901 li s2,0 - 80000988: 05a00b13 li s6,90 - 8000098c: 54fd li s1,-1 - 8000098e: 0a85 addi s5,s5,1 - 80000990: 000e0c1b sext.w s8,t3 - 80000994: fe0c079b addiw a5,s8,-32 - 80000998: 04fb6763 bltu s6,a5,800009e6 <_vfprintf_r+0x184> - 8000099c: 02079713 slli a4,a5,0x20 - 800009a0: 01e75793 srli a5,a4,0x1e - 800009a4: 00009717 auipc a4,0x9 - 800009a8: aa470713 addi a4,a4,-1372 # 80009448 <__clzdi2+0x46e> - 800009ac: 97ba add a5,a5,a4 - 800009ae: 439c lw a5,0(a5) - 800009b0: 97ba add a5,a5,a4 - 800009b2: 8782 jr a5 - 800009b4: 4b81 li s7,0 - 800009b6: 46a5 li a3,9 - 800009b8: 002b979b slliw a5,s7,0x2 - 800009bc: 0a85 addi s5,s5,1 - 800009be: 01778bbb addw s7,a5,s7 - 800009c2: fffac783 lbu a5,-1(s5) - 800009c6: fd0c0c1b addiw s8,s8,-48 - 800009ca: 001b9b9b slliw s7,s7,0x1 - 800009ce: fd07871b addiw a4,a5,-48 - 800009d2: 017c0bbb addw s7,s8,s7 - 800009d6: 00078c1b sext.w s8,a5 - 800009da: fce6ffe3 bgeu a3,a4,800009b8 <_vfprintf_r+0x156> - 800009de: fe0c079b addiw a5,s8,-32 - 800009e2: fafb7de3 bgeu s6,a5,8000099c <_vfprintf_r+0x13a> - 800009e6: 000c1463 bnez s8,800009ee <_vfprintf_r+0x18c> - 800009ea: 35c0106f j 80001d46 <_vfprintf_r+0x14e4> - 800009ee: 4c85 li s9,1 - 800009f0: 0f810c23 sb s8,248(sp) - 800009f4: 0a0103a3 sb zero,167(sp) - 800009f8: 8866 mv a6,s9 - 800009fa: f402 sd zero,40(sp) - 800009fc: 4301 li t1,0 - 800009fe: e082 sd zero,64(sp) - 80000a00: e482 sd zero,72(sp) - 80000a02: fc02 sd zero,56(sp) - 80000a04: 19bc addi a5,sp,248 - 80000a06: 7dce ld s11,240(sp) - 80000a08: 08497493 andi s1,s2,132 - 80000a0c: 86ee mv a3,s11 - 80000a0e: 54048463 beqz s1,80000f56 <_vfprintf_r+0x6f4> - 80000a12: 0a714703 lbu a4,167(sp) - 80000a16: c329 beqz a4,80000a58 <_vfprintf_r+0x1f6> - 80000a18: 562e lw a2,232(sp) - 80000a1a: 4b01 li s6,0 - 80000a1c: 0a710693 addi a3,sp,167 - 80000a20: 00dd3023 sd a3,0(s10) - 80000a24: 0d85 addi s11,s11,1 - 80000a26: 2605 addiw a2,a2,1 # 2001 - 80000a28: 4685 li a3,1 - 80000a2a: 00dd3423 sd a3,8(s10) - 80000a2e: f9ee sd s11,240(sp) - 80000a30: d5b2 sw a2,232(sp) - 80000a32: 0d41 addi s10,s10,16 - 80000a34: 3cc9cb63 blt s3,a2,80000e0a <_vfprintf_r+0x5a8> - 80000a38: 020b0063 beqz s6,80000a58 <_vfprintf_r+0x1f6> - 80000a3c: 562e lw a2,232(sp) - 80000a3e: 1138 addi a4,sp,168 - 80000a40: 00ed3023 sd a4,0(s10) - 80000a44: 0d89 addi s11,s11,2 - 80000a46: 2605 addiw a2,a2,1 - 80000a48: 4709 li a4,2 - 80000a4a: 00ed3423 sd a4,8(s10) - 80000a4e: f9ee sd s11,240(sp) - 80000a50: d5b2 sw a2,232(sp) - 80000a52: 0d41 addi s10,s10,16 - 80000a54: 3ac9c9e3 blt s3,a2,80001606 <_vfprintf_r+0xda4> - 80000a58: 08000713 li a4,128 - 80000a5c: 28e488e3 beq s1,a4,800014ec <_vfprintf_r+0xc8a> - 80000a60: 41930b3b subw s6,t1,s9 - 80000a64: 51604563 bgtz s6,80000f6e <_vfprintf_r+0x70c> - 80000a68: 10097713 andi a4,s2,256 - 80000a6c: 5a071663 bnez a4,80001018 <_vfprintf_r+0x7b6> - 80000a70: 00fd3023 sd a5,0(s10) - 80000a74: 57ae lw a5,232(sp) - 80000a76: 9de6 add s11,s11,s9 - 80000a78: f9ee sd s11,240(sp) - 80000a7a: 2785 addiw a5,a5,1 - 80000a7c: 019d3423 sd s9,8(s10) - 80000a80: d5be sw a5,232(sp) - 80000a82: 44f9c163 blt s3,a5,80000ec4 <_vfprintf_r+0x662> - 80000a86: 0d41 addi s10,s10,16 - 80000a88: 00497f93 andi t6,s2,4 - 80000a8c: 000f8663 beqz t6,80000a98 <_vfprintf_r+0x236> - 80000a90: 410b8b3b subw s6,s7,a6 - 80000a94: 396049e3 bgtz s6,80001626 <_vfprintf_r+0xdc4> - 80000a98: 87de mv a5,s7 - 80000a9a: 010bd363 bge s7,a6,80000aa0 <_vfprintf_r+0x23e> - 80000a9e: 87c2 mv a5,a6 - 80000aa0: 6762 ld a4,24(sp) - 80000aa2: 9fb9 addw a5,a5,a4 - 80000aa4: ec3e sd a5,24(sp) - 80000aa6: 300d91e3 bnez s11,800015a8 <_vfprintf_r+0xd46> - 80000aaa: 77a2 ld a5,40(sp) - 80000aac: d582 sw zero,232(sp) - 80000aae: c789 beqz a5,80000ab8 <_vfprintf_r+0x256> - 80000ab0: 75a2 ld a1,40(sp) - 80000ab2: 6522 ld a0,8(sp) - 80000ab4: 2c4030ef jal 80003d78 <_free_r> - 80000ab8: 8d52 mv s10,s4 - 80000aba: b58d j 8000091c <_vfprintf_r+0xba> - 80000abc: 000ace03 lbu t3,0(s5) - 80000ac0: 01096913 ori s2,s2,16 - 80000ac4: b5e9 j 8000098e <_vfprintf_r+0x12c> - 80000ac6: 6522 ld a0,8(sp) - 80000ac8: 85a6 mv a1,s1 - 80000aca: 6ee020ef jal 800031b8 <__swsetup_r> - 80000ace: e521 bnez a0,80000b16 <_vfprintf_r+0x2b4> - 80000ad0: 01049783 lh a5,16(s1) - 80000ad4: 4729 li a4,10 - 80000ad6: 8be9 andi a5,a5,26 - 80000ad8: e0e793e3 bne a5,a4,800008de <_vfprintf_r+0x7c> - 80000adc: 01249783 lh a5,18(s1) - 80000ae0: de07cfe3 bltz a5,800008de <_vfprintf_r+0x7c> - 80000ae4: 7682 ld a3,32(sp) - 80000ae6: 6522 ld a0,8(sp) - 80000ae8: 865a mv a2,s6 - 80000aea: 85a6 mv a1,s1 - 80000aec: 5ff010ef jal 800028ea <__sbprintf> - 80000af0: ec2a sd a0,24(sp) - 80000af2: 2fd0006f j 800015ee <_vfprintf_r+0xd8c> - 80000af6: 65c2 ld a1,16(sp) - 80000af8: 6522 ld a0,8(sp) - 80000afa: 1190 addi a2,sp,224 - 80000afc: 681010ef jal 8000297c <__sprint_r> - 80000b00: c119 beqz a0,80000b06 <_vfprintf_r+0x2a4> - 80000b02: 3ad0106f j 800026ae <_vfprintf_r+0x1e4c> - 80000b06: 000b4683 lbu a3,0(s6) - 80000b0a: 8d52 mv s10,s4 - 80000b0c: bdb9 j 8000096a <_vfprintf_r+0x108> - 80000b0e: 03271693 slli a3,a4,0x32 - 80000b12: da06dbe3 bgez a3,800008c8 <_vfprintf_r+0x66> - 80000b16: 57fd li a5,-1 - 80000b18: ec3e sd a5,24(sp) - 80000b1a: 2d50006f j 800015ee <_vfprintf_r+0xd8c> - 80000b1e: 00897793 andi a5,s2,8 - 80000b22: 8326 mv t1,s1 - 80000b24: 66079fe3 bnez a5,800019a2 <_vfprintf_r+0x1140> - 80000b28: f426 sd s1,40(sp) - 80000b2a: 7482 ld s1,32(sp) - 80000b2c: 2088 fld fa0,0(s1) - 80000b2e: 3ea080ef jal 80008f18 <__extenddftf2> - 80000b32: 7322 ld t1,40(sp) - 80000b34: 00848793 addi a5,s1,8 - 80000b38: f03e sd a5,32(sp) - 80000b3a: e9aa sd a0,208(sp) - 80000b3c: 0988 addi a0,sp,208 - 80000b3e: f41a sd t1,40(sp) - 80000b40: edae sd a1,216(sp) - 80000b42: 5de030ef jal 80004120 <_ldcheck> - 80000b46: d92a sw a0,176(sp) - 80000b48: 4789 li a5,2 - 80000b4a: 7322 ld t1,40(sp) - 80000b4c: 00f51463 bne a0,a5,80000b54 <_vfprintf_r+0x2f2> - 80000b50: 1c20106f j 80001d12 <_vfprintf_r+0x14b0> - 80000b54: 4785 li a5,1 - 80000b56: 00f51463 bne a0,a5,80000b5e <_vfprintf_r+0x2fc> - 80000b5a: 2c40106f j 80001e1e <_vfprintf_r+0x15bc> - 80000b5e: fdfc7713 andi a4,s8,-33 - 80000b62: f43a sd a4,40(sp) - 80000b64: 04100793 li a5,65 - 80000b68: 00f70463 beq a4,a5,80000b70 <_vfprintf_r+0x30e> - 80000b6c: 2ec0106f j 80001e58 <_vfprintf_r+0x15f6> - 80000b70: 03000793 li a5,48 - 80000b74: 0af10423 sb a5,168(sp) - 80000b78: 06100713 li a4,97 - 80000b7c: 05800793 li a5,88 - 80000b80: 00ec1463 bne s8,a4,80000b88 <_vfprintf_r+0x326> - 80000b84: 6f60106f j 8000227a <_vfprintf_r+0x1a18> - 80000b88: 0af104a3 sb a5,169(sp) - 80000b8c: 06300793 li a5,99 - 80000b90: 0067d463 bge a5,t1,80000b98 <_vfprintf_r+0x336> - 80000b94: 6ee0106f j 80002282 <_vfprintf_r+0x1a20> - 80000b98: 65ee ld a1,216(sp) - 80000b9a: 654e ld a0,208(sp) - 80000b9c: 0005d463 bgez a1,80000ba4 <_vfprintf_r+0x342> - 80000ba0: 2db0106f j 8000267a <_vfprintf_r+0x1e18> - 80000ba4: 4d81 li s11,0 - 80000ba6: f402 sd zero,40(sp) - 80000ba8: 19bc addi a5,sp,248 - 80000baa: 1910 addi a2,sp,176 - 80000bac: fc3e sd a5,56(sp) - 80000bae: f81a sd t1,48(sp) - 80000bb0: 060030ef jal 80003c10 - 80000bb4: 00009717 auipc a4,0x9 - 80000bb8: a2c70713 addi a4,a4,-1492 # 800095e0 - 80000bbc: 6310 ld a2,0(a4) - 80000bbe: 6714 ld a3,8(a4) - 80000bc0: 00296913 ori s2,s2,2 - 80000bc4: 402070ef jal 80007fc6 <__multf3> - 80000bc8: 4601 li a2,0 - 80000bca: 4681 li a3,0 - 80000bcc: 8caa mv s9,a0 - 80000bce: e4ae sd a1,72(sp) - 80000bd0: 1f0070ef jal 80007dc0 <__eqtf2> - 80000bd4: 7342 ld t1,48(sp) - 80000bd6: 77e2 ld a5,56(sp) - 80000bd8: e119 bnez a0,80000bde <_vfprintf_r+0x37c> - 80000bda: 4705 li a4,1 - 80000bdc: d93a sw a4,176(sp) - 80000bde: 00008697 auipc a3,0x8 - 80000be2: 6f268693 addi a3,a3,1778 # 800092d0 <__clzdi2+0x2f6> - 80000be6: 06100713 li a4,97 - 80000bea: e0b6 sd a3,64(sp) - 80000bec: 00ec1763 bne s8,a4,80000bfa <_vfprintf_r+0x398> - 80000bf0: 00008717 auipc a4,0x8 - 80000bf4: 6c870713 addi a4,a4,1736 # 800092b8 <__clzdi2+0x2de> - 80000bf8: e0ba sd a4,64(sp) - 80000bfa: 00009717 auipc a4,0x9 - 80000bfe: 9f670713 addi a4,a4,-1546 # 800095f0 - 80000c02: 6314 ld a3,0(a4) - 80000c04: 6718 ld a4,8(a4) - 80000c06: e14a sd s2,128(sp) - 80000c08: e956 sd s5,144(sp) - 80000c0a: 6486 ld s1,64(sp) - 80000c0c: 6926 ld s2,72(sp) - 80000c0e: f836 sd a3,48(sp) - 80000c10: fc3a sd a4,56(sp) - 80000c12: 8b3e mv s6,a5 - 80000c14: f0de sd s7,96(sp) - 80000c16: fcbe sd a5,120(sp) - 80000c18: 8a9a mv s5,t1 - 80000c1a: a819 j 80000c30 <_vfprintf_r+0x3ce> - 80000c1c: 4601 li a2,0 - 80000c1e: 4681 li a3,0 - 80000c20: fffa8b9b addiw s7,s5,-1 - 80000c24: 19c070ef jal 80007dc0 <__eqtf2> - 80000c28: e119 bnez a0,80000c2e <_vfprintf_r+0x3cc> - 80000c2a: 32d0106f j 80002756 <_vfprintf_r+0x1ef4> - 80000c2e: 8ade mv s5,s7 - 80000c30: 7642 ld a2,48(sp) - 80000c32: 76e2 ld a3,56(sp) - 80000c34: 8566 mv a0,s9 - 80000c36: 85ca mv a1,s2 - 80000c38: 38e070ef jal 80007fc6 <__multf3> - 80000c3c: 892e mv s2,a1 - 80000c3e: 8caa mv s9,a0 - 80000c40: 1f4080ef jal 80008e34 <__fixtfsi> - 80000c44: 00050b9b sext.w s7,a0 - 80000c48: 855e mv a0,s7 - 80000c4a: 27c080ef jal 80008ec6 <__floatsitf> - 80000c4e: 86ae mv a3,a1 - 80000c50: 862a mv a2,a0 - 80000c52: 85ca mv a1,s2 - 80000c54: 8566 mv a0,s9 - 80000c56: 183070ef jal 800085d8 <__subtf3> - 80000c5a: 017486b3 add a3,s1,s7 - 80000c5e: 0006c683 lbu a3,0(a3) - 80000c62: 885a mv a6,s6 - 80000c64: 8caa mv s9,a0 - 80000c66: 00db0023 sb a3,0(s6) - 80000c6a: 0b05 addi s6,s6,1 - 80000c6c: 892e mv s2,a1 - 80000c6e: fa0a97e3 bnez s5,80000c1c <_vfprintf_r+0x3ba> - 80000c72: 00009697 auipc a3,0x9 - 80000c76: 98e68693 addi a3,a3,-1650 # 80009600 - 80000c7a: 77e6 ld a5,120(sp) - 80000c7c: 6290 ld a2,0(a3) - 80000c7e: 6694 ld a3,8(a3) - 80000c80: fc3e sd a5,56(sp) - 80000c82: f842 sd a6,48(sp) - 80000c84: 84de mv s1,s7 - 80000c86: e4ae sd a1,72(sp) - 80000c88: 7b86 ld s7,96(sp) - 80000c8a: fcb2 sd a2,120(sp) - 80000c8c: f0b6 sd a3,96(sp) - 80000c8e: 1cc070ef jal 80007e5a <__getf2> - 80000c92: 6aca ld s5,144(sp) - 80000c94: 690a ld s2,128(sp) - 80000c96: 7842 ld a6,48(sp) - 80000c98: 77e2 ld a5,56(sp) - 80000c9a: 02a04063 bgtz a0,80000cba <_vfprintf_r+0x458> - 80000c9e: 7666 ld a2,120(sp) - 80000ca0: 7686 ld a3,96(sp) - 80000ca2: 65a6 ld a1,72(sp) - 80000ca4: 8566 mv a0,s9 - 80000ca6: f83e sd a5,48(sp) - 80000ca8: fc42 sd a6,56(sp) - 80000caa: 116070ef jal 80007dc0 <__eqtf2> - 80000cae: 77c2 ld a5,48(sp) - 80000cb0: e531 bnez a0,80000cfc <_vfprintf_r+0x49a> - 80000cb2: 0014f713 andi a4,s1,1 - 80000cb6: 7862 ld a6,56(sp) - 80000cb8: c331 beqz a4,80000cfc <_vfprintf_r+0x49a> - 80000cba: 6706 ld a4,64(sp) - 80000cbc: e5c2 sd a6,200(sp) - 80000cbe: fffb4683 lbu a3,-1(s6) - 80000cc2: 00f74603 lbu a2,15(a4) - 80000cc6: 875a mv a4,s6 - 80000cc8: 00d61e63 bne a2,a3,80000ce4 <_vfprintf_r+0x482> - 80000ccc: 03000593 li a1,48 - 80000cd0: feb70fa3 sb a1,-1(a4) - 80000cd4: 672e ld a4,200(sp) - 80000cd6: fff70693 addi a3,a4,-1 - 80000cda: e5b6 sd a3,200(sp) - 80000cdc: fff74683 lbu a3,-1(a4) - 80000ce0: fec688e3 beq a3,a2,80000cd0 <_vfprintf_r+0x46e> - 80000ce4: 0016861b addiw a2,a3,1 - 80000ce8: 03900593 li a1,57 - 80000cec: 0ff67613 zext.b a2,a2 - 80000cf0: 00b69463 bne a3,a1,80000cf8 <_vfprintf_r+0x496> - 80000cf4: 60c0106f j 80002300 <_vfprintf_r+0x1a9e> - 80000cf8: fec70fa3 sb a2,-1(a4) - 80000cfc: 56ca lw a3,176(sp) - 80000cfe: 00fc071b addiw a4,s8,15 - 80000d02: 0ae10c23 sb a4,184(sp) - 80000d06: 40fb063b subw a2,s6,a5 - 80000d0a: fff6871b addiw a4,a3,-1 - 80000d0e: d93a sw a4,176(sp) - 80000d10: f832 sd a2,48(sp) - 80000d12: 00075463 bgez a4,80000d1a <_vfprintf_r+0x4b8> - 80000d16: 59e0106f j 800022b4 <_vfprintf_r+0x1a52> - 80000d1a: 02b00693 li a3,43 - 80000d1e: 0ad10ca3 sb a3,185(sp) - 80000d22: 46a5 li a3,9 - 80000d24: 00e6c463 blt a3,a4,80000d2c <_vfprintf_r+0x4ca> - 80000d28: 5a20106f j 800022ca <_vfprintf_r+0x1a68> - 80000d2c: 0c710313 addi t1,sp,199 - 80000d30: 666668b7 lui a7,0x66666 - 80000d34: 851a mv a0,t1 - 80000d36: 66788893 addi a7,a7,1639 # 66666667 <__dtim_size+0x66566667> - 80000d3a: 06300293 li t0,99 - 80000d3e: 031706b3 mul a3,a4,a7 - 80000d42: 41f7561b sraiw a2,a4,0x1f - 80000d46: 883a mv a6,a4 - 80000d48: 85aa mv a1,a0 - 80000d4a: 157d addi a0,a0,-1 - 80000d4c: 9689 srai a3,a3,0x22 - 80000d4e: 9e91 subw a3,a3,a2 - 80000d50: 0026961b slliw a2,a3,0x2 - 80000d54: 9e35 addw a2,a2,a3 - 80000d56: 0016161b slliw a2,a2,0x1 - 80000d5a: 9f11 subw a4,a4,a2 - 80000d5c: 0307071b addiw a4,a4,48 - 80000d60: fee58fa3 sb a4,-1(a1) # 10014fff <__dtim_size+0xff14fff> - 80000d64: 8736 mv a4,a3 - 80000d66: fd02cce3 blt t0,a6,80000d3e <_vfprintf_r+0x4dc> - 80000d6a: 0306871b addiw a4,a3,48 - 80000d6e: fee50fa3 sb a4,-1(a0) - 80000d72: ffe58713 addi a4,a1,-2 - 80000d76: 00676463 bltu a4,t1,80000d7e <_vfprintf_r+0x51c> - 80000d7a: 2f10106f j 8000286a <_vfprintf_r+0x2008> - 80000d7e: 0ba10613 addi a2,sp,186 - 80000d82: 86b2 mv a3,a2 - 80000d84: 00074503 lbu a0,0(a4) - 80000d88: 0705 addi a4,a4,1 - 80000d8a: 0685 addi a3,a3,1 - 80000d8c: fea68fa3 sb a0,-1(a3) - 80000d90: fe671ae3 bne a4,t1,80000d84 <_vfprintf_r+0x522> - 80000d94: 9732 add a4,a4,a2 - 80000d96: 0709 addi a4,a4,2 - 80000d98: 8f0d sub a4,a4,a1 - 80000d9a: 1934 addi a3,sp,184 - 80000d9c: 9f15 subw a4,a4,a3 - 80000d9e: f0ba sd a4,96(sp) - 80000da0: 7642 ld a2,48(sp) - 80000da2: 7706 ld a4,96(sp) - 80000da4: 4685 li a3,1 - 80000da6: 9f31 addw a4,a4,a2 - 80000da8: 8cba mv s9,a4 - 80000daa: 00c6c463 blt a3,a2,80000db2 <_vfprintf_r+0x550> - 80000dae: 0bf0106f j 8000266c <_vfprintf_r+0x1e0a> - 80000db2: 66c6 ld a3,80(sp) - 80000db4: 00e68cbb addw s9,a3,a4 - 80000db8: bff97713 andi a4,s2,-1025 - 80000dbc: 10076713 ori a4,a4,256 - 80000dc0: fcba sd a4,120(sp) - 80000dc2: 000c881b sext.w a6,s9 - 80000dc6: 000cd363 bgez s9,80000dcc <_vfprintf_r+0x56a> - 80000dca: 4801 li a6,0 - 80000dcc: 00297613 andi a2,s2,2 - 80000dd0: 3c0d9863 bnez s11,800011a0 <_vfprintf_r+0x93e> - 80000dd4: e082 sd zero,64(sp) - 80000dd6: e482 sd zero,72(sp) - 80000dd8: fc02 sd zero,56(sp) - 80000dda: 0a714583 lbu a1,167(sp) - 80000dde: 7966 ld s2,120(sp) - 80000de0: 4301 li t1,0 - 80000de2: 3c059863 bnez a1,800011b2 <_vfprintf_r+0x950> - 80000de6: c20600e3 beqz a2,80000a06 <_vfprintf_r+0x1a4> - 80000dea: 7dce ld s11,240(sp) - 80000dec: 562e lw a2,232(sp) - 80000dee: 08497493 andi s1,s2,132 - 80000df2: 2809 addiw a6,a6,2 - 80000df4: 86ee mv a3,s11 - 80000df6: 8732 mv a4,a2 - 80000df8: e489 bnez s1,80000e02 <_vfprintf_r+0x5a0> - 80000dfa: 410b8b3b subw s6,s7,a6 - 80000dfe: 3b604c63 bgtz s6,800011b6 <_vfprintf_r+0x954> - 80000e02: c2058ee3 beqz a1,80000a3e <_vfprintf_r+0x1dc> - 80000e06: 4b09 li s6,2 - 80000e08: b911 j 80000a1c <_vfprintf_r+0x1ba> - 80000e0a: 65c2 ld a1,16(sp) - 80000e0c: 6522 ld a0,8(sp) - 80000e0e: 1190 addi a2,sp,224 - 80000e10: e942 sd a6,144(sp) - 80000e12: e13e sd a5,128(sp) - 80000e14: fc9a sd t1,120(sp) - 80000e16: 367010ef jal 8000297c <__sprint_r> - 80000e1a: 78051e63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80000e1e: 7dce ld s11,240(sp) - 80000e20: 684a ld a6,144(sp) - 80000e22: 678a ld a5,128(sp) - 80000e24: 7366 ld t1,120(sp) - 80000e26: 8d52 mv s10,s4 - 80000e28: b901 j 80000a38 <_vfprintf_r+0x1d6> - 80000e2a: 5b2e lw s6,232(sp) - 80000e2c: 7642 ld a2,48(sp) - 80000e2e: 4685 li a3,1 - 80000e30: 2b05 addiw s6,s6,1 - 80000e32: 9db6 add s11,s11,a3 - 80000e34: 875a mv a4,s6 - 80000e36: 010d0c13 addi s8,s10,16 - 80000e3a: 1ec6d2e3 bge a3,a2,8000181e <_vfprintf_r+0xfbc> - 80000e3e: 4685 li a3,1 - 80000e40: 00dd3423 sd a3,8(s10) - 80000e44: 00fd3023 sd a5,0(s10) - 80000e48: f9ee sd s11,240(sp) - 80000e4a: d5ba sw a4,232(sp) - 80000e4c: 469d li a3,7 - 80000e4e: 56e6cce3 blt a3,a4,80001bc6 <_vfprintf_r+0x1364> - 80000e52: 6746 ld a4,80(sp) - 80000e54: 66e6 ld a3,88(sp) - 80000e56: 2b05 addiw s6,s6,1 - 80000e58: 9dba add s11,s11,a4 - 80000e5a: 00ec3423 sd a4,8(s8) - 80000e5e: 00dc3023 sd a3,0(s8) - 80000e62: f9ee sd s11,240(sp) - 80000e64: d5da sw s6,232(sp) - 80000e66: 471d li a4,7 - 80000e68: 0c41 addi s8,s8,16 - 80000e6a: 53674ee3 blt a4,s6,80001ba6 <_vfprintf_r+0x1344> - 80000e6e: e0be sd a5,64(sp) - 80000e70: 654e ld a0,208(sp) - 80000e72: 77c2 ld a5,48(sp) - 80000e74: 65ee ld a1,216(sp) - 80000e76: 4601 li a2,0 - 80000e78: 4681 li a3,0 - 80000e7a: fc42 sd a6,56(sp) - 80000e7c: fff78c9b addiw s9,a5,-1 - 80000e80: 741060ef jal 80007dc0 <__eqtf2> - 80000e84: 7862 ld a6,56(sp) - 80000e86: 1c0507e3 beqz a0,80001854 <_vfprintf_r+0xff2> - 80000e8a: 6786 ld a5,64(sp) - 80000e8c: 2b05 addiw s6,s6,1 - 80000e8e: 9de6 add s11,s11,s9 - 80000e90: 0785 addi a5,a5,1 - 80000e92: d5da sw s6,232(sp) - 80000e94: f9ee sd s11,240(sp) - 80000e96: 00fc3023 sd a5,0(s8) - 80000e9a: 019c3423 sd s9,8(s8) - 80000e9e: 479d li a5,7 - 80000ea0: 1967cce3 blt a5,s6,80001838 <_vfprintf_r+0xfd6> - 80000ea4: 0c41 addi s8,s8,16 - 80000ea6: 7706 ld a4,96(sp) - 80000ea8: 193c addi a5,sp,184 - 80000eaa: 2b05 addiw s6,s6,1 - 80000eac: 9dba add s11,s11,a4 - 80000eae: 00fc3023 sd a5,0(s8) - 80000eb2: f9ee sd s11,240(sp) - 80000eb4: d5da sw s6,232(sp) - 80000eb6: 00ec3423 sd a4,8(s8) - 80000eba: 479d li a5,7 - 80000ebc: 010c0d13 addi s10,s8,16 - 80000ec0: bd67d4e3 bge a5,s6,80000a88 <_vfprintf_r+0x226> - 80000ec4: 65c2 ld a1,16(sp) - 80000ec6: 6522 ld a0,8(sp) - 80000ec8: 1190 addi a2,sp,224 - 80000eca: fc42 sd a6,56(sp) - 80000ecc: 2b1010ef jal 8000297c <__sprint_r> - 80000ed0: 6e051363 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80000ed4: 7dce ld s11,240(sp) - 80000ed6: 7862 ld a6,56(sp) - 80000ed8: 8d52 mv s10,s4 - 80000eda: b67d j 80000a88 <_vfprintf_r+0x226> - 80000edc: 7702 ld a4,32(sp) - 80000ede: 4c85 li s9,1 - 80000ee0: 0a0103a3 sb zero,167(sp) - 80000ee4: 431c lw a5,0(a4) - 80000ee6: 0ef10c23 sb a5,248(sp) - 80000eea: 00870793 addi a5,a4,8 - 80000eee: f03e sd a5,32(sp) - 80000ef0: b621 j 800009f8 <_vfprintf_r+0x196> - 80000ef2: 7702 ld a4,32(sp) - 80000ef4: 0a0103a3 sb zero,167(sp) - 80000ef8: 8326 mv t1,s1 - 80000efa: 631c ld a5,0(a4) - 80000efc: 00870493 addi s1,a4,8 - 80000f00: 3c0789e3 beqz a5,80001ad2 <_vfprintf_r+0x1270> - 80000f04: 66034de3 bltz t1,80001d7e <_vfprintf_r+0x151c> - 80000f08: 861a mv a2,t1 - 80000f0a: 853e mv a0,a5 - 80000f0c: 4581 li a1,0 - 80000f0e: fc1a sd t1,56(sp) - 80000f10: f03e sd a5,32(sp) - 80000f12: 3a9020ef jal 80003aba - 80000f16: f42a sd a0,40(sp) - 80000f18: 0a714703 lbu a4,167(sp) - 80000f1c: 7782 ld a5,32(sp) - 80000f1e: 7362 ld t1,56(sp) - 80000f20: e119 bnez a0,80000f26 <_vfprintf_r+0x6c4> - 80000f22: 56a0106f j 8000248c <_vfprintf_r+0x1c2a> - 80000f26: 40f50cbb subw s9,a0,a5 - 80000f2a: 86e6 mv a3,s9 - 80000f2c: 000cd463 bgez s9,80000f34 <_vfprintf_r+0x6d2> - 80000f30: 32c0106f j 8000225c <_vfprintf_r+0x19fa> - 80000f34: 0006881b sext.w a6,a3 - 80000f38: c319 beqz a4,80000f3e <_vfprintf_r+0x6dc> - 80000f3a: 2960106f j 800021d0 <_vfprintf_r+0x196e> - 80000f3e: f026 sd s1,32(sp) - 80000f40: 7dce ld s11,240(sp) - 80000f42: f402 sd zero,40(sp) - 80000f44: e082 sd zero,64(sp) - 80000f46: e482 sd zero,72(sp) - 80000f48: fc02 sd zero,56(sp) - 80000f4a: 08497493 andi s1,s2,132 - 80000f4e: 4301 li t1,0 - 80000f50: 86ee mv a3,s11 - 80000f52: ac0490e3 bnez s1,80000a12 <_vfprintf_r+0x1b0> - 80000f56: 410b8b3b subw s6,s7,a6 - 80000f5a: 0b6047e3 bgtz s6,80001808 <_vfprintf_r+0xfa6> - 80000f5e: 0a714703 lbu a4,167(sp) - 80000f62: aa071be3 bnez a4,80000a18 <_vfprintf_r+0x1b6> - 80000f66: 41930b3b subw s6,t1,s9 - 80000f6a: af605fe3 blez s6,80000a68 <_vfprintf_r+0x206> - 80000f6e: 56ae lw a3,232(sp) - 80000f70: 00008497 auipc s1,0x8 - 80000f74: 64848493 addi s1,s1,1608 # 800095b8 - 80000f78: 07645363 bge s0,s6,80000fde <_vfprintf_r+0x77c> - 80000f7c: 876e mv a4,s11 - 80000f7e: 84da mv s1,s6 - 80000f80: 8dd6 mv s11,s5 - 80000f82: 8b4a mv s6,s2 - 80000f84: 8abe mv s5,a5 - 80000f86: 00008917 auipc s2,0x8 - 80000f8a: 63290913 addi s2,s2,1586 # 800095b8 - 80000f8e: 87ea mv a5,s10 - 80000f90: 8d66 mv s10,s9 - 80000f92: 8cc2 mv s9,a6 - 80000f94: a021 j 80000f9c <_vfprintf_r+0x73a> - 80000f96: 34c1 addiw s1,s1,-16 - 80000f98: 02945963 bge s0,s1,80000fca <_vfprintf_r+0x768> - 80000f9c: 0741 addi a4,a4,16 - 80000f9e: 2685 addiw a3,a3,1 - 80000fa0: 0127b023 sd s2,0(a5) - 80000fa4: e780 sd s0,8(a5) - 80000fa6: f9ba sd a4,240(sp) - 80000fa8: d5b6 sw a3,232(sp) - 80000faa: 07c1 addi a5,a5,16 - 80000fac: fed9d5e3 bge s3,a3,80000f96 <_vfprintf_r+0x734> - 80000fb0: 65c2 ld a1,16(sp) - 80000fb2: 6522 ld a0,8(sp) - 80000fb4: 1190 addi a2,sp,224 - 80000fb6: 1c7010ef jal 8000297c <__sprint_r> - 80000fba: 5e051e63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80000fbe: 34c1 addiw s1,s1,-16 - 80000fc0: 774e ld a4,240(sp) - 80000fc2: 56ae lw a3,232(sp) - 80000fc4: 87d2 mv a5,s4 - 80000fc6: fc944be3 blt s0,s1,80000f9c <_vfprintf_r+0x73a> - 80000fca: 8866 mv a6,s9 - 80000fcc: 8cea mv s9,s10 - 80000fce: 8d3e mv s10,a5 - 80000fd0: 87d6 mv a5,s5 - 80000fd2: 8aee mv s5,s11 - 80000fd4: 8dba mv s11,a4 - 80000fd6: 874a mv a4,s2 - 80000fd8: 895a mv s2,s6 - 80000fda: 8b26 mv s6,s1 - 80000fdc: 84ba mv s1,a4 - 80000fde: 9dda add s11,s11,s6 - 80000fe0: 2685 addiw a3,a3,1 - 80000fe2: 009d3023 sd s1,0(s10) - 80000fe6: 016d3423 sd s6,8(s10) - 80000fea: f9ee sd s11,240(sp) - 80000fec: d5b6 sw a3,232(sp) - 80000fee: 471d li a4,7 - 80000ff0: 0d41 addi s10,s10,16 - 80000ff2: a6d75be3 bge a4,a3,80000a68 <_vfprintf_r+0x206> - 80000ff6: 65c2 ld a1,16(sp) - 80000ff8: 6522 ld a0,8(sp) - 80000ffa: 1190 addi a2,sp,224 - 80000ffc: e142 sd a6,128(sp) - 80000ffe: fcbe sd a5,120(sp) - 80001000: 17d010ef jal 8000297c <__sprint_r> - 80001004: 5a051963 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001008: 10097713 andi a4,s2,256 - 8000100c: 7dce ld s11,240(sp) - 8000100e: 680a ld a6,128(sp) - 80001010: 77e6 ld a5,120(sp) - 80001012: 8d52 mv s10,s4 - 80001014: a4070ee3 beqz a4,80000a70 <_vfprintf_r+0x20e> - 80001018: 06500713 li a4,101 - 8000101c: e18757e3 bge a4,s8,80000e2a <_vfprintf_r+0x5c8> - 80001020: 654e ld a0,208(sp) - 80001022: 65ee ld a1,216(sp) - 80001024: 4601 li a2,0 - 80001026: 4681 li a3,0 - 80001028: e142 sd a6,128(sp) - 8000102a: fcbe sd a5,120(sp) - 8000102c: 595060ef jal 80007dc0 <__eqtf2> - 80001030: 77e6 ld a5,120(sp) - 80001032: 680a ld a6,128(sp) - 80001034: 6c051063 bnez a0,800016f4 <_vfprintf_r+0xe92> - 80001038: 57ae lw a5,232(sp) - 8000103a: 00008717 auipc a4,0x8 - 8000103e: 2b670713 addi a4,a4,694 # 800092f0 <__clzdi2+0x316> - 80001042: 00ed3023 sd a4,0(s10) - 80001046: 0d85 addi s11,s11,1 - 80001048: 4705 li a4,1 - 8000104a: 2785 addiw a5,a5,1 - 8000104c: 00ed3423 sd a4,8(s10) - 80001050: f9ee sd s11,240(sp) - 80001052: d5be sw a5,232(sp) - 80001054: 471d li a4,7 - 80001056: 0d41 addi s10,s10,16 - 80001058: 46f74be3 blt a4,a5,80001cce <_vfprintf_r+0x146c> - 8000105c: 57ca lw a5,176(sp) - 8000105e: 7742 ld a4,48(sp) - 80001060: 04e7dbe3 bge a5,a4,800018b6 <_vfprintf_r+0x1054> - 80001064: 6746 ld a4,80(sp) - 80001066: 57ae lw a5,232(sp) - 80001068: 66e6 ld a3,88(sp) - 8000106a: 9dba add s11,s11,a4 - 8000106c: 2785 addiw a5,a5,1 - 8000106e: 00ed3423 sd a4,8(s10) - 80001072: 00dd3023 sd a3,0(s10) - 80001076: f9ee sd s11,240(sp) - 80001078: d5be sw a5,232(sp) - 8000107a: 471d li a4,7 - 8000107c: 0d41 addi s10,s10,16 - 8000107e: 1cf74fe3 blt a4,a5,80001a5c <_vfprintf_r+0x11fa> - 80001082: 77c2 ld a5,48(sp) - 80001084: fff78b1b addiw s6,a5,-1 - 80001088: a16050e3 blez s6,80000a88 <_vfprintf_r+0x226> - 8000108c: 4c41 li s8,16 - 8000108e: 57ae lw a5,232(sp) - 80001090: 016c4463 blt s8,s6,80001098 <_vfprintf_r+0x836> - 80001094: 2620106f j 800022f6 <_vfprintf_r+0x1a94> - 80001098: 876a mv a4,s10 - 8000109a: 84da mv s1,s6 - 8000109c: 8d56 mv s10,s5 - 8000109e: 4c9d li s9,7 - 800010a0: 8aca mv s5,s2 - 800010a2: 8b42 mv s6,a6 - 800010a4: 00008917 auipc s2,0x8 - 800010a8: 51490913 addi s2,s2,1300 # 800095b8 - 800010ac: a021 j 800010b4 <_vfprintf_r+0x852> - 800010ae: 34c1 addiw s1,s1,-16 - 800010b0: 429c5ce3 bge s8,s1,80001ce8 <_vfprintf_r+0x1486> - 800010b4: 0dc1 addi s11,s11,16 - 800010b6: 2785 addiw a5,a5,1 - 800010b8: 01273023 sd s2,0(a4) - 800010bc: 01873423 sd s8,8(a4) - 800010c0: f9ee sd s11,240(sp) - 800010c2: d5be sw a5,232(sp) - 800010c4: 0741 addi a4,a4,16 - 800010c6: fefcd4e3 bge s9,a5,800010ae <_vfprintf_r+0x84c> - 800010ca: 65c2 ld a1,16(sp) - 800010cc: 6522 ld a0,8(sp) - 800010ce: 1190 addi a2,sp,224 - 800010d0: 0ad010ef jal 8000297c <__sprint_r> - 800010d4: 4e051163 bnez a0,800015b6 <_vfprintf_r+0xd54> - 800010d8: 7dce ld s11,240(sp) - 800010da: 57ae lw a5,232(sp) - 800010dc: 8752 mv a4,s4 - 800010de: bfc1 j 800010ae <_vfprintf_r+0x84c> - 800010e0: 7702 ld a4,32(sp) - 800010e2: 02097793 andi a5,s2,32 - 800010e6: 8326 mv t1,s1 - 800010e8: 0721 addi a4,a4,8 - 800010ea: e3bd bnez a5,80001150 <_vfprintf_r+0x8ee> - 800010ec: 01097793 andi a5,s2,16 - 800010f0: c399 beqz a5,800010f6 <_vfprintf_r+0x894> - 800010f2: 43a0106f j 8000252c <_vfprintf_r+0x1cca> - 800010f6: 7682 ld a3,32(sp) - 800010f8: 04097793 andi a5,s2,64 - 800010fc: 0006ab03 lw s6,0(a3) - 80001100: 4e0780e3 beqz a5,80001de0 <_vfprintf_r+0x157e> - 80001104: 010b1b1b slliw s6,s6,0x10 - 80001108: 410b5b1b sraiw s6,s6,0x10 - 8000110c: f03a sd a4,32(sp) - 8000110e: 87da mv a5,s6 - 80001110: 0407c663 bltz a5,8000115c <_vfprintf_r+0x8fa> - 80001114: 04034e63 bltz t1,80001170 <_vfprintf_r+0x90e> - 80001118: 006b67b3 or a5,s6,t1 - 8000111c: f7f97913 andi s2,s2,-129 - 80001120: eba1 bnez a5,80001170 <_vfprintf_r+0x90e> - 80001122: 0a714803 lbu a6,167(sp) - 80001126: f402 sd zero,40(sp) - 80001128: 4c81 li s9,0 - 8000112a: 01003833 snez a6,a6 - 8000112e: 4301 li t1,0 - 80001130: e082 sd zero,64(sp) - 80001132: e482 sd zero,72(sp) - 80001134: fc02 sd zero,56(sp) - 80001136: 0afc addi a5,sp,348 - 80001138: b0f9 j 80000a06 <_vfprintf_r+0x1a4> - 8000113a: 02097793 andi a5,s2,32 - 8000113e: 8326 mv t1,s1 - 80001140: 01096f93 ori t6,s2,16 - 80001144: 06078fe3 beqz a5,800019c2 <_vfprintf_r+0x1160> - 80001148: 7782 ld a5,32(sp) - 8000114a: 897e mv s2,t6 - 8000114c: 00878713 addi a4,a5,8 - 80001150: 7782 ld a5,32(sp) - 80001152: f03a sd a4,32(sp) - 80001154: 639c ld a5,0(a5) - 80001156: 8b3e mv s6,a5 - 80001158: fa07dee3 bgez a5,80001114 <_vfprintf_r+0x8b2> - 8000115c: 02d00793 li a5,45 - 80001160: 0af103a3 sb a5,167(sp) - 80001164: 41600b33 neg s6,s6 - 80001168: 00034463 bltz t1,80001170 <_vfprintf_r+0x90e> - 8000116c: f7f97913 andi s2,s2,-129 - 80001170: 48a5 li a7,9 - 80001172: 7968e963 bltu a7,s6,80001904 <_vfprintf_r+0x10a2> - 80001176: 030b0b1b addiw s6,s6,48 - 8000117a: 15610da3 sb s6,347(sp) - 8000117e: 0003081b sext.w a6,t1 - 80001182: 04605ae3 blez t1,800019d6 <_vfprintf_r+0x1174> - 80001186: 0a714583 lbu a1,167(sp) - 8000118a: 4601 li a2,0 - 8000118c: f402 sd zero,40(sp) - 8000118e: 4c85 li s9,1 - 80001190: e082 sd zero,64(sp) - 80001192: e482 sd zero,72(sp) - 80001194: fc02 sd zero,56(sp) - 80001196: 15b10793 addi a5,sp,347 - 8000119a: c40586e3 beqz a1,80000de6 <_vfprintf_r+0x584> - 8000119e: a811 j 800011b2 <_vfprintf_r+0x950> - 800011a0: 7966 ld s2,120(sp) - 800011a2: 02d00593 li a1,45 - 800011a6: 0ab103a3 sb a1,167(sp) - 800011aa: 4301 li t1,0 - 800011ac: e082 sd zero,64(sp) - 800011ae: e482 sd zero,72(sp) - 800011b0: fc02 sd zero,56(sp) - 800011b2: 2805 addiw a6,a6,1 - 800011b4: b90d j 80000de6 <_vfprintf_r+0x584> - 800011b6: 4489 li s1,2 - 800011b8: 4dc1 li s11,16 - 800011ba: 863a mv a2,a4 - 800011bc: 85b6 mv a1,a3 - 800011be: 00008717 auipc a4,0x8 - 800011c2: 40a70713 addi a4,a4,1034 # 800095c8 - 800011c6: 076dd563 bge s11,s6,80001230 <_vfprintf_r+0x9ce> - 800011ca: e126 sd s1,128(sp) - 800011cc: e93e sd a5,144(sp) - 800011ce: 84da mv s1,s6 - 800011d0: 87ea mv a5,s10 - 800011d2: 469d li a3,7 - 800011d4: 8d56 mv s10,s5 - 800011d6: fc9a sd t1,120(sp) - 800011d8: 8aca mv s5,s2 - 800011da: 8b42 mv s6,a6 - 800011dc: 00008917 auipc s2,0x8 - 800011e0: 3ec90913 addi s2,s2,1004 # 800095c8 - 800011e4: a021 j 800011ec <_vfprintf_r+0x98a> - 800011e6: 34c1 addiw s1,s1,-16 - 800011e8: 029ddb63 bge s11,s1,8000121e <_vfprintf_r+0x9bc> - 800011ec: 05c1 addi a1,a1,16 - 800011ee: 2605 addiw a2,a2,1 - 800011f0: 0127b023 sd s2,0(a5) - 800011f4: 01b7b423 sd s11,8(a5) - 800011f8: f9ae sd a1,240(sp) - 800011fa: d5b2 sw a2,232(sp) - 800011fc: 07c1 addi a5,a5,16 - 800011fe: fec6d4e3 bge a3,a2,800011e6 <_vfprintf_r+0x984> - 80001202: 65c2 ld a1,16(sp) - 80001204: 6522 ld a0,8(sp) - 80001206: 1190 addi a2,sp,224 - 80001208: 774010ef jal 8000297c <__sprint_r> - 8000120c: 3a051563 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001210: 34c1 addiw s1,s1,-16 - 80001212: 75ce ld a1,240(sp) - 80001214: 562e lw a2,232(sp) - 80001216: 87d2 mv a5,s4 - 80001218: 469d li a3,7 - 8000121a: fc9dc9e3 blt s11,s1,800011ec <_vfprintf_r+0x98a> - 8000121e: 885a mv a6,s6 - 80001220: 874a mv a4,s2 - 80001222: 8b26 mv s6,s1 - 80001224: 8956 mv s2,s5 - 80001226: 7366 ld t1,120(sp) - 80001228: 8aea mv s5,s10 - 8000122a: 648a ld s1,128(sp) - 8000122c: 8d3e mv s10,a5 - 8000122e: 67ca ld a5,144(sp) - 80001230: 00bb0db3 add s11,s6,a1 - 80001234: 2605 addiw a2,a2,1 - 80001236: 00ed3023 sd a4,0(s10) - 8000123a: f9ee sd s11,240(sp) - 8000123c: d5b2 sw a2,232(sp) - 8000123e: 016d3423 sd s6,8(s10) - 80001242: 471d li a4,7 - 80001244: 1ac747e3 blt a4,a2,80001bf2 <_vfprintf_r+0x1390> - 80001248: 0a714703 lbu a4,167(sp) - 8000124c: 0d41 addi s10,s10,16 - 8000124e: 68071063 bnez a4,800018ce <_vfprintf_r+0x106c> - 80001252: 800487e3 beqz s1,80000a60 <_vfprintf_r+0x1fe> - 80001256: 4481 li s1,0 - 80001258: fe6ff06f j 80000a3e <_vfprintf_r+0x1dc> - 8000125c: 7782 ld a5,32(sp) - 8000125e: 0007ab83 lw s7,0(a5) - 80001262: 660bd063 bgez s7,800018c2 <_vfprintf_r+0x1060> - 80001266: 7782 ld a5,32(sp) - 80001268: 41700bbb negw s7,s7 - 8000126c: 07a1 addi a5,a5,8 - 8000126e: f03e sd a5,32(sp) - 80001270: 000ace03 lbu t3,0(s5) - 80001274: 00496913 ori s2,s2,4 - 80001278: f16ff06f j 8000098e <_vfprintf_r+0x12c> - 8000127c: 7702 ld a4,32(sp) - 8000127e: 0a0103a3 sb zero,167(sp) - 80001282: 8326 mv t1,s1 - 80001284: 00073b03 ld s6,0(a4) - 80001288: 01096f93 ori t6,s2,16 - 8000128c: 66034563 bltz t1,800018f6 <_vfprintf_r+0x1094> - 80001290: 0721 addi a4,a4,8 - 80001292: 006b67b3 or a5,s6,t1 - 80001296: f03a sd a4,32(sp) - 80001298: f7fff913 andi s2,t6,-129 - 8000129c: 4601 li a2,0 - 8000129e: ec0799e3 bnez a5,80001170 <_vfprintf_r+0x90e> - 800012a2: 0a714583 lbu a1,167(sp) - 800012a6: f402 sd zero,40(sp) - 800012a8: e082 sd zero,64(sp) - 800012aa: e482 sd zero,72(sp) - 800012ac: fc02 sd zero,56(sp) - 800012ae: 4801 li a6,0 - 800012b0: 4c81 li s9,0 - 800012b2: 4301 li t1,0 - 800012b4: 0afc addi a5,sp,348 - 800012b6: b20588e3 beqz a1,80000de6 <_vfprintf_r+0x584> - 800012ba: bde5 j 800011b2 <_vfprintf_r+0x950> - 800012bc: 02b00793 li a5,43 - 800012c0: 000ace03 lbu t3,0(s5) - 800012c4: 0af103a3 sb a5,167(sp) - 800012c8: ec6ff06f j 8000098e <_vfprintf_r+0x12c> - 800012cc: 000ace03 lbu t3,0(s5) - 800012d0: 08096913 ori s2,s2,128 - 800012d4: ebaff06f j 8000098e <_vfprintf_r+0x12c> - 800012d8: 000acc03 lbu s8,0(s5) - 800012dc: 02a00793 li a5,42 - 800012e0: 001a8613 addi a2,s5,1 - 800012e4: 00fc1463 bne s8,a5,800012ec <_vfprintf_r+0xa8a> - 800012e8: 5440106f j 8000282c <_vfprintf_r+0x1fca> - 800012ec: fd0c071b addiw a4,s8,-48 - 800012f0: 45a5 li a1,9 - 800012f2: 4681 li a3,0 - 800012f4: 8ab2 mv s5,a2 - 800012f6: 4481 li s1,0 - 800012f8: e8e5ee63 bltu a1,a4,80000994 <_vfprintf_r+0x132> - 800012fc: 0026979b slliw a5,a3,0x2 - 80001300: 00064c03 lbu s8,0(a2) - 80001304: 9fb5 addw a5,a5,a3 - 80001306: 0017979b slliw a5,a5,0x1 - 8000130a: 00e786bb addw a3,a5,a4 - 8000130e: fd0c071b addiw a4,s8,-48 - 80001312: 0605 addi a2,a2,1 - 80001314: fee5f4e3 bgeu a1,a4,800012fc <_vfprintf_r+0xa9a> - 80001318: 8336 mv t1,a3 - 8000131a: 7206c863 bltz a3,80001a4a <_vfprintf_r+0x11e8> - 8000131e: 0003049b sext.w s1,t1 - 80001322: 8ab2 mv s5,a2 - 80001324: e70ff06f j 80000994 <_vfprintf_r+0x132> - 80001328: 6c22 ld s8,8(sp) - 8000132a: 8562 mv a0,s8 - 8000132c: 000020ef jal 8000332c <_localeconv_r> - 80001330: 651c ld a5,8(a0) - 80001332: 853e mv a0,a5 - 80001334: f4be sd a5,104(sp) - 80001336: 6ea020ef jal 80003a20 - 8000133a: 87aa mv a5,a0 - 8000133c: 8562 mv a0,s8 - 8000133e: e53e sd a5,136(sp) - 80001340: 8c3e mv s8,a5 - 80001342: 7eb010ef jal 8000332c <_localeconv_r> - 80001346: 6914 ld a3,16(a0) - 80001348: 018037b3 snez a5,s8 - 8000134c: 000ace03 lbu t3,0(s5) - 80001350: 00d03733 snez a4,a3 - 80001354: f8b6 sd a3,112(sp) - 80001356: 8ff9 and a5,a5,a4 - 80001358: e2078b63 beqz a5,8000098e <_vfprintf_r+0x12c> - 8000135c: 0006c783 lbu a5,0(a3) - 80001360: e2078763 beqz a5,8000098e <_vfprintf_r+0x12c> - 80001364: 40096913 ori s2,s2,1024 - 80001368: e26ff06f j 8000098e <_vfprintf_r+0x12c> - 8000136c: 000ace03 lbu t3,0(s5) - 80001370: 00196913 ori s2,s2,1 - 80001374: e1aff06f j 8000098e <_vfprintf_r+0x12c> - 80001378: 0a714783 lbu a5,167(sp) - 8000137c: 000ace03 lbu t3,0(s5) - 80001380: e0079763 bnez a5,8000098e <_vfprintf_r+0x12c> - 80001384: 02000793 li a5,32 - 80001388: 0af103a3 sb a5,167(sp) - 8000138c: e02ff06f j 8000098e <_vfprintf_r+0x12c> - 80001390: 000ace03 lbu t3,0(s5) - 80001394: 00896913 ori s2,s2,8 - 80001398: df6ff06f j 8000098e <_vfprintf_r+0x12c> - 8000139c: 7782 ld a5,32(sp) - 8000139e: 8326 mv t1,s1 - 800013a0: 01096813 ori a6,s2,16 - 800013a4: 00878713 addi a4,a5,8 - 800013a8: 7782 ld a5,32(sp) - 800013aa: 6394 ld a3,0(a5) - 800013ac: f03a sd a4,32(sp) - 800013ae: 0a0103a3 sb zero,167(sp) - 800013b2: bff87913 andi s2,a6,-1025 - 800013b6: 2e034d63 bltz t1,800016b0 <_vfprintf_r+0xe4e> - 800013ba: 00d367b3 or a5,t1,a3 - 800013be: b7f87913 andi s2,a6,-1153 - 800013c2: 2e079763 bnez a5,800016b0 <_vfprintf_r+0xe4e> - 800013c6: 00187813 andi a6,a6,1 - 800013ca: 44080163 beqz a6,8000180c <_vfprintf_r+0xfaa> - 800013ce: 03000793 li a5,48 - 800013d2: 14f10da3 sb a5,347(sp) - 800013d6: 8cc2 mv s9,a6 - 800013d8: f402 sd zero,40(sp) - 800013da: 4301 li t1,0 - 800013dc: e082 sd zero,64(sp) - 800013de: e482 sd zero,72(sp) - 800013e0: fc02 sd zero,56(sp) - 800013e2: 15b10793 addi a5,sp,347 - 800013e6: e20ff06f j 80000a06 <_vfprintf_r+0x1a4> - 800013ea: 000ace03 lbu t3,0(s5) - 800013ee: 06800793 li a5,104 - 800013f2: 64fe0e63 beq t3,a5,80001a4e <_vfprintf_r+0x11ec> - 800013f6: 04096913 ori s2,s2,64 - 800013fa: d94ff06f j 8000098e <_vfprintf_r+0x12c> - 800013fe: 7682 ld a3,32(sp) - 80001400: 02097793 andi a5,s2,32 - 80001404: 00868713 addi a4,a3,8 - 80001408: 5a079763 bnez a5,800019b6 <_vfprintf_r+0x1154> - 8000140c: 01097793 andi a5,s2,16 - 80001410: 1a0788e3 beqz a5,80001dc0 <_vfprintf_r+0x155e> - 80001414: 7782 ld a5,32(sp) - 80001416: 66e2 ld a3,24(sp) - 80001418: 639c ld a5,0(a5) - 8000141a: e394 sd a3,0(a5) - 8000141c: f03a sd a4,32(sp) - 8000141e: cfeff06f j 8000091c <_vfprintf_r+0xba> - 80001422: 000ace03 lbu t3,0(s5) - 80001426: 06c00793 li a5,108 - 8000142a: 64fe0663 beq t3,a5,80001a76 <_vfprintf_r+0x1214> - 8000142e: 01096913 ori s2,s2,16 - 80001432: d5cff06f j 8000098e <_vfprintf_r+0x12c> - 80001436: 02097793 andi a5,s2,32 - 8000143a: 8326 mv t1,s1 - 8000143c: 4a079563 bnez a5,800018e6 <_vfprintf_r+0x1084> - 80001440: 01097793 andi a5,s2,16 - 80001444: 4a079163 bnez a5,800018e6 <_vfprintf_r+0x1084> - 80001448: 7682 ld a3,32(sp) - 8000144a: 04097793 andi a5,s2,64 - 8000144e: 00868713 addi a4,a3,8 - 80001452: 70078163 beqz a5,80001b54 <_vfprintf_r+0x12f2> - 80001456: 0a0103a3 sb zero,167(sp) - 8000145a: 0006db03 lhu s6,0(a3) - 8000145e: 7004c663 bltz s1,80001b6a <_vfprintf_r+0x1308> - 80001462: 01636633 or a2,t1,s6 - 80001466: 2601 sext.w a2,a2 - 80001468: f03a sd a4,32(sp) - 8000146a: f7f97913 andi s2,s2,-129 - 8000146e: d00611e3 bnez a2,80001170 <_vfprintf_r+0x90e> - 80001472: bd05 j 800012a2 <_vfprintf_r+0xa40> - 80001474: 000ace03 lbu t3,0(s5) - 80001478: 02096913 ori s2,s2,32 - 8000147c: d12ff06f j 8000098e <_vfprintf_r+0x12c> - 80001480: 67a1 lui a5,0x8 - 80001482: 83078793 addi a5,a5,-2000 # 7830 - 80001486: 0af11423 sh a5,168(sp) - 8000148a: 7782 ld a5,32(sp) - 8000148c: 0a0103a3 sb zero,167(sp) - 80001490: 8326 mv t1,s1 - 80001492: 6398 ld a4,0(a5) - 80001494: 00878593 addi a1,a5,8 - 80001498: 5404cc63 bltz s1,800019f0 <_vfprintf_r+0x118e> - 8000149c: f7f97f93 andi t6,s2,-129 - 800014a0: 009767b3 or a5,a4,s1 - 800014a4: 002fe913 ori s2,t6,2 - 800014a8: 0e078fe3 beqz a5,80001da6 <_vfprintf_r+0x1544> - 800014ac: 00008517 auipc a0,0x8 - 800014b0: e0c50513 addi a0,a0,-500 # 800092b8 <__clzdi2+0x2de> - 800014b4: 4609 li a2,2 - 800014b6: 07800c13 li s8,120 - 800014ba: f02e sd a1,32(sp) - 800014bc: 0a714583 lbu a1,167(sp) - 800014c0: a399 j 80001a06 <_vfprintf_r+0x11a4> - 800014c2: 7702 ld a4,32(sp) - 800014c4: 02097793 andi a5,s2,32 - 800014c8: 8326 mv t1,s1 - 800014ca: 0721 addi a4,a4,8 - 800014cc: 4c079963 bnez a5,8000199e <_vfprintf_r+0x113c> - 800014d0: 01097793 andi a5,s2,16 - 800014d4: 4c079563 bnez a5,8000199e <_vfprintf_r+0x113c> - 800014d8: 04097793 andi a5,s2,64 - 800014dc: 10078ee3 beqz a5,80001df8 <_vfprintf_r+0x1596> - 800014e0: 7782 ld a5,32(sp) - 800014e2: 884a mv a6,s2 - 800014e4: f03a sd a4,32(sp) - 800014e6: 0007d683 lhu a3,0(a5) - 800014ea: b5d1 j 800013ae <_vfprintf_r+0xb4c> - 800014ec: 410b8b3b subw s6,s7,a6 - 800014f0: d7605863 blez s6,80000a60 <_vfprintf_r+0x1fe> - 800014f4: 42c1 li t0,16 - 800014f6: 562e lw a2,232(sp) - 800014f8: 00008497 auipc s1,0x8 - 800014fc: 0c048493 addi s1,s1,192 # 800095b8 - 80001500: 0762d863 bge t0,s6,80001570 <_vfprintf_r+0xd0e> - 80001504: 876e mv a4,s11 - 80001506: 84da mv s1,s6 - 80001508: 8dd6 mv s11,s5 - 8000150a: 8b4a mv s6,s2 - 8000150c: 8abe mv s5,a5 - 8000150e: 439d li t2,7 - 80001510: 87ea mv a5,s10 - 80001512: fc9a sd t1,120(sp) - 80001514: 8d66 mv s10,s9 - 80001516: 00008917 auipc s2,0x8 - 8000151a: 0a290913 addi s2,s2,162 # 800095b8 - 8000151e: 8cc2 mv s9,a6 - 80001520: a021 j 80001528 <_vfprintf_r+0xcc6> - 80001522: 34c1 addiw s1,s1,-16 - 80001524: 0292db63 bge t0,s1,8000155a <_vfprintf_r+0xcf8> - 80001528: 0741 addi a4,a4,16 - 8000152a: 2605 addiw a2,a2,1 - 8000152c: 0127b023 sd s2,0(a5) - 80001530: 0057b423 sd t0,8(a5) - 80001534: f9ba sd a4,240(sp) - 80001536: d5b2 sw a2,232(sp) - 80001538: 07c1 addi a5,a5,16 - 8000153a: fec3d4e3 bge t2,a2,80001522 <_vfprintf_r+0xcc0> - 8000153e: 65c2 ld a1,16(sp) - 80001540: 6522 ld a0,8(sp) - 80001542: 1190 addi a2,sp,224 - 80001544: 438010ef jal 8000297c <__sprint_r> - 80001548: e53d bnez a0,800015b6 <_vfprintf_r+0xd54> - 8000154a: 42c1 li t0,16 - 8000154c: 34c1 addiw s1,s1,-16 - 8000154e: 774e ld a4,240(sp) - 80001550: 562e lw a2,232(sp) - 80001552: 87d2 mv a5,s4 - 80001554: 439d li t2,7 - 80001556: fc92c9e3 blt t0,s1,80001528 <_vfprintf_r+0xcc6> - 8000155a: 7366 ld t1,120(sp) - 8000155c: 8866 mv a6,s9 - 8000155e: 8cea mv s9,s10 - 80001560: 8d3e mv s10,a5 - 80001562: 87d6 mv a5,s5 - 80001564: 8aee mv s5,s11 - 80001566: 8dba mv s11,a4 - 80001568: 874a mv a4,s2 - 8000156a: 895a mv s2,s6 - 8000156c: 8b26 mv s6,s1 - 8000156e: 84ba mv s1,a4 - 80001570: 9dda add s11,s11,s6 - 80001572: 2605 addiw a2,a2,1 - 80001574: 009d3023 sd s1,0(s10) - 80001578: 016d3423 sd s6,8(s10) +0000000080000f10 : + 80000f10: 00009317 auipc t1,0x9 + 80000f14: 60033303 ld t1,1536(t1) # 8000a510 <_impure_ptr> + 80000f18: 711d addi sp,sp,-96 + 80000f1a: f832 sd a2,48(sp) + 80000f1c: fc36 sd a3,56(sp) + 80000f1e: f42e sd a1,40(sp) + 80000f20: e0ba sd a4,64(sp) + 80000f22: e4be sd a5,72(sp) + 80000f24: e8c2 sd a6,80(sp) + 80000f26: ecc6 sd a7,88(sp) + 80000f28: 01033583 ld a1,16(t1) + 80000f2c: 1034 addi a3,sp,40 + 80000f2e: 862a mv a2,a0 + 80000f30: 851a mv a0,t1 + 80000f32: ec06 sd ra,24(sp) + 80000f34: e436 sd a3,8(sp) + 80000f36: 014000ef jal 80000f4a <_vfprintf_r> + 80000f3a: 60e2 ld ra,24(sp) + 80000f3c: 6125 addi sp,sp,96 + 80000f3e: 8082 ret + +0000000080000f40 <__errno>: + 80000f40: 00009517 auipc a0,0x9 + 80000f44: 5d053503 ld a0,1488(a0) # 8000a510 <_impure_ptr> + 80000f48: 8082 ret + +0000000080000f4a <_vfprintf_r>: + 80000f4a: db010113 addi sp,sp,-592 + 80000f4e: 24113423 sd ra,584(sp) + 80000f52: 24813023 sd s0,576(sp) + 80000f56: 22913c23 sd s1,568(sp) + 80000f5a: 21613823 sd s6,528(sp) + 80000f5e: f036 sd a3,32(sp) + 80000f60: 8b32 mv s6,a2 + 80000f62: 84ae mv s1,a1 + 80000f64: 842a mv s0,a0 + 80000f66: e42a sd a0,8(sp) + 80000f68: 2ad020ef jal 80003a14 <_localeconv_r> + 80000f6c: 611c ld a5,0(a0) + 80000f6e: 853e mv a0,a5 + 80000f70: ecbe sd a5,88(sp) + 80000f72: 196030ef jal 80004108 + 80000f76: e8aa sd a0,80(sp) + 80000f78: e982 sd zero,208(sp) + 80000f7a: ed82 sd zero,216(sp) + 80000f7c: c409 beqz s0,80000f86 <_vfprintf_r+0x3c> + 80000f7e: 643c ld a5,72(s0) + 80000f80: e399 bnez a5,80000f86 <_vfprintf_r+0x3c> + 80000f82: 42a0106f j 800023ac <_vfprintf_r+0x1462> + 80000f86: 01049783 lh a5,16(s1) + 80000f8a: 0ac4a703 lw a4,172(s1) + 80000f8e: 6609 lui a2,0x2 + 80000f90: 03279693 slli a3,a5,0x32 + 80000f94: 2606c163 bltz a3,800011f6 <_vfprintf_r+0x2ac> + 80000f98: 76f9 lui a3,0xffffe + 80000f9a: 8fd1 or a5,a5,a2 + 80000f9c: 16fd addi a3,a3,-1 # ffffffffffffdfff <_stack_top+0xffffffff7fefdfff> + 80000f9e: 8f75 and a4,a4,a3 + 80000fa0: 00f49823 sh a5,16(s1) + 80000fa4: 0107979b slliw a5,a5,0x10 + 80000fa8: 4107d79b sraiw a5,a5,0x10 + 80000fac: 0ae4a623 sw a4,172(s1) + 80000fb0: 0087f713 andi a4,a5,8 + 80000fb4: 1e070d63 beqz a4,800011ae <_vfprintf_r+0x264> + 80000fb8: 6c98 ld a4,24(s1) + 80000fba: 1e070a63 beqz a4,800011ae <_vfprintf_r+0x264> + 80000fbe: 8be9 andi a5,a5,26 + 80000fc0: 4729 li a4,10 + 80000fc2: 20e78163 beq a5,a4,800011c4 <_vfprintf_r+0x27a> + 80000fc6: 23413023 sd s4,544(sp) + 80000fca: 16010a13 addi s4,sp,352 + 80000fce: 23313423 sd s3,552(sp) + 80000fd2: 21513c23 sd s5,536(sp) + 80000fd6: fbea sd s10,496(sp) + 80000fd8: 23213823 sd s2,560(sp) + 80000fdc: 21713423 sd s7,520(sp) + 80000fe0: 21813023 sd s8,512(sp) + 80000fe4: ffe6 sd s9,504(sp) + 80000fe6: f7ee sd s11,488(sp) + 80000fe8: f982 sd zero,240(sp) + 80000fea: d582 sw zero,232(sp) + 80000fec: f1d2 sd s4,224(sp) + 80000fee: 8d52 mv s10,s4 + 80000ff0: f802 sd zero,48(sp) + 80000ff2: f082 sd zero,96(sp) + 80000ff4: f882 sd zero,112(sp) + 80000ff6: e502 sd zero,136(sp) + 80000ff8: f482 sd zero,104(sp) + 80000ffa: ec02 sd zero,24(sp) + 80000ffc: 499d li s3,7 + 80000ffe: 4441 li s0,16 + 80001000: 8ada mv s5,s6 + 80001002: e826 sd s1,16(sp) + 80001004: 000ac683 lbu a3,0(s5) + 80001008: 8b56 mv s6,s5 + 8000100a: fdb68713 addi a4,a3,-37 + 8000100e: 00e03733 snez a4,a4 + 80001012: 00d037b3 snez a5,a3 + 80001016: 8ff9 and a5,a5,a4 + 80001018: c3a9 beqz a5,8000105a <_vfprintf_r+0x110> + 8000101a: 001b4683 lbu a3,1(s6) + 8000101e: 0b05 addi s6,s6,1 + 80001020: fdb68713 addi a4,a3,-37 + 80001024: 00e03733 snez a4,a4 + 80001028: 00d037b3 snez a5,a3 + 8000102c: 8ff9 and a5,a5,a4 + 8000102e: f7f5 bnez a5,8000101a <_vfprintf_r+0xd0> + 80001030: 415b0bbb subw s7,s6,s5 + 80001034: 020b8363 beqz s7,8000105a <_vfprintf_r+0x110> + 80001038: 774e ld a4,240(sp) + 8000103a: 57ae lw a5,232(sp) + 8000103c: 015d3023 sd s5,0(s10) + 80001040: 975e add a4,a4,s7 + 80001042: 2785 addiw a5,a5,1 + 80001044: 017d3423 sd s7,8(s10) + 80001048: f9ba sd a4,240(sp) + 8000104a: d5be sw a5,232(sp) + 8000104c: 0d41 addi s10,s10,16 + 8000104e: 18f9c863 blt s3,a5,800011de <_vfprintf_r+0x294> + 80001052: 67e2 ld a5,24(sp) + 80001054: 017787bb addw a5,a5,s7 + 80001058: ec3e sd a5,24(sp) + 8000105a: e299 bnez a3,80001060 <_vfprintf_r+0x116> + 8000105c: 3d20106f j 8000242e <_vfprintf_r+0x14e4> + 80001060: 001b4e03 lbu t3,1(s6) + 80001064: 001b0a93 addi s5,s6,1 + 80001068: 0a0103a3 sb zero,167(sp) + 8000106c: 4b81 li s7,0 + 8000106e: 4901 li s2,0 + 80001070: 05a00b13 li s6,90 + 80001074: 54fd li s1,-1 + 80001076: 0a85 addi s5,s5,1 + 80001078: 000e0c1b sext.w s8,t3 + 8000107c: fe0c079b addiw a5,s8,-32 + 80001080: 04fb6763 bltu s6,a5,800010ce <_vfprintf_r+0x184> + 80001084: 02079713 slli a4,a5,0x20 + 80001088: 01e75793 srli a5,a4,0x1e + 8000108c: 00009717 auipc a4,0x9 + 80001090: d4c70713 addi a4,a4,-692 # 80009dd8 <__clzdi2+0x716> + 80001094: 97ba add a5,a5,a4 + 80001096: 439c lw a5,0(a5) + 80001098: 97ba add a5,a5,a4 + 8000109a: 8782 jr a5 + 8000109c: 4b81 li s7,0 + 8000109e: 46a5 li a3,9 + 800010a0: 002b979b slliw a5,s7,0x2 + 800010a4: 0a85 addi s5,s5,1 + 800010a6: 01778bbb addw s7,a5,s7 + 800010aa: fffac783 lbu a5,-1(s5) + 800010ae: fd0c0c1b addiw s8,s8,-48 + 800010b2: 001b9b9b slliw s7,s7,0x1 + 800010b6: fd07871b addiw a4,a5,-48 + 800010ba: 017c0bbb addw s7,s8,s7 + 800010be: 00078c1b sext.w s8,a5 + 800010c2: fce6ffe3 bgeu a3,a4,800010a0 <_vfprintf_r+0x156> + 800010c6: fe0c079b addiw a5,s8,-32 + 800010ca: fafb7de3 bgeu s6,a5,80001084 <_vfprintf_r+0x13a> + 800010ce: 000c1463 bnez s8,800010d6 <_vfprintf_r+0x18c> + 800010d2: 35c0106f j 8000242e <_vfprintf_r+0x14e4> + 800010d6: 4c85 li s9,1 + 800010d8: 0f810c23 sb s8,248(sp) + 800010dc: 0a0103a3 sb zero,167(sp) + 800010e0: 8866 mv a6,s9 + 800010e2: f402 sd zero,40(sp) + 800010e4: 4301 li t1,0 + 800010e6: e082 sd zero,64(sp) + 800010e8: e482 sd zero,72(sp) + 800010ea: fc02 sd zero,56(sp) + 800010ec: 19bc addi a5,sp,248 + 800010ee: 7dce ld s11,240(sp) + 800010f0: 08497493 andi s1,s2,132 + 800010f4: 86ee mv a3,s11 + 800010f6: 54048463 beqz s1,8000163e <_vfprintf_r+0x6f4> + 800010fa: 0a714703 lbu a4,167(sp) + 800010fe: c329 beqz a4,80001140 <_vfprintf_r+0x1f6> + 80001100: 562e lw a2,232(sp) + 80001102: 4b01 li s6,0 + 80001104: 0a710693 addi a3,sp,167 + 80001108: 00dd3023 sd a3,0(s10) + 8000110c: 0d85 addi s11,s11,1 + 8000110e: 2605 addiw a2,a2,1 # 2001 + 80001110: 4685 li a3,1 + 80001112: 00dd3423 sd a3,8(s10) + 80001116: f9ee sd s11,240(sp) + 80001118: d5b2 sw a2,232(sp) + 8000111a: 0d41 addi s10,s10,16 + 8000111c: 3cc9cb63 blt s3,a2,800014f2 <_vfprintf_r+0x5a8> + 80001120: 020b0063 beqz s6,80001140 <_vfprintf_r+0x1f6> + 80001124: 562e lw a2,232(sp) + 80001126: 1138 addi a4,sp,168 + 80001128: 00ed3023 sd a4,0(s10) + 8000112c: 0d89 addi s11,s11,2 + 8000112e: 2605 addiw a2,a2,1 + 80001130: 4709 li a4,2 + 80001132: 00ed3423 sd a4,8(s10) + 80001136: f9ee sd s11,240(sp) + 80001138: d5b2 sw a2,232(sp) + 8000113a: 0d41 addi s10,s10,16 + 8000113c: 3ac9c9e3 blt s3,a2,80001cee <_vfprintf_r+0xda4> + 80001140: 08000713 li a4,128 + 80001144: 28e488e3 beq s1,a4,80001bd4 <_vfprintf_r+0xc8a> + 80001148: 41930b3b subw s6,t1,s9 + 8000114c: 51604563 bgtz s6,80001656 <_vfprintf_r+0x70c> + 80001150: 10097713 andi a4,s2,256 + 80001154: 5a071663 bnez a4,80001700 <_vfprintf_r+0x7b6> + 80001158: 00fd3023 sd a5,0(s10) + 8000115c: 57ae lw a5,232(sp) + 8000115e: 9de6 add s11,s11,s9 + 80001160: f9ee sd s11,240(sp) + 80001162: 2785 addiw a5,a5,1 + 80001164: 019d3423 sd s9,8(s10) + 80001168: d5be sw a5,232(sp) + 8000116a: 44f9c163 blt s3,a5,800015ac <_vfprintf_r+0x662> + 8000116e: 0d41 addi s10,s10,16 + 80001170: 00497f93 andi t6,s2,4 + 80001174: 000f8663 beqz t6,80001180 <_vfprintf_r+0x236> + 80001178: 410b8b3b subw s6,s7,a6 + 8000117c: 396049e3 bgtz s6,80001d0e <_vfprintf_r+0xdc4> + 80001180: 87de mv a5,s7 + 80001182: 010bd363 bge s7,a6,80001188 <_vfprintf_r+0x23e> + 80001186: 87c2 mv a5,a6 + 80001188: 6762 ld a4,24(sp) + 8000118a: 9fb9 addw a5,a5,a4 + 8000118c: ec3e sd a5,24(sp) + 8000118e: 300d91e3 bnez s11,80001c90 <_vfprintf_r+0xd46> + 80001192: 77a2 ld a5,40(sp) + 80001194: d582 sw zero,232(sp) + 80001196: c789 beqz a5,800011a0 <_vfprintf_r+0x256> + 80001198: 75a2 ld a1,40(sp) + 8000119a: 6522 ld a0,8(sp) + 8000119c: 2c4030ef jal 80004460 <_free_r> + 800011a0: 8d52 mv s10,s4 + 800011a2: b58d j 80001004 <_vfprintf_r+0xba> + 800011a4: 000ace03 lbu t3,0(s5) + 800011a8: 01096913 ori s2,s2,16 + 800011ac: b5e9 j 80001076 <_vfprintf_r+0x12c> + 800011ae: 6522 ld a0,8(sp) + 800011b0: 85a6 mv a1,s1 + 800011b2: 6ee020ef jal 800038a0 <__swsetup_r> + 800011b6: e521 bnez a0,800011fe <_vfprintf_r+0x2b4> + 800011b8: 01049783 lh a5,16(s1) + 800011bc: 4729 li a4,10 + 800011be: 8be9 andi a5,a5,26 + 800011c0: e0e793e3 bne a5,a4,80000fc6 <_vfprintf_r+0x7c> + 800011c4: 01249783 lh a5,18(s1) + 800011c8: de07cfe3 bltz a5,80000fc6 <_vfprintf_r+0x7c> + 800011cc: 7682 ld a3,32(sp) + 800011ce: 6522 ld a0,8(sp) + 800011d0: 865a mv a2,s6 + 800011d2: 85a6 mv a1,s1 + 800011d4: 5ff010ef jal 80002fd2 <__sbprintf> + 800011d8: ec2a sd a0,24(sp) + 800011da: 2fd0006f j 80001cd6 <_vfprintf_r+0xd8c> + 800011de: 65c2 ld a1,16(sp) + 800011e0: 6522 ld a0,8(sp) + 800011e2: 1190 addi a2,sp,224 + 800011e4: 681010ef jal 80003064 <__sprint_r> + 800011e8: c119 beqz a0,800011ee <_vfprintf_r+0x2a4> + 800011ea: 3ad0106f j 80002d96 <_vfprintf_r+0x1e4c> + 800011ee: 000b4683 lbu a3,0(s6) + 800011f2: 8d52 mv s10,s4 + 800011f4: bdb9 j 80001052 <_vfprintf_r+0x108> + 800011f6: 03271693 slli a3,a4,0x32 + 800011fa: da06dbe3 bgez a3,80000fb0 <_vfprintf_r+0x66> + 800011fe: 57fd li a5,-1 + 80001200: ec3e sd a5,24(sp) + 80001202: 2d50006f j 80001cd6 <_vfprintf_r+0xd8c> + 80001206: 00897793 andi a5,s2,8 + 8000120a: 8326 mv t1,s1 + 8000120c: 66079fe3 bnez a5,8000208a <_vfprintf_r+0x1140> + 80001210: f426 sd s1,40(sp) + 80001212: 7482 ld s1,32(sp) + 80001214: 2088 fld fa0,0(s1) + 80001216: 3ea080ef jal 80009600 <__extenddftf2> + 8000121a: 7322 ld t1,40(sp) + 8000121c: 00848793 addi a5,s1,8 + 80001220: f03e sd a5,32(sp) + 80001222: e9aa sd a0,208(sp) + 80001224: 0988 addi a0,sp,208 + 80001226: f41a sd t1,40(sp) + 80001228: edae sd a1,216(sp) + 8000122a: 5de030ef jal 80004808 <_ldcheck> + 8000122e: d92a sw a0,176(sp) + 80001230: 4789 li a5,2 + 80001232: 7322 ld t1,40(sp) + 80001234: 00f51463 bne a0,a5,8000123c <_vfprintf_r+0x2f2> + 80001238: 1c20106f j 800023fa <_vfprintf_r+0x14b0> + 8000123c: 4785 li a5,1 + 8000123e: 00f51463 bne a0,a5,80001246 <_vfprintf_r+0x2fc> + 80001242: 2c40106f j 80002506 <_vfprintf_r+0x15bc> + 80001246: fdfc7713 andi a4,s8,-33 + 8000124a: f43a sd a4,40(sp) + 8000124c: 04100793 li a5,65 + 80001250: 00f70463 beq a4,a5,80001258 <_vfprintf_r+0x30e> + 80001254: 2ec0106f j 80002540 <_vfprintf_r+0x15f6> + 80001258: 03000793 li a5,48 + 8000125c: 0af10423 sb a5,168(sp) + 80001260: 06100713 li a4,97 + 80001264: 05800793 li a5,88 + 80001268: 00ec1463 bne s8,a4,80001270 <_vfprintf_r+0x326> + 8000126c: 6f60106f j 80002962 <_vfprintf_r+0x1a18> + 80001270: 0af104a3 sb a5,169(sp) + 80001274: 06300793 li a5,99 + 80001278: 0067d463 bge a5,t1,80001280 <_vfprintf_r+0x336> + 8000127c: 6ee0106f j 8000296a <_vfprintf_r+0x1a20> + 80001280: 65ee ld a1,216(sp) + 80001282: 654e ld a0,208(sp) + 80001284: 0005d463 bgez a1,8000128c <_vfprintf_r+0x342> + 80001288: 2db0106f j 80002d62 <_vfprintf_r+0x1e18> + 8000128c: 4d81 li s11,0 + 8000128e: f402 sd zero,40(sp) + 80001290: 19bc addi a5,sp,248 + 80001292: 1910 addi a2,sp,176 + 80001294: fc3e sd a5,56(sp) + 80001296: f81a sd t1,48(sp) + 80001298: 060030ef jal 800042f8 + 8000129c: 00009717 auipc a4,0x9 + 800012a0: cd470713 addi a4,a4,-812 # 80009f70 + 800012a4: 6310 ld a2,0(a4) + 800012a6: 6714 ld a3,8(a4) + 800012a8: 00296913 ori s2,s2,2 + 800012ac: 402070ef jal 800086ae <__multf3> + 800012b0: 4601 li a2,0 + 800012b2: 4681 li a3,0 + 800012b4: 8caa mv s9,a0 + 800012b6: e4ae sd a1,72(sp) + 800012b8: 1f0070ef jal 800084a8 <__eqtf2> + 800012bc: 7342 ld t1,48(sp) + 800012be: 77e2 ld a5,56(sp) + 800012c0: e119 bnez a0,800012c6 <_vfprintf_r+0x37c> + 800012c2: 4705 li a4,1 + 800012c4: d93a sw a4,176(sp) + 800012c6: 00009697 auipc a3,0x9 + 800012ca: 99a68693 addi a3,a3,-1638 # 80009c60 <__clzdi2+0x59e> + 800012ce: 06100713 li a4,97 + 800012d2: e0b6 sd a3,64(sp) + 800012d4: 00ec1763 bne s8,a4,800012e2 <_vfprintf_r+0x398> + 800012d8: 00009717 auipc a4,0x9 + 800012dc: 97070713 addi a4,a4,-1680 # 80009c48 <__clzdi2+0x586> + 800012e0: e0ba sd a4,64(sp) + 800012e2: 00009717 auipc a4,0x9 + 800012e6: c9e70713 addi a4,a4,-866 # 80009f80 + 800012ea: 6314 ld a3,0(a4) + 800012ec: 6718 ld a4,8(a4) + 800012ee: e14a sd s2,128(sp) + 800012f0: e956 sd s5,144(sp) + 800012f2: 6486 ld s1,64(sp) + 800012f4: 6926 ld s2,72(sp) + 800012f6: f836 sd a3,48(sp) + 800012f8: fc3a sd a4,56(sp) + 800012fa: 8b3e mv s6,a5 + 800012fc: f0de sd s7,96(sp) + 800012fe: fcbe sd a5,120(sp) + 80001300: 8a9a mv s5,t1 + 80001302: a819 j 80001318 <_vfprintf_r+0x3ce> + 80001304: 4601 li a2,0 + 80001306: 4681 li a3,0 + 80001308: fffa8b9b addiw s7,s5,-1 + 8000130c: 19c070ef jal 800084a8 <__eqtf2> + 80001310: e119 bnez a0,80001316 <_vfprintf_r+0x3cc> + 80001312: 32d0106f j 80002e3e <_vfprintf_r+0x1ef4> + 80001316: 8ade mv s5,s7 + 80001318: 7642 ld a2,48(sp) + 8000131a: 76e2 ld a3,56(sp) + 8000131c: 8566 mv a0,s9 + 8000131e: 85ca mv a1,s2 + 80001320: 38e070ef jal 800086ae <__multf3> + 80001324: 892e mv s2,a1 + 80001326: 8caa mv s9,a0 + 80001328: 1f4080ef jal 8000951c <__fixtfsi> + 8000132c: 00050b9b sext.w s7,a0 + 80001330: 855e mv a0,s7 + 80001332: 27c080ef jal 800095ae <__floatsitf> + 80001336: 86ae mv a3,a1 + 80001338: 862a mv a2,a0 + 8000133a: 85ca mv a1,s2 + 8000133c: 8566 mv a0,s9 + 8000133e: 183070ef jal 80008cc0 <__subtf3> + 80001342: 017486b3 add a3,s1,s7 + 80001346: 0006c683 lbu a3,0(a3) + 8000134a: 885a mv a6,s6 + 8000134c: 8caa mv s9,a0 + 8000134e: 00db0023 sb a3,0(s6) + 80001352: 0b05 addi s6,s6,1 + 80001354: 892e mv s2,a1 + 80001356: fa0a97e3 bnez s5,80001304 <_vfprintf_r+0x3ba> + 8000135a: 00009697 auipc a3,0x9 + 8000135e: c3668693 addi a3,a3,-970 # 80009f90 + 80001362: 77e6 ld a5,120(sp) + 80001364: 6290 ld a2,0(a3) + 80001366: 6694 ld a3,8(a3) + 80001368: fc3e sd a5,56(sp) + 8000136a: f842 sd a6,48(sp) + 8000136c: 84de mv s1,s7 + 8000136e: e4ae sd a1,72(sp) + 80001370: 7b86 ld s7,96(sp) + 80001372: fcb2 sd a2,120(sp) + 80001374: f0b6 sd a3,96(sp) + 80001376: 1cc070ef jal 80008542 <__getf2> + 8000137a: 6aca ld s5,144(sp) + 8000137c: 690a ld s2,128(sp) + 8000137e: 7842 ld a6,48(sp) + 80001380: 77e2 ld a5,56(sp) + 80001382: 02a04063 bgtz a0,800013a2 <_vfprintf_r+0x458> + 80001386: 7666 ld a2,120(sp) + 80001388: 7686 ld a3,96(sp) + 8000138a: 65a6 ld a1,72(sp) + 8000138c: 8566 mv a0,s9 + 8000138e: f83e sd a5,48(sp) + 80001390: fc42 sd a6,56(sp) + 80001392: 116070ef jal 800084a8 <__eqtf2> + 80001396: 77c2 ld a5,48(sp) + 80001398: e531 bnez a0,800013e4 <_vfprintf_r+0x49a> + 8000139a: 0014f713 andi a4,s1,1 + 8000139e: 7862 ld a6,56(sp) + 800013a0: c331 beqz a4,800013e4 <_vfprintf_r+0x49a> + 800013a2: 6706 ld a4,64(sp) + 800013a4: e5c2 sd a6,200(sp) + 800013a6: fffb4683 lbu a3,-1(s6) + 800013aa: 00f74603 lbu a2,15(a4) + 800013ae: 875a mv a4,s6 + 800013b0: 00d61e63 bne a2,a3,800013cc <_vfprintf_r+0x482> + 800013b4: 03000593 li a1,48 + 800013b8: feb70fa3 sb a1,-1(a4) + 800013bc: 672e ld a4,200(sp) + 800013be: fff70693 addi a3,a4,-1 + 800013c2: e5b6 sd a3,200(sp) + 800013c4: fff74683 lbu a3,-1(a4) + 800013c8: fec688e3 beq a3,a2,800013b8 <_vfprintf_r+0x46e> + 800013cc: 0016861b addiw a2,a3,1 + 800013d0: 03900593 li a1,57 + 800013d4: 0ff67613 zext.b a2,a2 + 800013d8: 00b69463 bne a3,a1,800013e0 <_vfprintf_r+0x496> + 800013dc: 60c0106f j 800029e8 <_vfprintf_r+0x1a9e> + 800013e0: fec70fa3 sb a2,-1(a4) + 800013e4: 56ca lw a3,176(sp) + 800013e6: 00fc071b addiw a4,s8,15 + 800013ea: 0ae10c23 sb a4,184(sp) + 800013ee: 40fb063b subw a2,s6,a5 + 800013f2: fff6871b addiw a4,a3,-1 + 800013f6: d93a sw a4,176(sp) + 800013f8: f832 sd a2,48(sp) + 800013fa: 00075463 bgez a4,80001402 <_vfprintf_r+0x4b8> + 800013fe: 59e0106f j 8000299c <_vfprintf_r+0x1a52> + 80001402: 02b00693 li a3,43 + 80001406: 0ad10ca3 sb a3,185(sp) + 8000140a: 46a5 li a3,9 + 8000140c: 00e6c463 blt a3,a4,80001414 <_vfprintf_r+0x4ca> + 80001410: 5a20106f j 800029b2 <_vfprintf_r+0x1a68> + 80001414: 0c710313 addi t1,sp,199 + 80001418: 666668b7 lui a7,0x66666 + 8000141c: 851a mv a0,t1 + 8000141e: 66788893 addi a7,a7,1639 # 66666667 <__dtim_size+0x66566667> + 80001422: 06300293 li t0,99 + 80001426: 031706b3 mul a3,a4,a7 + 8000142a: 41f7561b sraiw a2,a4,0x1f + 8000142e: 883a mv a6,a4 + 80001430: 85aa mv a1,a0 + 80001432: 157d addi a0,a0,-1 + 80001434: 9689 srai a3,a3,0x22 + 80001436: 9e91 subw a3,a3,a2 + 80001438: 0026961b slliw a2,a3,0x2 + 8000143c: 9e35 addw a2,a2,a3 + 8000143e: 0016161b slliw a2,a2,0x1 + 80001442: 9f11 subw a4,a4,a2 + 80001444: 0307071b addiw a4,a4,48 + 80001448: fee58fa3 sb a4,-1(a1) # 10014fff <__dtim_size+0xff14fff> + 8000144c: 8736 mv a4,a3 + 8000144e: fd02cce3 blt t0,a6,80001426 <_vfprintf_r+0x4dc> + 80001452: 0306871b addiw a4,a3,48 + 80001456: fee50fa3 sb a4,-1(a0) + 8000145a: ffe58713 addi a4,a1,-2 + 8000145e: 00676463 bltu a4,t1,80001466 <_vfprintf_r+0x51c> + 80001462: 2f10106f j 80002f52 <_vfprintf_r+0x2008> + 80001466: 0ba10613 addi a2,sp,186 + 8000146a: 86b2 mv a3,a2 + 8000146c: 00074503 lbu a0,0(a4) + 80001470: 0705 addi a4,a4,1 + 80001472: 0685 addi a3,a3,1 + 80001474: fea68fa3 sb a0,-1(a3) + 80001478: fe671ae3 bne a4,t1,8000146c <_vfprintf_r+0x522> + 8000147c: 9732 add a4,a4,a2 + 8000147e: 0709 addi a4,a4,2 + 80001480: 8f0d sub a4,a4,a1 + 80001482: 1934 addi a3,sp,184 + 80001484: 9f15 subw a4,a4,a3 + 80001486: f0ba sd a4,96(sp) + 80001488: 7642 ld a2,48(sp) + 8000148a: 7706 ld a4,96(sp) + 8000148c: 4685 li a3,1 + 8000148e: 9f31 addw a4,a4,a2 + 80001490: 8cba mv s9,a4 + 80001492: 00c6c463 blt a3,a2,8000149a <_vfprintf_r+0x550> + 80001496: 0bf0106f j 80002d54 <_vfprintf_r+0x1e0a> + 8000149a: 66c6 ld a3,80(sp) + 8000149c: 00e68cbb addw s9,a3,a4 + 800014a0: bff97713 andi a4,s2,-1025 + 800014a4: 10076713 ori a4,a4,256 + 800014a8: fcba sd a4,120(sp) + 800014aa: 000c881b sext.w a6,s9 + 800014ae: 000cd363 bgez s9,800014b4 <_vfprintf_r+0x56a> + 800014b2: 4801 li a6,0 + 800014b4: 00297613 andi a2,s2,2 + 800014b8: 3c0d9863 bnez s11,80001888 <_vfprintf_r+0x93e> + 800014bc: e082 sd zero,64(sp) + 800014be: e482 sd zero,72(sp) + 800014c0: fc02 sd zero,56(sp) + 800014c2: 0a714583 lbu a1,167(sp) + 800014c6: 7966 ld s2,120(sp) + 800014c8: 4301 li t1,0 + 800014ca: 3c059863 bnez a1,8000189a <_vfprintf_r+0x950> + 800014ce: c20600e3 beqz a2,800010ee <_vfprintf_r+0x1a4> + 800014d2: 7dce ld s11,240(sp) + 800014d4: 562e lw a2,232(sp) + 800014d6: 08497493 andi s1,s2,132 + 800014da: 2809 addiw a6,a6,2 + 800014dc: 86ee mv a3,s11 + 800014de: 8732 mv a4,a2 + 800014e0: e489 bnez s1,800014ea <_vfprintf_r+0x5a0> + 800014e2: 410b8b3b subw s6,s7,a6 + 800014e6: 3b604c63 bgtz s6,8000189e <_vfprintf_r+0x954> + 800014ea: c2058ee3 beqz a1,80001126 <_vfprintf_r+0x1dc> + 800014ee: 4b09 li s6,2 + 800014f0: b911 j 80001104 <_vfprintf_r+0x1ba> + 800014f2: 65c2 ld a1,16(sp) + 800014f4: 6522 ld a0,8(sp) + 800014f6: 1190 addi a2,sp,224 + 800014f8: e942 sd a6,144(sp) + 800014fa: e13e sd a5,128(sp) + 800014fc: fc9a sd t1,120(sp) + 800014fe: 367010ef jal 80003064 <__sprint_r> + 80001502: 78051e63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001506: 7dce ld s11,240(sp) + 80001508: 684a ld a6,144(sp) + 8000150a: 678a ld a5,128(sp) + 8000150c: 7366 ld t1,120(sp) + 8000150e: 8d52 mv s10,s4 + 80001510: b901 j 80001120 <_vfprintf_r+0x1d6> + 80001512: 5b2e lw s6,232(sp) + 80001514: 7642 ld a2,48(sp) + 80001516: 4685 li a3,1 + 80001518: 2b05 addiw s6,s6,1 + 8000151a: 9db6 add s11,s11,a3 + 8000151c: 875a mv a4,s6 + 8000151e: 010d0c13 addi s8,s10,16 + 80001522: 1ec6d2e3 bge a3,a2,80001f06 <_vfprintf_r+0xfbc> + 80001526: 4685 li a3,1 + 80001528: 00dd3423 sd a3,8(s10) + 8000152c: 00fd3023 sd a5,0(s10) + 80001530: f9ee sd s11,240(sp) + 80001532: d5ba sw a4,232(sp) + 80001534: 469d li a3,7 + 80001536: 56e6cce3 blt a3,a4,800022ae <_vfprintf_r+0x1364> + 8000153a: 6746 ld a4,80(sp) + 8000153c: 66e6 ld a3,88(sp) + 8000153e: 2b05 addiw s6,s6,1 + 80001540: 9dba add s11,s11,a4 + 80001542: 00ec3423 sd a4,8(s8) + 80001546: 00dc3023 sd a3,0(s8) + 8000154a: f9ee sd s11,240(sp) + 8000154c: d5da sw s6,232(sp) + 8000154e: 471d li a4,7 + 80001550: 0c41 addi s8,s8,16 + 80001552: 53674ee3 blt a4,s6,8000228e <_vfprintf_r+0x1344> + 80001556: e0be sd a5,64(sp) + 80001558: 654e ld a0,208(sp) + 8000155a: 77c2 ld a5,48(sp) + 8000155c: 65ee ld a1,216(sp) + 8000155e: 4601 li a2,0 + 80001560: 4681 li a3,0 + 80001562: fc42 sd a6,56(sp) + 80001564: fff78c9b addiw s9,a5,-1 + 80001568: 741060ef jal 800084a8 <__eqtf2> + 8000156c: 7862 ld a6,56(sp) + 8000156e: 1c0507e3 beqz a0,80001f3c <_vfprintf_r+0xff2> + 80001572: 6786 ld a5,64(sp) + 80001574: 2b05 addiw s6,s6,1 + 80001576: 9de6 add s11,s11,s9 + 80001578: 0785 addi a5,a5,1 + 8000157a: d5da sw s6,232(sp) 8000157c: f9ee sd s11,240(sp) - 8000157e: d5b2 sw a2,232(sp) - 80001580: 471d li a4,7 - 80001582: 0d41 addi s10,s10,16 - 80001584: ccc75e63 bge a4,a2,80000a60 <_vfprintf_r+0x1fe> - 80001588: 65c2 ld a1,16(sp) - 8000158a: 6522 ld a0,8(sp) - 8000158c: 1190 addi a2,sp,224 - 8000158e: e942 sd a6,144(sp) - 80001590: e13e sd a5,128(sp) - 80001592: fc9a sd t1,120(sp) - 80001594: 3e8010ef jal 8000297c <__sprint_r> - 80001598: ed19 bnez a0,800015b6 <_vfprintf_r+0xd54> - 8000159a: 7dce ld s11,240(sp) - 8000159c: 7366 ld t1,120(sp) - 8000159e: 678a ld a5,128(sp) - 800015a0: 684a ld a6,144(sp) - 800015a2: 8d52 mv s10,s4 - 800015a4: cbcff06f j 80000a60 <_vfprintf_r+0x1fe> - 800015a8: 65c2 ld a1,16(sp) - 800015aa: 6522 ld a0,8(sp) - 800015ac: 1190 addi a2,sp,224 - 800015ae: 3ce010ef jal 8000297c <__sprint_r> - 800015b2: ce050c63 beqz a0,80000aaa <_vfprintf_r+0x248> - 800015b6: 75a2 ld a1,40(sp) - 800015b8: 64c2 ld s1,16(sp) - 800015ba: c581 beqz a1,800015c2 <_vfprintf_r+0xd60> - 800015bc: 6522 ld a0,8(sp) - 800015be: 7ba020ef jal 80003d78 <_free_r> - 800015c2: 0104d783 lhu a5,16(s1) - 800015c6: 0407f793 andi a5,a5,64 - 800015ca: c399 beqz a5,800015d0 <_vfprintf_r+0xd6e> - 800015cc: 0980106f j 80002664 <_vfprintf_r+0x1e02> - 800015d0: 23013903 ld s2,560(sp) - 800015d4: 22813983 ld s3,552(sp) - 800015d8: 22013a03 ld s4,544(sp) - 800015dc: 21813a83 ld s5,536(sp) - 800015e0: 20813b83 ld s7,520(sp) - 800015e4: 20013c03 ld s8,512(sp) - 800015e8: 7cfe ld s9,504(sp) - 800015ea: 7d5e ld s10,496(sp) - 800015ec: 7dbe ld s11,488(sp) - 800015ee: 24813083 ld ra,584(sp) - 800015f2: 24013403 ld s0,576(sp) - 800015f6: 6562 ld a0,24(sp) - 800015f8: 23813483 ld s1,568(sp) - 800015fc: 21013b03 ld s6,528(sp) - 80001600: 25010113 addi sp,sp,592 - 80001604: 8082 ret - 80001606: 65c2 ld a1,16(sp) - 80001608: 6522 ld a0,8(sp) - 8000160a: 1190 addi a2,sp,224 - 8000160c: e942 sd a6,144(sp) - 8000160e: e13e sd a5,128(sp) - 80001610: fc9a sd t1,120(sp) - 80001612: 36a010ef jal 8000297c <__sprint_r> - 80001616: f145 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001618: 7dce ld s11,240(sp) - 8000161a: 684a ld a6,144(sp) - 8000161c: 678a ld a5,128(sp) - 8000161e: 7366 ld t1,120(sp) - 80001620: 8d52 mv s10,s4 - 80001622: c36ff06f j 80000a58 <_vfprintf_r+0x1f6> - 80001626: 4c41 li s8,16 - 80001628: 57ae lw a5,232(sp) - 8000162a: 00008717 auipc a4,0x8 - 8000162e: f9e70713 addi a4,a4,-98 # 800095c8 - 80001632: 056c5963 bge s8,s6,80001684 <_vfprintf_r+0xe22> - 80001636: 84da mv s1,s6 - 80001638: 4c9d li s9,7 - 8000163a: 8b56 mv s6,s5 - 8000163c: 00008917 auipc s2,0x8 - 80001640: f8c90913 addi s2,s2,-116 # 800095c8 - 80001644: 8ac2 mv s5,a6 - 80001646: a021 j 8000164e <_vfprintf_r+0xdec> - 80001648: 34c1 addiw s1,s1,-16 - 8000164a: 029c5963 bge s8,s1,8000167c <_vfprintf_r+0xe1a> - 8000164e: 0dc1 addi s11,s11,16 - 80001650: 2785 addiw a5,a5,1 - 80001652: 012d3023 sd s2,0(s10) - 80001656: 018d3423 sd s8,8(s10) - 8000165a: f9ee sd s11,240(sp) - 8000165c: d5be sw a5,232(sp) - 8000165e: 0d41 addi s10,s10,16 - 80001660: fefcd4e3 bge s9,a5,80001648 <_vfprintf_r+0xde6> - 80001664: 65c2 ld a1,16(sp) - 80001666: 6522 ld a0,8(sp) - 80001668: 1190 addi a2,sp,224 - 8000166a: 312010ef jal 8000297c <__sprint_r> - 8000166e: f521 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001670: 34c1 addiw s1,s1,-16 - 80001672: 7dce ld s11,240(sp) - 80001674: 57ae lw a5,232(sp) - 80001676: 8d52 mv s10,s4 - 80001678: fc9c4be3 blt s8,s1,8000164e <_vfprintf_r+0xdec> - 8000167c: 8856 mv a6,s5 - 8000167e: 874a mv a4,s2 - 80001680: 8ada mv s5,s6 - 80001682: 8b26 mv s6,s1 - 80001684: 9dda add s11,s11,s6 - 80001686: 2785 addiw a5,a5,1 - 80001688: 00ed3023 sd a4,0(s10) - 8000168c: f9ee sd s11,240(sp) - 8000168e: d5be sw a5,232(sp) - 80001690: 016d3423 sd s6,8(s10) - 80001694: 471d li a4,7 - 80001696: c0f75163 bge a4,a5,80000a98 <_vfprintf_r+0x236> - 8000169a: 65c2 ld a1,16(sp) - 8000169c: 6522 ld a0,8(sp) - 8000169e: 1190 addi a2,sp,224 - 800016a0: fc42 sd a6,56(sp) - 800016a2: 2da010ef jal 8000297c <__sprint_r> - 800016a6: f901 bnez a0,800015b6 <_vfprintf_r+0xd54> - 800016a8: 7dce ld s11,240(sp) - 800016aa: 7862 ld a6,56(sp) - 800016ac: becff06f j 80000a98 <_vfprintf_r+0x236> - 800016b0: 0ae4 addi s1,sp,348 - 800016b2: 87a6 mv a5,s1 - 800016b4: 0076f713 andi a4,a3,7 - 800016b8: 863e mv a2,a5 - 800016ba: 03070713 addi a4,a4,48 - 800016be: 828d srli a3,a3,0x3 - 800016c0: fee78fa3 sb a4,-1(a5) - 800016c4: 17fd addi a5,a5,-1 - 800016c6: f6fd bnez a3,800016b4 <_vfprintf_r+0xe52> - 800016c8: fd070713 addi a4,a4,-48 - 800016cc: 00e03733 snez a4,a4 - 800016d0: 00e97733 and a4,s2,a4 - 800016d4: 03000693 li a3,48 - 800016d8: 5a071c63 bnez a4,80001c90 <_vfprintf_r+0x142e> - 800016dc: 40f48cbb subw s9,s1,a5 - 800016e0: 0003081b sext.w a6,t1 - 800016e4: 1f934963 blt t1,s9,800018d6 <_vfprintf_r+0x1074> - 800016e8: f402 sd zero,40(sp) - 800016ea: e082 sd zero,64(sp) - 800016ec: e482 sd zero,72(sp) - 800016ee: fc02 sd zero,56(sp) - 800016f0: b16ff06f j 80000a06 <_vfprintf_r+0x1a4> - 800016f4: 564a lw a2,176(sp) - 800016f6: 52c05663 blez a2,80001c22 <_vfprintf_r+0x13c0> - 800016fa: 76e2 ld a3,56(sp) - 800016fc: 7642 ld a2,48(sp) - 800016fe: 8736 mv a4,a3 - 80001700: 32d64f63 blt a2,a3,80001a3e <_vfprintf_r+0x11dc> - 80001704: 0007049b sext.w s1,a4 - 80001708: 00905f63 blez s1,80001726 <_vfprintf_r+0xec4> - 8000170c: 572e lw a4,232(sp) - 8000170e: 9da6 add s11,s11,s1 - 80001710: 00fd3023 sd a5,0(s10) - 80001714: 2705 addiw a4,a4,1 - 80001716: 009d3423 sd s1,8(s10) - 8000171a: f9ee sd s11,240(sp) - 8000171c: d5ba sw a4,232(sp) - 8000171e: 469d li a3,7 - 80001720: 0d41 addi s10,s10,16 - 80001722: 22e6c7e3 blt a3,a4,80002150 <_vfprintf_r+0x18ee> - 80001726: 88a6 mv a7,s1 - 80001728: 3a04c363 bltz s1,80001ace <_vfprintf_r+0x126c> - 8000172c: 7762 ld a4,56(sp) - 8000172e: 41170c3b subw s8,a4,a7 - 80001732: 3d804263 bgtz s8,80001af6 <_vfprintf_r+0x1294> - 80001736: 76e2 ld a3,56(sp) - 80001738: 40097713 andi a4,s2,1024 - 8000173c: 00d784b3 add s1,a5,a3 - 80001740: 080715e3 bnez a4,80001fca <_vfprintf_r+0x1768> - 80001744: 5b4a lw s6,176(sp) - 80001746: 76c2 ld a3,48(sp) - 80001748: 00db4663 blt s6,a3,80001754 <_vfprintf_r+0xef2> - 8000174c: 00197713 andi a4,s2,1 - 80001750: 260702e3 beqz a4,800021b4 <_vfprintf_r+0x1952> - 80001754: 66c6 ld a3,80(sp) - 80001756: 572e lw a4,232(sp) - 80001758: 6666 ld a2,88(sp) - 8000175a: 9db6 add s11,s11,a3 - 8000175c: 2705 addiw a4,a4,1 - 8000175e: 00dd3423 sd a3,8(s10) - 80001762: 00cd3023 sd a2,0(s10) - 80001766: f9ee sd s11,240(sp) - 80001768: d5ba sw a4,232(sp) - 8000176a: 469d li a3,7 - 8000176c: 0d41 addi s10,s10,16 - 8000176e: 4ee6c0e3 blt a3,a4,8000244e <_vfprintf_r+0x1bec> - 80001772: 7742 ld a4,48(sp) - 80001774: 97ba add a5,a5,a4 - 80001776: 40978c33 sub s8,a5,s1 - 8000177a: 41670b3b subw s6,a4,s6 - 8000177e: 000c079b sext.w a5,s8 - 80001782: 00fb5363 bge s6,a5,80001788 <_vfprintf_r+0xf26> - 80001786: 8c5a mv s8,s6 - 80001788: 2c01 sext.w s8,s8 - 8000178a: 01805f63 blez s8,800017a8 <_vfprintf_r+0xf46> - 8000178e: 57ae lw a5,232(sp) - 80001790: 9de2 add s11,s11,s8 - 80001792: 009d3023 sd s1,0(s10) - 80001796: 2785 addiw a5,a5,1 - 80001798: 018d3423 sd s8,8(s10) - 8000179c: f9ee sd s11,240(sp) - 8000179e: d5be sw a5,232(sp) - 800017a0: 471d li a4,7 - 800017a2: 0d41 addi s10,s10,16 - 800017a4: 56f743e3 blt a4,a5,8000250a <_vfprintf_r+0x1ca8> - 800017a8: 87e2 mv a5,s8 - 800017aa: 000c5363 bgez s8,800017b0 <_vfprintf_r+0xf4e> - 800017ae: 4781 li a5,0 - 800017b0: 40fb0b3b subw s6,s6,a5 - 800017b4: ad605a63 blez s6,80000a88 <_vfprintf_r+0x226> - 800017b8: 4c41 li s8,16 - 800017ba: 57ae lw a5,232(sp) - 800017bc: 336c5de3 bge s8,s6,800022f6 <_vfprintf_r+0x1a94> - 800017c0: 876a mv a4,s10 - 800017c2: 84da mv s1,s6 - 800017c4: 8d56 mv s10,s5 - 800017c6: 4c9d li s9,7 - 800017c8: 8aca mv s5,s2 - 800017ca: 8b42 mv s6,a6 - 800017cc: 00008917 auipc s2,0x8 - 800017d0: dec90913 addi s2,s2,-532 # 800095b8 - 800017d4: a021 j 800017dc <_vfprintf_r+0xf7a> - 800017d6: 34c1 addiw s1,s1,-16 - 800017d8: 509c5863 bge s8,s1,80001ce8 <_vfprintf_r+0x1486> - 800017dc: 0dc1 addi s11,s11,16 - 800017de: 2785 addiw a5,a5,1 - 800017e0: 01273023 sd s2,0(a4) - 800017e4: 01873423 sd s8,8(a4) - 800017e8: f9ee sd s11,240(sp) - 800017ea: d5be sw a5,232(sp) - 800017ec: 0741 addi a4,a4,16 - 800017ee: fefcd4e3 bge s9,a5,800017d6 <_vfprintf_r+0xf74> - 800017f2: 65c2 ld a1,16(sp) - 800017f4: 6522 ld a0,8(sp) - 800017f6: 1190 addi a2,sp,224 - 800017f8: 184010ef jal 8000297c <__sprint_r> - 800017fc: da051de3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001800: 7dce ld s11,240(sp) - 80001802: 57ae lw a5,232(sp) - 80001804: 8752 mv a4,s4 - 80001806: bfc1 j 800017d6 <_vfprintf_r+0xf74> - 80001808: 572e lw a4,232(sp) - 8000180a: b27d j 800011b8 <_vfprintf_r+0x956> - 8000180c: 4c81 li s9,0 - 8000180e: 4301 li t1,0 - 80001810: e082 sd zero,64(sp) - 80001812: e482 sd zero,72(sp) - 80001814: fc02 sd zero,56(sp) - 80001816: f402 sd zero,40(sp) - 80001818: 0afc addi a5,sp,348 - 8000181a: 9ecff06f j 80000a06 <_vfprintf_r+0x1a4> - 8000181e: 00d97633 and a2,s2,a3 - 80001822: e0061e63 bnez a2,80000e3e <_vfprintf_r+0x5dc> - 80001826: 00fd3023 sd a5,0(s10) - 8000182a: 00dd3423 sd a3,8(s10) - 8000182e: f9ee sd s11,240(sp) - 80001830: d5da sw s6,232(sp) - 80001832: 479d li a5,7 - 80001834: e767d963 bge a5,s6,80000ea6 <_vfprintf_r+0x644> - 80001838: 65c2 ld a1,16(sp) - 8000183a: 6522 ld a0,8(sp) - 8000183c: 1190 addi a2,sp,224 - 8000183e: fc42 sd a6,56(sp) - 80001840: 13c010ef jal 8000297c <__sprint_r> - 80001844: d60519e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001848: 7dce ld s11,240(sp) - 8000184a: 5b2e lw s6,232(sp) - 8000184c: 7862 ld a6,56(sp) - 8000184e: 8c52 mv s8,s4 - 80001850: e56ff06f j 80000ea6 <_vfprintf_r+0x644> - 80001854: 7742 ld a4,48(sp) - 80001856: 4785 li a5,1 - 80001858: e4e7d763 bge a5,a4,80000ea6 <_vfprintf_r+0x644> - 8000185c: 47c5 li a5,17 - 8000185e: 00008497 auipc s1,0x8 - 80001862: d5a48493 addi s1,s1,-678 # 800095b8 - 80001866: 50e7d063 bge a5,a4,80001d66 <_vfprintf_r+0x1504> - 8000186a: 876e mv a4,s11 - 8000186c: 84e6 mv s1,s9 - 8000186e: 8dd6 mv s11,s5 - 80001870: 4d41 li s10,16 - 80001872: 8aca mv s5,s2 - 80001874: 479d li a5,7 - 80001876: 00008917 auipc s2,0x8 - 8000187a: d4290913 addi s2,s2,-702 # 800095b8 - 8000187e: 8cc2 mv s9,a6 - 80001880: a021 j 80001888 <_vfprintf_r+0x1026> - 80001882: 34c1 addiw s1,s1,-16 - 80001884: 4c9d5b63 bge s10,s1,80001d5a <_vfprintf_r+0x14f8> - 80001888: 0741 addi a4,a4,16 - 8000188a: 2b05 addiw s6,s6,1 - 8000188c: 012c3023 sd s2,0(s8) - 80001890: 01ac3423 sd s10,8(s8) - 80001894: f9ba sd a4,240(sp) - 80001896: d5da sw s6,232(sp) - 80001898: 0c41 addi s8,s8,16 - 8000189a: ff67d4e3 bge a5,s6,80001882 <_vfprintf_r+0x1020> - 8000189e: 65c2 ld a1,16(sp) - 800018a0: 6522 ld a0,8(sp) - 800018a2: 1190 addi a2,sp,224 - 800018a4: 0d8010ef jal 8000297c <__sprint_r> - 800018a8: d00517e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 800018ac: 774e ld a4,240(sp) - 800018ae: 5b2e lw s6,232(sp) - 800018b0: 8c52 mv s8,s4 - 800018b2: 479d li a5,7 - 800018b4: b7f9 j 80001882 <_vfprintf_r+0x1020> - 800018b6: 00197793 andi a5,s2,1 - 800018ba: 9c078763 beqz a5,80000a88 <_vfprintf_r+0x226> - 800018be: fa6ff06f j 80001064 <_vfprintf_r+0x802> - 800018c2: 07a1 addi a5,a5,8 - 800018c4: 000ace03 lbu t3,0(s5) - 800018c8: f03e sd a5,32(sp) - 800018ca: 8c4ff06f j 8000098e <_vfprintf_r+0x12c> - 800018ce: 8b26 mv s6,s1 - 800018d0: 4481 li s1,0 - 800018d2: 94aff06f j 80000a1c <_vfprintf_r+0x1ba> - 800018d6: 000c881b sext.w a6,s9 - 800018da: f402 sd zero,40(sp) - 800018dc: e082 sd zero,64(sp) - 800018de: e482 sd zero,72(sp) - 800018e0: fc02 sd zero,56(sp) - 800018e2: 924ff06f j 80000a06 <_vfprintf_r+0x1a4> - 800018e6: 7702 ld a4,32(sp) - 800018e8: 0a0103a3 sb zero,167(sp) - 800018ec: 8fca mv t6,s2 - 800018ee: 00073b03 ld s6,0(a4) - 800018f2: 98035fe3 bgez t1,80001290 <_vfprintf_r+0xa2e> - 800018f6: 7782 ld a5,32(sp) - 800018f8: 48a5 li a7,9 - 800018fa: 897e mv s2,t6 - 800018fc: 07a1 addi a5,a5,8 - 800018fe: f03e sd a5,32(sp) - 80001900: 8768fbe3 bgeu a7,s6,80001176 <_vfprintf_r+0x914> - 80001904: ccccd7b7 lui a5,0xccccd - 80001908: ccd78793 addi a5,a5,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> - 8000190c: 02079713 slli a4,a5,0x20 - 80001910: 0ae4 addi s1,sp,348 - 80001912: 7dc6 ld s11,112(sp) - 80001914: 00f70833 add a6,a4,a5 - 80001918: 86a6 mv a3,s1 - 8000191a: 40097c93 andi s9,s2,1024 - 8000191e: 4581 li a1,0 - 80001920: a809 j 80001932 <_vfprintf_r+0x10d0> - 80001922: 855a mv a0,s6 - 80001924: 86be mv a3,a5 - 80001926: 030b3b33 mulhu s6,s6,a6 - 8000192a: 003b5b13 srli s6,s6,0x3 - 8000192e: 04a8f363 bgeu a7,a0,80001974 <_vfprintf_r+0x1112> - 80001932: 030b3633 mulhu a2,s6,a6 - 80001936: fff68793 addi a5,a3,-1 - 8000193a: 2585 addiw a1,a1,1 - 8000193c: 855a mv a0,s6 - 8000193e: 820d srli a2,a2,0x3 - 80001940: 00261713 slli a4,a2,0x2 - 80001944: 9732 add a4,a4,a2 - 80001946: 0706 slli a4,a4,0x1 - 80001948: 40eb0733 sub a4,s6,a4 - 8000194c: 0307071b addiw a4,a4,48 - 80001950: fee68fa3 sb a4,-1(a3) - 80001954: 86be mv a3,a5 - 80001956: fc0c88e3 beqz s9,80001926 <_vfprintf_r+0x10c4> - 8000195a: 000dc703 lbu a4,0(s11) - 8000195e: f0170693 addi a3,a4,-255 - 80001962: 8f0d sub a4,a4,a1 - 80001964: 00d036b3 snez a3,a3 - 80001968: 00173713 seqz a4,a4 - 8000196c: 8f75 and a4,a4,a3 - 8000196e: db55 beqz a4,80001922 <_vfprintf_r+0x10c0> - 80001970: 3368eae3 bltu a7,s6,800024a4 <_vfprintf_r+0x1c42> - 80001974: f8ee sd s11,112(sp) - 80001976: f82e sd a1,48(sp) - 80001978: 40f48cbb subw s9,s1,a5 - 8000197c: 0003081b sext.w a6,t1 - 80001980: 01935463 bge t1,s9,80001988 <_vfprintf_r+0x1126> - 80001984: 000c881b sext.w a6,s9 - 80001988: 0a714583 lbu a1,167(sp) - 8000198c: f402 sd zero,40(sp) - 8000198e: e082 sd zero,64(sp) - 80001990: e482 sd zero,72(sp) - 80001992: fc02 sd zero,56(sp) - 80001994: 4601 li a2,0 - 80001996: c4058863 beqz a1,80000de6 <_vfprintf_r+0x584> - 8000199a: 819ff06f j 800011b2 <_vfprintf_r+0x950> - 8000199e: 884a mv a6,s2 - 800019a0: b421 j 800013a8 <_vfprintf_r+0xb46> - 800019a2: 7782 ld a5,32(sp) - 800019a4: 07bd addi a5,a5,15 - 800019a6: 9bc1 andi a5,a5,-16 - 800019a8: 01078713 addi a4,a5,16 - 800019ac: 6388 ld a0,0(a5) - 800019ae: 678c ld a1,8(a5) - 800019b0: f03a sd a4,32(sp) - 800019b2: 988ff06f j 80000b3a <_vfprintf_r+0x2d8> - 800019b6: 629c ld a5,0(a3) - 800019b8: 66e2 ld a3,24(sp) - 800019ba: e394 sd a3,0(a5) - 800019bc: f03a sd a4,32(sp) - 800019be: f5ffe06f j 8000091c <_vfprintf_r+0xba> - 800019c2: 7782 ld a5,32(sp) - 800019c4: 00878713 addi a4,a5,8 - 800019c8: 7782 ld a5,32(sp) - 800019ca: 897e mv s2,t6 - 800019cc: f03a sd a4,32(sp) - 800019ce: 639c ld a5,0(a5) - 800019d0: 8b3e mv s6,a5 - 800019d2: f3eff06f j 80001110 <_vfprintf_r+0x8ae> - 800019d6: 0a714583 lbu a1,167(sp) - 800019da: 4805 li a6,1 - 800019dc: 4601 li a2,0 - 800019de: f402 sd zero,40(sp) - 800019e0: 4c85 li s9,1 - 800019e2: e082 sd zero,64(sp) - 800019e4: e482 sd zero,72(sp) - 800019e6: fc02 sd zero,56(sp) - 800019e8: 15b10793 addi a5,sp,347 - 800019ec: faeff06f j 8000119a <_vfprintf_r+0x938> - 800019f0: f02e sd a1,32(sp) - 800019f2: 00296913 ori s2,s2,2 - 800019f6: 4581 li a1,0 - 800019f8: 4609 li a2,2 - 800019fa: 00008517 auipc a0,0x8 - 800019fe: 8be50513 addi a0,a0,-1858 # 800092b8 <__clzdi2+0x2de> - 80001a02: 07800c13 li s8,120 - 80001a06: 0ae4 addi s1,sp,348 - 80001a08: 87a6 mv a5,s1 - 80001a0a: 00f77693 andi a3,a4,15 - 80001a0e: 96aa add a3,a3,a0 - 80001a10: 0006c683 lbu a3,0(a3) - 80001a14: 8311 srli a4,a4,0x4 - 80001a16: 17fd addi a5,a5,-1 - 80001a18: 00d78023 sb a3,0(a5) - 80001a1c: f77d bnez a4,80001a0a <_vfprintf_r+0x11a8> - 80001a1e: 40f48cbb subw s9,s1,a5 - 80001a22: 0003081b sext.w a6,t1 - 80001a26: 01935463 bge t1,s9,80001a2e <_vfprintf_r+0x11cc> - 80001a2a: 000c881b sext.w a6,s9 - 80001a2e: f402 sd zero,40(sp) - 80001a30: e082 sd zero,64(sp) - 80001a32: e482 sd zero,72(sp) - 80001a34: fc02 sd zero,56(sp) - 80001a36: ba058863 beqz a1,80000de6 <_vfprintf_r+0x584> - 80001a3a: f78ff06f j 800011b2 <_vfprintf_r+0x950> - 80001a3e: 8732 mv a4,a2 - 80001a40: 0007049b sext.w s1,a4 - 80001a44: cc9044e3 bgtz s1,8000170c <_vfprintf_r+0xeaa> - 80001a48: b9f9 j 80001726 <_vfprintf_r+0xec4> - 80001a4a: 537d li t1,-1 - 80001a4c: b8c9 j 8000131e <_vfprintf_r+0xabc> - 80001a4e: 001ace03 lbu t3,1(s5) - 80001a52: 20096913 ori s2,s2,512 - 80001a56: 0a85 addi s5,s5,1 - 80001a58: f37fe06f j 8000098e <_vfprintf_r+0x12c> - 80001a5c: 65c2 ld a1,16(sp) - 80001a5e: 6522 ld a0,8(sp) - 80001a60: 1190 addi a2,sp,224 - 80001a62: fc42 sd a6,56(sp) - 80001a64: 719000ef jal 8000297c <__sprint_r> - 80001a68: b40517e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001a6c: 7dce ld s11,240(sp) - 80001a6e: 7862 ld a6,56(sp) - 80001a70: 8d52 mv s10,s4 - 80001a72: e10ff06f j 80001082 <_vfprintf_r+0x820> - 80001a76: 001ace03 lbu t3,1(s5) - 80001a7a: 02096913 ori s2,s2,32 - 80001a7e: 0a85 addi s5,s5,1 - 80001a80: f0ffe06f j 8000098e <_vfprintf_r+0x12c> - 80001a84: 8326 mv t1,s1 - 80001a86: 00008517 auipc a0,0x8 - 80001a8a: 84a50513 addi a0,a0,-1974 # 800092d0 <__clzdi2+0x2f6> - 80001a8e: 7702 ld a4,32(sp) - 80001a90: 02097793 andi a5,s2,32 - 80001a94: 00870593 addi a1,a4,8 - 80001a98: cfe1 beqz a5,80001b70 <_vfprintf_r+0x130e> - 80001a9a: 6318 ld a4,0(a4) - 80001a9c: 00e037b3 snez a5,a4 - 80001aa0: 00f976b3 and a3,s2,a5 - 80001aa4: e2ed bnez a3,80001b86 <_vfprintf_r+0x1324> - 80001aa6: 0a0103a3 sb zero,167(sp) - 80001aaa: 12034e63 bltz t1,80001be6 <_vfprintf_r+0x1384> - 80001aae: 00f367b3 or a5,t1,a5 - 80001ab2: b7f97913 andi s2,s2,-1153 - 80001ab6: 4601 li a2,0 - 80001ab8: a00791e3 bnez a5,800014ba <_vfprintf_r+0xc58> - 80001abc: f02e sd a1,32(sp) - 80001abe: fe4ff06f j 800012a2 <_vfprintf_r+0xa40> - 80001ac2: 8326 mv t1,s1 - 80001ac4: 00007517 auipc a0,0x7 - 80001ac8: 7f450513 addi a0,a0,2036 # 800092b8 <__clzdi2+0x2de> - 80001acc: b7c9 j 80001a8e <_vfprintf_r+0x122c> - 80001ace: 4881 li a7,0 - 80001ad0: b9b1 j 8000172c <_vfprintf_r+0xeca> - 80001ad2: 4799 li a5,6 - 80001ad4: 0003081b sext.w a6,t1 - 80001ad8: 6667e963 bltu a5,t1,8000214a <_vfprintf_r+0x18e8> - 80001adc: f026 sd s1,32(sp) - 80001ade: 8cc2 mv s9,a6 - 80001ae0: f402 sd zero,40(sp) - 80001ae2: 4301 li t1,0 - 80001ae4: e082 sd zero,64(sp) - 80001ae6: e482 sd zero,72(sp) - 80001ae8: fc02 sd zero,56(sp) - 80001aea: 00007797 auipc a5,0x7 - 80001aee: 7fe78793 addi a5,a5,2046 # 800092e8 <__clzdi2+0x30e> - 80001af2: f15fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80001af6: 4341 li t1,16 - 80001af8: 56ae lw a3,232(sp) - 80001afa: 00008497 auipc s1,0x8 - 80001afe: abe48493 addi s1,s1,-1346 # 800095b8 - 80001b02: 49835963 bge t1,s8,80001f94 <_vfprintf_r+0x1732> - 80001b06: 8756 mv a4,s5 - 80001b08: 84e2 mv s1,s8 - 80001b0a: 8aca mv s5,s2 - 80001b0c: 4c9d li s9,7 - 80001b0e: 893e mv s2,a5 - 80001b10: 00008b17 auipc s6,0x8 - 80001b14: aa8b0b13 addi s6,s6,-1368 # 800095b8 - 80001b18: 87ea mv a5,s10 - 80001b1a: 8c42 mv s8,a6 - 80001b1c: 8d3a mv s10,a4 - 80001b1e: a021 j 80001b26 <_vfprintf_r+0x12c4> - 80001b20: 34c1 addiw s1,s1,-16 - 80001b22: 46935163 bge t1,s1,80001f84 <_vfprintf_r+0x1722> - 80001b26: 0dc1 addi s11,s11,16 - 80001b28: 2685 addiw a3,a3,1 - 80001b2a: 0167b023 sd s6,0(a5) - 80001b2e: 0067b423 sd t1,8(a5) - 80001b32: f9ee sd s11,240(sp) - 80001b34: d5b6 sw a3,232(sp) - 80001b36: 07c1 addi a5,a5,16 - 80001b38: fedcd4e3 bge s9,a3,80001b20 <_vfprintf_r+0x12be> - 80001b3c: 65c2 ld a1,16(sp) - 80001b3e: 6522 ld a0,8(sp) - 80001b40: 1190 addi a2,sp,224 - 80001b42: 63b000ef jal 8000297c <__sprint_r> - 80001b46: a60518e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001b4a: 7dce ld s11,240(sp) - 80001b4c: 56ae lw a3,232(sp) - 80001b4e: 87d2 mv a5,s4 - 80001b50: 4341 li t1,16 - 80001b52: b7f9 j 80001b20 <_vfprintf_r+0x12be> - 80001b54: 20097613 andi a2,s2,512 - 80001b58: 0a0103a3 sb zero,167(sp) - 80001b5c: 7782 ld a5,32(sp) - 80001b5e: 68060763 beqz a2,800021ec <_vfprintf_r+0x198a> - 80001b62: 0007cb03 lbu s6,0(a5) - 80001b66: 8e04dee3 bgez s1,80001462 <_vfprintf_r+0xc00> - 80001b6a: f03a sd a4,32(sp) - 80001b6c: e04ff06f j 80001170 <_vfprintf_r+0x90e> - 80001b70: 01097793 andi a5,s2,16 - 80001b74: 14078063 beqz a5,80001cb4 <_vfprintf_r+0x1452> - 80001b78: 7782 ld a5,32(sp) + 8000157e: 00fc3023 sd a5,0(s8) + 80001582: 019c3423 sd s9,8(s8) + 80001586: 479d li a5,7 + 80001588: 1967cce3 blt a5,s6,80001f20 <_vfprintf_r+0xfd6> + 8000158c: 0c41 addi s8,s8,16 + 8000158e: 7706 ld a4,96(sp) + 80001590: 193c addi a5,sp,184 + 80001592: 2b05 addiw s6,s6,1 + 80001594: 9dba add s11,s11,a4 + 80001596: 00fc3023 sd a5,0(s8) + 8000159a: f9ee sd s11,240(sp) + 8000159c: d5da sw s6,232(sp) + 8000159e: 00ec3423 sd a4,8(s8) + 800015a2: 479d li a5,7 + 800015a4: 010c0d13 addi s10,s8,16 + 800015a8: bd67d4e3 bge a5,s6,80001170 <_vfprintf_r+0x226> + 800015ac: 65c2 ld a1,16(sp) + 800015ae: 6522 ld a0,8(sp) + 800015b0: 1190 addi a2,sp,224 + 800015b2: fc42 sd a6,56(sp) + 800015b4: 2b1010ef jal 80003064 <__sprint_r> + 800015b8: 6e051363 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800015bc: 7dce ld s11,240(sp) + 800015be: 7862 ld a6,56(sp) + 800015c0: 8d52 mv s10,s4 + 800015c2: b67d j 80001170 <_vfprintf_r+0x226> + 800015c4: 7702 ld a4,32(sp) + 800015c6: 4c85 li s9,1 + 800015c8: 0a0103a3 sb zero,167(sp) + 800015cc: 431c lw a5,0(a4) + 800015ce: 0ef10c23 sb a5,248(sp) + 800015d2: 00870793 addi a5,a4,8 + 800015d6: f03e sd a5,32(sp) + 800015d8: b621 j 800010e0 <_vfprintf_r+0x196> + 800015da: 7702 ld a4,32(sp) + 800015dc: 0a0103a3 sb zero,167(sp) + 800015e0: 8326 mv t1,s1 + 800015e2: 631c ld a5,0(a4) + 800015e4: 00870493 addi s1,a4,8 + 800015e8: 3c0789e3 beqz a5,800021ba <_vfprintf_r+0x1270> + 800015ec: 66034de3 bltz t1,80002466 <_vfprintf_r+0x151c> + 800015f0: 861a mv a2,t1 + 800015f2: 853e mv a0,a5 + 800015f4: 4581 li a1,0 + 800015f6: fc1a sd t1,56(sp) + 800015f8: f03e sd a5,32(sp) + 800015fa: 3a9020ef jal 800041a2 + 800015fe: f42a sd a0,40(sp) + 80001600: 0a714703 lbu a4,167(sp) + 80001604: 7782 ld a5,32(sp) + 80001606: 7362 ld t1,56(sp) + 80001608: e119 bnez a0,8000160e <_vfprintf_r+0x6c4> + 8000160a: 56a0106f j 80002b74 <_vfprintf_r+0x1c2a> + 8000160e: 40f50cbb subw s9,a0,a5 + 80001612: 86e6 mv a3,s9 + 80001614: 000cd463 bgez s9,8000161c <_vfprintf_r+0x6d2> + 80001618: 32c0106f j 80002944 <_vfprintf_r+0x19fa> + 8000161c: 0006881b sext.w a6,a3 + 80001620: c319 beqz a4,80001626 <_vfprintf_r+0x6dc> + 80001622: 2960106f j 800028b8 <_vfprintf_r+0x196e> + 80001626: f026 sd s1,32(sp) + 80001628: 7dce ld s11,240(sp) + 8000162a: f402 sd zero,40(sp) + 8000162c: e082 sd zero,64(sp) + 8000162e: e482 sd zero,72(sp) + 80001630: fc02 sd zero,56(sp) + 80001632: 08497493 andi s1,s2,132 + 80001636: 4301 li t1,0 + 80001638: 86ee mv a3,s11 + 8000163a: ac0490e3 bnez s1,800010fa <_vfprintf_r+0x1b0> + 8000163e: 410b8b3b subw s6,s7,a6 + 80001642: 0b6047e3 bgtz s6,80001ef0 <_vfprintf_r+0xfa6> + 80001646: 0a714703 lbu a4,167(sp) + 8000164a: aa071be3 bnez a4,80001100 <_vfprintf_r+0x1b6> + 8000164e: 41930b3b subw s6,t1,s9 + 80001652: af605fe3 blez s6,80001150 <_vfprintf_r+0x206> + 80001656: 56ae lw a3,232(sp) + 80001658: 00009497 auipc s1,0x9 + 8000165c: 8f048493 addi s1,s1,-1808 # 80009f48 + 80001660: 07645363 bge s0,s6,800016c6 <_vfprintf_r+0x77c> + 80001664: 876e mv a4,s11 + 80001666: 84da mv s1,s6 + 80001668: 8dd6 mv s11,s5 + 8000166a: 8b4a mv s6,s2 + 8000166c: 8abe mv s5,a5 + 8000166e: 00009917 auipc s2,0x9 + 80001672: 8da90913 addi s2,s2,-1830 # 80009f48 + 80001676: 87ea mv a5,s10 + 80001678: 8d66 mv s10,s9 + 8000167a: 8cc2 mv s9,a6 + 8000167c: a021 j 80001684 <_vfprintf_r+0x73a> + 8000167e: 34c1 addiw s1,s1,-16 + 80001680: 02945963 bge s0,s1,800016b2 <_vfprintf_r+0x768> + 80001684: 0741 addi a4,a4,16 + 80001686: 2685 addiw a3,a3,1 + 80001688: 0127b023 sd s2,0(a5) + 8000168c: e780 sd s0,8(a5) + 8000168e: f9ba sd a4,240(sp) + 80001690: d5b6 sw a3,232(sp) + 80001692: 07c1 addi a5,a5,16 + 80001694: fed9d5e3 bge s3,a3,8000167e <_vfprintf_r+0x734> + 80001698: 65c2 ld a1,16(sp) + 8000169a: 6522 ld a0,8(sp) + 8000169c: 1190 addi a2,sp,224 + 8000169e: 1c7010ef jal 80003064 <__sprint_r> + 800016a2: 5e051e63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800016a6: 34c1 addiw s1,s1,-16 + 800016a8: 774e ld a4,240(sp) + 800016aa: 56ae lw a3,232(sp) + 800016ac: 87d2 mv a5,s4 + 800016ae: fc944be3 blt s0,s1,80001684 <_vfprintf_r+0x73a> + 800016b2: 8866 mv a6,s9 + 800016b4: 8cea mv s9,s10 + 800016b6: 8d3e mv s10,a5 + 800016b8: 87d6 mv a5,s5 + 800016ba: 8aee mv s5,s11 + 800016bc: 8dba mv s11,a4 + 800016be: 874a mv a4,s2 + 800016c0: 895a mv s2,s6 + 800016c2: 8b26 mv s6,s1 + 800016c4: 84ba mv s1,a4 + 800016c6: 9dda add s11,s11,s6 + 800016c8: 2685 addiw a3,a3,1 + 800016ca: 009d3023 sd s1,0(s10) + 800016ce: 016d3423 sd s6,8(s10) + 800016d2: f9ee sd s11,240(sp) + 800016d4: d5b6 sw a3,232(sp) + 800016d6: 471d li a4,7 + 800016d8: 0d41 addi s10,s10,16 + 800016da: a6d75be3 bge a4,a3,80001150 <_vfprintf_r+0x206> + 800016de: 65c2 ld a1,16(sp) + 800016e0: 6522 ld a0,8(sp) + 800016e2: 1190 addi a2,sp,224 + 800016e4: e142 sd a6,128(sp) + 800016e6: fcbe sd a5,120(sp) + 800016e8: 17d010ef jal 80003064 <__sprint_r> + 800016ec: 5a051963 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800016f0: 10097713 andi a4,s2,256 + 800016f4: 7dce ld s11,240(sp) + 800016f6: 680a ld a6,128(sp) + 800016f8: 77e6 ld a5,120(sp) + 800016fa: 8d52 mv s10,s4 + 800016fc: a4070ee3 beqz a4,80001158 <_vfprintf_r+0x20e> + 80001700: 06500713 li a4,101 + 80001704: e18757e3 bge a4,s8,80001512 <_vfprintf_r+0x5c8> + 80001708: 654e ld a0,208(sp) + 8000170a: 65ee ld a1,216(sp) + 8000170c: 4601 li a2,0 + 8000170e: 4681 li a3,0 + 80001710: e142 sd a6,128(sp) + 80001712: fcbe sd a5,120(sp) + 80001714: 595060ef jal 800084a8 <__eqtf2> + 80001718: 77e6 ld a5,120(sp) + 8000171a: 680a ld a6,128(sp) + 8000171c: 6c051063 bnez a0,80001ddc <_vfprintf_r+0xe92> + 80001720: 57ae lw a5,232(sp) + 80001722: 00008717 auipc a4,0x8 + 80001726: 55e70713 addi a4,a4,1374 # 80009c80 <__clzdi2+0x5be> + 8000172a: 00ed3023 sd a4,0(s10) + 8000172e: 0d85 addi s11,s11,1 + 80001730: 4705 li a4,1 + 80001732: 2785 addiw a5,a5,1 + 80001734: 00ed3423 sd a4,8(s10) + 80001738: f9ee sd s11,240(sp) + 8000173a: d5be sw a5,232(sp) + 8000173c: 471d li a4,7 + 8000173e: 0d41 addi s10,s10,16 + 80001740: 46f74be3 blt a4,a5,800023b6 <_vfprintf_r+0x146c> + 80001744: 57ca lw a5,176(sp) + 80001746: 7742 ld a4,48(sp) + 80001748: 04e7dbe3 bge a5,a4,80001f9e <_vfprintf_r+0x1054> + 8000174c: 6746 ld a4,80(sp) + 8000174e: 57ae lw a5,232(sp) + 80001750: 66e6 ld a3,88(sp) + 80001752: 9dba add s11,s11,a4 + 80001754: 2785 addiw a5,a5,1 + 80001756: 00ed3423 sd a4,8(s10) + 8000175a: 00dd3023 sd a3,0(s10) + 8000175e: f9ee sd s11,240(sp) + 80001760: d5be sw a5,232(sp) + 80001762: 471d li a4,7 + 80001764: 0d41 addi s10,s10,16 + 80001766: 1cf74fe3 blt a4,a5,80002144 <_vfprintf_r+0x11fa> + 8000176a: 77c2 ld a5,48(sp) + 8000176c: fff78b1b addiw s6,a5,-1 + 80001770: a16050e3 blez s6,80001170 <_vfprintf_r+0x226> + 80001774: 4c41 li s8,16 + 80001776: 57ae lw a5,232(sp) + 80001778: 016c4463 blt s8,s6,80001780 <_vfprintf_r+0x836> + 8000177c: 2620106f j 800029de <_vfprintf_r+0x1a94> + 80001780: 876a mv a4,s10 + 80001782: 84da mv s1,s6 + 80001784: 8d56 mv s10,s5 + 80001786: 4c9d li s9,7 + 80001788: 8aca mv s5,s2 + 8000178a: 8b42 mv s6,a6 + 8000178c: 00008917 auipc s2,0x8 + 80001790: 7bc90913 addi s2,s2,1980 # 80009f48 + 80001794: a021 j 8000179c <_vfprintf_r+0x852> + 80001796: 34c1 addiw s1,s1,-16 + 80001798: 429c5ce3 bge s8,s1,800023d0 <_vfprintf_r+0x1486> + 8000179c: 0dc1 addi s11,s11,16 + 8000179e: 2785 addiw a5,a5,1 + 800017a0: 01273023 sd s2,0(a4) + 800017a4: 01873423 sd s8,8(a4) + 800017a8: f9ee sd s11,240(sp) + 800017aa: d5be sw a5,232(sp) + 800017ac: 0741 addi a4,a4,16 + 800017ae: fefcd4e3 bge s9,a5,80001796 <_vfprintf_r+0x84c> + 800017b2: 65c2 ld a1,16(sp) + 800017b4: 6522 ld a0,8(sp) + 800017b6: 1190 addi a2,sp,224 + 800017b8: 0ad010ef jal 80003064 <__sprint_r> + 800017bc: 4e051163 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800017c0: 7dce ld s11,240(sp) + 800017c2: 57ae lw a5,232(sp) + 800017c4: 8752 mv a4,s4 + 800017c6: bfc1 j 80001796 <_vfprintf_r+0x84c> + 800017c8: 7702 ld a4,32(sp) + 800017ca: 02097793 andi a5,s2,32 + 800017ce: 8326 mv t1,s1 + 800017d0: 0721 addi a4,a4,8 + 800017d2: e3bd bnez a5,80001838 <_vfprintf_r+0x8ee> + 800017d4: 01097793 andi a5,s2,16 + 800017d8: c399 beqz a5,800017de <_vfprintf_r+0x894> + 800017da: 43a0106f j 80002c14 <_vfprintf_r+0x1cca> + 800017de: 7682 ld a3,32(sp) + 800017e0: 04097793 andi a5,s2,64 + 800017e4: 0006ab03 lw s6,0(a3) + 800017e8: 4e0780e3 beqz a5,800024c8 <_vfprintf_r+0x157e> + 800017ec: 010b1b1b slliw s6,s6,0x10 + 800017f0: 410b5b1b sraiw s6,s6,0x10 + 800017f4: f03a sd a4,32(sp) + 800017f6: 87da mv a5,s6 + 800017f8: 0407c663 bltz a5,80001844 <_vfprintf_r+0x8fa> + 800017fc: 04034e63 bltz t1,80001858 <_vfprintf_r+0x90e> + 80001800: 006b67b3 or a5,s6,t1 + 80001804: f7f97913 andi s2,s2,-129 + 80001808: eba1 bnez a5,80001858 <_vfprintf_r+0x90e> + 8000180a: 0a714803 lbu a6,167(sp) + 8000180e: f402 sd zero,40(sp) + 80001810: 4c81 li s9,0 + 80001812: 01003833 snez a6,a6 + 80001816: 4301 li t1,0 + 80001818: e082 sd zero,64(sp) + 8000181a: e482 sd zero,72(sp) + 8000181c: fc02 sd zero,56(sp) + 8000181e: 0afc addi a5,sp,348 + 80001820: b0f9 j 800010ee <_vfprintf_r+0x1a4> + 80001822: 02097793 andi a5,s2,32 + 80001826: 8326 mv t1,s1 + 80001828: 01096f93 ori t6,s2,16 + 8000182c: 06078fe3 beqz a5,800020aa <_vfprintf_r+0x1160> + 80001830: 7782 ld a5,32(sp) + 80001832: 897e mv s2,t6 + 80001834: 00878713 addi a4,a5,8 + 80001838: 7782 ld a5,32(sp) + 8000183a: f03a sd a4,32(sp) + 8000183c: 639c ld a5,0(a5) + 8000183e: 8b3e mv s6,a5 + 80001840: fa07dee3 bgez a5,800017fc <_vfprintf_r+0x8b2> + 80001844: 02d00793 li a5,45 + 80001848: 0af103a3 sb a5,167(sp) + 8000184c: 41600b33 neg s6,s6 + 80001850: 00034463 bltz t1,80001858 <_vfprintf_r+0x90e> + 80001854: f7f97913 andi s2,s2,-129 + 80001858: 48a5 li a7,9 + 8000185a: 7968e963 bltu a7,s6,80001fec <_vfprintf_r+0x10a2> + 8000185e: 030b0b1b addiw s6,s6,48 + 80001862: 15610da3 sb s6,347(sp) + 80001866: 0003081b sext.w a6,t1 + 8000186a: 04605ae3 blez t1,800020be <_vfprintf_r+0x1174> + 8000186e: 0a714583 lbu a1,167(sp) + 80001872: 4601 li a2,0 + 80001874: f402 sd zero,40(sp) + 80001876: 4c85 li s9,1 + 80001878: e082 sd zero,64(sp) + 8000187a: e482 sd zero,72(sp) + 8000187c: fc02 sd zero,56(sp) + 8000187e: 15b10793 addi a5,sp,347 + 80001882: c40586e3 beqz a1,800014ce <_vfprintf_r+0x584> + 80001886: a811 j 8000189a <_vfprintf_r+0x950> + 80001888: 7966 ld s2,120(sp) + 8000188a: 02d00593 li a1,45 + 8000188e: 0ab103a3 sb a1,167(sp) + 80001892: 4301 li t1,0 + 80001894: e082 sd zero,64(sp) + 80001896: e482 sd zero,72(sp) + 80001898: fc02 sd zero,56(sp) + 8000189a: 2805 addiw a6,a6,1 + 8000189c: b90d j 800014ce <_vfprintf_r+0x584> + 8000189e: 4489 li s1,2 + 800018a0: 4dc1 li s11,16 + 800018a2: 863a mv a2,a4 + 800018a4: 85b6 mv a1,a3 + 800018a6: 00008717 auipc a4,0x8 + 800018aa: 6b270713 addi a4,a4,1714 # 80009f58 + 800018ae: 076dd563 bge s11,s6,80001918 <_vfprintf_r+0x9ce> + 800018b2: e126 sd s1,128(sp) + 800018b4: e93e sd a5,144(sp) + 800018b6: 84da mv s1,s6 + 800018b8: 87ea mv a5,s10 + 800018ba: 469d li a3,7 + 800018bc: 8d56 mv s10,s5 + 800018be: fc9a sd t1,120(sp) + 800018c0: 8aca mv s5,s2 + 800018c2: 8b42 mv s6,a6 + 800018c4: 00008917 auipc s2,0x8 + 800018c8: 69490913 addi s2,s2,1684 # 80009f58 + 800018cc: a021 j 800018d4 <_vfprintf_r+0x98a> + 800018ce: 34c1 addiw s1,s1,-16 + 800018d0: 029ddb63 bge s11,s1,80001906 <_vfprintf_r+0x9bc> + 800018d4: 05c1 addi a1,a1,16 + 800018d6: 2605 addiw a2,a2,1 + 800018d8: 0127b023 sd s2,0(a5) + 800018dc: 01b7b423 sd s11,8(a5) + 800018e0: f9ae sd a1,240(sp) + 800018e2: d5b2 sw a2,232(sp) + 800018e4: 07c1 addi a5,a5,16 + 800018e6: fec6d4e3 bge a3,a2,800018ce <_vfprintf_r+0x984> + 800018ea: 65c2 ld a1,16(sp) + 800018ec: 6522 ld a0,8(sp) + 800018ee: 1190 addi a2,sp,224 + 800018f0: 774010ef jal 80003064 <__sprint_r> + 800018f4: 3a051563 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800018f8: 34c1 addiw s1,s1,-16 + 800018fa: 75ce ld a1,240(sp) + 800018fc: 562e lw a2,232(sp) + 800018fe: 87d2 mv a5,s4 + 80001900: 469d li a3,7 + 80001902: fc9dc9e3 blt s11,s1,800018d4 <_vfprintf_r+0x98a> + 80001906: 885a mv a6,s6 + 80001908: 874a mv a4,s2 + 8000190a: 8b26 mv s6,s1 + 8000190c: 8956 mv s2,s5 + 8000190e: 7366 ld t1,120(sp) + 80001910: 8aea mv s5,s10 + 80001912: 648a ld s1,128(sp) + 80001914: 8d3e mv s10,a5 + 80001916: 67ca ld a5,144(sp) + 80001918: 00bb0db3 add s11,s6,a1 + 8000191c: 2605 addiw a2,a2,1 + 8000191e: 00ed3023 sd a4,0(s10) + 80001922: f9ee sd s11,240(sp) + 80001924: d5b2 sw a2,232(sp) + 80001926: 016d3423 sd s6,8(s10) + 8000192a: 471d li a4,7 + 8000192c: 1ac747e3 blt a4,a2,800022da <_vfprintf_r+0x1390> + 80001930: 0a714703 lbu a4,167(sp) + 80001934: 0d41 addi s10,s10,16 + 80001936: 68071063 bnez a4,80001fb6 <_vfprintf_r+0x106c> + 8000193a: 800487e3 beqz s1,80001148 <_vfprintf_r+0x1fe> + 8000193e: 4481 li s1,0 + 80001940: fe6ff06f j 80001126 <_vfprintf_r+0x1dc> + 80001944: 7782 ld a5,32(sp) + 80001946: 0007ab83 lw s7,0(a5) + 8000194a: 660bd063 bgez s7,80001faa <_vfprintf_r+0x1060> + 8000194e: 7782 ld a5,32(sp) + 80001950: 41700bbb negw s7,s7 + 80001954: 07a1 addi a5,a5,8 + 80001956: f03e sd a5,32(sp) + 80001958: 000ace03 lbu t3,0(s5) + 8000195c: 00496913 ori s2,s2,4 + 80001960: f16ff06f j 80001076 <_vfprintf_r+0x12c> + 80001964: 7702 ld a4,32(sp) + 80001966: 0a0103a3 sb zero,167(sp) + 8000196a: 8326 mv t1,s1 + 8000196c: 00073b03 ld s6,0(a4) + 80001970: 01096f93 ori t6,s2,16 + 80001974: 66034563 bltz t1,80001fde <_vfprintf_r+0x1094> + 80001978: 0721 addi a4,a4,8 + 8000197a: 006b67b3 or a5,s6,t1 + 8000197e: f03a sd a4,32(sp) + 80001980: f7fff913 andi s2,t6,-129 + 80001984: 4601 li a2,0 + 80001986: ec0799e3 bnez a5,80001858 <_vfprintf_r+0x90e> + 8000198a: 0a714583 lbu a1,167(sp) + 8000198e: f402 sd zero,40(sp) + 80001990: e082 sd zero,64(sp) + 80001992: e482 sd zero,72(sp) + 80001994: fc02 sd zero,56(sp) + 80001996: 4801 li a6,0 + 80001998: 4c81 li s9,0 + 8000199a: 4301 li t1,0 + 8000199c: 0afc addi a5,sp,348 + 8000199e: b20588e3 beqz a1,800014ce <_vfprintf_r+0x584> + 800019a2: bde5 j 8000189a <_vfprintf_r+0x950> + 800019a4: 02b00793 li a5,43 + 800019a8: 000ace03 lbu t3,0(s5) + 800019ac: 0af103a3 sb a5,167(sp) + 800019b0: ec6ff06f j 80001076 <_vfprintf_r+0x12c> + 800019b4: 000ace03 lbu t3,0(s5) + 800019b8: 08096913 ori s2,s2,128 + 800019bc: ebaff06f j 80001076 <_vfprintf_r+0x12c> + 800019c0: 000acc03 lbu s8,0(s5) + 800019c4: 02a00793 li a5,42 + 800019c8: 001a8613 addi a2,s5,1 + 800019cc: 00fc1463 bne s8,a5,800019d4 <_vfprintf_r+0xa8a> + 800019d0: 5440106f j 80002f14 <_vfprintf_r+0x1fca> + 800019d4: fd0c071b addiw a4,s8,-48 + 800019d8: 45a5 li a1,9 + 800019da: 4681 li a3,0 + 800019dc: 8ab2 mv s5,a2 + 800019de: 4481 li s1,0 + 800019e0: e8e5ee63 bltu a1,a4,8000107c <_vfprintf_r+0x132> + 800019e4: 0026979b slliw a5,a3,0x2 + 800019e8: 00064c03 lbu s8,0(a2) + 800019ec: 9fb5 addw a5,a5,a3 + 800019ee: 0017979b slliw a5,a5,0x1 + 800019f2: 00e786bb addw a3,a5,a4 + 800019f6: fd0c071b addiw a4,s8,-48 + 800019fa: 0605 addi a2,a2,1 + 800019fc: fee5f4e3 bgeu a1,a4,800019e4 <_vfprintf_r+0xa9a> + 80001a00: 8336 mv t1,a3 + 80001a02: 7206c863 bltz a3,80002132 <_vfprintf_r+0x11e8> + 80001a06: 0003049b sext.w s1,t1 + 80001a0a: 8ab2 mv s5,a2 + 80001a0c: e70ff06f j 8000107c <_vfprintf_r+0x132> + 80001a10: 6c22 ld s8,8(sp) + 80001a12: 8562 mv a0,s8 + 80001a14: 000020ef jal 80003a14 <_localeconv_r> + 80001a18: 651c ld a5,8(a0) + 80001a1a: 853e mv a0,a5 + 80001a1c: f4be sd a5,104(sp) + 80001a1e: 6ea020ef jal 80004108 + 80001a22: 87aa mv a5,a0 + 80001a24: 8562 mv a0,s8 + 80001a26: e53e sd a5,136(sp) + 80001a28: 8c3e mv s8,a5 + 80001a2a: 7eb010ef jal 80003a14 <_localeconv_r> + 80001a2e: 6914 ld a3,16(a0) + 80001a30: 018037b3 snez a5,s8 + 80001a34: 000ace03 lbu t3,0(s5) + 80001a38: 00d03733 snez a4,a3 + 80001a3c: f8b6 sd a3,112(sp) + 80001a3e: 8ff9 and a5,a5,a4 + 80001a40: e2078b63 beqz a5,80001076 <_vfprintf_r+0x12c> + 80001a44: 0006c783 lbu a5,0(a3) + 80001a48: e2078763 beqz a5,80001076 <_vfprintf_r+0x12c> + 80001a4c: 40096913 ori s2,s2,1024 + 80001a50: e26ff06f j 80001076 <_vfprintf_r+0x12c> + 80001a54: 000ace03 lbu t3,0(s5) + 80001a58: 00196913 ori s2,s2,1 + 80001a5c: e1aff06f j 80001076 <_vfprintf_r+0x12c> + 80001a60: 0a714783 lbu a5,167(sp) + 80001a64: 000ace03 lbu t3,0(s5) + 80001a68: e0079763 bnez a5,80001076 <_vfprintf_r+0x12c> + 80001a6c: 02000793 li a5,32 + 80001a70: 0af103a3 sb a5,167(sp) + 80001a74: e02ff06f j 80001076 <_vfprintf_r+0x12c> + 80001a78: 000ace03 lbu t3,0(s5) + 80001a7c: 00896913 ori s2,s2,8 + 80001a80: df6ff06f j 80001076 <_vfprintf_r+0x12c> + 80001a84: 7782 ld a5,32(sp) + 80001a86: 8326 mv t1,s1 + 80001a88: 01096813 ori a6,s2,16 + 80001a8c: 00878713 addi a4,a5,8 + 80001a90: 7782 ld a5,32(sp) + 80001a92: 6394 ld a3,0(a5) + 80001a94: f03a sd a4,32(sp) + 80001a96: 0a0103a3 sb zero,167(sp) + 80001a9a: bff87913 andi s2,a6,-1025 + 80001a9e: 2e034d63 bltz t1,80001d98 <_vfprintf_r+0xe4e> + 80001aa2: 00d367b3 or a5,t1,a3 + 80001aa6: b7f87913 andi s2,a6,-1153 + 80001aaa: 2e079763 bnez a5,80001d98 <_vfprintf_r+0xe4e> + 80001aae: 00187813 andi a6,a6,1 + 80001ab2: 44080163 beqz a6,80001ef4 <_vfprintf_r+0xfaa> + 80001ab6: 03000793 li a5,48 + 80001aba: 14f10da3 sb a5,347(sp) + 80001abe: 8cc2 mv s9,a6 + 80001ac0: f402 sd zero,40(sp) + 80001ac2: 4301 li t1,0 + 80001ac4: e082 sd zero,64(sp) + 80001ac6: e482 sd zero,72(sp) + 80001ac8: fc02 sd zero,56(sp) + 80001aca: 15b10793 addi a5,sp,347 + 80001ace: e20ff06f j 800010ee <_vfprintf_r+0x1a4> + 80001ad2: 000ace03 lbu t3,0(s5) + 80001ad6: 06800793 li a5,104 + 80001ada: 64fe0e63 beq t3,a5,80002136 <_vfprintf_r+0x11ec> + 80001ade: 04096913 ori s2,s2,64 + 80001ae2: d94ff06f j 80001076 <_vfprintf_r+0x12c> + 80001ae6: 7682 ld a3,32(sp) + 80001ae8: 02097793 andi a5,s2,32 + 80001aec: 00868713 addi a4,a3,8 + 80001af0: 5a079763 bnez a5,8000209e <_vfprintf_r+0x1154> + 80001af4: 01097793 andi a5,s2,16 + 80001af8: 1a0788e3 beqz a5,800024a8 <_vfprintf_r+0x155e> + 80001afc: 7782 ld a5,32(sp) + 80001afe: 66e2 ld a3,24(sp) + 80001b00: 639c ld a5,0(a5) + 80001b02: e394 sd a3,0(a5) + 80001b04: f03a sd a4,32(sp) + 80001b06: cfeff06f j 80001004 <_vfprintf_r+0xba> + 80001b0a: 000ace03 lbu t3,0(s5) + 80001b0e: 06c00793 li a5,108 + 80001b12: 64fe0663 beq t3,a5,8000215e <_vfprintf_r+0x1214> + 80001b16: 01096913 ori s2,s2,16 + 80001b1a: d5cff06f j 80001076 <_vfprintf_r+0x12c> + 80001b1e: 02097793 andi a5,s2,32 + 80001b22: 8326 mv t1,s1 + 80001b24: 4a079563 bnez a5,80001fce <_vfprintf_r+0x1084> + 80001b28: 01097793 andi a5,s2,16 + 80001b2c: 4a079163 bnez a5,80001fce <_vfprintf_r+0x1084> + 80001b30: 7682 ld a3,32(sp) + 80001b32: 04097793 andi a5,s2,64 + 80001b36: 00868713 addi a4,a3,8 + 80001b3a: 70078163 beqz a5,8000223c <_vfprintf_r+0x12f2> + 80001b3e: 0a0103a3 sb zero,167(sp) + 80001b42: 0006db03 lhu s6,0(a3) + 80001b46: 7004c663 bltz s1,80002252 <_vfprintf_r+0x1308> + 80001b4a: 01636633 or a2,t1,s6 + 80001b4e: 2601 sext.w a2,a2 + 80001b50: f03a sd a4,32(sp) + 80001b52: f7f97913 andi s2,s2,-129 + 80001b56: d00611e3 bnez a2,80001858 <_vfprintf_r+0x90e> + 80001b5a: bd05 j 8000198a <_vfprintf_r+0xa40> + 80001b5c: 000ace03 lbu t3,0(s5) + 80001b60: 02096913 ori s2,s2,32 + 80001b64: d12ff06f j 80001076 <_vfprintf_r+0x12c> + 80001b68: 67a1 lui a5,0x8 + 80001b6a: 83078793 addi a5,a5,-2000 # 7830 + 80001b6e: 0af11423 sh a5,168(sp) + 80001b72: 7782 ld a5,32(sp) + 80001b74: 0a0103a3 sb zero,167(sp) + 80001b78: 8326 mv t1,s1 80001b7a: 6398 ld a4,0(a5) - 80001b7c: 00e037b3 snez a5,a4 - 80001b80: 00f976b3 and a3,s2,a5 - 80001b84: d28d beqz a3,80001aa6 <_vfprintf_r+0x1244> - 80001b86: 03000793 li a5,48 - 80001b8a: 0b8104a3 sb s8,169(sp) - 80001b8e: 0a0103a3 sb zero,167(sp) - 80001b92: 0af10423 sb a5,168(sp) - 80001b96: 3c034f63 bltz t1,80001f74 <_vfprintf_r+0x1712> - 80001b9a: b7f97f93 andi t6,s2,-1153 - 80001b9e: 002fe913 ori s2,t6,2 - 80001ba2: 4609 li a2,2 - 80001ba4: ba19 j 800014ba <_vfprintf_r+0xc58> - 80001ba6: 65c2 ld a1,16(sp) - 80001ba8: 6522 ld a0,8(sp) - 80001baa: 1190 addi a2,sp,224 - 80001bac: e0c2 sd a6,64(sp) - 80001bae: fc3e sd a5,56(sp) - 80001bb0: 5cd000ef jal 8000297c <__sprint_r> - 80001bb4: a00511e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001bb8: 7dce ld s11,240(sp) - 80001bba: 5b2e lw s6,232(sp) - 80001bbc: 6806 ld a6,64(sp) - 80001bbe: 77e2 ld a5,56(sp) - 80001bc0: 8c52 mv s8,s4 - 80001bc2: aacff06f j 80000e6e <_vfprintf_r+0x60c> - 80001bc6: 65c2 ld a1,16(sp) - 80001bc8: 6522 ld a0,8(sp) - 80001bca: 1190 addi a2,sp,224 - 80001bcc: e0c2 sd a6,64(sp) - 80001bce: fc3e sd a5,56(sp) - 80001bd0: 5ad000ef jal 8000297c <__sprint_r> - 80001bd4: 9e0511e3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001bd8: 7dce ld s11,240(sp) - 80001bda: 5b2e lw s6,232(sp) - 80001bdc: 6806 ld a6,64(sp) - 80001bde: 77e2 ld a5,56(sp) - 80001be0: 8c52 mv s8,s4 - 80001be2: a70ff06f j 80000e52 <_vfprintf_r+0x5f0> - 80001be6: f02e sd a1,32(sp) - 80001be8: bff97913 andi s2,s2,-1025 - 80001bec: 4581 li a1,0 - 80001bee: 4601 li a2,0 - 80001bf0: bd19 j 80001a06 <_vfprintf_r+0x11a4> - 80001bf2: 65c2 ld a1,16(sp) - 80001bf4: 6522 ld a0,8(sp) - 80001bf6: 1190 addi a2,sp,224 - 80001bf8: e942 sd a6,144(sp) - 80001bfa: e13e sd a5,128(sp) - 80001bfc: fc9a sd t1,120(sp) - 80001bfe: 57f000ef jal 8000297c <__sprint_r> - 80001c02: 9a051ae3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001c06: 0a714703 lbu a4,167(sp) - 80001c0a: 7dce ld s11,240(sp) - 80001c0c: 7366 ld t1,120(sp) - 80001c0e: 678a ld a5,128(sp) - 80001c10: 684a ld a6,144(sp) - 80001c12: 1a070063 beqz a4,80001db2 <_vfprintf_r+0x1550> - 80001c16: 8b26 mv s6,s1 - 80001c18: 562e lw a2,232(sp) - 80001c1a: 4481 li s1,0 - 80001c1c: 8d52 mv s10,s4 - 80001c1e: dfffe06f j 80000a1c <_vfprintf_r+0x1ba> - 80001c22: 572e lw a4,232(sp) - 80001c24: 00007697 auipc a3,0x7 - 80001c28: 6cc68693 addi a3,a3,1740 # 800092f0 <__clzdi2+0x316> - 80001c2c: 00dd3023 sd a3,0(s10) - 80001c30: 0d85 addi s11,s11,1 - 80001c32: 4685 li a3,1 - 80001c34: 2705 addiw a4,a4,1 - 80001c36: 00dd3423 sd a3,8(s10) - 80001c3a: f9ee sd s11,240(sp) - 80001c3c: d5ba sw a4,232(sp) - 80001c3e: 469d li a3,7 - 80001c40: 0d41 addi s10,s10,16 - 80001c42: 7ae6cf63 blt a3,a4,80002400 <_vfprintf_r+0x1b9e> - 80001c46: 7742 ld a4,48(sp) - 80001c48: 8f51 or a4,a4,a2 - 80001c4a: 52070263 beqz a4,8000216e <_vfprintf_r+0x190c> - 80001c4e: 6746 ld a4,80(sp) - 80001c50: 56ae lw a3,232(sp) - 80001c52: 65e6 ld a1,88(sp) - 80001c54: 9dba add s11,s11,a4 - 80001c56: 2685 addiw a3,a3,1 - 80001c58: 00ed3423 sd a4,8(s10) - 80001c5c: 00bd3023 sd a1,0(s10) - 80001c60: f9ee sd s11,240(sp) - 80001c62: d5b6 sw a3,232(sp) - 80001c64: 471d li a4,7 - 80001c66: 0d41 addi s10,s10,16 - 80001c68: 52d74663 blt a4,a3,80002194 <_vfprintf_r+0x1932> - 80001c6c: 0c0643e3 bltz a2,80002532 <_vfprintf_r+0x1cd0> - 80001c70: 7742 ld a4,48(sp) - 80001c72: 2685 addiw a3,a3,1 - 80001c74: 00fd3023 sd a5,0(s10) - 80001c78: 9dba add s11,s11,a4 - 80001c7a: f9ee sd s11,240(sp) - 80001c7c: d5b6 sw a3,232(sp) - 80001c7e: 00ed3423 sd a4,8(s10) - 80001c82: 479d li a5,7 - 80001c84: 00d7c463 blt a5,a3,80001c8c <_vfprintf_r+0x142a> - 80001c88: dfffe06f j 80000a86 <_vfprintf_r+0x224> - 80001c8c: a38ff06f j 80000ec4 <_vfprintf_r+0x662> - 80001c90: 1679 addi a2,a2,-2 - 80001c92: 40c48cbb subw s9,s1,a2 - 80001c96: fed78fa3 sb a3,-1(a5) - 80001c9a: 0003081b sext.w a6,t1 - 80001c9e: 01935463 bge t1,s9,80001ca6 <_vfprintf_r+0x1444> - 80001ca2: 000c881b sext.w a6,s9 - 80001ca6: 87b2 mv a5,a2 - 80001ca8: f402 sd zero,40(sp) - 80001caa: e082 sd zero,64(sp) - 80001cac: e482 sd zero,72(sp) - 80001cae: fc02 sd zero,56(sp) - 80001cb0: d57fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80001cb4: 04097793 andi a5,s2,64 - 80001cb8: 14078b63 beqz a5,80001e0e <_vfprintf_r+0x15ac> - 80001cbc: 7782 ld a5,32(sp) - 80001cbe: 0007d703 lhu a4,0(a5) - 80001cc2: bbe9 j 80001a9c <_vfprintf_r+0x123a> - 80001cc4: 6522 ld a0,8(sp) - 80001cc6: 032010ef jal 80002cf8 <__sinit> - 80001cca: bd5fe06f j 8000089e <_vfprintf_r+0x3c> - 80001cce: 65c2 ld a1,16(sp) - 80001cd0: 6522 ld a0,8(sp) - 80001cd2: 1190 addi a2,sp,224 - 80001cd4: fc42 sd a6,56(sp) - 80001cd6: 4a7000ef jal 8000297c <__sprint_r> - 80001cda: 8c051ee3 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001cde: 7dce ld s11,240(sp) - 80001ce0: 7862 ld a6,56(sp) - 80001ce2: 8d52 mv s10,s4 - 80001ce4: b78ff06f j 8000105c <_vfprintf_r+0x7fa> - 80001ce8: 885a mv a6,s6 - 80001cea: 8b26 mv s6,s1 - 80001cec: 84ca mv s1,s2 - 80001cee: 8956 mv s2,s5 - 80001cf0: 8aea mv s5,s10 - 80001cf2: 8d3a mv s10,a4 - 80001cf4: 9dda add s11,s11,s6 - 80001cf6: 2785 addiw a5,a5,1 - 80001cf8: f9ee sd s11,240(sp) - 80001cfa: d5be sw a5,232(sp) - 80001cfc: 009d3023 sd s1,0(s10) - 80001d00: 016d3423 sd s6,8(s10) - 80001d04: 471d li a4,7 - 80001d06: 00f74463 blt a4,a5,80001d0e <_vfprintf_r+0x14ac> - 80001d0a: d7dfe06f j 80000a86 <_vfprintf_r+0x224> - 80001d0e: 9b6ff06f j 80000ec4 <_vfprintf_r+0x662> - 80001d12: 654e ld a0,208(sp) - 80001d14: 65ee ld a1,216(sp) - 80001d16: 4601 li a2,0 - 80001d18: 4681 li a3,0 - 80001d1a: f7f97913 andi s2,s2,-129 - 80001d1e: 1f2060ef jal 80007f10 <__letf2> - 80001d22: 70054163 bltz a0,80002424 <_vfprintf_r+0x1bc2> - 80001d26: 04700693 li a3,71 - 80001d2a: 0a714703 lbu a4,167(sp) - 80001d2e: 00007797 auipc a5,0x7 - 80001d32: 56a78793 addi a5,a5,1386 # 80009298 <__clzdi2+0x2be> - 80001d36: 5386c663 blt a3,s8,80002262 <_vfprintf_r+0x1a00> - 80001d3a: 5a071563 bnez a4,800022e4 <_vfprintf_r+0x1a82> - 80001d3e: 4c8d li s9,3 - 80001d40: 8866 mv a6,s9 - 80001d42: 9feff06f j 80000f40 <_vfprintf_r+0x6de> - 80001d46: 77ce ld a5,240(sp) - 80001d48: 64c2 ld s1,16(sp) - 80001d4a: 86078ce3 beqz a5,800015c2 <_vfprintf_r+0xd60> + 80001b7c: 00878593 addi a1,a5,8 + 80001b80: 5404cc63 bltz s1,800020d8 <_vfprintf_r+0x118e> + 80001b84: f7f97f93 andi t6,s2,-129 + 80001b88: 009767b3 or a5,a4,s1 + 80001b8c: 002fe913 ori s2,t6,2 + 80001b90: 0e078fe3 beqz a5,8000248e <_vfprintf_r+0x1544> + 80001b94: 00008517 auipc a0,0x8 + 80001b98: 0b450513 addi a0,a0,180 # 80009c48 <__clzdi2+0x586> + 80001b9c: 4609 li a2,2 + 80001b9e: 07800c13 li s8,120 + 80001ba2: f02e sd a1,32(sp) + 80001ba4: 0a714583 lbu a1,167(sp) + 80001ba8: a399 j 800020ee <_vfprintf_r+0x11a4> + 80001baa: 7702 ld a4,32(sp) + 80001bac: 02097793 andi a5,s2,32 + 80001bb0: 8326 mv t1,s1 + 80001bb2: 0721 addi a4,a4,8 + 80001bb4: 4c079963 bnez a5,80002086 <_vfprintf_r+0x113c> + 80001bb8: 01097793 andi a5,s2,16 + 80001bbc: 4c079563 bnez a5,80002086 <_vfprintf_r+0x113c> + 80001bc0: 04097793 andi a5,s2,64 + 80001bc4: 10078ee3 beqz a5,800024e0 <_vfprintf_r+0x1596> + 80001bc8: 7782 ld a5,32(sp) + 80001bca: 884a mv a6,s2 + 80001bcc: f03a sd a4,32(sp) + 80001bce: 0007d683 lhu a3,0(a5) + 80001bd2: b5d1 j 80001a96 <_vfprintf_r+0xb4c> + 80001bd4: 410b8b3b subw s6,s7,a6 + 80001bd8: d7605863 blez s6,80001148 <_vfprintf_r+0x1fe> + 80001bdc: 42c1 li t0,16 + 80001bde: 562e lw a2,232(sp) + 80001be0: 00008497 auipc s1,0x8 + 80001be4: 36848493 addi s1,s1,872 # 80009f48 + 80001be8: 0762d863 bge t0,s6,80001c58 <_vfprintf_r+0xd0e> + 80001bec: 876e mv a4,s11 + 80001bee: 84da mv s1,s6 + 80001bf0: 8dd6 mv s11,s5 + 80001bf2: 8b4a mv s6,s2 + 80001bf4: 8abe mv s5,a5 + 80001bf6: 439d li t2,7 + 80001bf8: 87ea mv a5,s10 + 80001bfa: fc9a sd t1,120(sp) + 80001bfc: 8d66 mv s10,s9 + 80001bfe: 00008917 auipc s2,0x8 + 80001c02: 34a90913 addi s2,s2,842 # 80009f48 + 80001c06: 8cc2 mv s9,a6 + 80001c08: a021 j 80001c10 <_vfprintf_r+0xcc6> + 80001c0a: 34c1 addiw s1,s1,-16 + 80001c0c: 0292db63 bge t0,s1,80001c42 <_vfprintf_r+0xcf8> + 80001c10: 0741 addi a4,a4,16 + 80001c12: 2605 addiw a2,a2,1 + 80001c14: 0127b023 sd s2,0(a5) + 80001c18: 0057b423 sd t0,8(a5) + 80001c1c: f9ba sd a4,240(sp) + 80001c1e: d5b2 sw a2,232(sp) + 80001c20: 07c1 addi a5,a5,16 + 80001c22: fec3d4e3 bge t2,a2,80001c0a <_vfprintf_r+0xcc0> + 80001c26: 65c2 ld a1,16(sp) + 80001c28: 6522 ld a0,8(sp) + 80001c2a: 1190 addi a2,sp,224 + 80001c2c: 438010ef jal 80003064 <__sprint_r> + 80001c30: e53d bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001c32: 42c1 li t0,16 + 80001c34: 34c1 addiw s1,s1,-16 + 80001c36: 774e ld a4,240(sp) + 80001c38: 562e lw a2,232(sp) + 80001c3a: 87d2 mv a5,s4 + 80001c3c: 439d li t2,7 + 80001c3e: fc92c9e3 blt t0,s1,80001c10 <_vfprintf_r+0xcc6> + 80001c42: 7366 ld t1,120(sp) + 80001c44: 8866 mv a6,s9 + 80001c46: 8cea mv s9,s10 + 80001c48: 8d3e mv s10,a5 + 80001c4a: 87d6 mv a5,s5 + 80001c4c: 8aee mv s5,s11 + 80001c4e: 8dba mv s11,a4 + 80001c50: 874a mv a4,s2 + 80001c52: 895a mv s2,s6 + 80001c54: 8b26 mv s6,s1 + 80001c56: 84ba mv s1,a4 + 80001c58: 9dda add s11,s11,s6 + 80001c5a: 2605 addiw a2,a2,1 + 80001c5c: 009d3023 sd s1,0(s10) + 80001c60: 016d3423 sd s6,8(s10) + 80001c64: f9ee sd s11,240(sp) + 80001c66: d5b2 sw a2,232(sp) + 80001c68: 471d li a4,7 + 80001c6a: 0d41 addi s10,s10,16 + 80001c6c: ccc75e63 bge a4,a2,80001148 <_vfprintf_r+0x1fe> + 80001c70: 65c2 ld a1,16(sp) + 80001c72: 6522 ld a0,8(sp) + 80001c74: 1190 addi a2,sp,224 + 80001c76: e942 sd a6,144(sp) + 80001c78: e13e sd a5,128(sp) + 80001c7a: fc9a sd t1,120(sp) + 80001c7c: 3e8010ef jal 80003064 <__sprint_r> + 80001c80: ed19 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001c82: 7dce ld s11,240(sp) + 80001c84: 7366 ld t1,120(sp) + 80001c86: 678a ld a5,128(sp) + 80001c88: 684a ld a6,144(sp) + 80001c8a: 8d52 mv s10,s4 + 80001c8c: cbcff06f j 80001148 <_vfprintf_r+0x1fe> + 80001c90: 65c2 ld a1,16(sp) + 80001c92: 6522 ld a0,8(sp) + 80001c94: 1190 addi a2,sp,224 + 80001c96: 3ce010ef jal 80003064 <__sprint_r> + 80001c9a: ce050c63 beqz a0,80001192 <_vfprintf_r+0x248> + 80001c9e: 75a2 ld a1,40(sp) + 80001ca0: 64c2 ld s1,16(sp) + 80001ca2: c581 beqz a1,80001caa <_vfprintf_r+0xd60> + 80001ca4: 6522 ld a0,8(sp) + 80001ca6: 7ba020ef jal 80004460 <_free_r> + 80001caa: 0104d783 lhu a5,16(s1) + 80001cae: 0407f793 andi a5,a5,64 + 80001cb2: c399 beqz a5,80001cb8 <_vfprintf_r+0xd6e> + 80001cb4: 0980106f j 80002d4c <_vfprintf_r+0x1e02> + 80001cb8: 23013903 ld s2,560(sp) + 80001cbc: 22813983 ld s3,552(sp) + 80001cc0: 22013a03 ld s4,544(sp) + 80001cc4: 21813a83 ld s5,536(sp) + 80001cc8: 20813b83 ld s7,520(sp) + 80001ccc: 20013c03 ld s8,512(sp) + 80001cd0: 7cfe ld s9,504(sp) + 80001cd2: 7d5e ld s10,496(sp) + 80001cd4: 7dbe ld s11,488(sp) + 80001cd6: 24813083 ld ra,584(sp) + 80001cda: 24013403 ld s0,576(sp) + 80001cde: 6562 ld a0,24(sp) + 80001ce0: 23813483 ld s1,568(sp) + 80001ce4: 21013b03 ld s6,528(sp) + 80001ce8: 25010113 addi sp,sp,592 + 80001cec: 8082 ret + 80001cee: 65c2 ld a1,16(sp) + 80001cf0: 6522 ld a0,8(sp) + 80001cf2: 1190 addi a2,sp,224 + 80001cf4: e942 sd a6,144(sp) + 80001cf6: e13e sd a5,128(sp) + 80001cf8: fc9a sd t1,120(sp) + 80001cfa: 36a010ef jal 80003064 <__sprint_r> + 80001cfe: f145 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001d00: 7dce ld s11,240(sp) + 80001d02: 684a ld a6,144(sp) + 80001d04: 678a ld a5,128(sp) + 80001d06: 7366 ld t1,120(sp) + 80001d08: 8d52 mv s10,s4 + 80001d0a: c36ff06f j 80001140 <_vfprintf_r+0x1f6> + 80001d0e: 4c41 li s8,16 + 80001d10: 57ae lw a5,232(sp) + 80001d12: 00008717 auipc a4,0x8 + 80001d16: 24670713 addi a4,a4,582 # 80009f58 + 80001d1a: 056c5963 bge s8,s6,80001d6c <_vfprintf_r+0xe22> + 80001d1e: 84da mv s1,s6 + 80001d20: 4c9d li s9,7 + 80001d22: 8b56 mv s6,s5 + 80001d24: 00008917 auipc s2,0x8 + 80001d28: 23490913 addi s2,s2,564 # 80009f58 + 80001d2c: 8ac2 mv s5,a6 + 80001d2e: a021 j 80001d36 <_vfprintf_r+0xdec> + 80001d30: 34c1 addiw s1,s1,-16 + 80001d32: 029c5963 bge s8,s1,80001d64 <_vfprintf_r+0xe1a> + 80001d36: 0dc1 addi s11,s11,16 + 80001d38: 2785 addiw a5,a5,1 + 80001d3a: 012d3023 sd s2,0(s10) + 80001d3e: 018d3423 sd s8,8(s10) + 80001d42: f9ee sd s11,240(sp) + 80001d44: d5be sw a5,232(sp) + 80001d46: 0d41 addi s10,s10,16 + 80001d48: fefcd4e3 bge s9,a5,80001d30 <_vfprintf_r+0xde6> + 80001d4c: 65c2 ld a1,16(sp) 80001d4e: 6522 ld a0,8(sp) 80001d50: 1190 addi a2,sp,224 - 80001d52: 85a6 mv a1,s1 - 80001d54: 429000ef jal 8000297c <__sprint_r> - 80001d58: b0ad j 800015c2 <_vfprintf_r+0xd60> - 80001d5a: 8866 mv a6,s9 - 80001d5c: 8ca6 mv s9,s1 - 80001d5e: 84ca mv s1,s2 - 80001d60: 8956 mv s2,s5 - 80001d62: 8aee mv s5,s11 - 80001d64: 8dba mv s11,a4 - 80001d66: 9de6 add s11,s11,s9 - 80001d68: 2b05 addiw s6,s6,1 - 80001d6a: f9ee sd s11,240(sp) - 80001d6c: d5da sw s6,232(sp) - 80001d6e: 009c3023 sd s1,0(s8) - 80001d72: 019c3423 sd s9,8(s8) - 80001d76: 479d li a5,7 - 80001d78: 9367d663 bge a5,s6,80000ea4 <_vfprintf_r+0x642> - 80001d7c: bc75 j 80001838 <_vfprintf_r+0xfd6> - 80001d7e: 853e mv a0,a5 - 80001d80: f03e sd a5,32(sp) - 80001d82: 49f010ef jal 80003a20 - 80001d86: 00050c9b sext.w s9,a0 - 80001d8a: 7782 ld a5,32(sp) - 80001d8c: 8766 mv a4,s9 - 80001d8e: 4c0cc563 bltz s9,80002258 <_vfprintf_r+0x19f6> - 80001d92: 0a714683 lbu a3,167(sp) - 80001d96: 0007081b sext.w a6,a4 - 80001d9a: 9a068263 beqz a3,80000f3e <_vfprintf_r+0x6dc> - 80001d9e: 0017081b addiw a6,a4,1 - 80001da2: 99cff06f j 80000f3e <_vfprintf_r+0x6dc> - 80001da6: f02e sd a1,32(sp) - 80001da8: 4609 li a2,2 - 80001daa: 07800c13 li s8,120 - 80001dae: cf4ff06f j 800012a2 <_vfprintf_r+0xa40> - 80001db2: 42048363 beqz s1,800021d8 <_vfprintf_r+0x1976> - 80001db6: 562e lw a2,232(sp) - 80001db8: 4481 li s1,0 - 80001dba: 8d52 mv s10,s4 - 80001dbc: c83fe06f j 80000a3e <_vfprintf_r+0x1dc> - 80001dc0: 04097793 andi a5,s2,64 - 80001dc4: 44079663 bnez a5,80002210 <_vfprintf_r+0x19ae> - 80001dc8: 7782 ld a5,32(sp) - 80001dca: 20097f93 andi t6,s2,512 - 80001dce: 66e2 ld a3,24(sp) - 80001dd0: 639c ld a5,0(a5) - 80001dd2: 0a0f8de3 beqz t6,8000268c <_vfprintf_r+0x1e2a> - 80001dd6: 00d78023 sb a3,0(a5) - 80001dda: f03a sd a4,32(sp) - 80001ddc: b41fe06f j 8000091c <_vfprintf_r+0xba> - 80001de0: 20097793 andi a5,s2,512 - 80001de4: 42078e63 beqz a5,80002220 <_vfprintf_r+0x19be> - 80001de8: 018b1b1b slliw s6,s6,0x18 - 80001dec: 418b5b1b sraiw s6,s6,0x18 - 80001df0: f03a sd a4,32(sp) - 80001df2: 87da mv a5,s6 - 80001df4: b1cff06f j 80001110 <_vfprintf_r+0x8ae> - 80001df8: 20097793 andi a5,s2,512 - 80001dfc: 3e078163 beqz a5,800021de <_vfprintf_r+0x197c> - 80001e00: 7782 ld a5,32(sp) - 80001e02: 884a mv a6,s2 - 80001e04: f03a sd a4,32(sp) - 80001e06: 0007c683 lbu a3,0(a5) - 80001e0a: da4ff06f j 800013ae <_vfprintf_r+0xb4c> - 80001e0e: 20097793 andi a5,s2,512 - 80001e12: 3e078b63 beqz a5,80002208 <_vfprintf_r+0x19a6> - 80001e16: 7782 ld a5,32(sp) - 80001e18: 0007c703 lbu a4,0(a5) - 80001e1c: b141 j 80001a9c <_vfprintf_r+0x123a> - 80001e1e: 67ee ld a5,216(sp) - 80001e20: f7f97913 andi s2,s2,-129 - 80001e24: 03f7d713 srli a4,a5,0x3f - 80001e28: fc3a sd a4,56(sp) - 80001e2a: 3e07df63 bgez a5,80002228 <_vfprintf_r+0x19c6> - 80001e2e: 02d00793 li a5,45 - 80001e32: 0af103a3 sb a5,167(sp) - 80001e36: f402 sd zero,40(sp) - 80001e38: 04700793 li a5,71 - 80001e3c: e082 sd zero,64(sp) - 80001e3e: e482 sd zero,72(sp) - 80001e40: fc02 sd zero,56(sp) - 80001e42: 4c8d li s9,3 - 80001e44: 4301 li t1,0 - 80001e46: 0587d7e3 bge a5,s8,80002694 <_vfprintf_r+0x1e32> - 80001e4a: 00007797 auipc a5,0x7 - 80001e4e: 46678793 addi a5,a5,1126 # 800092b0 <__clzdi2+0x2d6> - 80001e52: 4811 li a6,4 - 80001e54: bb3fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80001e58: 10096713 ori a4,s2,256 - 80001e5c: 57fd li a5,-1 - 80001e5e: fcba sd a4,120(sp) - 80001e60: 64ce ld s1,208(sp) - 80001e62: 6b6e ld s6,216(sp) - 80001e64: 40f30663 beq t1,a5,80002270 <_vfprintf_r+0x1a0e> - 80001e68: 7722 ld a4,40(sp) - 80001e6a: 4d81 li s11,0 - 80001e6c: fb970693 addi a3,a4,-71 - 80001e70: 0016b693 seqz a3,a3 - 80001e74: 00133713 seqz a4,t1 - 80001e78: 8f75 and a4,a4,a3 - 80001e7a: 100715e3 bnez a4,80002784 <_vfprintf_r+0x1f22> - 80001e7e: 000b5763 bgez s6,80001e8c <_vfprintf_r+0x162a> - 80001e82: 17fe slli a5,a5,0x3f - 80001e84: 00fb4b33 xor s6,s6,a5 - 80001e88: 02d00d93 li s11,45 - 80001e8c: 7ca2 ld s9,40(sp) - 80001e8e: 04600793 li a5,70 - 80001e92: 46fc9c63 bne s9,a5,8000230a <_vfprintf_r+0x1aa8> - 80001e96: 6522 ld a0,8(sp) - 80001e98: 871a mv a4,t1 - 80001e9a: 191c addi a5,sp,176 - 80001e9c: 468d li a3,3 - 80001e9e: 865a mv a2,s6 - 80001ea0: 0c810893 addi a7,sp,200 - 80001ea4: 0b410813 addi a6,sp,180 - 80001ea8: 85a6 mv a1,s1 - 80001eaa: f81a sd t1,48(sp) - 80001eac: 10c020ef jal 80003fb8 <_ldtoa_r> - 80001eb0: 7342 ld t1,48(sp) - 80001eb2: 00054603 lbu a2,0(a0) - 80001eb6: 03000693 li a3,48 - 80001eba: 87aa mv a5,a0 - 80001ebc: 00650733 add a4,a0,t1 - 80001ec0: 06d603e3 beq a2,a3,80002726 <_vfprintf_r+0x1ec4> - 80001ec4: 5cca lw s9,176(sp) - 80001ec6: 8526 mv a0,s1 - 80001ec8: 85da mv a1,s6 - 80001eca: 4601 li a2,0 - 80001ecc: 4681 li a3,0 - 80001ece: fc3e sd a5,56(sp) - 80001ed0: f81a sd t1,48(sp) - 80001ed2: 9cba add s9,s9,a4 - 80001ed4: 6ed050ef jal 80007dc0 <__eqtf2> - 80001ed8: 7342 ld t1,48(sp) - 80001eda: 77e2 ld a5,56(sp) - 80001edc: 7c050363 beqz a0,800026a2 <_vfprintf_r+0x1e40> - 80001ee0: 68ae ld a7,200(sp) - 80001ee2: 1d98fbe3 bgeu a7,s9,800028b8 <_vfprintf_r+0x2056> - 80001ee6: 03000693 li a3,48 - 80001eea: 00188713 addi a4,a7,1 - 80001eee: e5ba sd a4,200(sp) - 80001ef0: 00d88023 sb a3,0(a7) - 80001ef4: 68ae ld a7,200(sp) - 80001ef6: ff98eae3 bltu a7,s9,80001eea <_vfprintf_r+0x1688> - 80001efa: 40f888b3 sub a7,a7,a5 - 80001efe: 0008869b sext.w a3,a7 - 80001f02: f836 sd a3,48(sp) - 80001f04: 56ca lw a3,176(sp) - 80001f06: 04700713 li a4,71 - 80001f0a: fc36 sd a3,56(sp) - 80001f0c: 76a2 ld a3,40(sp) - 80001f0e: 44e68463 beq a3,a4,80002356 <_vfprintf_r+0x1af4> - 80001f12: 76a2 ld a3,40(sp) - 80001f14: 04600713 li a4,70 - 80001f18: 44e69863 bne a3,a4,80002368 <_vfprintf_r+0x1b06> - 80001f1c: 00197713 andi a4,s2,1 - 80001f20: 00e36733 or a4,t1,a4 - 80001f24: 0007069b sext.w a3,a4 - 80001f28: 7762 ld a4,56(sp) - 80001f2a: e4b6 sd a3,72(sp) - 80001f2c: 08e058e3 blez a4,800027bc <_vfprintf_r+0x1f5a> - 80001f30: 8cba mv s9,a4 - 80001f32: 06600c13 li s8,102 - 80001f36: c691 beqz a3,80001f42 <_vfprintf_r+0x16e0> - 80001f38: 00e308bb addw a7,t1,a4 - 80001f3c: 6746 ld a4,80(sp) - 80001f3e: 00e88cbb addw s9,a7,a4 - 80001f42: 40097713 andi a4,s2,1024 - 80001f46: e4ba sd a4,72(sp) - 80001f48: 76071863 bnez a4,800026b8 <_vfprintf_r+0x1e56> - 80001f4c: 8766 mv a4,s9 - 80001f4e: 000cd363 bgez s9,80001f54 <_vfprintf_r+0x16f2> - 80001f52: 4701 li a4,0 - 80001f54: 0007081b sext.w a6,a4 - 80001f58: 040d8de3 beqz s11,800027b2 <_vfprintf_r+0x1f50> - 80001f5c: 02d00693 li a3,45 - 80001f60: 7966 ld s2,120(sp) - 80001f62: 0ad103a3 sb a3,167(sp) - 80001f66: 0017081b addiw a6,a4,1 - 80001f6a: 4301 li t1,0 - 80001f6c: e082 sd zero,64(sp) - 80001f6e: f402 sd zero,40(sp) - 80001f70: a97fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80001f74: bff97f93 andi t6,s2,-1025 - 80001f78: f02e sd a1,32(sp) - 80001f7a: 002fe913 ori s2,t6,2 - 80001f7e: 4581 li a1,0 - 80001f80: 4609 li a2,2 - 80001f82: b451 j 80001a06 <_vfprintf_r+0x11a4> - 80001f84: 876a mv a4,s10 - 80001f86: 8862 mv a6,s8 - 80001f88: 8d3e mv s10,a5 - 80001f8a: 8c26 mv s8,s1 - 80001f8c: 87ca mv a5,s2 - 80001f8e: 84da mv s1,s6 - 80001f90: 8956 mv s2,s5 - 80001f92: 8aba mv s5,a4 - 80001f94: 9de2 add s11,s11,s8 - 80001f96: 2685 addiw a3,a3,1 - 80001f98: 009d3023 sd s1,0(s10) - 80001f9c: 018d3423 sd s8,8(s10) - 80001fa0: f9ee sd s11,240(sp) - 80001fa2: d5b6 sw a3,232(sp) - 80001fa4: 471d li a4,7 - 80001fa6: 0d41 addi s10,s10,16 - 80001fa8: f8d75763 bge a4,a3,80001736 <_vfprintf_r+0xed4> - 80001fac: 65c2 ld a1,16(sp) - 80001fae: 6522 ld a0,8(sp) - 80001fb0: 1190 addi a2,sp,224 - 80001fb2: e142 sd a6,128(sp) - 80001fb4: fcbe sd a5,120(sp) - 80001fb6: 1c7000ef jal 8000297c <__sprint_r> - 80001fba: de051e63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80001fbe: 7dce ld s11,240(sp) - 80001fc0: 680a ld a6,128(sp) - 80001fc2: 77e6 ld a5,120(sp) - 80001fc4: 8d52 mv s10,s4 - 80001fc6: f70ff06f j 80001736 <_vfprintf_r+0xed4> - 80001fca: 6626 ld a2,72(sp) - 80001fcc: 6586 ld a1,64(sp) - 80001fce: 00b66733 or a4,a2,a1 - 80001fd2: 0e070ae3 beqz a4,800028c6 <_vfprintf_r+0x2064> - 80001fd6: 7742 ld a4,48(sp) - 80001fd8: e4de sd s7,72(sp) - 80001fda: fcbe sd a5,120(sp) - 80001fdc: 00e78e33 add t3,a5,a4 - 80001fe0: 6baa ld s7,136(sp) - 80001fe2: 87ea mv a5,s10 - 80001fe4: 7d46 ld s10,112(sp) - 80001fe6: e14a sd s2,128(sp) - 80001fe8: ed56 sd s5,152(sp) - 80001fea: 8932 mv s2,a2 - 80001fec: 469d li a3,7 - 80001fee: 866e mv a2,s11 - 80001ff0: 4b41 li s6,16 - 80001ff2: 8da6 mv s11,s1 - 80001ff4: 00007c97 auipc s9,0x7 - 80001ff8: 5c4c8c93 addi s9,s9,1476 # 800095b8 - 80001ffc: e942 sd a6,144(sp) - 80001ffe: 8aae mv s5,a1 - 80002000: 84f2 mv s1,t3 - 80002002: 080a8a63 beqz s5,80002096 <_vfprintf_r+0x1834> - 80002006: 3afd addiw s5,s5,-1 - 80002008: 572e lw a4,232(sp) - 8000200a: 75a6 ld a1,104(sp) - 8000200c: 965e add a2,a2,s7 - 8000200e: 2705 addiw a4,a4,1 - 80002010: e38c sd a1,0(a5) - 80002012: 0177b423 sd s7,8(a5) - 80002016: f9b2 sd a2,240(sp) - 80002018: d5ba sw a4,232(sp) - 8000201a: 07c1 addi a5,a5,16 - 8000201c: 0ee6cc63 blt a3,a4,80002114 <_vfprintf_r+0x18b2> - 80002020: 000d4583 lbu a1,0(s10) - 80002024: 41b48fb3 sub t6,s1,s11 - 80002028: 000f851b sext.w a0,t6 - 8000202c: 0005881b sext.w a6,a1 - 80002030: 8726 mv a4,s1 - 80002032: 00a5d363 bge a1,a0,80002038 <_vfprintf_r+0x17d6> - 80002036: 8fc2 mv t6,a6 - 80002038: 000f8c1b sext.w s8,t6 - 8000203c: 03805163 blez s8,8000205e <_vfprintf_r+0x17fc> - 80002040: 55ae lw a1,232(sp) - 80002042: 9662 add a2,a2,s8 - 80002044: f9b2 sd a2,240(sp) - 80002046: 2585 addiw a1,a1,1 - 80002048: 01b7b023 sd s11,0(a5) - 8000204c: 0187b423 sd s8,8(a5) - 80002050: d5ae sw a1,232(sp) - 80002052: 0cb6cc63 blt a3,a1,8000212a <_vfprintf_r+0x18c8> - 80002056: 000d4583 lbu a1,0(s10) - 8000205a: 07c1 addi a5,a5,16 - 8000205c: 882e mv a6,a1 - 8000205e: 8562 mv a0,s8 - 80002060: 000c5363 bgez s8,80002066 <_vfprintf_r+0x1804> - 80002064: 4501 li a0,0 - 80002066: 40a80c3b subw s8,a6,a0 - 8000206a: 03804963 bgtz s8,8000209c <_vfprintf_r+0x183a> - 8000206e: 9dae add s11,s11,a1 - 80002070: 012025b3 sgtz a1,s2 - 80002074: 00bae5b3 or a1,s5,a1 - 80002078: f5c9 bnez a1,80002002 <_vfprintf_r+0x17a0> - 8000207a: f8ea sd s10,112(sp) - 8000207c: 6ba6 ld s7,72(sp) - 8000207e: 8d3e mv s10,a5 - 80002080: 690a ld s2,128(sp) - 80002082: 77e6 ld a5,120(sp) - 80002084: 684a ld a6,144(sp) - 80002086: 6aea ld s5,152(sp) - 80002088: 84ee mv s1,s11 - 8000208a: 8db2 mv s11,a2 - 8000208c: ea977c63 bgeu a4,s1,80001744 <_vfprintf_r+0xee2> - 80002090: 84ba mv s1,a4 - 80002092: eb2ff06f j 80001744 <_vfprintf_r+0xee2> - 80002096: 1d7d addi s10,s10,-1 - 80002098: 397d addiw s2,s2,-1 - 8000209a: b7bd j 80002008 <_vfprintf_r+0x17a6> - 8000209c: 55ae lw a1,232(sp) - 8000209e: 00007f97 auipc t6,0x7 - 800020a2: 51af8f93 addi t6,t6,1306 # 800095b8 - 800020a6: 058b5963 bge s6,s8,800020f8 <_vfprintf_r+0x1896> - 800020aa: fc3a sd a4,56(sp) - 800020ac: 8726 mv a4,s1 - 800020ae: e0fe sd t6,64(sp) - 800020b0: 84e2 mv s1,s8 - 800020b2: 8c3a mv s8,a4 - 800020b4: a021 j 800020bc <_vfprintf_r+0x185a> - 800020b6: 34c1 addiw s1,s1,-16 - 800020b8: 029b5b63 bge s6,s1,800020ee <_vfprintf_r+0x188c> - 800020bc: 0641 addi a2,a2,16 - 800020be: 2585 addiw a1,a1,1 - 800020c0: 0197b023 sd s9,0(a5) - 800020c4: 0167b423 sd s6,8(a5) - 800020c8: f9b2 sd a2,240(sp) - 800020ca: d5ae sw a1,232(sp) - 800020cc: 07c1 addi a5,a5,16 - 800020ce: feb6d4e3 bge a3,a1,800020b6 <_vfprintf_r+0x1854> - 800020d2: 65c2 ld a1,16(sp) - 800020d4: 6522 ld a0,8(sp) - 800020d6: 1190 addi a2,sp,224 - 800020d8: 0a5000ef jal 8000297c <__sprint_r> - 800020dc: cc051d63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 800020e0: 34c1 addiw s1,s1,-16 - 800020e2: 764e ld a2,240(sp) - 800020e4: 55ae lw a1,232(sp) - 800020e6: 87d2 mv a5,s4 - 800020e8: 469d li a3,7 - 800020ea: fc9b49e3 blt s6,s1,800020bc <_vfprintf_r+0x185a> - 800020ee: 7762 ld a4,56(sp) - 800020f0: 6f86 ld t6,64(sp) - 800020f2: 8562 mv a0,s8 - 800020f4: 8c26 mv s8,s1 - 800020f6: 84aa mv s1,a0 - 800020f8: 9662 add a2,a2,s8 - 800020fa: 2585 addiw a1,a1,1 - 800020fc: f9b2 sd a2,240(sp) - 800020fe: d5ae sw a1,232(sp) - 80002100: 01f7b023 sd t6,0(a5) - 80002104: 0187b423 sd s8,8(a5) - 80002108: 36b6c363 blt a3,a1,8000246e <_vfprintf_r+0x1c0c> - 8000210c: 000d4583 lbu a1,0(s10) - 80002110: 07c1 addi a5,a5,16 - 80002112: bfb1 j 8000206e <_vfprintf_r+0x180c> - 80002114: 65c2 ld a1,16(sp) - 80002116: 6522 ld a0,8(sp) - 80002118: 1190 addi a2,sp,224 - 8000211a: 063000ef jal 8000297c <__sprint_r> - 8000211e: c8051c63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80002122: 764e ld a2,240(sp) - 80002124: 87d2 mv a5,s4 - 80002126: 469d li a3,7 - 80002128: bde5 j 80002020 <_vfprintf_r+0x17be> - 8000212a: 65c2 ld a1,16(sp) - 8000212c: 6522 ld a0,8(sp) - 8000212e: 1190 addi a2,sp,224 - 80002130: fc3a sd a4,56(sp) - 80002132: 04b000ef jal 8000297c <__sprint_r> - 80002136: c8051063 bnez a0,800015b6 <_vfprintf_r+0xd54> - 8000213a: 000d4583 lbu a1,0(s10) - 8000213e: 764e ld a2,240(sp) - 80002140: 7762 ld a4,56(sp) - 80002142: 87d2 mv a5,s4 - 80002144: 882e mv a6,a1 - 80002146: 469d li a3,7 - 80002148: bf19 j 8000205e <_vfprintf_r+0x17fc> - 8000214a: 0007881b sext.w a6,a5 - 8000214e: b279 j 80001adc <_vfprintf_r+0x127a> - 80002150: 65c2 ld a1,16(sp) - 80002152: 6522 ld a0,8(sp) - 80002154: 1190 addi a2,sp,224 - 80002156: e142 sd a6,128(sp) - 80002158: fcbe sd a5,120(sp) - 8000215a: 023000ef jal 8000297c <__sprint_r> - 8000215e: c4051c63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80002162: 7dce ld s11,240(sp) - 80002164: 680a ld a6,128(sp) - 80002166: 77e6 ld a5,120(sp) - 80002168: 8d52 mv s10,s4 - 8000216a: dbcff06f j 80001726 <_vfprintf_r+0xec4> - 8000216e: 00197713 andi a4,s2,1 - 80002172: e319 bnez a4,80002178 <_vfprintf_r+0x1916> - 80002174: 915fe06f j 80000a88 <_vfprintf_r+0x226> - 80002178: 6746 ld a4,80(sp) - 8000217a: 56ae lw a3,232(sp) - 8000217c: 6666 ld a2,88(sp) - 8000217e: 9dba add s11,s11,a4 - 80002180: 2685 addiw a3,a3,1 - 80002182: 00ed3423 sd a4,8(s10) - 80002186: f9ee sd s11,240(sp) - 80002188: 00cd3023 sd a2,0(s10) - 8000218c: d5b6 sw a3,232(sp) - 8000218e: 471d li a4,7 - 80002190: 28d75863 bge a4,a3,80002420 <_vfprintf_r+0x1bbe> - 80002194: 65c2 ld a1,16(sp) - 80002196: 6522 ld a0,8(sp) - 80002198: 1190 addi a2,sp,224 - 8000219a: e0c2 sd a6,64(sp) - 8000219c: fc3e sd a5,56(sp) - 8000219e: 7de000ef jal 8000297c <__sprint_r> - 800021a2: c0051a63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 800021a6: 564a lw a2,176(sp) - 800021a8: 7dce ld s11,240(sp) - 800021aa: 56ae lw a3,232(sp) - 800021ac: 6806 ld a6,64(sp) - 800021ae: 77e2 ld a5,56(sp) - 800021b0: 8d52 mv s10,s4 - 800021b2: bc6d j 80001c6c <_vfprintf_r+0x140a> - 800021b4: 00d78c33 add s8,a5,a3 - 800021b8: 409c0c33 sub s8,s8,s1 - 800021bc: 41668b3b subw s6,a3,s6 - 800021c0: 000c079b sext.w a5,s8 - 800021c4: 00fb5363 bge s6,a5,800021ca <_vfprintf_r+0x1968> - 800021c8: 8c5a mv s8,s6 - 800021ca: 2c01 sext.w s8,s8 - 800021cc: ddcff06f j 800017a8 <_vfprintf_r+0xf46> - 800021d0: 0016881b addiw a6,a3,1 - 800021d4: d6bfe06f j 80000f3e <_vfprintf_r+0x6dc> - 800021d8: 8d52 mv s10,s4 - 800021da: 887fe06f j 80000a60 <_vfprintf_r+0x1fe> - 800021de: 7782 ld a5,32(sp) - 800021e0: 884a mv a6,s2 - 800021e2: f03a sd a4,32(sp) - 800021e4: 0007e683 lwu a3,0(a5) - 800021e8: 9c6ff06f j 800013ae <_vfprintf_r+0xb4c> - 800021ec: 0007eb03 lwu s6,0(a5) - 800021f0: 9604cde3 bltz s1,80001b6a <_vfprintf_r+0x1308> - 800021f4: 0164e7b3 or a5,s1,s6 - 800021f8: f03a sd a4,32(sp) - 800021fa: f7f97913 andi s2,s2,-129 - 800021fe: c399 beqz a5,80002204 <_vfprintf_r+0x19a2> - 80002200: f71fe06f j 80001170 <_vfprintf_r+0x90e> - 80002204: 89eff06f j 800012a2 <_vfprintf_r+0xa40> - 80002208: 7782 ld a5,32(sp) - 8000220a: 0007e703 lwu a4,0(a5) - 8000220e: b079 j 80001a9c <_vfprintf_r+0x123a> - 80002210: 7782 ld a5,32(sp) - 80002212: 66e2 ld a3,24(sp) - 80002214: f03a sd a4,32(sp) - 80002216: 639c ld a5,0(a5) - 80002218: 00d79023 sh a3,0(a5) - 8000221c: f00fe06f j 8000091c <_vfprintf_r+0xba> - 80002220: f03a sd a4,32(sp) - 80002222: 87da mv a5,s6 - 80002224: eedfe06f j 80001110 <_vfprintf_r+0x8ae> - 80002228: 04700693 li a3,71 - 8000222c: 0a714703 lbu a4,167(sp) - 80002230: 00007797 auipc a5,0x7 - 80002234: 07878793 addi a5,a5,120 # 800092a8 <__clzdi2+0x2ce> - 80002238: 0186d663 bge a3,s8,80002244 <_vfprintf_r+0x19e2> - 8000223c: 00007797 auipc a5,0x7 - 80002240: 07478793 addi a5,a5,116 # 800092b0 <__clzdi2+0x2d6> - 80002244: 68071b63 bnez a4,800028da <_vfprintf_r+0x2078> - 80002248: 4c8d li s9,3 - 8000224a: 8866 mv a6,s9 - 8000224c: 4301 li t1,0 - 8000224e: e082 sd zero,64(sp) - 80002250: e482 sd zero,72(sp) - 80002252: f402 sd zero,40(sp) - 80002254: fb2fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80002258: 4701 li a4,0 - 8000225a: be25 j 80001d92 <_vfprintf_r+0x1530> - 8000225c: 4681 li a3,0 - 8000225e: cd7fe06f j 80000f34 <_vfprintf_r+0x6d2> - 80002262: 00007797 auipc a5,0x7 - 80002266: 03e78793 addi a5,a5,62 # 800092a0 <__clzdi2+0x2c6> - 8000226a: ac070ae3 beqz a4,80001d3e <_vfprintf_r+0x14dc> - 8000226e: a89d j 800022e4 <_vfprintf_r+0x1a82> - 80002270: 5c0b4d63 bltz s6,8000284a <_vfprintf_r+0x1fe8> - 80002274: 4d81 li s11,0 - 80002276: 4319 li t1,6 - 80002278: b911 j 80001e8c <_vfprintf_r+0x162a> - 8000227a: 07800793 li a5,120 - 8000227e: 90bfe06f j 80000b88 <_vfprintf_r+0x326> - 80002282: 6522 ld a0,8(sp) - 80002284: 0013059b addiw a1,t1,1 - 80002288: f41a sd t1,40(sp) - 8000228a: 3b8030ef jal 80005642 <_malloc_r> - 8000228e: 7322 ld t1,40(sp) - 80002290: 87aa mv a5,a0 - 80002292: 5e050063 beqz a0,80002872 <_vfprintf_r+0x2010> - 80002296: 65ee ld a1,216(sp) - 80002298: f43e sd a5,40(sp) - 8000229a: 654e ld a0,208(sp) - 8000229c: 4d81 li s11,0 - 8000229e: 0005c463 bltz a1,800022a6 <_vfprintf_r+0x1a44> - 800022a2: 909fe06f j 80000baa <_vfprintf_r+0x348> - 800022a6: 577d li a4,-1 - 800022a8: 177e slli a4,a4,0x3f - 800022aa: 8db9 xor a1,a1,a4 - 800022ac: 02d00d93 li s11,45 - 800022b0: 8fbfe06f j 80000baa <_vfprintf_r+0x348> - 800022b4: 02d00713 li a4,45 - 800022b8: 0ae10ca3 sb a4,185(sp) - 800022bc: 5661 li a2,-8 - 800022be: 4705 li a4,1 - 800022c0: 9f15 subw a4,a4,a3 - 800022c2: 00c6d463 bge a3,a2,800022ca <_vfprintf_r+0x1a68> - 800022c6: a67fe06f j 80000d2c <_vfprintf_r+0x4ca> - 800022ca: 0ba10693 addi a3,sp,186 - 800022ce: 0307071b addiw a4,a4,48 - 800022d2: 00e68023 sb a4,0(a3) - 800022d6: 1398 addi a4,sp,480 - 800022d8: 8e99 sub a3,a3,a4 - 800022da: 1296871b addiw a4,a3,297 - 800022de: f0ba sd a4,96(sp) - 800022e0: ac1fe06f j 80000da0 <_vfprintf_r+0x53e> - 800022e4: f402 sd zero,40(sp) - 800022e6: 4c8d li s9,3 - 800022e8: 4301 li t1,0 - 800022ea: e082 sd zero,64(sp) - 800022ec: e482 sd zero,72(sp) - 800022ee: fc02 sd zero,56(sp) - 800022f0: 4811 li a6,4 - 800022f2: f14fe06f j 80000a06 <_vfprintf_r+0x1a4> - 800022f6: 00007497 auipc s1,0x7 - 800022fa: 2c248493 addi s1,s1,706 # 800095b8 - 800022fe: badd j 80001cf4 <_vfprintf_r+0x1492> - 80002300: 6686 ld a3,64(sp) - 80002302: 00a6c603 lbu a2,10(a3) - 80002306: 9f3fe06f j 80000cf8 <_vfprintf_r+0x496> - 8000230a: fbbc8793 addi a5,s9,-69 - 8000230e: 6522 ld a0,8(sp) - 80002310: 0017b793 seqz a5,a5 - 80002314: 006787bb addw a5,a5,t1 - 80002318: 873e mv a4,a5 - 8000231a: f83e sd a5,48(sp) - 8000231c: 0c810893 addi a7,sp,200 - 80002320: 191c addi a5,sp,176 - 80002322: 0b410813 addi a6,sp,180 - 80002326: 4689 li a3,2 - 80002328: 85a6 mv a1,s1 - 8000232a: 865a mv a2,s6 - 8000232c: fc1a sd t1,56(sp) - 8000232e: 48b010ef jal 80003fb8 <_ldtoa_r> - 80002332: 04700713 li a4,71 - 80002336: 7362 ld t1,56(sp) - 80002338: 87aa mv a5,a0 - 8000233a: 54ec9e63 bne s9,a4,80002896 <_vfprintf_r+0x2034> - 8000233e: 00197713 andi a4,s2,1 - 80002342: 26071863 bnez a4,800025b2 <_vfprintf_r+0x1d50> - 80002346: 68ae ld a7,200(sp) - 80002348: 574a lw a4,176(sp) - 8000234a: 40f888b3 sub a7,a7,a5 - 8000234e: fc3a sd a4,56(sp) - 80002350: 0008871b sext.w a4,a7 - 80002354: f83a sd a4,48(sp) - 80002356: 7762 ld a4,56(sp) - 80002358: 00e32333 slt t1,t1,a4 - 8000235c: ffd72713 slti a4,a4,-3 - 80002360: 00676733 or a4,a4,t1 - 80002364: c729 beqz a4,800023ae <_vfprintf_r+0x1b4c> - 80002366: 3c79 addiw s8,s8,-2 - 80002368: 7762 ld a4,56(sp) - 8000236a: 0b810c23 sb s8,184(sp) - 8000236e: 377d addiw a4,a4,-1 - 80002370: d93a sw a4,176(sp) - 80002372: 00074c63 bltz a4,8000238a <_vfprintf_r+0x1b28> - 80002376: 02b00693 li a3,43 - 8000237a: 0ad10ca3 sb a3,185(sp) - 8000237e: 46a5 li a3,9 - 80002380: 00e6df63 bge a3,a4,8000239e <_vfprintf_r+0x1b3c> - 80002384: f402 sd zero,40(sp) - 80002386: 9a7fe06f j 80000d2c <_vfprintf_r+0x4ca> - 8000238a: 7662 ld a2,56(sp) - 8000238c: 02d00713 li a4,45 - 80002390: 0ae10ca3 sb a4,185(sp) - 80002394: 56e1 li a3,-8 - 80002396: 4705 li a4,1 - 80002398: 9f11 subw a4,a4,a2 - 8000239a: fed645e3 blt a2,a3,80002384 <_vfprintf_r+0x1b22> - 8000239e: 03000693 li a3,48 - 800023a2: 0ad10d23 sb a3,186(sp) - 800023a6: f402 sd zero,40(sp) - 800023a8: 0bb10693 addi a3,sp,187 - 800023ac: b70d j 800022ce <_vfprintf_r+0x1a6c> - 800023ae: 7762 ld a4,56(sp) - 800023b0: 76c2 ld a3,48(sp) - 800023b2: 1cd74f63 blt a4,a3,80002590 <_vfprintf_r+0x1d2e> - 800023b6: 76e2 ld a3,56(sp) - 800023b8: 00197713 andi a4,s2,1 - 800023bc: 8cb6 mv s9,a3 - 800023be: c701 beqz a4,800023c6 <_vfprintf_r+0x1b64> - 800023c0: 6746 ld a4,80(sp) - 800023c2: 00d70cbb addw s9,a4,a3 - 800023c6: 40097f93 andi t6,s2,1024 - 800023ca: 000f8563 beqz t6,800023d4 <_vfprintf_r+0x1b72> - 800023ce: 7762 ld a4,56(sp) - 800023d0: 2ee04263 bgtz a4,800026b4 <_vfprintf_r+0x1e52> - 800023d4: 8766 mv a4,s9 - 800023d6: 1c0ccc63 bltz s9,800025ae <_vfprintf_r+0x1d4c> - 800023da: 0007081b sext.w a6,a4 - 800023de: 260d8b63 beqz s11,80002654 <_vfprintf_r+0x1df2> - 800023e2: 02d00693 li a3,45 - 800023e6: 7966 ld s2,120(sp) - 800023e8: 0ad103a3 sb a3,167(sp) - 800023ec: 0017081b addiw a6,a4,1 - 800023f0: f402 sd zero,40(sp) - 800023f2: 4301 li t1,0 - 800023f4: e082 sd zero,64(sp) - 800023f6: e482 sd zero,72(sp) - 800023f8: 06700c13 li s8,103 - 800023fc: e0afe06f j 80000a06 <_vfprintf_r+0x1a4> - 80002400: 65c2 ld a1,16(sp) - 80002402: 6522 ld a0,8(sp) - 80002404: 1190 addi a2,sp,224 - 80002406: e0c2 sd a6,64(sp) - 80002408: fc3e sd a5,56(sp) - 8000240a: 572000ef jal 8000297c <__sprint_r> - 8000240e: 9a051463 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80002412: 564a lw a2,176(sp) - 80002414: 7dce ld s11,240(sp) - 80002416: 6806 ld a6,64(sp) - 80002418: 77e2 ld a5,56(sp) - 8000241a: 8d52 mv s10,s4 - 8000241c: 82bff06f j 80001c46 <_vfprintf_r+0x13e4> - 80002420: 0d41 addi s10,s10,16 - 80002422: b0b9 j 80001c70 <_vfprintf_r+0x140e> - 80002424: 02d00793 li a5,45 - 80002428: 0af103a3 sb a5,167(sp) - 8000242c: 04700793 li a5,71 - 80002430: 2187c563 blt a5,s8,8000263a <_vfprintf_r+0x1dd8> - 80002434: f402 sd zero,40(sp) - 80002436: 4c8d li s9,3 - 80002438: 4301 li t1,0 - 8000243a: e082 sd zero,64(sp) - 8000243c: e482 sd zero,72(sp) - 8000243e: fc02 sd zero,56(sp) - 80002440: 00007797 auipc a5,0x7 - 80002444: e5878793 addi a5,a5,-424 # 80009298 <__clzdi2+0x2be> - 80002448: 4811 li a6,4 - 8000244a: dbcfe06f j 80000a06 <_vfprintf_r+0x1a4> - 8000244e: 65c2 ld a1,16(sp) - 80002450: 6522 ld a0,8(sp) - 80002452: 1190 addi a2,sp,224 - 80002454: e0c2 sd a6,64(sp) - 80002456: fc3e sd a5,56(sp) - 80002458: 524000ef jal 8000297c <__sprint_r> - 8000245c: 94051d63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 80002460: 5b4a lw s6,176(sp) - 80002462: 7dce ld s11,240(sp) - 80002464: 6806 ld a6,64(sp) - 80002466: 77e2 ld a5,56(sp) - 80002468: 8d52 mv s10,s4 - 8000246a: b08ff06f j 80001772 <_vfprintf_r+0xf10> - 8000246e: 65c2 ld a1,16(sp) - 80002470: 6522 ld a0,8(sp) - 80002472: 1190 addi a2,sp,224 - 80002474: fc3a sd a4,56(sp) - 80002476: 506000ef jal 8000297c <__sprint_r> - 8000247a: 92051e63 bnez a0,800015b6 <_vfprintf_r+0xd54> - 8000247e: 000d4583 lbu a1,0(s10) - 80002482: 764e ld a2,240(sp) - 80002484: 7762 ld a4,56(sp) - 80002486: 87d2 mv a5,s4 - 80002488: 469d li a3,7 - 8000248a: b6d5 j 8000206e <_vfprintf_r+0x180c> - 8000248c: f026 sd s1,32(sp) - 8000248e: 18070e63 beqz a4,8000262a <_vfprintf_r+0x1dc8> - 80002492: 0013081b addiw a6,t1,1 - 80002496: 8c9a mv s9,t1 - 80002498: e082 sd zero,64(sp) - 8000249a: 4301 li t1,0 - 8000249c: e482 sd zero,72(sp) - 8000249e: fc02 sd zero,56(sp) - 800024a0: d66fe06f j 80000a06 <_vfprintf_r+0x1a4> - 800024a4: 662a ld a2,136(sp) - 800024a6: 75a6 ld a1,104(sp) - 800024a8: f81a sd t1,48(sp) - 800024aa: 40c78e33 sub t3,a5,a2 - 800024ae: 8572 mv a0,t3 - 800024b0: f472 sd t3,40(sp) - 800024b2: 5f9000ef jal 800032aa - 800024b6: ccccd7b7 lui a5,0xccccd - 800024ba: ccd78793 addi a5,a5,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> - 800024be: 02079713 slli a4,a5,0x20 - 800024c2: 973e add a4,a4,a5 - 800024c4: 02eb3b33 mulhu s6,s6,a4 - 800024c8: 001dc683 lbu a3,1(s11) - 800024cc: 7e22 ld t3,40(sp) - 800024ce: 00007817 auipc a6,0x7 - 800024d2: 61283803 ld a6,1554(a6) # 80009ae0 <__clz_tab+0x100> - 800024d6: 00d036b3 snez a3,a3 - 800024da: 9db6 add s11,s11,a3 - 800024dc: 7342 ld t1,48(sp) - 800024de: fffe0793 addi a5,t3,-1 - 800024e2: 4585 li a1,1 - 800024e4: 48a5 li a7,9 - 800024e6: 003b5b13 srli s6,s6,0x3 - 800024ea: 02eb3733 mulhu a4,s6,a4 - 800024ee: 00375693 srli a3,a4,0x3 - 800024f2: 00269713 slli a4,a3,0x2 - 800024f6: 9736 add a4,a4,a3 - 800024f8: 0706 slli a4,a4,0x1 - 800024fa: 40eb0733 sub a4,s6,a4 - 800024fe: 0307071b addiw a4,a4,48 - 80002502: feee0fa3 sb a4,-1(t3) - 80002506: c54ff06f j 8000195a <_vfprintf_r+0x10f8> - 8000250a: 65c2 ld a1,16(sp) - 8000250c: 6522 ld a0,8(sp) - 8000250e: 1190 addi a2,sp,224 - 80002510: fc42 sd a6,56(sp) - 80002512: 46a000ef jal 8000297c <__sprint_r> - 80002516: 8a051063 bnez a0,800015b6 <_vfprintf_r+0xd54> - 8000251a: 5b4a lw s6,176(sp) - 8000251c: 77c2 ld a5,48(sp) - 8000251e: 7dce ld s11,240(sp) - 80002520: 7862 ld a6,56(sp) - 80002522: 8d52 mv s10,s4 - 80002524: 41678b3b subw s6,a5,s6 - 80002528: a80ff06f j 800017a8 <_vfprintf_r+0xf46> - 8000252c: 8fca mv t6,s2 - 8000252e: c9aff06f j 800019c8 <_vfprintf_r+0x1166> - 80002532: 5741 li a4,-16 - 80002534: 40c00b3b negw s6,a2 - 80002538: 00007497 auipc s1,0x7 - 8000253c: 08048493 addi s1,s1,128 # 800095b8 - 80002540: 0ae65963 bge a2,a4,800025f2 <_vfprintf_r+0x1d90> - 80002544: e0ca sd s2,64(sp) - 80002546: 84da mv s1,s6 - 80002548: 4c41 li s8,16 - 8000254a: 8b56 mv s6,s5 - 8000254c: 4c9d li s9,7 - 8000254e: fc3e sd a5,56(sp) - 80002550: 00007917 auipc s2,0x7 - 80002554: 06890913 addi s2,s2,104 # 800095b8 - 80002558: 8ac2 mv s5,a6 - 8000255a: a021 j 80002562 <_vfprintf_r+0x1d00> - 8000255c: 34c1 addiw s1,s1,-16 - 8000255e: 089c5463 bge s8,s1,800025e6 <_vfprintf_r+0x1d84> - 80002562: 0dc1 addi s11,s11,16 - 80002564: 2685 addiw a3,a3,1 - 80002566: 012d3023 sd s2,0(s10) - 8000256a: 018d3423 sd s8,8(s10) - 8000256e: f9ee sd s11,240(sp) - 80002570: d5b6 sw a3,232(sp) - 80002572: 0d41 addi s10,s10,16 - 80002574: fedcd4e3 bge s9,a3,8000255c <_vfprintf_r+0x1cfa> - 80002578: 65c2 ld a1,16(sp) - 8000257a: 6522 ld a0,8(sp) - 8000257c: 1190 addi a2,sp,224 - 8000257e: 3fe000ef jal 8000297c <__sprint_r> - 80002582: c119 beqz a0,80002588 <_vfprintf_r+0x1d26> - 80002584: 832ff06f j 800015b6 <_vfprintf_r+0xd54> - 80002588: 7dce ld s11,240(sp) - 8000258a: 56ae lw a3,232(sp) - 8000258c: 8d52 mv s10,s4 - 8000258e: b7f9 j 8000255c <_vfprintf_r+0x1cfa> - 80002590: 6746 ld a4,80(sp) - 80002592: 06700c13 li s8,103 - 80002596: 01170cbb addw s9,a4,a7 - 8000259a: 7762 ld a4,56(sp) - 8000259c: 9ae043e3 bgtz a4,80001f42 <_vfprintf_r+0x16e0> - 800025a0: 40ec88bb subw a7,s9,a4 - 800025a4: 00188c9b addiw s9,a7,1 - 800025a8: 8766 mv a4,s9 - 800025aa: e20cd8e3 bgez s9,800023da <_vfprintf_r+0x1b78> - 800025ae: 4701 li a4,0 - 800025b0: b52d j 800023da <_vfprintf_r+0x1b78> - 800025b2: 8526 mv a0,s1 - 800025b4: 85da mv a1,s6 - 800025b6: 4601 li a2,0 - 800025b8: 4681 li a3,0 - 800025ba: e0be sd a5,64(sp) - 800025bc: fc1a sd t1,56(sp) - 800025be: 003050ef jal 80007dc0 <__eqtf2> - 800025c2: 7362 ld t1,56(sp) - 800025c4: 6786 ld a5,64(sp) - 800025c6: 18050463 beqz a0,8000274e <_vfprintf_r+0x1eec> - 800025ca: 7742 ld a4,48(sp) - 800025cc: 68ae ld a7,200(sp) - 800025ce: 00e78cb3 add s9,a5,a4 - 800025d2: 9198eae3 bltu a7,s9,80001ee6 <_vfprintf_r+0x1684> - 800025d6: 40f888b3 sub a7,a7,a5 - 800025da: 0008871b sext.w a4,a7 - 800025de: f83a sd a4,48(sp) - 800025e0: 574a lw a4,176(sp) - 800025e2: fc3a sd a4,56(sp) - 800025e4: bb8d j 80002356 <_vfprintf_r+0x1af4> - 800025e6: 8856 mv a6,s5 - 800025e8: 77e2 ld a5,56(sp) - 800025ea: 8ada mv s5,s6 - 800025ec: 8b26 mv s6,s1 - 800025ee: 84ca mv s1,s2 - 800025f0: 6906 ld s2,64(sp) - 800025f2: 9dda add s11,s11,s6 - 800025f4: 2685 addiw a3,a3,1 - 800025f6: f9ee sd s11,240(sp) - 800025f8: d5b6 sw a3,232(sp) - 800025fa: 009d3023 sd s1,0(s10) - 800025fe: 016d3423 sd s6,8(s10) - 80002602: 471d li a4,7 - 80002604: e0d75ee3 bge a4,a3,80002420 <_vfprintf_r+0x1bbe> - 80002608: 65c2 ld a1,16(sp) - 8000260a: 6522 ld a0,8(sp) - 8000260c: 1190 addi a2,sp,224 - 8000260e: e0c2 sd a6,64(sp) - 80002610: fc3e sd a5,56(sp) - 80002612: 36a000ef jal 8000297c <__sprint_r> - 80002616: c119 beqz a0,8000261c <_vfprintf_r+0x1dba> - 80002618: f9ffe06f j 800015b6 <_vfprintf_r+0xd54> - 8000261c: 7dce ld s11,240(sp) - 8000261e: 56ae lw a3,232(sp) - 80002620: 6806 ld a6,64(sp) - 80002622: 77e2 ld a5,56(sp) - 80002624: 8d52 mv s10,s4 - 80002626: e4aff06f j 80001c70 <_vfprintf_r+0x140e> - 8000262a: 8c9a mv s9,t1 - 8000262c: 881a mv a6,t1 - 8000262e: e082 sd zero,64(sp) - 80002630: 4301 li t1,0 - 80002632: e482 sd zero,72(sp) - 80002634: fc02 sd zero,56(sp) - 80002636: bd0fe06f j 80000a06 <_vfprintf_r+0x1a4> - 8000263a: f402 sd zero,40(sp) - 8000263c: 4c8d li s9,3 - 8000263e: 4301 li t1,0 - 80002640: e082 sd zero,64(sp) - 80002642: e482 sd zero,72(sp) - 80002644: fc02 sd zero,56(sp) - 80002646: 00007797 auipc a5,0x7 - 8000264a: c5a78793 addi a5,a5,-934 # 800092a0 <__clzdi2+0x2c6> - 8000264e: 4811 li a6,4 - 80002650: bb6fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80002654: 4601 li a2,0 + 80001d52: 312010ef jal 80003064 <__sprint_r> + 80001d56: f521 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001d58: 34c1 addiw s1,s1,-16 + 80001d5a: 7dce ld s11,240(sp) + 80001d5c: 57ae lw a5,232(sp) + 80001d5e: 8d52 mv s10,s4 + 80001d60: fc9c4be3 blt s8,s1,80001d36 <_vfprintf_r+0xdec> + 80001d64: 8856 mv a6,s5 + 80001d66: 874a mv a4,s2 + 80001d68: 8ada mv s5,s6 + 80001d6a: 8b26 mv s6,s1 + 80001d6c: 9dda add s11,s11,s6 + 80001d6e: 2785 addiw a5,a5,1 + 80001d70: 00ed3023 sd a4,0(s10) + 80001d74: f9ee sd s11,240(sp) + 80001d76: d5be sw a5,232(sp) + 80001d78: 016d3423 sd s6,8(s10) + 80001d7c: 471d li a4,7 + 80001d7e: c0f75163 bge a4,a5,80001180 <_vfprintf_r+0x236> + 80001d82: 65c2 ld a1,16(sp) + 80001d84: 6522 ld a0,8(sp) + 80001d86: 1190 addi a2,sp,224 + 80001d88: fc42 sd a6,56(sp) + 80001d8a: 2da010ef jal 80003064 <__sprint_r> + 80001d8e: f901 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001d90: 7dce ld s11,240(sp) + 80001d92: 7862 ld a6,56(sp) + 80001d94: becff06f j 80001180 <_vfprintf_r+0x236> + 80001d98: 0ae4 addi s1,sp,348 + 80001d9a: 87a6 mv a5,s1 + 80001d9c: 0076f713 andi a4,a3,7 + 80001da0: 863e mv a2,a5 + 80001da2: 03070713 addi a4,a4,48 + 80001da6: 828d srli a3,a3,0x3 + 80001da8: fee78fa3 sb a4,-1(a5) + 80001dac: 17fd addi a5,a5,-1 + 80001dae: f6fd bnez a3,80001d9c <_vfprintf_r+0xe52> + 80001db0: fd070713 addi a4,a4,-48 + 80001db4: 00e03733 snez a4,a4 + 80001db8: 00e97733 and a4,s2,a4 + 80001dbc: 03000693 li a3,48 + 80001dc0: 5a071c63 bnez a4,80002378 <_vfprintf_r+0x142e> + 80001dc4: 40f48cbb subw s9,s1,a5 + 80001dc8: 0003081b sext.w a6,t1 + 80001dcc: 1f934963 blt t1,s9,80001fbe <_vfprintf_r+0x1074> + 80001dd0: f402 sd zero,40(sp) + 80001dd2: e082 sd zero,64(sp) + 80001dd4: e482 sd zero,72(sp) + 80001dd6: fc02 sd zero,56(sp) + 80001dd8: b16ff06f j 800010ee <_vfprintf_r+0x1a4> + 80001ddc: 564a lw a2,176(sp) + 80001dde: 52c05663 blez a2,8000230a <_vfprintf_r+0x13c0> + 80001de2: 76e2 ld a3,56(sp) + 80001de4: 7642 ld a2,48(sp) + 80001de6: 8736 mv a4,a3 + 80001de8: 32d64f63 blt a2,a3,80002126 <_vfprintf_r+0x11dc> + 80001dec: 0007049b sext.w s1,a4 + 80001df0: 00905f63 blez s1,80001e0e <_vfprintf_r+0xec4> + 80001df4: 572e lw a4,232(sp) + 80001df6: 9da6 add s11,s11,s1 + 80001df8: 00fd3023 sd a5,0(s10) + 80001dfc: 2705 addiw a4,a4,1 + 80001dfe: 009d3423 sd s1,8(s10) + 80001e02: f9ee sd s11,240(sp) + 80001e04: d5ba sw a4,232(sp) + 80001e06: 469d li a3,7 + 80001e08: 0d41 addi s10,s10,16 + 80001e0a: 22e6c7e3 blt a3,a4,80002838 <_vfprintf_r+0x18ee> + 80001e0e: 88a6 mv a7,s1 + 80001e10: 3a04c363 bltz s1,800021b6 <_vfprintf_r+0x126c> + 80001e14: 7762 ld a4,56(sp) + 80001e16: 41170c3b subw s8,a4,a7 + 80001e1a: 3d804263 bgtz s8,800021de <_vfprintf_r+0x1294> + 80001e1e: 76e2 ld a3,56(sp) + 80001e20: 40097713 andi a4,s2,1024 + 80001e24: 00d784b3 add s1,a5,a3 + 80001e28: 080715e3 bnez a4,800026b2 <_vfprintf_r+0x1768> + 80001e2c: 5b4a lw s6,176(sp) + 80001e2e: 76c2 ld a3,48(sp) + 80001e30: 00db4663 blt s6,a3,80001e3c <_vfprintf_r+0xef2> + 80001e34: 00197713 andi a4,s2,1 + 80001e38: 260702e3 beqz a4,8000289c <_vfprintf_r+0x1952> + 80001e3c: 66c6 ld a3,80(sp) + 80001e3e: 572e lw a4,232(sp) + 80001e40: 6666 ld a2,88(sp) + 80001e42: 9db6 add s11,s11,a3 + 80001e44: 2705 addiw a4,a4,1 + 80001e46: 00dd3423 sd a3,8(s10) + 80001e4a: 00cd3023 sd a2,0(s10) + 80001e4e: f9ee sd s11,240(sp) + 80001e50: d5ba sw a4,232(sp) + 80001e52: 469d li a3,7 + 80001e54: 0d41 addi s10,s10,16 + 80001e56: 4ee6c0e3 blt a3,a4,80002b36 <_vfprintf_r+0x1bec> + 80001e5a: 7742 ld a4,48(sp) + 80001e5c: 97ba add a5,a5,a4 + 80001e5e: 40978c33 sub s8,a5,s1 + 80001e62: 41670b3b subw s6,a4,s6 + 80001e66: 000c079b sext.w a5,s8 + 80001e6a: 00fb5363 bge s6,a5,80001e70 <_vfprintf_r+0xf26> + 80001e6e: 8c5a mv s8,s6 + 80001e70: 2c01 sext.w s8,s8 + 80001e72: 01805f63 blez s8,80001e90 <_vfprintf_r+0xf46> + 80001e76: 57ae lw a5,232(sp) + 80001e78: 9de2 add s11,s11,s8 + 80001e7a: 009d3023 sd s1,0(s10) + 80001e7e: 2785 addiw a5,a5,1 + 80001e80: 018d3423 sd s8,8(s10) + 80001e84: f9ee sd s11,240(sp) + 80001e86: d5be sw a5,232(sp) + 80001e88: 471d li a4,7 + 80001e8a: 0d41 addi s10,s10,16 + 80001e8c: 56f743e3 blt a4,a5,80002bf2 <_vfprintf_r+0x1ca8> + 80001e90: 87e2 mv a5,s8 + 80001e92: 000c5363 bgez s8,80001e98 <_vfprintf_r+0xf4e> + 80001e96: 4781 li a5,0 + 80001e98: 40fb0b3b subw s6,s6,a5 + 80001e9c: ad605a63 blez s6,80001170 <_vfprintf_r+0x226> + 80001ea0: 4c41 li s8,16 + 80001ea2: 57ae lw a5,232(sp) + 80001ea4: 336c5de3 bge s8,s6,800029de <_vfprintf_r+0x1a94> + 80001ea8: 876a mv a4,s10 + 80001eaa: 84da mv s1,s6 + 80001eac: 8d56 mv s10,s5 + 80001eae: 4c9d li s9,7 + 80001eb0: 8aca mv s5,s2 + 80001eb2: 8b42 mv s6,a6 + 80001eb4: 00008917 auipc s2,0x8 + 80001eb8: 09490913 addi s2,s2,148 # 80009f48 + 80001ebc: a021 j 80001ec4 <_vfprintf_r+0xf7a> + 80001ebe: 34c1 addiw s1,s1,-16 + 80001ec0: 509c5863 bge s8,s1,800023d0 <_vfprintf_r+0x1486> + 80001ec4: 0dc1 addi s11,s11,16 + 80001ec6: 2785 addiw a5,a5,1 + 80001ec8: 01273023 sd s2,0(a4) + 80001ecc: 01873423 sd s8,8(a4) + 80001ed0: f9ee sd s11,240(sp) + 80001ed2: d5be sw a5,232(sp) + 80001ed4: 0741 addi a4,a4,16 + 80001ed6: fefcd4e3 bge s9,a5,80001ebe <_vfprintf_r+0xf74> + 80001eda: 65c2 ld a1,16(sp) + 80001edc: 6522 ld a0,8(sp) + 80001ede: 1190 addi a2,sp,224 + 80001ee0: 184010ef jal 80003064 <__sprint_r> + 80001ee4: da051de3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001ee8: 7dce ld s11,240(sp) + 80001eea: 57ae lw a5,232(sp) + 80001eec: 8752 mv a4,s4 + 80001eee: bfc1 j 80001ebe <_vfprintf_r+0xf74> + 80001ef0: 572e lw a4,232(sp) + 80001ef2: b27d j 800018a0 <_vfprintf_r+0x956> + 80001ef4: 4c81 li s9,0 + 80001ef6: 4301 li t1,0 + 80001ef8: e082 sd zero,64(sp) + 80001efa: e482 sd zero,72(sp) + 80001efc: fc02 sd zero,56(sp) + 80001efe: f402 sd zero,40(sp) + 80001f00: 0afc addi a5,sp,348 + 80001f02: 9ecff06f j 800010ee <_vfprintf_r+0x1a4> + 80001f06: 00d97633 and a2,s2,a3 + 80001f0a: e0061e63 bnez a2,80001526 <_vfprintf_r+0x5dc> + 80001f0e: 00fd3023 sd a5,0(s10) + 80001f12: 00dd3423 sd a3,8(s10) + 80001f16: f9ee sd s11,240(sp) + 80001f18: d5da sw s6,232(sp) + 80001f1a: 479d li a5,7 + 80001f1c: e767d963 bge a5,s6,8000158e <_vfprintf_r+0x644> + 80001f20: 65c2 ld a1,16(sp) + 80001f22: 6522 ld a0,8(sp) + 80001f24: 1190 addi a2,sp,224 + 80001f26: fc42 sd a6,56(sp) + 80001f28: 13c010ef jal 80003064 <__sprint_r> + 80001f2c: d60519e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001f30: 7dce ld s11,240(sp) + 80001f32: 5b2e lw s6,232(sp) + 80001f34: 7862 ld a6,56(sp) + 80001f36: 8c52 mv s8,s4 + 80001f38: e56ff06f j 8000158e <_vfprintf_r+0x644> + 80001f3c: 7742 ld a4,48(sp) + 80001f3e: 4785 li a5,1 + 80001f40: e4e7d763 bge a5,a4,8000158e <_vfprintf_r+0x644> + 80001f44: 47c5 li a5,17 + 80001f46: 00008497 auipc s1,0x8 + 80001f4a: 00248493 addi s1,s1,2 # 80009f48 + 80001f4e: 50e7d063 bge a5,a4,8000244e <_vfprintf_r+0x1504> + 80001f52: 876e mv a4,s11 + 80001f54: 84e6 mv s1,s9 + 80001f56: 8dd6 mv s11,s5 + 80001f58: 4d41 li s10,16 + 80001f5a: 8aca mv s5,s2 + 80001f5c: 479d li a5,7 + 80001f5e: 00008917 auipc s2,0x8 + 80001f62: fea90913 addi s2,s2,-22 # 80009f48 + 80001f66: 8cc2 mv s9,a6 + 80001f68: a021 j 80001f70 <_vfprintf_r+0x1026> + 80001f6a: 34c1 addiw s1,s1,-16 + 80001f6c: 4c9d5b63 bge s10,s1,80002442 <_vfprintf_r+0x14f8> + 80001f70: 0741 addi a4,a4,16 + 80001f72: 2b05 addiw s6,s6,1 + 80001f74: 012c3023 sd s2,0(s8) + 80001f78: 01ac3423 sd s10,8(s8) + 80001f7c: f9ba sd a4,240(sp) + 80001f7e: d5da sw s6,232(sp) + 80001f80: 0c41 addi s8,s8,16 + 80001f82: ff67d4e3 bge a5,s6,80001f6a <_vfprintf_r+0x1020> + 80001f86: 65c2 ld a1,16(sp) + 80001f88: 6522 ld a0,8(sp) + 80001f8a: 1190 addi a2,sp,224 + 80001f8c: 0d8010ef jal 80003064 <__sprint_r> + 80001f90: d00517e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80001f94: 774e ld a4,240(sp) + 80001f96: 5b2e lw s6,232(sp) + 80001f98: 8c52 mv s8,s4 + 80001f9a: 479d li a5,7 + 80001f9c: b7f9 j 80001f6a <_vfprintf_r+0x1020> + 80001f9e: 00197793 andi a5,s2,1 + 80001fa2: 9c078763 beqz a5,80001170 <_vfprintf_r+0x226> + 80001fa6: fa6ff06f j 8000174c <_vfprintf_r+0x802> + 80001faa: 07a1 addi a5,a5,8 + 80001fac: 000ace03 lbu t3,0(s5) + 80001fb0: f03e sd a5,32(sp) + 80001fb2: 8c4ff06f j 80001076 <_vfprintf_r+0x12c> + 80001fb6: 8b26 mv s6,s1 + 80001fb8: 4481 li s1,0 + 80001fba: 94aff06f j 80001104 <_vfprintf_r+0x1ba> + 80001fbe: 000c881b sext.w a6,s9 + 80001fc2: f402 sd zero,40(sp) + 80001fc4: e082 sd zero,64(sp) + 80001fc6: e482 sd zero,72(sp) + 80001fc8: fc02 sd zero,56(sp) + 80001fca: 924ff06f j 800010ee <_vfprintf_r+0x1a4> + 80001fce: 7702 ld a4,32(sp) + 80001fd0: 0a0103a3 sb zero,167(sp) + 80001fd4: 8fca mv t6,s2 + 80001fd6: 00073b03 ld s6,0(a4) + 80001fda: 98035fe3 bgez t1,80001978 <_vfprintf_r+0xa2e> + 80001fde: 7782 ld a5,32(sp) + 80001fe0: 48a5 li a7,9 + 80001fe2: 897e mv s2,t6 + 80001fe4: 07a1 addi a5,a5,8 + 80001fe6: f03e sd a5,32(sp) + 80001fe8: 8768fbe3 bgeu a7,s6,8000185e <_vfprintf_r+0x914> + 80001fec: ccccd7b7 lui a5,0xccccd + 80001ff0: ccd78793 addi a5,a5,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> + 80001ff4: 02079713 slli a4,a5,0x20 + 80001ff8: 0ae4 addi s1,sp,348 + 80001ffa: 7dc6 ld s11,112(sp) + 80001ffc: 00f70833 add a6,a4,a5 + 80002000: 86a6 mv a3,s1 + 80002002: 40097c93 andi s9,s2,1024 + 80002006: 4581 li a1,0 + 80002008: a809 j 8000201a <_vfprintf_r+0x10d0> + 8000200a: 855a mv a0,s6 + 8000200c: 86be mv a3,a5 + 8000200e: 030b3b33 mulhu s6,s6,a6 + 80002012: 003b5b13 srli s6,s6,0x3 + 80002016: 04a8f363 bgeu a7,a0,8000205c <_vfprintf_r+0x1112> + 8000201a: 030b3633 mulhu a2,s6,a6 + 8000201e: fff68793 addi a5,a3,-1 + 80002022: 2585 addiw a1,a1,1 + 80002024: 855a mv a0,s6 + 80002026: 820d srli a2,a2,0x3 + 80002028: 00261713 slli a4,a2,0x2 + 8000202c: 9732 add a4,a4,a2 + 8000202e: 0706 slli a4,a4,0x1 + 80002030: 40eb0733 sub a4,s6,a4 + 80002034: 0307071b addiw a4,a4,48 + 80002038: fee68fa3 sb a4,-1(a3) + 8000203c: 86be mv a3,a5 + 8000203e: fc0c88e3 beqz s9,8000200e <_vfprintf_r+0x10c4> + 80002042: 000dc703 lbu a4,0(s11) + 80002046: f0170693 addi a3,a4,-255 + 8000204a: 8f0d sub a4,a4,a1 + 8000204c: 00d036b3 snez a3,a3 + 80002050: 00173713 seqz a4,a4 + 80002054: 8f75 and a4,a4,a3 + 80002056: db55 beqz a4,8000200a <_vfprintf_r+0x10c0> + 80002058: 3368eae3 bltu a7,s6,80002b8c <_vfprintf_r+0x1c42> + 8000205c: f8ee sd s11,112(sp) + 8000205e: f82e sd a1,48(sp) + 80002060: 40f48cbb subw s9,s1,a5 + 80002064: 0003081b sext.w a6,t1 + 80002068: 01935463 bge t1,s9,80002070 <_vfprintf_r+0x1126> + 8000206c: 000c881b sext.w a6,s9 + 80002070: 0a714583 lbu a1,167(sp) + 80002074: f402 sd zero,40(sp) + 80002076: e082 sd zero,64(sp) + 80002078: e482 sd zero,72(sp) + 8000207a: fc02 sd zero,56(sp) + 8000207c: 4601 li a2,0 + 8000207e: c4058863 beqz a1,800014ce <_vfprintf_r+0x584> + 80002082: 819ff06f j 8000189a <_vfprintf_r+0x950> + 80002086: 884a mv a6,s2 + 80002088: b421 j 80001a90 <_vfprintf_r+0xb46> + 8000208a: 7782 ld a5,32(sp) + 8000208c: 07bd addi a5,a5,15 + 8000208e: 9bc1 andi a5,a5,-16 + 80002090: 01078713 addi a4,a5,16 + 80002094: 6388 ld a0,0(a5) + 80002096: 678c ld a1,8(a5) + 80002098: f03a sd a4,32(sp) + 8000209a: 988ff06f j 80001222 <_vfprintf_r+0x2d8> + 8000209e: 629c ld a5,0(a3) + 800020a0: 66e2 ld a3,24(sp) + 800020a2: e394 sd a3,0(a5) + 800020a4: f03a sd a4,32(sp) + 800020a6: f5ffe06f j 80001004 <_vfprintf_r+0xba> + 800020aa: 7782 ld a5,32(sp) + 800020ac: 00878713 addi a4,a5,8 + 800020b0: 7782 ld a5,32(sp) + 800020b2: 897e mv s2,t6 + 800020b4: f03a sd a4,32(sp) + 800020b6: 639c ld a5,0(a5) + 800020b8: 8b3e mv s6,a5 + 800020ba: f3eff06f j 800017f8 <_vfprintf_r+0x8ae> + 800020be: 0a714583 lbu a1,167(sp) + 800020c2: 4805 li a6,1 + 800020c4: 4601 li a2,0 + 800020c6: f402 sd zero,40(sp) + 800020c8: 4c85 li s9,1 + 800020ca: e082 sd zero,64(sp) + 800020cc: e482 sd zero,72(sp) + 800020ce: fc02 sd zero,56(sp) + 800020d0: 15b10793 addi a5,sp,347 + 800020d4: faeff06f j 80001882 <_vfprintf_r+0x938> + 800020d8: f02e sd a1,32(sp) + 800020da: 00296913 ori s2,s2,2 + 800020de: 4581 li a1,0 + 800020e0: 4609 li a2,2 + 800020e2: 00008517 auipc a0,0x8 + 800020e6: b6650513 addi a0,a0,-1178 # 80009c48 <__clzdi2+0x586> + 800020ea: 07800c13 li s8,120 + 800020ee: 0ae4 addi s1,sp,348 + 800020f0: 87a6 mv a5,s1 + 800020f2: 00f77693 andi a3,a4,15 + 800020f6: 96aa add a3,a3,a0 + 800020f8: 0006c683 lbu a3,0(a3) + 800020fc: 8311 srli a4,a4,0x4 + 800020fe: 17fd addi a5,a5,-1 + 80002100: 00d78023 sb a3,0(a5) + 80002104: f77d bnez a4,800020f2 <_vfprintf_r+0x11a8> + 80002106: 40f48cbb subw s9,s1,a5 + 8000210a: 0003081b sext.w a6,t1 + 8000210e: 01935463 bge t1,s9,80002116 <_vfprintf_r+0x11cc> + 80002112: 000c881b sext.w a6,s9 + 80002116: f402 sd zero,40(sp) + 80002118: e082 sd zero,64(sp) + 8000211a: e482 sd zero,72(sp) + 8000211c: fc02 sd zero,56(sp) + 8000211e: ba058863 beqz a1,800014ce <_vfprintf_r+0x584> + 80002122: f78ff06f j 8000189a <_vfprintf_r+0x950> + 80002126: 8732 mv a4,a2 + 80002128: 0007049b sext.w s1,a4 + 8000212c: cc9044e3 bgtz s1,80001df4 <_vfprintf_r+0xeaa> + 80002130: b9f9 j 80001e0e <_vfprintf_r+0xec4> + 80002132: 537d li t1,-1 + 80002134: b8c9 j 80001a06 <_vfprintf_r+0xabc> + 80002136: 001ace03 lbu t3,1(s5) + 8000213a: 20096913 ori s2,s2,512 + 8000213e: 0a85 addi s5,s5,1 + 80002140: f37fe06f j 80001076 <_vfprintf_r+0x12c> + 80002144: 65c2 ld a1,16(sp) + 80002146: 6522 ld a0,8(sp) + 80002148: 1190 addi a2,sp,224 + 8000214a: fc42 sd a6,56(sp) + 8000214c: 719000ef jal 80003064 <__sprint_r> + 80002150: b40517e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002154: 7dce ld s11,240(sp) + 80002156: 7862 ld a6,56(sp) + 80002158: 8d52 mv s10,s4 + 8000215a: e10ff06f j 8000176a <_vfprintf_r+0x820> + 8000215e: 001ace03 lbu t3,1(s5) + 80002162: 02096913 ori s2,s2,32 + 80002166: 0a85 addi s5,s5,1 + 80002168: f0ffe06f j 80001076 <_vfprintf_r+0x12c> + 8000216c: 8326 mv t1,s1 + 8000216e: 00008517 auipc a0,0x8 + 80002172: af250513 addi a0,a0,-1294 # 80009c60 <__clzdi2+0x59e> + 80002176: 7702 ld a4,32(sp) + 80002178: 02097793 andi a5,s2,32 + 8000217c: 00870593 addi a1,a4,8 + 80002180: cfe1 beqz a5,80002258 <_vfprintf_r+0x130e> + 80002182: 6318 ld a4,0(a4) + 80002184: 00e037b3 snez a5,a4 + 80002188: 00f976b3 and a3,s2,a5 + 8000218c: e2ed bnez a3,8000226e <_vfprintf_r+0x1324> + 8000218e: 0a0103a3 sb zero,167(sp) + 80002192: 12034e63 bltz t1,800022ce <_vfprintf_r+0x1384> + 80002196: 00f367b3 or a5,t1,a5 + 8000219a: b7f97913 andi s2,s2,-1153 + 8000219e: 4601 li a2,0 + 800021a0: a00791e3 bnez a5,80001ba2 <_vfprintf_r+0xc58> + 800021a4: f02e sd a1,32(sp) + 800021a6: fe4ff06f j 8000198a <_vfprintf_r+0xa40> + 800021aa: 8326 mv t1,s1 + 800021ac: 00008517 auipc a0,0x8 + 800021b0: a9c50513 addi a0,a0,-1380 # 80009c48 <__clzdi2+0x586> + 800021b4: b7c9 j 80002176 <_vfprintf_r+0x122c> + 800021b6: 4881 li a7,0 + 800021b8: b9b1 j 80001e14 <_vfprintf_r+0xeca> + 800021ba: 4799 li a5,6 + 800021bc: 0003081b sext.w a6,t1 + 800021c0: 6667e963 bltu a5,t1,80002832 <_vfprintf_r+0x18e8> + 800021c4: f026 sd s1,32(sp) + 800021c6: 8cc2 mv s9,a6 + 800021c8: f402 sd zero,40(sp) + 800021ca: 4301 li t1,0 + 800021cc: e082 sd zero,64(sp) + 800021ce: e482 sd zero,72(sp) + 800021d0: fc02 sd zero,56(sp) + 800021d2: 00008797 auipc a5,0x8 + 800021d6: aa678793 addi a5,a5,-1370 # 80009c78 <__clzdi2+0x5b6> + 800021da: f15fe06f j 800010ee <_vfprintf_r+0x1a4> + 800021de: 4341 li t1,16 + 800021e0: 56ae lw a3,232(sp) + 800021e2: 00008497 auipc s1,0x8 + 800021e6: d6648493 addi s1,s1,-666 # 80009f48 + 800021ea: 49835963 bge t1,s8,8000267c <_vfprintf_r+0x1732> + 800021ee: 8756 mv a4,s5 + 800021f0: 84e2 mv s1,s8 + 800021f2: 8aca mv s5,s2 + 800021f4: 4c9d li s9,7 + 800021f6: 893e mv s2,a5 + 800021f8: 00008b17 auipc s6,0x8 + 800021fc: d50b0b13 addi s6,s6,-688 # 80009f48 + 80002200: 87ea mv a5,s10 + 80002202: 8c42 mv s8,a6 + 80002204: 8d3a mv s10,a4 + 80002206: a021 j 8000220e <_vfprintf_r+0x12c4> + 80002208: 34c1 addiw s1,s1,-16 + 8000220a: 46935163 bge t1,s1,8000266c <_vfprintf_r+0x1722> + 8000220e: 0dc1 addi s11,s11,16 + 80002210: 2685 addiw a3,a3,1 + 80002212: 0167b023 sd s6,0(a5) + 80002216: 0067b423 sd t1,8(a5) + 8000221a: f9ee sd s11,240(sp) + 8000221c: d5b6 sw a3,232(sp) + 8000221e: 07c1 addi a5,a5,16 + 80002220: fedcd4e3 bge s9,a3,80002208 <_vfprintf_r+0x12be> + 80002224: 65c2 ld a1,16(sp) + 80002226: 6522 ld a0,8(sp) + 80002228: 1190 addi a2,sp,224 + 8000222a: 63b000ef jal 80003064 <__sprint_r> + 8000222e: a60518e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002232: 7dce ld s11,240(sp) + 80002234: 56ae lw a3,232(sp) + 80002236: 87d2 mv a5,s4 + 80002238: 4341 li t1,16 + 8000223a: b7f9 j 80002208 <_vfprintf_r+0x12be> + 8000223c: 20097613 andi a2,s2,512 + 80002240: 0a0103a3 sb zero,167(sp) + 80002244: 7782 ld a5,32(sp) + 80002246: 68060763 beqz a2,800028d4 <_vfprintf_r+0x198a> + 8000224a: 0007cb03 lbu s6,0(a5) + 8000224e: 8e04dee3 bgez s1,80001b4a <_vfprintf_r+0xc00> + 80002252: f03a sd a4,32(sp) + 80002254: e04ff06f j 80001858 <_vfprintf_r+0x90e> + 80002258: 01097793 andi a5,s2,16 + 8000225c: 14078063 beqz a5,8000239c <_vfprintf_r+0x1452> + 80002260: 7782 ld a5,32(sp) + 80002262: 6398 ld a4,0(a5) + 80002264: 00e037b3 snez a5,a4 + 80002268: 00f976b3 and a3,s2,a5 + 8000226c: d28d beqz a3,8000218e <_vfprintf_r+0x1244> + 8000226e: 03000793 li a5,48 + 80002272: 0b8104a3 sb s8,169(sp) + 80002276: 0a0103a3 sb zero,167(sp) + 8000227a: 0af10423 sb a5,168(sp) + 8000227e: 3c034f63 bltz t1,8000265c <_vfprintf_r+0x1712> + 80002282: b7f97f93 andi t6,s2,-1153 + 80002286: 002fe913 ori s2,t6,2 + 8000228a: 4609 li a2,2 + 8000228c: ba19 j 80001ba2 <_vfprintf_r+0xc58> + 8000228e: 65c2 ld a1,16(sp) + 80002290: 6522 ld a0,8(sp) + 80002292: 1190 addi a2,sp,224 + 80002294: e0c2 sd a6,64(sp) + 80002296: fc3e sd a5,56(sp) + 80002298: 5cd000ef jal 80003064 <__sprint_r> + 8000229c: a00511e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800022a0: 7dce ld s11,240(sp) + 800022a2: 5b2e lw s6,232(sp) + 800022a4: 6806 ld a6,64(sp) + 800022a6: 77e2 ld a5,56(sp) + 800022a8: 8c52 mv s8,s4 + 800022aa: aacff06f j 80001556 <_vfprintf_r+0x60c> + 800022ae: 65c2 ld a1,16(sp) + 800022b0: 6522 ld a0,8(sp) + 800022b2: 1190 addi a2,sp,224 + 800022b4: e0c2 sd a6,64(sp) + 800022b6: fc3e sd a5,56(sp) + 800022b8: 5ad000ef jal 80003064 <__sprint_r> + 800022bc: 9e0511e3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800022c0: 7dce ld s11,240(sp) + 800022c2: 5b2e lw s6,232(sp) + 800022c4: 6806 ld a6,64(sp) + 800022c6: 77e2 ld a5,56(sp) + 800022c8: 8c52 mv s8,s4 + 800022ca: a70ff06f j 8000153a <_vfprintf_r+0x5f0> + 800022ce: f02e sd a1,32(sp) + 800022d0: bff97913 andi s2,s2,-1025 + 800022d4: 4581 li a1,0 + 800022d6: 4601 li a2,0 + 800022d8: bd19 j 800020ee <_vfprintf_r+0x11a4> + 800022da: 65c2 ld a1,16(sp) + 800022dc: 6522 ld a0,8(sp) + 800022de: 1190 addi a2,sp,224 + 800022e0: e942 sd a6,144(sp) + 800022e2: e13e sd a5,128(sp) + 800022e4: fc9a sd t1,120(sp) + 800022e6: 57f000ef jal 80003064 <__sprint_r> + 800022ea: 9a051ae3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800022ee: 0a714703 lbu a4,167(sp) + 800022f2: 7dce ld s11,240(sp) + 800022f4: 7366 ld t1,120(sp) + 800022f6: 678a ld a5,128(sp) + 800022f8: 684a ld a6,144(sp) + 800022fa: 1a070063 beqz a4,8000249a <_vfprintf_r+0x1550> + 800022fe: 8b26 mv s6,s1 + 80002300: 562e lw a2,232(sp) + 80002302: 4481 li s1,0 + 80002304: 8d52 mv s10,s4 + 80002306: dfffe06f j 80001104 <_vfprintf_r+0x1ba> + 8000230a: 572e lw a4,232(sp) + 8000230c: 00008697 auipc a3,0x8 + 80002310: 97468693 addi a3,a3,-1676 # 80009c80 <__clzdi2+0x5be> + 80002314: 00dd3023 sd a3,0(s10) + 80002318: 0d85 addi s11,s11,1 + 8000231a: 4685 li a3,1 + 8000231c: 2705 addiw a4,a4,1 + 8000231e: 00dd3423 sd a3,8(s10) + 80002322: f9ee sd s11,240(sp) + 80002324: d5ba sw a4,232(sp) + 80002326: 469d li a3,7 + 80002328: 0d41 addi s10,s10,16 + 8000232a: 7ae6cf63 blt a3,a4,80002ae8 <_vfprintf_r+0x1b9e> + 8000232e: 7742 ld a4,48(sp) + 80002330: 8f51 or a4,a4,a2 + 80002332: 52070263 beqz a4,80002856 <_vfprintf_r+0x190c> + 80002336: 6746 ld a4,80(sp) + 80002338: 56ae lw a3,232(sp) + 8000233a: 65e6 ld a1,88(sp) + 8000233c: 9dba add s11,s11,a4 + 8000233e: 2685 addiw a3,a3,1 + 80002340: 00ed3423 sd a4,8(s10) + 80002344: 00bd3023 sd a1,0(s10) + 80002348: f9ee sd s11,240(sp) + 8000234a: d5b6 sw a3,232(sp) + 8000234c: 471d li a4,7 + 8000234e: 0d41 addi s10,s10,16 + 80002350: 52d74663 blt a4,a3,8000287c <_vfprintf_r+0x1932> + 80002354: 0c0643e3 bltz a2,80002c1a <_vfprintf_r+0x1cd0> + 80002358: 7742 ld a4,48(sp) + 8000235a: 2685 addiw a3,a3,1 + 8000235c: 00fd3023 sd a5,0(s10) + 80002360: 9dba add s11,s11,a4 + 80002362: f9ee sd s11,240(sp) + 80002364: d5b6 sw a3,232(sp) + 80002366: 00ed3423 sd a4,8(s10) + 8000236a: 479d li a5,7 + 8000236c: 00d7c463 blt a5,a3,80002374 <_vfprintf_r+0x142a> + 80002370: dfffe06f j 8000116e <_vfprintf_r+0x224> + 80002374: a38ff06f j 800015ac <_vfprintf_r+0x662> + 80002378: 1679 addi a2,a2,-2 + 8000237a: 40c48cbb subw s9,s1,a2 + 8000237e: fed78fa3 sb a3,-1(a5) + 80002382: 0003081b sext.w a6,t1 + 80002386: 01935463 bge t1,s9,8000238e <_vfprintf_r+0x1444> + 8000238a: 000c881b sext.w a6,s9 + 8000238e: 87b2 mv a5,a2 + 80002390: f402 sd zero,40(sp) + 80002392: e082 sd zero,64(sp) + 80002394: e482 sd zero,72(sp) + 80002396: fc02 sd zero,56(sp) + 80002398: d57fe06f j 800010ee <_vfprintf_r+0x1a4> + 8000239c: 04097793 andi a5,s2,64 + 800023a0: 14078b63 beqz a5,800024f6 <_vfprintf_r+0x15ac> + 800023a4: 7782 ld a5,32(sp) + 800023a6: 0007d703 lhu a4,0(a5) + 800023aa: bbe9 j 80002184 <_vfprintf_r+0x123a> + 800023ac: 6522 ld a0,8(sp) + 800023ae: 032010ef jal 800033e0 <__sinit> + 800023b2: bd5fe06f j 80000f86 <_vfprintf_r+0x3c> + 800023b6: 65c2 ld a1,16(sp) + 800023b8: 6522 ld a0,8(sp) + 800023ba: 1190 addi a2,sp,224 + 800023bc: fc42 sd a6,56(sp) + 800023be: 4a7000ef jal 80003064 <__sprint_r> + 800023c2: 8c051ee3 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800023c6: 7dce ld s11,240(sp) + 800023c8: 7862 ld a6,56(sp) + 800023ca: 8d52 mv s10,s4 + 800023cc: b78ff06f j 80001744 <_vfprintf_r+0x7fa> + 800023d0: 885a mv a6,s6 + 800023d2: 8b26 mv s6,s1 + 800023d4: 84ca mv s1,s2 + 800023d6: 8956 mv s2,s5 + 800023d8: 8aea mv s5,s10 + 800023da: 8d3a mv s10,a4 + 800023dc: 9dda add s11,s11,s6 + 800023de: 2785 addiw a5,a5,1 + 800023e0: f9ee sd s11,240(sp) + 800023e2: d5be sw a5,232(sp) + 800023e4: 009d3023 sd s1,0(s10) + 800023e8: 016d3423 sd s6,8(s10) + 800023ec: 471d li a4,7 + 800023ee: 00f74463 blt a4,a5,800023f6 <_vfprintf_r+0x14ac> + 800023f2: d7dfe06f j 8000116e <_vfprintf_r+0x224> + 800023f6: 9b6ff06f j 800015ac <_vfprintf_r+0x662> + 800023fa: 654e ld a0,208(sp) + 800023fc: 65ee ld a1,216(sp) + 800023fe: 4601 li a2,0 + 80002400: 4681 li a3,0 + 80002402: f7f97913 andi s2,s2,-129 + 80002406: 1f2060ef jal 800085f8 <__letf2> + 8000240a: 70054163 bltz a0,80002b0c <_vfprintf_r+0x1bc2> + 8000240e: 04700693 li a3,71 + 80002412: 0a714703 lbu a4,167(sp) + 80002416: 00008797 auipc a5,0x8 + 8000241a: 81278793 addi a5,a5,-2030 # 80009c28 <__clzdi2+0x566> + 8000241e: 5386c663 blt a3,s8,8000294a <_vfprintf_r+0x1a00> + 80002422: 5a071563 bnez a4,800029cc <_vfprintf_r+0x1a82> + 80002426: 4c8d li s9,3 + 80002428: 8866 mv a6,s9 + 8000242a: 9feff06f j 80001628 <_vfprintf_r+0x6de> + 8000242e: 77ce ld a5,240(sp) + 80002430: 64c2 ld s1,16(sp) + 80002432: 86078ce3 beqz a5,80001caa <_vfprintf_r+0xd60> + 80002436: 6522 ld a0,8(sp) + 80002438: 1190 addi a2,sp,224 + 8000243a: 85a6 mv a1,s1 + 8000243c: 429000ef jal 80003064 <__sprint_r> + 80002440: b0ad j 80001caa <_vfprintf_r+0xd60> + 80002442: 8866 mv a6,s9 + 80002444: 8ca6 mv s9,s1 + 80002446: 84ca mv s1,s2 + 80002448: 8956 mv s2,s5 + 8000244a: 8aee mv s5,s11 + 8000244c: 8dba mv s11,a4 + 8000244e: 9de6 add s11,s11,s9 + 80002450: 2b05 addiw s6,s6,1 + 80002452: f9ee sd s11,240(sp) + 80002454: d5da sw s6,232(sp) + 80002456: 009c3023 sd s1,0(s8) + 8000245a: 019c3423 sd s9,8(s8) + 8000245e: 479d li a5,7 + 80002460: 9367d663 bge a5,s6,8000158c <_vfprintf_r+0x642> + 80002464: bc75 j 80001f20 <_vfprintf_r+0xfd6> + 80002466: 853e mv a0,a5 + 80002468: f03e sd a5,32(sp) + 8000246a: 49f010ef jal 80004108 + 8000246e: 00050c9b sext.w s9,a0 + 80002472: 7782 ld a5,32(sp) + 80002474: 8766 mv a4,s9 + 80002476: 4c0cc563 bltz s9,80002940 <_vfprintf_r+0x19f6> + 8000247a: 0a714683 lbu a3,167(sp) + 8000247e: 0007081b sext.w a6,a4 + 80002482: 9a068263 beqz a3,80001626 <_vfprintf_r+0x6dc> + 80002486: 0017081b addiw a6,a4,1 + 8000248a: 99cff06f j 80001626 <_vfprintf_r+0x6dc> + 8000248e: f02e sd a1,32(sp) + 80002490: 4609 li a2,2 + 80002492: 07800c13 li s8,120 + 80002496: cf4ff06f j 8000198a <_vfprintf_r+0xa40> + 8000249a: 42048363 beqz s1,800028c0 <_vfprintf_r+0x1976> + 8000249e: 562e lw a2,232(sp) + 800024a0: 4481 li s1,0 + 800024a2: 8d52 mv s10,s4 + 800024a4: c83fe06f j 80001126 <_vfprintf_r+0x1dc> + 800024a8: 04097793 andi a5,s2,64 + 800024ac: 44079663 bnez a5,800028f8 <_vfprintf_r+0x19ae> + 800024b0: 7782 ld a5,32(sp) + 800024b2: 20097f93 andi t6,s2,512 + 800024b6: 66e2 ld a3,24(sp) + 800024b8: 639c ld a5,0(a5) + 800024ba: 0a0f8de3 beqz t6,80002d74 <_vfprintf_r+0x1e2a> + 800024be: 00d78023 sb a3,0(a5) + 800024c2: f03a sd a4,32(sp) + 800024c4: b41fe06f j 80001004 <_vfprintf_r+0xba> + 800024c8: 20097793 andi a5,s2,512 + 800024cc: 42078e63 beqz a5,80002908 <_vfprintf_r+0x19be> + 800024d0: 018b1b1b slliw s6,s6,0x18 + 800024d4: 418b5b1b sraiw s6,s6,0x18 + 800024d8: f03a sd a4,32(sp) + 800024da: 87da mv a5,s6 + 800024dc: b1cff06f j 800017f8 <_vfprintf_r+0x8ae> + 800024e0: 20097793 andi a5,s2,512 + 800024e4: 3e078163 beqz a5,800028c6 <_vfprintf_r+0x197c> + 800024e8: 7782 ld a5,32(sp) + 800024ea: 884a mv a6,s2 + 800024ec: f03a sd a4,32(sp) + 800024ee: 0007c683 lbu a3,0(a5) + 800024f2: da4ff06f j 80001a96 <_vfprintf_r+0xb4c> + 800024f6: 20097793 andi a5,s2,512 + 800024fa: 3e078b63 beqz a5,800028f0 <_vfprintf_r+0x19a6> + 800024fe: 7782 ld a5,32(sp) + 80002500: 0007c703 lbu a4,0(a5) + 80002504: b141 j 80002184 <_vfprintf_r+0x123a> + 80002506: 67ee ld a5,216(sp) + 80002508: f7f97913 andi s2,s2,-129 + 8000250c: 03f7d713 srli a4,a5,0x3f + 80002510: fc3a sd a4,56(sp) + 80002512: 3e07df63 bgez a5,80002910 <_vfprintf_r+0x19c6> + 80002516: 02d00793 li a5,45 + 8000251a: 0af103a3 sb a5,167(sp) + 8000251e: f402 sd zero,40(sp) + 80002520: 04700793 li a5,71 + 80002524: e082 sd zero,64(sp) + 80002526: e482 sd zero,72(sp) + 80002528: fc02 sd zero,56(sp) + 8000252a: 4c8d li s9,3 + 8000252c: 4301 li t1,0 + 8000252e: 0587d7e3 bge a5,s8,80002d7c <_vfprintf_r+0x1e32> + 80002532: 00007797 auipc a5,0x7 + 80002536: 70e78793 addi a5,a5,1806 # 80009c40 <__clzdi2+0x57e> + 8000253a: 4811 li a6,4 + 8000253c: bb3fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002540: 10096713 ori a4,s2,256 + 80002544: 57fd li a5,-1 + 80002546: fcba sd a4,120(sp) + 80002548: 64ce ld s1,208(sp) + 8000254a: 6b6e ld s6,216(sp) + 8000254c: 40f30663 beq t1,a5,80002958 <_vfprintf_r+0x1a0e> + 80002550: 7722 ld a4,40(sp) + 80002552: 4d81 li s11,0 + 80002554: fb970693 addi a3,a4,-71 + 80002558: 0016b693 seqz a3,a3 + 8000255c: 00133713 seqz a4,t1 + 80002560: 8f75 and a4,a4,a3 + 80002562: 100715e3 bnez a4,80002e6c <_vfprintf_r+0x1f22> + 80002566: 000b5763 bgez s6,80002574 <_vfprintf_r+0x162a> + 8000256a: 17fe slli a5,a5,0x3f + 8000256c: 00fb4b33 xor s6,s6,a5 + 80002570: 02d00d93 li s11,45 + 80002574: 7ca2 ld s9,40(sp) + 80002576: 04600793 li a5,70 + 8000257a: 46fc9c63 bne s9,a5,800029f2 <_vfprintf_r+0x1aa8> + 8000257e: 6522 ld a0,8(sp) + 80002580: 871a mv a4,t1 + 80002582: 191c addi a5,sp,176 + 80002584: 468d li a3,3 + 80002586: 865a mv a2,s6 + 80002588: 0c810893 addi a7,sp,200 + 8000258c: 0b410813 addi a6,sp,180 + 80002590: 85a6 mv a1,s1 + 80002592: f81a sd t1,48(sp) + 80002594: 10c020ef jal 800046a0 <_ldtoa_r> + 80002598: 7342 ld t1,48(sp) + 8000259a: 00054603 lbu a2,0(a0) + 8000259e: 03000693 li a3,48 + 800025a2: 87aa mv a5,a0 + 800025a4: 00650733 add a4,a0,t1 + 800025a8: 06d603e3 beq a2,a3,80002e0e <_vfprintf_r+0x1ec4> + 800025ac: 5cca lw s9,176(sp) + 800025ae: 8526 mv a0,s1 + 800025b0: 85da mv a1,s6 + 800025b2: 4601 li a2,0 + 800025b4: 4681 li a3,0 + 800025b6: fc3e sd a5,56(sp) + 800025b8: f81a sd t1,48(sp) + 800025ba: 9cba add s9,s9,a4 + 800025bc: 6ed050ef jal 800084a8 <__eqtf2> + 800025c0: 7342 ld t1,48(sp) + 800025c2: 77e2 ld a5,56(sp) + 800025c4: 7c050363 beqz a0,80002d8a <_vfprintf_r+0x1e40> + 800025c8: 68ae ld a7,200(sp) + 800025ca: 1d98fbe3 bgeu a7,s9,80002fa0 <_vfprintf_r+0x2056> + 800025ce: 03000693 li a3,48 + 800025d2: 00188713 addi a4,a7,1 + 800025d6: e5ba sd a4,200(sp) + 800025d8: 00d88023 sb a3,0(a7) + 800025dc: 68ae ld a7,200(sp) + 800025de: ff98eae3 bltu a7,s9,800025d2 <_vfprintf_r+0x1688> + 800025e2: 40f888b3 sub a7,a7,a5 + 800025e6: 0008869b sext.w a3,a7 + 800025ea: f836 sd a3,48(sp) + 800025ec: 56ca lw a3,176(sp) + 800025ee: 04700713 li a4,71 + 800025f2: fc36 sd a3,56(sp) + 800025f4: 76a2 ld a3,40(sp) + 800025f6: 44e68463 beq a3,a4,80002a3e <_vfprintf_r+0x1af4> + 800025fa: 76a2 ld a3,40(sp) + 800025fc: 04600713 li a4,70 + 80002600: 44e69863 bne a3,a4,80002a50 <_vfprintf_r+0x1b06> + 80002604: 00197713 andi a4,s2,1 + 80002608: 00e36733 or a4,t1,a4 + 8000260c: 0007069b sext.w a3,a4 + 80002610: 7762 ld a4,56(sp) + 80002612: e4b6 sd a3,72(sp) + 80002614: 08e058e3 blez a4,80002ea4 <_vfprintf_r+0x1f5a> + 80002618: 8cba mv s9,a4 + 8000261a: 06600c13 li s8,102 + 8000261e: c691 beqz a3,8000262a <_vfprintf_r+0x16e0> + 80002620: 00e308bb addw a7,t1,a4 + 80002624: 6746 ld a4,80(sp) + 80002626: 00e88cbb addw s9,a7,a4 + 8000262a: 40097713 andi a4,s2,1024 + 8000262e: e4ba sd a4,72(sp) + 80002630: 76071863 bnez a4,80002da0 <_vfprintf_r+0x1e56> + 80002634: 8766 mv a4,s9 + 80002636: 000cd363 bgez s9,8000263c <_vfprintf_r+0x16f2> + 8000263a: 4701 li a4,0 + 8000263c: 0007081b sext.w a6,a4 + 80002640: 040d8de3 beqz s11,80002e9a <_vfprintf_r+0x1f50> + 80002644: 02d00693 li a3,45 + 80002648: 7966 ld s2,120(sp) + 8000264a: 0ad103a3 sb a3,167(sp) + 8000264e: 0017081b addiw a6,a4,1 + 80002652: 4301 li t1,0 + 80002654: e082 sd zero,64(sp) 80002656: f402 sd zero,40(sp) - 80002658: 06700c13 li s8,103 - 8000265c: e082 sd zero,64(sp) - 8000265e: e482 sd zero,72(sp) - 80002660: f7afe06f j 80000dda <_vfprintf_r+0x578> - 80002664: 57fd li a5,-1 - 80002666: ec3e sd a5,24(sp) - 80002668: f69fe06f j 800015d0 <_vfprintf_r+0xd6e> - 8000266c: 00d976b3 and a3,s2,a3 - 80002670: e299 bnez a3,80002676 <_vfprintf_r+0x1e14> - 80002672: f46fe06f j 80000db8 <_vfprintf_r+0x556> - 80002676: f3cfe06f j 80000db2 <_vfprintf_r+0x550> - 8000267a: 57fd li a5,-1 - 8000267c: 17fe slli a5,a5,0x3f - 8000267e: 8dbd xor a1,a1,a5 - 80002680: 02d00d93 li s11,45 - 80002684: f402 sd zero,40(sp) - 80002686: 19bc addi a5,sp,248 - 80002688: d22fe06f j 80000baa <_vfprintf_r+0x348> - 8000268c: c394 sw a3,0(a5) - 8000268e: f03a sd a4,32(sp) - 80002690: a8cfe06f j 8000091c <_vfprintf_r+0xba> - 80002694: 00007797 auipc a5,0x7 - 80002698: c1478793 addi a5,a5,-1004 # 800092a8 <__clzdi2+0x2ce> - 8000269c: 4811 li a6,4 - 8000269e: b68fe06f j 80000a06 <_vfprintf_r+0x1a4> - 800026a2: 40fc873b subw a4,s9,a5 - 800026a6: f83a sd a4,48(sp) - 800026a8: 574a lw a4,176(sp) - 800026aa: fc3a sd a4,56(sp) - 800026ac: b885 j 80001f1c <_vfprintf_r+0x16ba> - 800026ae: 64c2 ld s1,16(sp) - 800026b0: f13fe06f j 800015c2 <_vfprintf_r+0xd60> - 800026b4: 06700c13 li s8,103 - 800026b8: 75c6 ld a1,112(sp) - 800026ba: 0ff00693 li a3,255 - 800026be: 0005c703 lbu a4,0(a1) - 800026c2: 20d70963 beq a4,a3,800028d4 <_vfprintf_r+0x2072> - 800026c6: 7662 ld a2,56(sp) - 800026c8: 4801 li a6,0 - 800026ca: 4501 li a0,0 - 800026cc: 00c75a63 bge a4,a2,800026e0 <_vfprintf_r+0x1e7e> - 800026d0: 9e19 subw a2,a2,a4 - 800026d2: 0015c703 lbu a4,1(a1) - 800026d6: c721 beqz a4,8000271e <_vfprintf_r+0x1ebc> - 800026d8: 2505 addiw a0,a0,1 - 800026da: 0585 addi a1,a1,1 - 800026dc: fed718e3 bne a4,a3,800026cc <_vfprintf_r+0x1e6a> - 800026e0: f8ae sd a1,112(sp) - 800026e2: fc32 sd a2,56(sp) - 800026e4: e4aa sd a0,72(sp) - 800026e6: e0c2 sd a6,64(sp) - 800026e8: 66a6 ld a3,72(sp) - 800026ea: 6706 ld a4,64(sp) - 800026ec: 9f35 addw a4,a4,a3 - 800026ee: 66aa ld a3,136(sp) - 800026f0: 02d7073b mulw a4,a4,a3 - 800026f4: 01970cbb addw s9,a4,s9 - 800026f8: 8766 mv a4,s9 - 800026fa: 000cd363 bgez s9,80002700 <_vfprintf_r+0x1e9e> - 800026fe: 4701 li a4,0 - 80002700: 0007081b sext.w a6,a4 - 80002704: 100d8a63 beqz s11,80002818 <_vfprintf_r+0x1fb6> - 80002708: 02d00693 li a3,45 - 8000270c: 7966 ld s2,120(sp) - 8000270e: 0ad103a3 sb a3,167(sp) - 80002712: 0017081b addiw a6,a4,1 - 80002716: f402 sd zero,40(sp) - 80002718: 4301 li t1,0 - 8000271a: aecfe06f j 80000a06 <_vfprintf_r+0x1a4> - 8000271e: 0005c703 lbu a4,0(a1) - 80002722: 2805 addiw a6,a6,1 - 80002724: bf65 j 800026dc <_vfprintf_r+0x1e7a> - 80002726: 4601 li a2,0 - 80002728: 4681 li a3,0 - 8000272a: 8526 mv a0,s1 - 8000272c: 85da mv a1,s6 - 8000272e: e0be sd a5,64(sp) - 80002730: fc3a sd a4,56(sp) - 80002732: f81a sd t1,48(sp) - 80002734: 68c050ef jal 80007dc0 <__eqtf2> - 80002738: 7342 ld t1,48(sp) - 8000273a: 7762 ld a4,56(sp) - 8000273c: 6786 ld a5,64(sp) - 8000273e: e16d bnez a0,80002820 <_vfprintf_r+0x1fbe> - 80002740: 56ca lw a3,176(sp) - 80002742: 9736 add a4,a4,a3 - 80002744: 9f1d subw a4,a4,a5 - 80002746: fc36 sd a3,56(sp) - 80002748: f83a sd a4,48(sp) - 8000274a: fd2ff06f j 80001f1c <_vfprintf_r+0x16ba> - 8000274e: 574a lw a4,176(sp) - 80002750: 78c2 ld a7,48(sp) - 80002752: fc3a sd a4,56(sp) - 80002754: b109 j 80002356 <_vfprintf_r+0x1af4> - 80002756: 84de mv s1,s7 - 80002758: 015b0333 add t1,s6,s5 - 8000275c: 77e6 ld a5,120(sp) - 8000275e: 690a ld s2,128(sp) - 80002760: 6aca ld s5,144(sp) - 80002762: 7b86 ld s7,96(sp) - 80002764: 875a mv a4,s6 - 80002766: 03000693 li a3,48 - 8000276a: 0004d463 bgez s1,80002772 <_vfprintf_r+0x1f10> - 8000276e: d8efe06f j 80000cfc <_vfprintf_r+0x49a> - 80002772: 0705 addi a4,a4,1 - 80002774: fed70fa3 sb a3,-1(a4) - 80002778: fe671de3 bne a4,t1,80002772 <_vfprintf_r+0x1f10> - 8000277c: 0b05 addi s6,s6,1 - 8000277e: 9b26 add s6,s6,s1 - 80002780: d7cfe06f j 80000cfc <_vfprintf_r+0x49a> - 80002784: 000b5763 bgez s6,80002792 <_vfprintf_r+0x1f30> - 80002788: 17fe slli a5,a5,0x3f - 8000278a: 00fb4b33 xor s6,s6,a5 - 8000278e: 02d00d93 li s11,45 - 80002792: 6522 ld a0,8(sp) - 80002794: 191c addi a5,sp,176 - 80002796: 0c810893 addi a7,sp,200 - 8000279a: 0b410813 addi a6,sp,180 - 8000279e: 4705 li a4,1 - 800027a0: 4689 li a3,2 - 800027a2: 85a6 mv a1,s1 - 800027a4: 865a mv a2,s6 - 800027a6: 013010ef jal 80003fb8 <_ldtoa_r> - 800027aa: 4305 li t1,1 - 800027ac: f81a sd t1,48(sp) - 800027ae: 87aa mv a5,a0 - 800027b0: b679 j 8000233e <_vfprintf_r+0x1adc> - 800027b2: 4601 li a2,0 - 800027b4: e082 sd zero,64(sp) - 800027b6: f402 sd zero,40(sp) - 800027b8: e22fe06f j 80000dda <_vfprintf_r+0x578> - 800027bc: 6726 ld a4,72(sp) - 800027be: e30d bnez a4,800027e0 <_vfprintf_r+0x1f7e> - 800027c0: 0c0d8263 beqz s11,80002884 <_vfprintf_r+0x2022> - 800027c4: 02d00713 li a4,45 - 800027c8: 7966 ld s2,120(sp) - 800027ca: 0ae103a3 sb a4,167(sp) - 800027ce: 4301 li t1,0 - 800027d0: e082 sd zero,64(sp) - 800027d2: f402 sd zero,40(sp) - 800027d4: 4c85 li s9,1 - 800027d6: 06600c13 li s8,102 - 800027da: 4809 li a6,2 - 800027dc: a2afe06f j 80000a06 <_vfprintf_r+0x1a4> - 800027e0: 6746 ld a4,80(sp) - 800027e2: 0017089b addiw a7,a4,1 - 800027e6: 00688cbb addw s9,a7,t1 - 800027ea: 8766 mv a4,s9 - 800027ec: 000cd363 bgez s9,800027f2 <_vfprintf_r+0x1f90> - 800027f0: 4701 li a4,0 - 800027f2: 0007081b sext.w a6,a4 - 800027f6: 060d8263 beqz s11,8000285a <_vfprintf_r+0x1ff8> - 800027fa: 02d00693 li a3,45 - 800027fe: 7966 ld s2,120(sp) - 80002800: 0ad103a3 sb a3,167(sp) - 80002804: 0017081b addiw a6,a4,1 - 80002808: f402 sd zero,40(sp) - 8000280a: 4301 li t1,0 - 8000280c: e082 sd zero,64(sp) - 8000280e: e482 sd zero,72(sp) - 80002810: 06600c13 li s8,102 - 80002814: 9f2fe06f j 80000a06 <_vfprintf_r+0x1a4> - 80002818: 4601 li a2,0 - 8000281a: f402 sd zero,40(sp) - 8000281c: dbefe06f j 80000dda <_vfprintf_r+0x578> - 80002820: 4c85 li s9,1 - 80002822: 406c8cbb subw s9,s9,t1 - 80002826: d966 sw s9,176(sp) - 80002828: e9eff06f j 80001ec6 <_vfprintf_r+0x1664> - 8000282c: 7702 ld a4,32(sp) - 8000282e: 431c lw a5,0(a4) - 80002830: 0721 addi a4,a4,8 - 80002832: 833e mv t1,a5 - 80002834: 0007d363 bgez a5,8000283a <_vfprintf_r+0x1fd8> - 80002838: 537d li t1,-1 - 8000283a: 001ace03 lbu t3,1(s5) - 8000283e: 0003049b sext.w s1,t1 - 80002842: f03a sd a4,32(sp) - 80002844: 8ab2 mv s5,a2 - 80002846: 948fe06f j 8000098e <_vfprintf_r+0x12c> - 8000284a: 137e slli t1,t1,0x3f - 8000284c: 006b4b33 xor s6,s6,t1 - 80002850: 02d00d93 li s11,45 - 80002854: 4319 li t1,6 - 80002856: e36ff06f j 80001e8c <_vfprintf_r+0x162a> - 8000285a: 4601 li a2,0 - 8000285c: f402 sd zero,40(sp) - 8000285e: 06600c13 li s8,102 - 80002862: e082 sd zero,64(sp) - 80002864: e482 sd zero,72(sp) - 80002866: d74fe06f j 80000dda <_vfprintf_r+0x578> - 8000286a: 4709 li a4,2 - 8000286c: f0ba sd a4,96(sp) - 8000286e: d32fe06f j 80000da0 <_vfprintf_r+0x53e> - 80002872: 64c2 ld s1,16(sp) - 80002874: 0104d783 lhu a5,16(s1) - 80002878: 0407e793 ori a5,a5,64 - 8000287c: 00f49823 sh a5,16(s1) - 80002880: d43fe06f j 800015c2 <_vfprintf_r+0xd60> - 80002884: 4805 li a6,1 - 80002886: 8cc2 mv s9,a6 - 80002888: 4601 li a2,0 - 8000288a: e082 sd zero,64(sp) - 8000288c: f402 sd zero,40(sp) - 8000288e: 06600c13 li s8,102 - 80002892: d48fe06f j 80000dda <_vfprintf_r+0x578> - 80002896: e0aa sd a0,64(sp) - 80002898: 85da mv a1,s6 - 8000289a: 8526 mv a0,s1 - 8000289c: 4601 li a2,0 - 8000289e: 4681 li a3,0 - 800028a0: fc1a sd t1,56(sp) - 800028a2: 51e050ef jal 80007dc0 <__eqtf2> - 800028a6: 7362 ld t1,56(sp) - 800028a8: 6786 ld a5,64(sp) - 800028aa: c115 beqz a0,800028ce <_vfprintf_r+0x206c> - 800028ac: 7742 ld a4,48(sp) - 800028ae: 68ae ld a7,200(sp) - 800028b0: 00e78cb3 add s9,a5,a4 - 800028b4: e398e963 bltu a7,s9,80001ee6 <_vfprintf_r+0x1684> - 800028b8: 40f8873b subw a4,a7,a5 - 800028bc: f83a sd a4,48(sp) - 800028be: 574a lw a4,176(sp) - 800028c0: fc3a sd a4,56(sp) - 800028c2: e50ff06f j 80001f12 <_vfprintf_r+0x16b0> - 800028c6: 7742 ld a4,48(sp) - 800028c8: 973e add a4,a4,a5 - 800028ca: fc2ff06f j 8000208c <_vfprintf_r+0x182a> - 800028ce: 574a lw a4,176(sp) - 800028d0: fc3a sd a4,56(sp) - 800028d2: bc59 j 80002368 <_vfprintf_r+0x1b06> - 800028d4: e082 sd zero,64(sp) - 800028d6: e482 sd zero,72(sp) - 800028d8: bd01 j 800026e8 <_vfprintf_r+0x1e86> - 800028da: 4301 li t1,0 - 800028dc: e082 sd zero,64(sp) - 800028de: e482 sd zero,72(sp) - 800028e0: f402 sd zero,40(sp) - 800028e2: 4c8d li s9,3 - 800028e4: 4811 li a6,4 - 800028e6: 920fe06f j 80000a06 <_vfprintf_r+0x1a4> + 80002658: a97fe06f j 800010ee <_vfprintf_r+0x1a4> + 8000265c: bff97f93 andi t6,s2,-1025 + 80002660: f02e sd a1,32(sp) + 80002662: 002fe913 ori s2,t6,2 + 80002666: 4581 li a1,0 + 80002668: 4609 li a2,2 + 8000266a: b451 j 800020ee <_vfprintf_r+0x11a4> + 8000266c: 876a mv a4,s10 + 8000266e: 8862 mv a6,s8 + 80002670: 8d3e mv s10,a5 + 80002672: 8c26 mv s8,s1 + 80002674: 87ca mv a5,s2 + 80002676: 84da mv s1,s6 + 80002678: 8956 mv s2,s5 + 8000267a: 8aba mv s5,a4 + 8000267c: 9de2 add s11,s11,s8 + 8000267e: 2685 addiw a3,a3,1 + 80002680: 009d3023 sd s1,0(s10) + 80002684: 018d3423 sd s8,8(s10) + 80002688: f9ee sd s11,240(sp) + 8000268a: d5b6 sw a3,232(sp) + 8000268c: 471d li a4,7 + 8000268e: 0d41 addi s10,s10,16 + 80002690: f8d75763 bge a4,a3,80001e1e <_vfprintf_r+0xed4> + 80002694: 65c2 ld a1,16(sp) + 80002696: 6522 ld a0,8(sp) + 80002698: 1190 addi a2,sp,224 + 8000269a: e142 sd a6,128(sp) + 8000269c: fcbe sd a5,120(sp) + 8000269e: 1c7000ef jal 80003064 <__sprint_r> + 800026a2: de051e63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800026a6: 7dce ld s11,240(sp) + 800026a8: 680a ld a6,128(sp) + 800026aa: 77e6 ld a5,120(sp) + 800026ac: 8d52 mv s10,s4 + 800026ae: f70ff06f j 80001e1e <_vfprintf_r+0xed4> + 800026b2: 6626 ld a2,72(sp) + 800026b4: 6586 ld a1,64(sp) + 800026b6: 00b66733 or a4,a2,a1 + 800026ba: 0e070ae3 beqz a4,80002fae <_vfprintf_r+0x2064> + 800026be: 7742 ld a4,48(sp) + 800026c0: e4de sd s7,72(sp) + 800026c2: fcbe sd a5,120(sp) + 800026c4: 00e78e33 add t3,a5,a4 + 800026c8: 6baa ld s7,136(sp) + 800026ca: 87ea mv a5,s10 + 800026cc: 7d46 ld s10,112(sp) + 800026ce: e14a sd s2,128(sp) + 800026d0: ed56 sd s5,152(sp) + 800026d2: 8932 mv s2,a2 + 800026d4: 469d li a3,7 + 800026d6: 866e mv a2,s11 + 800026d8: 4b41 li s6,16 + 800026da: 8da6 mv s11,s1 + 800026dc: 00008c97 auipc s9,0x8 + 800026e0: 86cc8c93 addi s9,s9,-1940 # 80009f48 + 800026e4: e942 sd a6,144(sp) + 800026e6: 8aae mv s5,a1 + 800026e8: 84f2 mv s1,t3 + 800026ea: 080a8a63 beqz s5,8000277e <_vfprintf_r+0x1834> + 800026ee: 3afd addiw s5,s5,-1 + 800026f0: 572e lw a4,232(sp) + 800026f2: 75a6 ld a1,104(sp) + 800026f4: 965e add a2,a2,s7 + 800026f6: 2705 addiw a4,a4,1 + 800026f8: e38c sd a1,0(a5) + 800026fa: 0177b423 sd s7,8(a5) + 800026fe: f9b2 sd a2,240(sp) + 80002700: d5ba sw a4,232(sp) + 80002702: 07c1 addi a5,a5,16 + 80002704: 0ee6cc63 blt a3,a4,800027fc <_vfprintf_r+0x18b2> + 80002708: 000d4583 lbu a1,0(s10) + 8000270c: 41b48fb3 sub t6,s1,s11 + 80002710: 000f851b sext.w a0,t6 + 80002714: 0005881b sext.w a6,a1 + 80002718: 8726 mv a4,s1 + 8000271a: 00a5d363 bge a1,a0,80002720 <_vfprintf_r+0x17d6> + 8000271e: 8fc2 mv t6,a6 + 80002720: 000f8c1b sext.w s8,t6 + 80002724: 03805163 blez s8,80002746 <_vfprintf_r+0x17fc> + 80002728: 55ae lw a1,232(sp) + 8000272a: 9662 add a2,a2,s8 + 8000272c: f9b2 sd a2,240(sp) + 8000272e: 2585 addiw a1,a1,1 + 80002730: 01b7b023 sd s11,0(a5) + 80002734: 0187b423 sd s8,8(a5) + 80002738: d5ae sw a1,232(sp) + 8000273a: 0cb6cc63 blt a3,a1,80002812 <_vfprintf_r+0x18c8> + 8000273e: 000d4583 lbu a1,0(s10) + 80002742: 07c1 addi a5,a5,16 + 80002744: 882e mv a6,a1 + 80002746: 8562 mv a0,s8 + 80002748: 000c5363 bgez s8,8000274e <_vfprintf_r+0x1804> + 8000274c: 4501 li a0,0 + 8000274e: 40a80c3b subw s8,a6,a0 + 80002752: 03804963 bgtz s8,80002784 <_vfprintf_r+0x183a> + 80002756: 9dae add s11,s11,a1 + 80002758: 012025b3 sgtz a1,s2 + 8000275c: 00bae5b3 or a1,s5,a1 + 80002760: f5c9 bnez a1,800026ea <_vfprintf_r+0x17a0> + 80002762: f8ea sd s10,112(sp) + 80002764: 6ba6 ld s7,72(sp) + 80002766: 8d3e mv s10,a5 + 80002768: 690a ld s2,128(sp) + 8000276a: 77e6 ld a5,120(sp) + 8000276c: 684a ld a6,144(sp) + 8000276e: 6aea ld s5,152(sp) + 80002770: 84ee mv s1,s11 + 80002772: 8db2 mv s11,a2 + 80002774: ea977c63 bgeu a4,s1,80001e2c <_vfprintf_r+0xee2> + 80002778: 84ba mv s1,a4 + 8000277a: eb2ff06f j 80001e2c <_vfprintf_r+0xee2> + 8000277e: 1d7d addi s10,s10,-1 + 80002780: 397d addiw s2,s2,-1 + 80002782: b7bd j 800026f0 <_vfprintf_r+0x17a6> + 80002784: 55ae lw a1,232(sp) + 80002786: 00007f97 auipc t6,0x7 + 8000278a: 7c2f8f93 addi t6,t6,1986 # 80009f48 + 8000278e: 058b5963 bge s6,s8,800027e0 <_vfprintf_r+0x1896> + 80002792: fc3a sd a4,56(sp) + 80002794: 8726 mv a4,s1 + 80002796: e0fe sd t6,64(sp) + 80002798: 84e2 mv s1,s8 + 8000279a: 8c3a mv s8,a4 + 8000279c: a021 j 800027a4 <_vfprintf_r+0x185a> + 8000279e: 34c1 addiw s1,s1,-16 + 800027a0: 029b5b63 bge s6,s1,800027d6 <_vfprintf_r+0x188c> + 800027a4: 0641 addi a2,a2,16 + 800027a6: 2585 addiw a1,a1,1 + 800027a8: 0197b023 sd s9,0(a5) + 800027ac: 0167b423 sd s6,8(a5) + 800027b0: f9b2 sd a2,240(sp) + 800027b2: d5ae sw a1,232(sp) + 800027b4: 07c1 addi a5,a5,16 + 800027b6: feb6d4e3 bge a3,a1,8000279e <_vfprintf_r+0x1854> + 800027ba: 65c2 ld a1,16(sp) + 800027bc: 6522 ld a0,8(sp) + 800027be: 1190 addi a2,sp,224 + 800027c0: 0a5000ef jal 80003064 <__sprint_r> + 800027c4: cc051d63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 800027c8: 34c1 addiw s1,s1,-16 + 800027ca: 764e ld a2,240(sp) + 800027cc: 55ae lw a1,232(sp) + 800027ce: 87d2 mv a5,s4 + 800027d0: 469d li a3,7 + 800027d2: fc9b49e3 blt s6,s1,800027a4 <_vfprintf_r+0x185a> + 800027d6: 7762 ld a4,56(sp) + 800027d8: 6f86 ld t6,64(sp) + 800027da: 8562 mv a0,s8 + 800027dc: 8c26 mv s8,s1 + 800027de: 84aa mv s1,a0 + 800027e0: 9662 add a2,a2,s8 + 800027e2: 2585 addiw a1,a1,1 + 800027e4: f9b2 sd a2,240(sp) + 800027e6: d5ae sw a1,232(sp) + 800027e8: 01f7b023 sd t6,0(a5) + 800027ec: 0187b423 sd s8,8(a5) + 800027f0: 36b6c363 blt a3,a1,80002b56 <_vfprintf_r+0x1c0c> + 800027f4: 000d4583 lbu a1,0(s10) + 800027f8: 07c1 addi a5,a5,16 + 800027fa: bfb1 j 80002756 <_vfprintf_r+0x180c> + 800027fc: 65c2 ld a1,16(sp) + 800027fe: 6522 ld a0,8(sp) + 80002800: 1190 addi a2,sp,224 + 80002802: 063000ef jal 80003064 <__sprint_r> + 80002806: c8051c63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 8000280a: 764e ld a2,240(sp) + 8000280c: 87d2 mv a5,s4 + 8000280e: 469d li a3,7 + 80002810: bde5 j 80002708 <_vfprintf_r+0x17be> + 80002812: 65c2 ld a1,16(sp) + 80002814: 6522 ld a0,8(sp) + 80002816: 1190 addi a2,sp,224 + 80002818: fc3a sd a4,56(sp) + 8000281a: 04b000ef jal 80003064 <__sprint_r> + 8000281e: c8051063 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002822: 000d4583 lbu a1,0(s10) + 80002826: 764e ld a2,240(sp) + 80002828: 7762 ld a4,56(sp) + 8000282a: 87d2 mv a5,s4 + 8000282c: 882e mv a6,a1 + 8000282e: 469d li a3,7 + 80002830: bf19 j 80002746 <_vfprintf_r+0x17fc> + 80002832: 0007881b sext.w a6,a5 + 80002836: b279 j 800021c4 <_vfprintf_r+0x127a> + 80002838: 65c2 ld a1,16(sp) + 8000283a: 6522 ld a0,8(sp) + 8000283c: 1190 addi a2,sp,224 + 8000283e: e142 sd a6,128(sp) + 80002840: fcbe sd a5,120(sp) + 80002842: 023000ef jal 80003064 <__sprint_r> + 80002846: c4051c63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 8000284a: 7dce ld s11,240(sp) + 8000284c: 680a ld a6,128(sp) + 8000284e: 77e6 ld a5,120(sp) + 80002850: 8d52 mv s10,s4 + 80002852: dbcff06f j 80001e0e <_vfprintf_r+0xec4> + 80002856: 00197713 andi a4,s2,1 + 8000285a: e319 bnez a4,80002860 <_vfprintf_r+0x1916> + 8000285c: 915fe06f j 80001170 <_vfprintf_r+0x226> + 80002860: 6746 ld a4,80(sp) + 80002862: 56ae lw a3,232(sp) + 80002864: 6666 ld a2,88(sp) + 80002866: 9dba add s11,s11,a4 + 80002868: 2685 addiw a3,a3,1 + 8000286a: 00ed3423 sd a4,8(s10) + 8000286e: f9ee sd s11,240(sp) + 80002870: 00cd3023 sd a2,0(s10) + 80002874: d5b6 sw a3,232(sp) + 80002876: 471d li a4,7 + 80002878: 28d75863 bge a4,a3,80002b08 <_vfprintf_r+0x1bbe> + 8000287c: 65c2 ld a1,16(sp) + 8000287e: 6522 ld a0,8(sp) + 80002880: 1190 addi a2,sp,224 + 80002882: e0c2 sd a6,64(sp) + 80002884: fc3e sd a5,56(sp) + 80002886: 7de000ef jal 80003064 <__sprint_r> + 8000288a: c0051a63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 8000288e: 564a lw a2,176(sp) + 80002890: 7dce ld s11,240(sp) + 80002892: 56ae lw a3,232(sp) + 80002894: 6806 ld a6,64(sp) + 80002896: 77e2 ld a5,56(sp) + 80002898: 8d52 mv s10,s4 + 8000289a: bc6d j 80002354 <_vfprintf_r+0x140a> + 8000289c: 00d78c33 add s8,a5,a3 + 800028a0: 409c0c33 sub s8,s8,s1 + 800028a4: 41668b3b subw s6,a3,s6 + 800028a8: 000c079b sext.w a5,s8 + 800028ac: 00fb5363 bge s6,a5,800028b2 <_vfprintf_r+0x1968> + 800028b0: 8c5a mv s8,s6 + 800028b2: 2c01 sext.w s8,s8 + 800028b4: ddcff06f j 80001e90 <_vfprintf_r+0xf46> + 800028b8: 0016881b addiw a6,a3,1 + 800028bc: d6bfe06f j 80001626 <_vfprintf_r+0x6dc> + 800028c0: 8d52 mv s10,s4 + 800028c2: 887fe06f j 80001148 <_vfprintf_r+0x1fe> + 800028c6: 7782 ld a5,32(sp) + 800028c8: 884a mv a6,s2 + 800028ca: f03a sd a4,32(sp) + 800028cc: 0007e683 lwu a3,0(a5) + 800028d0: 9c6ff06f j 80001a96 <_vfprintf_r+0xb4c> + 800028d4: 0007eb03 lwu s6,0(a5) + 800028d8: 9604cde3 bltz s1,80002252 <_vfprintf_r+0x1308> + 800028dc: 0164e7b3 or a5,s1,s6 + 800028e0: f03a sd a4,32(sp) + 800028e2: f7f97913 andi s2,s2,-129 + 800028e6: c399 beqz a5,800028ec <_vfprintf_r+0x19a2> + 800028e8: f71fe06f j 80001858 <_vfprintf_r+0x90e> + 800028ec: 89eff06f j 8000198a <_vfprintf_r+0xa40> + 800028f0: 7782 ld a5,32(sp) + 800028f2: 0007e703 lwu a4,0(a5) + 800028f6: b079 j 80002184 <_vfprintf_r+0x123a> + 800028f8: 7782 ld a5,32(sp) + 800028fa: 66e2 ld a3,24(sp) + 800028fc: f03a sd a4,32(sp) + 800028fe: 639c ld a5,0(a5) + 80002900: 00d79023 sh a3,0(a5) + 80002904: f00fe06f j 80001004 <_vfprintf_r+0xba> + 80002908: f03a sd a4,32(sp) + 8000290a: 87da mv a5,s6 + 8000290c: eedfe06f j 800017f8 <_vfprintf_r+0x8ae> + 80002910: 04700693 li a3,71 + 80002914: 0a714703 lbu a4,167(sp) + 80002918: 00007797 auipc a5,0x7 + 8000291c: 32078793 addi a5,a5,800 # 80009c38 <__clzdi2+0x576> + 80002920: 0186d663 bge a3,s8,8000292c <_vfprintf_r+0x19e2> + 80002924: 00007797 auipc a5,0x7 + 80002928: 31c78793 addi a5,a5,796 # 80009c40 <__clzdi2+0x57e> + 8000292c: 68071b63 bnez a4,80002fc2 <_vfprintf_r+0x2078> + 80002930: 4c8d li s9,3 + 80002932: 8866 mv a6,s9 + 80002934: 4301 li t1,0 + 80002936: e082 sd zero,64(sp) + 80002938: e482 sd zero,72(sp) + 8000293a: f402 sd zero,40(sp) + 8000293c: fb2fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002940: 4701 li a4,0 + 80002942: be25 j 8000247a <_vfprintf_r+0x1530> + 80002944: 4681 li a3,0 + 80002946: cd7fe06f j 8000161c <_vfprintf_r+0x6d2> + 8000294a: 00007797 auipc a5,0x7 + 8000294e: 2e678793 addi a5,a5,742 # 80009c30 <__clzdi2+0x56e> + 80002952: ac070ae3 beqz a4,80002426 <_vfprintf_r+0x14dc> + 80002956: a89d j 800029cc <_vfprintf_r+0x1a82> + 80002958: 5c0b4d63 bltz s6,80002f32 <_vfprintf_r+0x1fe8> + 8000295c: 4d81 li s11,0 + 8000295e: 4319 li t1,6 + 80002960: b911 j 80002574 <_vfprintf_r+0x162a> + 80002962: 07800793 li a5,120 + 80002966: 90bfe06f j 80001270 <_vfprintf_r+0x326> + 8000296a: 6522 ld a0,8(sp) + 8000296c: 0013059b addiw a1,t1,1 + 80002970: f41a sd t1,40(sp) + 80002972: 3b8030ef jal 80005d2a <_malloc_r> + 80002976: 7322 ld t1,40(sp) + 80002978: 87aa mv a5,a0 + 8000297a: 5e050063 beqz a0,80002f5a <_vfprintf_r+0x2010> + 8000297e: 65ee ld a1,216(sp) + 80002980: f43e sd a5,40(sp) + 80002982: 654e ld a0,208(sp) + 80002984: 4d81 li s11,0 + 80002986: 0005c463 bltz a1,8000298e <_vfprintf_r+0x1a44> + 8000298a: 909fe06f j 80001292 <_vfprintf_r+0x348> + 8000298e: 577d li a4,-1 + 80002990: 177e slli a4,a4,0x3f + 80002992: 8db9 xor a1,a1,a4 + 80002994: 02d00d93 li s11,45 + 80002998: 8fbfe06f j 80001292 <_vfprintf_r+0x348> + 8000299c: 02d00713 li a4,45 + 800029a0: 0ae10ca3 sb a4,185(sp) + 800029a4: 5661 li a2,-8 + 800029a6: 4705 li a4,1 + 800029a8: 9f15 subw a4,a4,a3 + 800029aa: 00c6d463 bge a3,a2,800029b2 <_vfprintf_r+0x1a68> + 800029ae: a67fe06f j 80001414 <_vfprintf_r+0x4ca> + 800029b2: 0ba10693 addi a3,sp,186 + 800029b6: 0307071b addiw a4,a4,48 + 800029ba: 00e68023 sb a4,0(a3) + 800029be: 1398 addi a4,sp,480 + 800029c0: 8e99 sub a3,a3,a4 + 800029c2: 1296871b addiw a4,a3,297 + 800029c6: f0ba sd a4,96(sp) + 800029c8: ac1fe06f j 80001488 <_vfprintf_r+0x53e> + 800029cc: f402 sd zero,40(sp) + 800029ce: 4c8d li s9,3 + 800029d0: 4301 li t1,0 + 800029d2: e082 sd zero,64(sp) + 800029d4: e482 sd zero,72(sp) + 800029d6: fc02 sd zero,56(sp) + 800029d8: 4811 li a6,4 + 800029da: f14fe06f j 800010ee <_vfprintf_r+0x1a4> + 800029de: 00007497 auipc s1,0x7 + 800029e2: 56a48493 addi s1,s1,1386 # 80009f48 + 800029e6: badd j 800023dc <_vfprintf_r+0x1492> + 800029e8: 6686 ld a3,64(sp) + 800029ea: 00a6c603 lbu a2,10(a3) + 800029ee: 9f3fe06f j 800013e0 <_vfprintf_r+0x496> + 800029f2: fbbc8793 addi a5,s9,-69 + 800029f6: 6522 ld a0,8(sp) + 800029f8: 0017b793 seqz a5,a5 + 800029fc: 006787bb addw a5,a5,t1 + 80002a00: 873e mv a4,a5 + 80002a02: f83e sd a5,48(sp) + 80002a04: 0c810893 addi a7,sp,200 + 80002a08: 191c addi a5,sp,176 + 80002a0a: 0b410813 addi a6,sp,180 + 80002a0e: 4689 li a3,2 + 80002a10: 85a6 mv a1,s1 + 80002a12: 865a mv a2,s6 + 80002a14: fc1a sd t1,56(sp) + 80002a16: 48b010ef jal 800046a0 <_ldtoa_r> + 80002a1a: 04700713 li a4,71 + 80002a1e: 7362 ld t1,56(sp) + 80002a20: 87aa mv a5,a0 + 80002a22: 54ec9e63 bne s9,a4,80002f7e <_vfprintf_r+0x2034> + 80002a26: 00197713 andi a4,s2,1 + 80002a2a: 26071863 bnez a4,80002c9a <_vfprintf_r+0x1d50> + 80002a2e: 68ae ld a7,200(sp) + 80002a30: 574a lw a4,176(sp) + 80002a32: 40f888b3 sub a7,a7,a5 + 80002a36: fc3a sd a4,56(sp) + 80002a38: 0008871b sext.w a4,a7 + 80002a3c: f83a sd a4,48(sp) + 80002a3e: 7762 ld a4,56(sp) + 80002a40: 00e32333 slt t1,t1,a4 + 80002a44: ffd72713 slti a4,a4,-3 + 80002a48: 00676733 or a4,a4,t1 + 80002a4c: c729 beqz a4,80002a96 <_vfprintf_r+0x1b4c> + 80002a4e: 3c79 addiw s8,s8,-2 + 80002a50: 7762 ld a4,56(sp) + 80002a52: 0b810c23 sb s8,184(sp) + 80002a56: 377d addiw a4,a4,-1 + 80002a58: d93a sw a4,176(sp) + 80002a5a: 00074c63 bltz a4,80002a72 <_vfprintf_r+0x1b28> + 80002a5e: 02b00693 li a3,43 + 80002a62: 0ad10ca3 sb a3,185(sp) + 80002a66: 46a5 li a3,9 + 80002a68: 00e6df63 bge a3,a4,80002a86 <_vfprintf_r+0x1b3c> + 80002a6c: f402 sd zero,40(sp) + 80002a6e: 9a7fe06f j 80001414 <_vfprintf_r+0x4ca> + 80002a72: 7662 ld a2,56(sp) + 80002a74: 02d00713 li a4,45 + 80002a78: 0ae10ca3 sb a4,185(sp) + 80002a7c: 56e1 li a3,-8 + 80002a7e: 4705 li a4,1 + 80002a80: 9f11 subw a4,a4,a2 + 80002a82: fed645e3 blt a2,a3,80002a6c <_vfprintf_r+0x1b22> + 80002a86: 03000693 li a3,48 + 80002a8a: 0ad10d23 sb a3,186(sp) + 80002a8e: f402 sd zero,40(sp) + 80002a90: 0bb10693 addi a3,sp,187 + 80002a94: b70d j 800029b6 <_vfprintf_r+0x1a6c> + 80002a96: 7762 ld a4,56(sp) + 80002a98: 76c2 ld a3,48(sp) + 80002a9a: 1cd74f63 blt a4,a3,80002c78 <_vfprintf_r+0x1d2e> + 80002a9e: 76e2 ld a3,56(sp) + 80002aa0: 00197713 andi a4,s2,1 + 80002aa4: 8cb6 mv s9,a3 + 80002aa6: c701 beqz a4,80002aae <_vfprintf_r+0x1b64> + 80002aa8: 6746 ld a4,80(sp) + 80002aaa: 00d70cbb addw s9,a4,a3 + 80002aae: 40097f93 andi t6,s2,1024 + 80002ab2: 000f8563 beqz t6,80002abc <_vfprintf_r+0x1b72> + 80002ab6: 7762 ld a4,56(sp) + 80002ab8: 2ee04263 bgtz a4,80002d9c <_vfprintf_r+0x1e52> + 80002abc: 8766 mv a4,s9 + 80002abe: 1c0ccc63 bltz s9,80002c96 <_vfprintf_r+0x1d4c> + 80002ac2: 0007081b sext.w a6,a4 + 80002ac6: 260d8b63 beqz s11,80002d3c <_vfprintf_r+0x1df2> + 80002aca: 02d00693 li a3,45 + 80002ace: 7966 ld s2,120(sp) + 80002ad0: 0ad103a3 sb a3,167(sp) + 80002ad4: 0017081b addiw a6,a4,1 + 80002ad8: f402 sd zero,40(sp) + 80002ada: 4301 li t1,0 + 80002adc: e082 sd zero,64(sp) + 80002ade: e482 sd zero,72(sp) + 80002ae0: 06700c13 li s8,103 + 80002ae4: e0afe06f j 800010ee <_vfprintf_r+0x1a4> + 80002ae8: 65c2 ld a1,16(sp) + 80002aea: 6522 ld a0,8(sp) + 80002aec: 1190 addi a2,sp,224 + 80002aee: e0c2 sd a6,64(sp) + 80002af0: fc3e sd a5,56(sp) + 80002af2: 572000ef jal 80003064 <__sprint_r> + 80002af6: 9a051463 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002afa: 564a lw a2,176(sp) + 80002afc: 7dce ld s11,240(sp) + 80002afe: 6806 ld a6,64(sp) + 80002b00: 77e2 ld a5,56(sp) + 80002b02: 8d52 mv s10,s4 + 80002b04: 82bff06f j 8000232e <_vfprintf_r+0x13e4> + 80002b08: 0d41 addi s10,s10,16 + 80002b0a: b0b9 j 80002358 <_vfprintf_r+0x140e> + 80002b0c: 02d00793 li a5,45 + 80002b10: 0af103a3 sb a5,167(sp) + 80002b14: 04700793 li a5,71 + 80002b18: 2187c563 blt a5,s8,80002d22 <_vfprintf_r+0x1dd8> + 80002b1c: f402 sd zero,40(sp) + 80002b1e: 4c8d li s9,3 + 80002b20: 4301 li t1,0 + 80002b22: e082 sd zero,64(sp) + 80002b24: e482 sd zero,72(sp) + 80002b26: fc02 sd zero,56(sp) + 80002b28: 00007797 auipc a5,0x7 + 80002b2c: 10078793 addi a5,a5,256 # 80009c28 <__clzdi2+0x566> + 80002b30: 4811 li a6,4 + 80002b32: dbcfe06f j 800010ee <_vfprintf_r+0x1a4> + 80002b36: 65c2 ld a1,16(sp) + 80002b38: 6522 ld a0,8(sp) + 80002b3a: 1190 addi a2,sp,224 + 80002b3c: e0c2 sd a6,64(sp) + 80002b3e: fc3e sd a5,56(sp) + 80002b40: 524000ef jal 80003064 <__sprint_r> + 80002b44: 94051d63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002b48: 5b4a lw s6,176(sp) + 80002b4a: 7dce ld s11,240(sp) + 80002b4c: 6806 ld a6,64(sp) + 80002b4e: 77e2 ld a5,56(sp) + 80002b50: 8d52 mv s10,s4 + 80002b52: b08ff06f j 80001e5a <_vfprintf_r+0xf10> + 80002b56: 65c2 ld a1,16(sp) + 80002b58: 6522 ld a0,8(sp) + 80002b5a: 1190 addi a2,sp,224 + 80002b5c: fc3a sd a4,56(sp) + 80002b5e: 506000ef jal 80003064 <__sprint_r> + 80002b62: 92051e63 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002b66: 000d4583 lbu a1,0(s10) + 80002b6a: 764e ld a2,240(sp) + 80002b6c: 7762 ld a4,56(sp) + 80002b6e: 87d2 mv a5,s4 + 80002b70: 469d li a3,7 + 80002b72: b6d5 j 80002756 <_vfprintf_r+0x180c> + 80002b74: f026 sd s1,32(sp) + 80002b76: 18070e63 beqz a4,80002d12 <_vfprintf_r+0x1dc8> + 80002b7a: 0013081b addiw a6,t1,1 + 80002b7e: 8c9a mv s9,t1 + 80002b80: e082 sd zero,64(sp) + 80002b82: 4301 li t1,0 + 80002b84: e482 sd zero,72(sp) + 80002b86: fc02 sd zero,56(sp) + 80002b88: d66fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002b8c: 662a ld a2,136(sp) + 80002b8e: 75a6 ld a1,104(sp) + 80002b90: f81a sd t1,48(sp) + 80002b92: 40c78e33 sub t3,a5,a2 + 80002b96: 8572 mv a0,t3 + 80002b98: f472 sd t3,40(sp) + 80002b9a: 5f9000ef jal 80003992 + 80002b9e: ccccd7b7 lui a5,0xccccd + 80002ba2: ccd78793 addi a5,a5,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> + 80002ba6: 02079713 slli a4,a5,0x20 + 80002baa: 973e add a4,a4,a5 + 80002bac: 02eb3b33 mulhu s6,s6,a4 + 80002bb0: 001dc683 lbu a3,1(s11) + 80002bb4: 7e22 ld t3,40(sp) + 80002bb6: 00008817 auipc a6,0x8 + 80002bba: 8e283803 ld a6,-1822(a6) # 8000a498 <__clz_tab+0x128> + 80002bbe: 00d036b3 snez a3,a3 + 80002bc2: 9db6 add s11,s11,a3 + 80002bc4: 7342 ld t1,48(sp) + 80002bc6: fffe0793 addi a5,t3,-1 + 80002bca: 4585 li a1,1 + 80002bcc: 48a5 li a7,9 + 80002bce: 003b5b13 srli s6,s6,0x3 + 80002bd2: 02eb3733 mulhu a4,s6,a4 + 80002bd6: 00375693 srli a3,a4,0x3 + 80002bda: 00269713 slli a4,a3,0x2 + 80002bde: 9736 add a4,a4,a3 + 80002be0: 0706 slli a4,a4,0x1 + 80002be2: 40eb0733 sub a4,s6,a4 + 80002be6: 0307071b addiw a4,a4,48 + 80002bea: feee0fa3 sb a4,-1(t3) + 80002bee: c54ff06f j 80002042 <_vfprintf_r+0x10f8> + 80002bf2: 65c2 ld a1,16(sp) + 80002bf4: 6522 ld a0,8(sp) + 80002bf6: 1190 addi a2,sp,224 + 80002bf8: fc42 sd a6,56(sp) + 80002bfa: 46a000ef jal 80003064 <__sprint_r> + 80002bfe: 8a051063 bnez a0,80001c9e <_vfprintf_r+0xd54> + 80002c02: 5b4a lw s6,176(sp) + 80002c04: 77c2 ld a5,48(sp) + 80002c06: 7dce ld s11,240(sp) + 80002c08: 7862 ld a6,56(sp) + 80002c0a: 8d52 mv s10,s4 + 80002c0c: 41678b3b subw s6,a5,s6 + 80002c10: a80ff06f j 80001e90 <_vfprintf_r+0xf46> + 80002c14: 8fca mv t6,s2 + 80002c16: c9aff06f j 800020b0 <_vfprintf_r+0x1166> + 80002c1a: 5741 li a4,-16 + 80002c1c: 40c00b3b negw s6,a2 + 80002c20: 00007497 auipc s1,0x7 + 80002c24: 32848493 addi s1,s1,808 # 80009f48 + 80002c28: 0ae65963 bge a2,a4,80002cda <_vfprintf_r+0x1d90> + 80002c2c: e0ca sd s2,64(sp) + 80002c2e: 84da mv s1,s6 + 80002c30: 4c41 li s8,16 + 80002c32: 8b56 mv s6,s5 + 80002c34: 4c9d li s9,7 + 80002c36: fc3e sd a5,56(sp) + 80002c38: 00007917 auipc s2,0x7 + 80002c3c: 31090913 addi s2,s2,784 # 80009f48 + 80002c40: 8ac2 mv s5,a6 + 80002c42: a021 j 80002c4a <_vfprintf_r+0x1d00> + 80002c44: 34c1 addiw s1,s1,-16 + 80002c46: 089c5463 bge s8,s1,80002cce <_vfprintf_r+0x1d84> + 80002c4a: 0dc1 addi s11,s11,16 + 80002c4c: 2685 addiw a3,a3,1 + 80002c4e: 012d3023 sd s2,0(s10) + 80002c52: 018d3423 sd s8,8(s10) + 80002c56: f9ee sd s11,240(sp) + 80002c58: d5b6 sw a3,232(sp) + 80002c5a: 0d41 addi s10,s10,16 + 80002c5c: fedcd4e3 bge s9,a3,80002c44 <_vfprintf_r+0x1cfa> + 80002c60: 65c2 ld a1,16(sp) + 80002c62: 6522 ld a0,8(sp) + 80002c64: 1190 addi a2,sp,224 + 80002c66: 3fe000ef jal 80003064 <__sprint_r> + 80002c6a: c119 beqz a0,80002c70 <_vfprintf_r+0x1d26> + 80002c6c: 832ff06f j 80001c9e <_vfprintf_r+0xd54> + 80002c70: 7dce ld s11,240(sp) + 80002c72: 56ae lw a3,232(sp) + 80002c74: 8d52 mv s10,s4 + 80002c76: b7f9 j 80002c44 <_vfprintf_r+0x1cfa> + 80002c78: 6746 ld a4,80(sp) + 80002c7a: 06700c13 li s8,103 + 80002c7e: 01170cbb addw s9,a4,a7 + 80002c82: 7762 ld a4,56(sp) + 80002c84: 9ae043e3 bgtz a4,8000262a <_vfprintf_r+0x16e0> + 80002c88: 40ec88bb subw a7,s9,a4 + 80002c8c: 00188c9b addiw s9,a7,1 + 80002c90: 8766 mv a4,s9 + 80002c92: e20cd8e3 bgez s9,80002ac2 <_vfprintf_r+0x1b78> + 80002c96: 4701 li a4,0 + 80002c98: b52d j 80002ac2 <_vfprintf_r+0x1b78> + 80002c9a: 8526 mv a0,s1 + 80002c9c: 85da mv a1,s6 + 80002c9e: 4601 li a2,0 + 80002ca0: 4681 li a3,0 + 80002ca2: e0be sd a5,64(sp) + 80002ca4: fc1a sd t1,56(sp) + 80002ca6: 003050ef jal 800084a8 <__eqtf2> + 80002caa: 7362 ld t1,56(sp) + 80002cac: 6786 ld a5,64(sp) + 80002cae: 18050463 beqz a0,80002e36 <_vfprintf_r+0x1eec> + 80002cb2: 7742 ld a4,48(sp) + 80002cb4: 68ae ld a7,200(sp) + 80002cb6: 00e78cb3 add s9,a5,a4 + 80002cba: 9198eae3 bltu a7,s9,800025ce <_vfprintf_r+0x1684> + 80002cbe: 40f888b3 sub a7,a7,a5 + 80002cc2: 0008871b sext.w a4,a7 + 80002cc6: f83a sd a4,48(sp) + 80002cc8: 574a lw a4,176(sp) + 80002cca: fc3a sd a4,56(sp) + 80002ccc: bb8d j 80002a3e <_vfprintf_r+0x1af4> + 80002cce: 8856 mv a6,s5 + 80002cd0: 77e2 ld a5,56(sp) + 80002cd2: 8ada mv s5,s6 + 80002cd4: 8b26 mv s6,s1 + 80002cd6: 84ca mv s1,s2 + 80002cd8: 6906 ld s2,64(sp) + 80002cda: 9dda add s11,s11,s6 + 80002cdc: 2685 addiw a3,a3,1 + 80002cde: f9ee sd s11,240(sp) + 80002ce0: d5b6 sw a3,232(sp) + 80002ce2: 009d3023 sd s1,0(s10) + 80002ce6: 016d3423 sd s6,8(s10) + 80002cea: 471d li a4,7 + 80002cec: e0d75ee3 bge a4,a3,80002b08 <_vfprintf_r+0x1bbe> + 80002cf0: 65c2 ld a1,16(sp) + 80002cf2: 6522 ld a0,8(sp) + 80002cf4: 1190 addi a2,sp,224 + 80002cf6: e0c2 sd a6,64(sp) + 80002cf8: fc3e sd a5,56(sp) + 80002cfa: 36a000ef jal 80003064 <__sprint_r> + 80002cfe: c119 beqz a0,80002d04 <_vfprintf_r+0x1dba> + 80002d00: f9ffe06f j 80001c9e <_vfprintf_r+0xd54> + 80002d04: 7dce ld s11,240(sp) + 80002d06: 56ae lw a3,232(sp) + 80002d08: 6806 ld a6,64(sp) + 80002d0a: 77e2 ld a5,56(sp) + 80002d0c: 8d52 mv s10,s4 + 80002d0e: e4aff06f j 80002358 <_vfprintf_r+0x140e> + 80002d12: 8c9a mv s9,t1 + 80002d14: 881a mv a6,t1 + 80002d16: e082 sd zero,64(sp) + 80002d18: 4301 li t1,0 + 80002d1a: e482 sd zero,72(sp) + 80002d1c: fc02 sd zero,56(sp) + 80002d1e: bd0fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002d22: f402 sd zero,40(sp) + 80002d24: 4c8d li s9,3 + 80002d26: 4301 li t1,0 + 80002d28: e082 sd zero,64(sp) + 80002d2a: e482 sd zero,72(sp) + 80002d2c: fc02 sd zero,56(sp) + 80002d2e: 00007797 auipc a5,0x7 + 80002d32: f0278793 addi a5,a5,-254 # 80009c30 <__clzdi2+0x56e> + 80002d36: 4811 li a6,4 + 80002d38: bb6fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002d3c: 4601 li a2,0 + 80002d3e: f402 sd zero,40(sp) + 80002d40: 06700c13 li s8,103 + 80002d44: e082 sd zero,64(sp) + 80002d46: e482 sd zero,72(sp) + 80002d48: f7afe06f j 800014c2 <_vfprintf_r+0x578> + 80002d4c: 57fd li a5,-1 + 80002d4e: ec3e sd a5,24(sp) + 80002d50: f69fe06f j 80001cb8 <_vfprintf_r+0xd6e> + 80002d54: 00d976b3 and a3,s2,a3 + 80002d58: e299 bnez a3,80002d5e <_vfprintf_r+0x1e14> + 80002d5a: f46fe06f j 800014a0 <_vfprintf_r+0x556> + 80002d5e: f3cfe06f j 8000149a <_vfprintf_r+0x550> + 80002d62: 57fd li a5,-1 + 80002d64: 17fe slli a5,a5,0x3f + 80002d66: 8dbd xor a1,a1,a5 + 80002d68: 02d00d93 li s11,45 + 80002d6c: f402 sd zero,40(sp) + 80002d6e: 19bc addi a5,sp,248 + 80002d70: d22fe06f j 80001292 <_vfprintf_r+0x348> + 80002d74: c394 sw a3,0(a5) + 80002d76: f03a sd a4,32(sp) + 80002d78: a8cfe06f j 80001004 <_vfprintf_r+0xba> + 80002d7c: 00007797 auipc a5,0x7 + 80002d80: ebc78793 addi a5,a5,-324 # 80009c38 <__clzdi2+0x576> + 80002d84: 4811 li a6,4 + 80002d86: b68fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002d8a: 40fc873b subw a4,s9,a5 + 80002d8e: f83a sd a4,48(sp) + 80002d90: 574a lw a4,176(sp) + 80002d92: fc3a sd a4,56(sp) + 80002d94: b885 j 80002604 <_vfprintf_r+0x16ba> + 80002d96: 64c2 ld s1,16(sp) + 80002d98: f13fe06f j 80001caa <_vfprintf_r+0xd60> + 80002d9c: 06700c13 li s8,103 + 80002da0: 75c6 ld a1,112(sp) + 80002da2: 0ff00693 li a3,255 + 80002da6: 0005c703 lbu a4,0(a1) + 80002daa: 20d70963 beq a4,a3,80002fbc <_vfprintf_r+0x2072> + 80002dae: 7662 ld a2,56(sp) + 80002db0: 4801 li a6,0 + 80002db2: 4501 li a0,0 + 80002db4: 00c75a63 bge a4,a2,80002dc8 <_vfprintf_r+0x1e7e> + 80002db8: 9e19 subw a2,a2,a4 + 80002dba: 0015c703 lbu a4,1(a1) + 80002dbe: c721 beqz a4,80002e06 <_vfprintf_r+0x1ebc> + 80002dc0: 2505 addiw a0,a0,1 + 80002dc2: 0585 addi a1,a1,1 + 80002dc4: fed718e3 bne a4,a3,80002db4 <_vfprintf_r+0x1e6a> + 80002dc8: f8ae sd a1,112(sp) + 80002dca: fc32 sd a2,56(sp) + 80002dcc: e4aa sd a0,72(sp) + 80002dce: e0c2 sd a6,64(sp) + 80002dd0: 66a6 ld a3,72(sp) + 80002dd2: 6706 ld a4,64(sp) + 80002dd4: 9f35 addw a4,a4,a3 + 80002dd6: 66aa ld a3,136(sp) + 80002dd8: 02d7073b mulw a4,a4,a3 + 80002ddc: 01970cbb addw s9,a4,s9 + 80002de0: 8766 mv a4,s9 + 80002de2: 000cd363 bgez s9,80002de8 <_vfprintf_r+0x1e9e> + 80002de6: 4701 li a4,0 + 80002de8: 0007081b sext.w a6,a4 + 80002dec: 100d8a63 beqz s11,80002f00 <_vfprintf_r+0x1fb6> + 80002df0: 02d00693 li a3,45 + 80002df4: 7966 ld s2,120(sp) + 80002df6: 0ad103a3 sb a3,167(sp) + 80002dfa: 0017081b addiw a6,a4,1 + 80002dfe: f402 sd zero,40(sp) + 80002e00: 4301 li t1,0 + 80002e02: aecfe06f j 800010ee <_vfprintf_r+0x1a4> + 80002e06: 0005c703 lbu a4,0(a1) + 80002e0a: 2805 addiw a6,a6,1 + 80002e0c: bf65 j 80002dc4 <_vfprintf_r+0x1e7a> + 80002e0e: 4601 li a2,0 + 80002e10: 4681 li a3,0 + 80002e12: 8526 mv a0,s1 + 80002e14: 85da mv a1,s6 + 80002e16: e0be sd a5,64(sp) + 80002e18: fc3a sd a4,56(sp) + 80002e1a: f81a sd t1,48(sp) + 80002e1c: 68c050ef jal 800084a8 <__eqtf2> + 80002e20: 7342 ld t1,48(sp) + 80002e22: 7762 ld a4,56(sp) + 80002e24: 6786 ld a5,64(sp) + 80002e26: e16d bnez a0,80002f08 <_vfprintf_r+0x1fbe> + 80002e28: 56ca lw a3,176(sp) + 80002e2a: 9736 add a4,a4,a3 + 80002e2c: 9f1d subw a4,a4,a5 + 80002e2e: fc36 sd a3,56(sp) + 80002e30: f83a sd a4,48(sp) + 80002e32: fd2ff06f j 80002604 <_vfprintf_r+0x16ba> + 80002e36: 574a lw a4,176(sp) + 80002e38: 78c2 ld a7,48(sp) + 80002e3a: fc3a sd a4,56(sp) + 80002e3c: b109 j 80002a3e <_vfprintf_r+0x1af4> + 80002e3e: 84de mv s1,s7 + 80002e40: 015b0333 add t1,s6,s5 + 80002e44: 77e6 ld a5,120(sp) + 80002e46: 690a ld s2,128(sp) + 80002e48: 6aca ld s5,144(sp) + 80002e4a: 7b86 ld s7,96(sp) + 80002e4c: 875a mv a4,s6 + 80002e4e: 03000693 li a3,48 + 80002e52: 0004d463 bgez s1,80002e5a <_vfprintf_r+0x1f10> + 80002e56: d8efe06f j 800013e4 <_vfprintf_r+0x49a> + 80002e5a: 0705 addi a4,a4,1 + 80002e5c: fed70fa3 sb a3,-1(a4) + 80002e60: fe671de3 bne a4,t1,80002e5a <_vfprintf_r+0x1f10> + 80002e64: 0b05 addi s6,s6,1 + 80002e66: 9b26 add s6,s6,s1 + 80002e68: d7cfe06f j 800013e4 <_vfprintf_r+0x49a> + 80002e6c: 000b5763 bgez s6,80002e7a <_vfprintf_r+0x1f30> + 80002e70: 17fe slli a5,a5,0x3f + 80002e72: 00fb4b33 xor s6,s6,a5 + 80002e76: 02d00d93 li s11,45 + 80002e7a: 6522 ld a0,8(sp) + 80002e7c: 191c addi a5,sp,176 + 80002e7e: 0c810893 addi a7,sp,200 + 80002e82: 0b410813 addi a6,sp,180 + 80002e86: 4705 li a4,1 + 80002e88: 4689 li a3,2 + 80002e8a: 85a6 mv a1,s1 + 80002e8c: 865a mv a2,s6 + 80002e8e: 013010ef jal 800046a0 <_ldtoa_r> + 80002e92: 4305 li t1,1 + 80002e94: f81a sd t1,48(sp) + 80002e96: 87aa mv a5,a0 + 80002e98: b679 j 80002a26 <_vfprintf_r+0x1adc> + 80002e9a: 4601 li a2,0 + 80002e9c: e082 sd zero,64(sp) + 80002e9e: f402 sd zero,40(sp) + 80002ea0: e22fe06f j 800014c2 <_vfprintf_r+0x578> + 80002ea4: 6726 ld a4,72(sp) + 80002ea6: e30d bnez a4,80002ec8 <_vfprintf_r+0x1f7e> + 80002ea8: 0c0d8263 beqz s11,80002f6c <_vfprintf_r+0x2022> + 80002eac: 02d00713 li a4,45 + 80002eb0: 7966 ld s2,120(sp) + 80002eb2: 0ae103a3 sb a4,167(sp) + 80002eb6: 4301 li t1,0 + 80002eb8: e082 sd zero,64(sp) + 80002eba: f402 sd zero,40(sp) + 80002ebc: 4c85 li s9,1 + 80002ebe: 06600c13 li s8,102 + 80002ec2: 4809 li a6,2 + 80002ec4: a2afe06f j 800010ee <_vfprintf_r+0x1a4> + 80002ec8: 6746 ld a4,80(sp) + 80002eca: 0017089b addiw a7,a4,1 + 80002ece: 00688cbb addw s9,a7,t1 + 80002ed2: 8766 mv a4,s9 + 80002ed4: 000cd363 bgez s9,80002eda <_vfprintf_r+0x1f90> + 80002ed8: 4701 li a4,0 + 80002eda: 0007081b sext.w a6,a4 + 80002ede: 060d8263 beqz s11,80002f42 <_vfprintf_r+0x1ff8> + 80002ee2: 02d00693 li a3,45 + 80002ee6: 7966 ld s2,120(sp) + 80002ee8: 0ad103a3 sb a3,167(sp) + 80002eec: 0017081b addiw a6,a4,1 + 80002ef0: f402 sd zero,40(sp) + 80002ef2: 4301 li t1,0 + 80002ef4: e082 sd zero,64(sp) + 80002ef6: e482 sd zero,72(sp) + 80002ef8: 06600c13 li s8,102 + 80002efc: 9f2fe06f j 800010ee <_vfprintf_r+0x1a4> + 80002f00: 4601 li a2,0 + 80002f02: f402 sd zero,40(sp) + 80002f04: dbefe06f j 800014c2 <_vfprintf_r+0x578> + 80002f08: 4c85 li s9,1 + 80002f0a: 406c8cbb subw s9,s9,t1 + 80002f0e: d966 sw s9,176(sp) + 80002f10: e9eff06f j 800025ae <_vfprintf_r+0x1664> + 80002f14: 7702 ld a4,32(sp) + 80002f16: 431c lw a5,0(a4) + 80002f18: 0721 addi a4,a4,8 + 80002f1a: 833e mv t1,a5 + 80002f1c: 0007d363 bgez a5,80002f22 <_vfprintf_r+0x1fd8> + 80002f20: 537d li t1,-1 + 80002f22: 001ace03 lbu t3,1(s5) + 80002f26: 0003049b sext.w s1,t1 + 80002f2a: f03a sd a4,32(sp) + 80002f2c: 8ab2 mv s5,a2 + 80002f2e: 948fe06f j 80001076 <_vfprintf_r+0x12c> + 80002f32: 137e slli t1,t1,0x3f + 80002f34: 006b4b33 xor s6,s6,t1 + 80002f38: 02d00d93 li s11,45 + 80002f3c: 4319 li t1,6 + 80002f3e: e36ff06f j 80002574 <_vfprintf_r+0x162a> + 80002f42: 4601 li a2,0 + 80002f44: f402 sd zero,40(sp) + 80002f46: 06600c13 li s8,102 + 80002f4a: e082 sd zero,64(sp) + 80002f4c: e482 sd zero,72(sp) + 80002f4e: d74fe06f j 800014c2 <_vfprintf_r+0x578> + 80002f52: 4709 li a4,2 + 80002f54: f0ba sd a4,96(sp) + 80002f56: d32fe06f j 80001488 <_vfprintf_r+0x53e> + 80002f5a: 64c2 ld s1,16(sp) + 80002f5c: 0104d783 lhu a5,16(s1) + 80002f60: 0407e793 ori a5,a5,64 + 80002f64: 00f49823 sh a5,16(s1) + 80002f68: d43fe06f j 80001caa <_vfprintf_r+0xd60> + 80002f6c: 4805 li a6,1 + 80002f6e: 8cc2 mv s9,a6 + 80002f70: 4601 li a2,0 + 80002f72: e082 sd zero,64(sp) + 80002f74: f402 sd zero,40(sp) + 80002f76: 06600c13 li s8,102 + 80002f7a: d48fe06f j 800014c2 <_vfprintf_r+0x578> + 80002f7e: e0aa sd a0,64(sp) + 80002f80: 85da mv a1,s6 + 80002f82: 8526 mv a0,s1 + 80002f84: 4601 li a2,0 + 80002f86: 4681 li a3,0 + 80002f88: fc1a sd t1,56(sp) + 80002f8a: 51e050ef jal 800084a8 <__eqtf2> + 80002f8e: 7362 ld t1,56(sp) + 80002f90: 6786 ld a5,64(sp) + 80002f92: c115 beqz a0,80002fb6 <_vfprintf_r+0x206c> + 80002f94: 7742 ld a4,48(sp) + 80002f96: 68ae ld a7,200(sp) + 80002f98: 00e78cb3 add s9,a5,a4 + 80002f9c: e398e963 bltu a7,s9,800025ce <_vfprintf_r+0x1684> + 80002fa0: 40f8873b subw a4,a7,a5 + 80002fa4: f83a sd a4,48(sp) + 80002fa6: 574a lw a4,176(sp) + 80002fa8: fc3a sd a4,56(sp) + 80002faa: e50ff06f j 800025fa <_vfprintf_r+0x16b0> + 80002fae: 7742 ld a4,48(sp) + 80002fb0: 973e add a4,a4,a5 + 80002fb2: fc2ff06f j 80002774 <_vfprintf_r+0x182a> + 80002fb6: 574a lw a4,176(sp) + 80002fb8: fc3a sd a4,56(sp) + 80002fba: bc59 j 80002a50 <_vfprintf_r+0x1b06> + 80002fbc: e082 sd zero,64(sp) + 80002fbe: e482 sd zero,72(sp) + 80002fc0: bd01 j 80002dd0 <_vfprintf_r+0x1e86> + 80002fc2: 4301 li t1,0 + 80002fc4: e082 sd zero,64(sp) + 80002fc6: e482 sd zero,72(sp) + 80002fc8: f402 sd zero,40(sp) + 80002fca: 4c8d li s9,3 + 80002fcc: 4811 li a6,4 + 80002fce: 920fe06f j 800010ee <_vfprintf_r+0x1a4> -00000000800028ea <__sbprintf>: - 800028ea: 0105d783 lhu a5,16(a1) - 800028ee: 0ac5ae83 lw t4,172(a1) - 800028f2: 0125de03 lhu t3,18(a1) - 800028f6: 0305b303 ld t1,48(a1) - 800028fa: 0405b883 ld a7,64(a1) - 800028fe: b2010113 addi sp,sp,-1248 - 80002902: 9bf5 andi a5,a5,-3 - 80002904: 0c010813 addi a6,sp,192 - 80002908: 40000713 li a4,1024 - 8000290c: 4c813823 sd s0,1232(sp) - 80002910: 842e mv s0,a1 - 80002912: 080c addi a1,sp,16 - 80002914: 4c913423 sd s1,1224(sp) - 80002918: 02f11023 sh a5,32(sp) - 8000291c: 4c113c23 sd ra,1240(sp) - 80002920: dc02 sw zero,56(sp) - 80002922: df76 sw t4,188(sp) - 80002924: 03c11123 sh t3,34(sp) - 80002928: e09a sd t1,64(sp) - 8000292a: e8c6 sd a7,80(sp) - 8000292c: e842 sd a6,16(sp) - 8000292e: f442 sd a6,40(sp) - 80002930: ce3a sw a4,28(sp) - 80002932: d83a sw a4,48(sp) - 80002934: 84aa mv s1,a0 - 80002936: f2dfd0ef jal 80000862 <_vfprintf_r> - 8000293a: 87aa mv a5,a0 - 8000293c: 02055763 bgez a0,8000296a <__sbprintf+0x80> - 80002940: 02015703 lhu a4,32(sp) - 80002944: 04077713 andi a4,a4,64 - 80002948: c719 beqz a4,80002956 <__sbprintf+0x6c> - 8000294a: 01045703 lhu a4,16(s0) - 8000294e: 04076713 ori a4,a4,64 - 80002952: 00e41823 sh a4,16(s0) - 80002956: 4d813083 ld ra,1240(sp) - 8000295a: 4d013403 ld s0,1232(sp) - 8000295e: 4c813483 ld s1,1224(sp) - 80002962: 853e mv a0,a5 - 80002964: 4e010113 addi sp,sp,1248 - 80002968: 8082 ret - 8000296a: e42a sd a0,8(sp) - 8000296c: 080c addi a1,sp,16 - 8000296e: 8526 mv a0,s1 - 80002970: 1e4000ef jal 80002b54 <_fflush_r> - 80002974: 67a2 ld a5,8(sp) - 80002976: d569 beqz a0,80002940 <__sbprintf+0x56> - 80002978: 57fd li a5,-1 - 8000297a: b7d9 j 80002940 <__sbprintf+0x56> +0000000080002fd2 <__sbprintf>: + 80002fd2: 0105d783 lhu a5,16(a1) + 80002fd6: 0ac5ae83 lw t4,172(a1) + 80002fda: 0125de03 lhu t3,18(a1) + 80002fde: 0305b303 ld t1,48(a1) + 80002fe2: 0405b883 ld a7,64(a1) + 80002fe6: b2010113 addi sp,sp,-1248 + 80002fea: 9bf5 andi a5,a5,-3 + 80002fec: 0c010813 addi a6,sp,192 + 80002ff0: 40000713 li a4,1024 + 80002ff4: 4c813823 sd s0,1232(sp) + 80002ff8: 842e mv s0,a1 + 80002ffa: 080c addi a1,sp,16 + 80002ffc: 4c913423 sd s1,1224(sp) + 80003000: 02f11023 sh a5,32(sp) + 80003004: 4c113c23 sd ra,1240(sp) + 80003008: dc02 sw zero,56(sp) + 8000300a: df76 sw t4,188(sp) + 8000300c: 03c11123 sh t3,34(sp) + 80003010: e09a sd t1,64(sp) + 80003012: e8c6 sd a7,80(sp) + 80003014: e842 sd a6,16(sp) + 80003016: f442 sd a6,40(sp) + 80003018: ce3a sw a4,28(sp) + 8000301a: d83a sw a4,48(sp) + 8000301c: 84aa mv s1,a0 + 8000301e: f2dfd0ef jal 80000f4a <_vfprintf_r> + 80003022: 87aa mv a5,a0 + 80003024: 02055763 bgez a0,80003052 <__sbprintf+0x80> + 80003028: 02015703 lhu a4,32(sp) + 8000302c: 04077713 andi a4,a4,64 + 80003030: c719 beqz a4,8000303e <__sbprintf+0x6c> + 80003032: 01045703 lhu a4,16(s0) + 80003036: 04076713 ori a4,a4,64 + 8000303a: 00e41823 sh a4,16(s0) + 8000303e: 4d813083 ld ra,1240(sp) + 80003042: 4d013403 ld s0,1232(sp) + 80003046: 4c813483 ld s1,1224(sp) + 8000304a: 853e mv a0,a5 + 8000304c: 4e010113 addi sp,sp,1248 + 80003050: 8082 ret + 80003052: e42a sd a0,8(sp) + 80003054: 080c addi a1,sp,16 + 80003056: 8526 mv a0,s1 + 80003058: 1e4000ef jal 8000323c <_fflush_r> + 8000305c: 67a2 ld a5,8(sp) + 8000305e: d569 beqz a0,80003028 <__sbprintf+0x56> + 80003060: 57fd li a5,-1 + 80003062: b7d9 j 80003028 <__sbprintf+0x56> -000000008000297c <__sprint_r>: - 8000297c: 6a18 ld a4,16(a2) - 8000297e: e709 bnez a4,80002988 <__sprint_r+0xc> - 80002980: 4501 li a0,0 - 80002982: 00062423 sw zero,8(a2) - 80002986: 8082 ret - 80002988: 1101 addi sp,sp,-32 - 8000298a: ec06 sd ra,24(sp) - 8000298c: e432 sd a2,8(sp) - 8000298e: 386000ef jal 80002d14 <__sfvwrite_r> - 80002992: 67a2 ld a5,8(sp) - 80002994: 60e2 ld ra,24(sp) - 80002996: 0007b823 sd zero,16(a5) - 8000299a: 0007a423 sw zero,8(a5) - 8000299e: 6105 addi sp,sp,32 - 800029a0: 8082 ret +0000000080003064 <__sprint_r>: + 80003064: 6a18 ld a4,16(a2) + 80003066: e709 bnez a4,80003070 <__sprint_r+0xc> + 80003068: 4501 li a0,0 + 8000306a: 00062423 sw zero,8(a2) + 8000306e: 8082 ret + 80003070: 1101 addi sp,sp,-32 + 80003072: ec06 sd ra,24(sp) + 80003074: e432 sd a2,8(sp) + 80003076: 386000ef jal 800033fc <__sfvwrite_r> + 8000307a: 67a2 ld a5,8(sp) + 8000307c: 60e2 ld ra,24(sp) + 8000307e: 0007b823 sd zero,16(a5) + 80003082: 0007a423 sw zero,8(a5) + 80003086: 6105 addi sp,sp,32 + 80003088: 8082 ret -00000000800029a2 <__sflush_r>: - 800029a2: 01059703 lh a4,16(a1) - 800029a6: 7179 addi sp,sp,-48 - 800029a8: f022 sd s0,32(sp) - 800029aa: e44e sd s3,8(sp) - 800029ac: f406 sd ra,40(sp) - 800029ae: 00877793 andi a5,a4,8 - 800029b2: 842e mv s0,a1 - 800029b4: 89aa mv s3,a0 - 800029b6: e7f9 bnez a5,80002a84 <__sflush_r+0xe2> - 800029b8: 6785 lui a5,0x1 - 800029ba: 80078793 addi a5,a5,-2048 # 800 - 800029be: 4594 lw a3,8(a1) - 800029c0: 8fd9 or a5,a5,a4 - 800029c2: 00f59823 sh a5,16(a1) - 800029c6: 10d05c63 blez a3,80002ade <__sflush_r+0x13c> - 800029ca: 04843803 ld a6,72(s0) - 800029ce: 0a080563 beqz a6,80002a78 <__sflush_r+0xd6> - 800029d2: ec26 sd s1,24(sp) - 800029d4: 03371693 slli a3,a4,0x33 - 800029d8: 0009a483 lw s1,0(s3) - 800029dc: 0009a023 sw zero,0(s3) - 800029e0: 1006c663 bltz a3,80002aec <__sflush_r+0x14a> - 800029e4: 780c ld a1,48(s0) - 800029e6: 4601 li a2,0 - 800029e8: 4685 li a3,1 - 800029ea: 854e mv a0,s3 - 800029ec: 9802 jalr a6 - 800029ee: 57fd li a5,-1 - 800029f0: 862a mv a2,a0 - 800029f2: 12f50463 beq a0,a5,80002b1a <__sflush_r+0x178> - 800029f6: 01041783 lh a5,16(s0) - 800029fa: 04843803 ld a6,72(s0) - 800029fe: 8b91 andi a5,a5,4 - 80002a00: c799 beqz a5,80002a0e <__sflush_r+0x6c> - 80002a02: 4418 lw a4,8(s0) - 80002a04: 6c3c ld a5,88(s0) - 80002a06: 8e19 sub a2,a2,a4 - 80002a08: c399 beqz a5,80002a0e <__sflush_r+0x6c> - 80002a0a: 583c lw a5,112(s0) - 80002a0c: 8e1d sub a2,a2,a5 - 80002a0e: 780c ld a1,48(s0) - 80002a10: 4681 li a3,0 - 80002a12: 854e mv a0,s3 - 80002a14: 9802 jalr a6 - 80002a16: 57fd li a5,-1 - 80002a18: 01041703 lh a4,16(s0) - 80002a1c: 0cf51a63 bne a0,a5,80002af0 <__sflush_r+0x14e> - 80002a20: 0009a683 lw a3,0(s3) - 80002a24: 47f5 li a5,29 - 80002a26: 12d7e263 bltu a5,a3,80002b4a <__sflush_r+0x1a8> - 80002a2a: 204007b7 lui a5,0x20400 - 80002a2e: 0785 addi a5,a5,1 # 20400001 <__dtim_size+0x20300001> - 80002a30: 00d7d7b3 srl a5,a5,a3 - 80002a34: 8b85 andi a5,a5,1 - 80002a36: 10078a63 beqz a5,80002b4a <__sflush_r+0x1a8> - 80002a3a: 6c14 ld a3,24(s0) - 80002a3c: 77fd lui a5,0xfffff - 80002a3e: 7ff78793 addi a5,a5,2047 # fffffffffffff7ff <_stack_top+0xffffffff7feff7ff> - 80002a42: 8ff9 and a5,a5,a4 - 80002a44: 00f41823 sh a5,16(s0) - 80002a48: 00042423 sw zero,8(s0) - 80002a4c: e014 sd a3,0(s0) - 80002a4e: 03371793 slli a5,a4,0x33 - 80002a52: 0007d563 bgez a5,80002a5c <__sflush_r+0xba> - 80002a56: 0009a783 lw a5,0(s3) - 80002a5a: cbcd beqz a5,80002b0c <__sflush_r+0x16a> - 80002a5c: 6c2c ld a1,88(s0) - 80002a5e: 0099a023 sw s1,0(s3) - 80002a62: c9d5 beqz a1,80002b16 <__sflush_r+0x174> - 80002a64: 07440793 addi a5,s0,116 - 80002a68: 00f58563 beq a1,a5,80002a72 <__sflush_r+0xd0> - 80002a6c: 854e mv a0,s3 - 80002a6e: 30a010ef jal 80003d78 <_free_r> - 80002a72: 64e2 ld s1,24(sp) - 80002a74: 04043c23 sd zero,88(s0) - 80002a78: 70a2 ld ra,40(sp) - 80002a7a: 7402 ld s0,32(sp) - 80002a7c: 69a2 ld s3,8(sp) - 80002a7e: 4501 li a0,0 - 80002a80: 6145 addi sp,sp,48 - 80002a82: 8082 ret - 80002a84: e84a sd s2,16(sp) - 80002a86: 0185b903 ld s2,24(a1) - 80002a8a: 04090f63 beqz s2,80002ae8 <__sflush_r+0x146> - 80002a8e: ec26 sd s1,24(sp) - 80002a90: 6184 ld s1,0(a1) - 80002a92: 8b0d andi a4,a4,3 - 80002a94: 0125b023 sd s2,0(a1) - 80002a98: 412484bb subw s1,s1,s2 - 80002a9c: 4781 li a5,0 - 80002a9e: e311 bnez a4,80002aa2 <__sflush_r+0x100> - 80002aa0: 519c lw a5,32(a1) - 80002aa2: c45c sw a5,12(s0) - 80002aa4: 00904663 bgtz s1,80002ab0 <__sflush_r+0x10e> - 80002aa8: a83d j 80002ae6 <__sflush_r+0x144> - 80002aaa: 992a add s2,s2,a0 - 80002aac: 02905d63 blez s1,80002ae6 <__sflush_r+0x144> - 80002ab0: 603c ld a5,64(s0) - 80002ab2: 780c ld a1,48(s0) - 80002ab4: 86a6 mv a3,s1 - 80002ab6: 864a mv a2,s2 - 80002ab8: 854e mv a0,s3 - 80002aba: 9782 jalr a5 - 80002abc: 9c89 subw s1,s1,a0 - 80002abe: fea046e3 bgtz a0,80002aaa <__sflush_r+0x108> - 80002ac2: 01045783 lhu a5,16(s0) - 80002ac6: 6942 ld s2,16(sp) - 80002ac8: 0407e793 ori a5,a5,64 - 80002acc: 00f41823 sh a5,16(s0) - 80002ad0: 70a2 ld ra,40(sp) - 80002ad2: 7402 ld s0,32(sp) - 80002ad4: 64e2 ld s1,24(sp) - 80002ad6: 69a2 ld s3,8(sp) - 80002ad8: 557d li a0,-1 - 80002ada: 6145 addi sp,sp,48 - 80002adc: 8082 ret - 80002ade: 59b4 lw a3,112(a1) - 80002ae0: eed045e3 bgtz a3,800029ca <__sflush_r+0x28> - 80002ae4: bf51 j 80002a78 <__sflush_r+0xd6> - 80002ae6: 64e2 ld s1,24(sp) - 80002ae8: 6942 ld s2,16(sp) - 80002aea: b779 j 80002a78 <__sflush_r+0xd6> - 80002aec: 6850 ld a2,144(s0) - 80002aee: bf01 j 800029fe <__sflush_r+0x5c> - 80002af0: 6c14 ld a3,24(s0) - 80002af2: 77fd lui a5,0xfffff - 80002af4: 7ff78793 addi a5,a5,2047 # fffffffffffff7ff <_stack_top+0xffffffff7feff7ff> - 80002af8: 8ff9 and a5,a5,a4 - 80002afa: 00f41823 sh a5,16(s0) - 80002afe: 00042423 sw zero,8(s0) - 80002b02: e014 sd a3,0(s0) - 80002b04: 03371793 slli a5,a4,0x33 - 80002b08: f407dae3 bgez a5,80002a5c <__sflush_r+0xba> - 80002b0c: 6c2c ld a1,88(s0) - 80002b0e: e848 sd a0,144(s0) - 80002b10: 0099a023 sw s1,0(s3) - 80002b14: f9a1 bnez a1,80002a64 <__sflush_r+0xc2> - 80002b16: 64e2 ld s1,24(sp) - 80002b18: b785 j 80002a78 <__sflush_r+0xd6> - 80002b1a: 0009a783 lw a5,0(s3) - 80002b1e: ec078ce3 beqz a5,800029f6 <__sflush_r+0x54> - 80002b22: fe378713 addi a4,a5,-29 - 80002b26: 17a9 addi a5,a5,-22 - 80002b28: 00173713 seqz a4,a4 - 80002b2c: 0017b793 seqz a5,a5 - 80002b30: 8fd9 or a5,a5,a4 - 80002b32: c789 beqz a5,80002b3c <__sflush_r+0x19a> - 80002b34: 0099a023 sw s1,0(s3) - 80002b38: 64e2 ld s1,24(sp) - 80002b3a: bf3d j 80002a78 <__sflush_r+0xd6> - 80002b3c: 01045783 lhu a5,16(s0) - 80002b40: 0407e793 ori a5,a5,64 - 80002b44: 00f41823 sh a5,16(s0) - 80002b48: b761 j 80002ad0 <__sflush_r+0x12e> - 80002b4a: 04076713 ori a4,a4,64 - 80002b4e: 00e41823 sh a4,16(s0) - 80002b52: bfbd j 80002ad0 <__sflush_r+0x12e> +000000008000308a <__sflush_r>: + 8000308a: 01059703 lh a4,16(a1) + 8000308e: 7179 addi sp,sp,-48 + 80003090: f022 sd s0,32(sp) + 80003092: e44e sd s3,8(sp) + 80003094: f406 sd ra,40(sp) + 80003096: 00877793 andi a5,a4,8 + 8000309a: 842e mv s0,a1 + 8000309c: 89aa mv s3,a0 + 8000309e: e7f9 bnez a5,8000316c <__sflush_r+0xe2> + 800030a0: 6785 lui a5,0x1 + 800030a2: 80078793 addi a5,a5,-2048 # 800 + 800030a6: 4594 lw a3,8(a1) + 800030a8: 8fd9 or a5,a5,a4 + 800030aa: 00f59823 sh a5,16(a1) + 800030ae: 10d05c63 blez a3,800031c6 <__sflush_r+0x13c> + 800030b2: 04843803 ld a6,72(s0) + 800030b6: 0a080563 beqz a6,80003160 <__sflush_r+0xd6> + 800030ba: ec26 sd s1,24(sp) + 800030bc: 03371693 slli a3,a4,0x33 + 800030c0: 0009a483 lw s1,0(s3) + 800030c4: 0009a023 sw zero,0(s3) + 800030c8: 1006c663 bltz a3,800031d4 <__sflush_r+0x14a> + 800030cc: 780c ld a1,48(s0) + 800030ce: 4601 li a2,0 + 800030d0: 4685 li a3,1 + 800030d2: 854e mv a0,s3 + 800030d4: 9802 jalr a6 + 800030d6: 57fd li a5,-1 + 800030d8: 862a mv a2,a0 + 800030da: 12f50463 beq a0,a5,80003202 <__sflush_r+0x178> + 800030de: 01041783 lh a5,16(s0) + 800030e2: 04843803 ld a6,72(s0) + 800030e6: 8b91 andi a5,a5,4 + 800030e8: c799 beqz a5,800030f6 <__sflush_r+0x6c> + 800030ea: 4418 lw a4,8(s0) + 800030ec: 6c3c ld a5,88(s0) + 800030ee: 8e19 sub a2,a2,a4 + 800030f0: c399 beqz a5,800030f6 <__sflush_r+0x6c> + 800030f2: 583c lw a5,112(s0) + 800030f4: 8e1d sub a2,a2,a5 + 800030f6: 780c ld a1,48(s0) + 800030f8: 4681 li a3,0 + 800030fa: 854e mv a0,s3 + 800030fc: 9802 jalr a6 + 800030fe: 57fd li a5,-1 + 80003100: 01041703 lh a4,16(s0) + 80003104: 0cf51a63 bne a0,a5,800031d8 <__sflush_r+0x14e> + 80003108: 0009a683 lw a3,0(s3) + 8000310c: 47f5 li a5,29 + 8000310e: 12d7e263 bltu a5,a3,80003232 <__sflush_r+0x1a8> + 80003112: 204007b7 lui a5,0x20400 + 80003116: 0785 addi a5,a5,1 # 20400001 <__dtim_size+0x20300001> + 80003118: 00d7d7b3 srl a5,a5,a3 + 8000311c: 8b85 andi a5,a5,1 + 8000311e: 10078a63 beqz a5,80003232 <__sflush_r+0x1a8> + 80003122: 6c14 ld a3,24(s0) + 80003124: 77fd lui a5,0xfffff + 80003126: 7ff78793 addi a5,a5,2047 # fffffffffffff7ff <_stack_top+0xffffffff7feff7ff> + 8000312a: 8ff9 and a5,a5,a4 + 8000312c: 00f41823 sh a5,16(s0) + 80003130: 00042423 sw zero,8(s0) + 80003134: e014 sd a3,0(s0) + 80003136: 03371793 slli a5,a4,0x33 + 8000313a: 0007d563 bgez a5,80003144 <__sflush_r+0xba> + 8000313e: 0009a783 lw a5,0(s3) + 80003142: cbcd beqz a5,800031f4 <__sflush_r+0x16a> + 80003144: 6c2c ld a1,88(s0) + 80003146: 0099a023 sw s1,0(s3) + 8000314a: c9d5 beqz a1,800031fe <__sflush_r+0x174> + 8000314c: 07440793 addi a5,s0,116 + 80003150: 00f58563 beq a1,a5,8000315a <__sflush_r+0xd0> + 80003154: 854e mv a0,s3 + 80003156: 30a010ef jal 80004460 <_free_r> + 8000315a: 64e2 ld s1,24(sp) + 8000315c: 04043c23 sd zero,88(s0) + 80003160: 70a2 ld ra,40(sp) + 80003162: 7402 ld s0,32(sp) + 80003164: 69a2 ld s3,8(sp) + 80003166: 4501 li a0,0 + 80003168: 6145 addi sp,sp,48 + 8000316a: 8082 ret + 8000316c: e84a sd s2,16(sp) + 8000316e: 0185b903 ld s2,24(a1) + 80003172: 04090f63 beqz s2,800031d0 <__sflush_r+0x146> + 80003176: ec26 sd s1,24(sp) + 80003178: 6184 ld s1,0(a1) + 8000317a: 8b0d andi a4,a4,3 + 8000317c: 0125b023 sd s2,0(a1) + 80003180: 412484bb subw s1,s1,s2 + 80003184: 4781 li a5,0 + 80003186: e311 bnez a4,8000318a <__sflush_r+0x100> + 80003188: 519c lw a5,32(a1) + 8000318a: c45c sw a5,12(s0) + 8000318c: 00904663 bgtz s1,80003198 <__sflush_r+0x10e> + 80003190: a83d j 800031ce <__sflush_r+0x144> + 80003192: 992a add s2,s2,a0 + 80003194: 02905d63 blez s1,800031ce <__sflush_r+0x144> + 80003198: 603c ld a5,64(s0) + 8000319a: 780c ld a1,48(s0) + 8000319c: 86a6 mv a3,s1 + 8000319e: 864a mv a2,s2 + 800031a0: 854e mv a0,s3 + 800031a2: 9782 jalr a5 + 800031a4: 9c89 subw s1,s1,a0 + 800031a6: fea046e3 bgtz a0,80003192 <__sflush_r+0x108> + 800031aa: 01045783 lhu a5,16(s0) + 800031ae: 6942 ld s2,16(sp) + 800031b0: 0407e793 ori a5,a5,64 + 800031b4: 00f41823 sh a5,16(s0) + 800031b8: 70a2 ld ra,40(sp) + 800031ba: 7402 ld s0,32(sp) + 800031bc: 64e2 ld s1,24(sp) + 800031be: 69a2 ld s3,8(sp) + 800031c0: 557d li a0,-1 + 800031c2: 6145 addi sp,sp,48 + 800031c4: 8082 ret + 800031c6: 59b4 lw a3,112(a1) + 800031c8: eed045e3 bgtz a3,800030b2 <__sflush_r+0x28> + 800031cc: bf51 j 80003160 <__sflush_r+0xd6> + 800031ce: 64e2 ld s1,24(sp) + 800031d0: 6942 ld s2,16(sp) + 800031d2: b779 j 80003160 <__sflush_r+0xd6> + 800031d4: 6850 ld a2,144(s0) + 800031d6: bf01 j 800030e6 <__sflush_r+0x5c> + 800031d8: 6c14 ld a3,24(s0) + 800031da: 77fd lui a5,0xfffff + 800031dc: 7ff78793 addi a5,a5,2047 # fffffffffffff7ff <_stack_top+0xffffffff7feff7ff> + 800031e0: 8ff9 and a5,a5,a4 + 800031e2: 00f41823 sh a5,16(s0) + 800031e6: 00042423 sw zero,8(s0) + 800031ea: e014 sd a3,0(s0) + 800031ec: 03371793 slli a5,a4,0x33 + 800031f0: f407dae3 bgez a5,80003144 <__sflush_r+0xba> + 800031f4: 6c2c ld a1,88(s0) + 800031f6: e848 sd a0,144(s0) + 800031f8: 0099a023 sw s1,0(s3) + 800031fc: f9a1 bnez a1,8000314c <__sflush_r+0xc2> + 800031fe: 64e2 ld s1,24(sp) + 80003200: b785 j 80003160 <__sflush_r+0xd6> + 80003202: 0009a783 lw a5,0(s3) + 80003206: ec078ce3 beqz a5,800030de <__sflush_r+0x54> + 8000320a: fe378713 addi a4,a5,-29 + 8000320e: 17a9 addi a5,a5,-22 + 80003210: 00173713 seqz a4,a4 + 80003214: 0017b793 seqz a5,a5 + 80003218: 8fd9 or a5,a5,a4 + 8000321a: c789 beqz a5,80003224 <__sflush_r+0x19a> + 8000321c: 0099a023 sw s1,0(s3) + 80003220: 64e2 ld s1,24(sp) + 80003222: bf3d j 80003160 <__sflush_r+0xd6> + 80003224: 01045783 lhu a5,16(s0) + 80003228: 0407e793 ori a5,a5,64 + 8000322c: 00f41823 sh a5,16(s0) + 80003230: b761 j 800031b8 <__sflush_r+0x12e> + 80003232: 04076713 ori a4,a4,64 + 80003236: 00e41823 sh a4,16(s0) + 8000323a: bfbd j 800031b8 <__sflush_r+0x12e> -0000000080002b54 <_fflush_r>: - 80002b54: 87aa mv a5,a0 - 80002b56: c119 beqz a0,80002b5c <_fflush_r+0x8> - 80002b58: 6538 ld a4,72(a0) - 80002b5a: cb01 beqz a4,80002b6a <_fflush_r+0x16> - 80002b5c: 01059703 lh a4,16(a1) - 80002b60: e319 bnez a4,80002b66 <_fflush_r+0x12> - 80002b62: 4501 li a0,0 - 80002b64: 8082 ret - 80002b66: 853e mv a0,a5 - 80002b68: bd2d j 800029a2 <__sflush_r> - 80002b6a: 1101 addi sp,sp,-32 - 80002b6c: e42e sd a1,8(sp) - 80002b6e: ec06 sd ra,24(sp) - 80002b70: e02a sd a0,0(sp) - 80002b72: 186000ef jal 80002cf8 <__sinit> - 80002b76: 65a2 ld a1,8(sp) - 80002b78: 6782 ld a5,0(sp) - 80002b7a: 01059703 lh a4,16(a1) - 80002b7e: c709 beqz a4,80002b88 <_fflush_r+0x34> - 80002b80: 60e2 ld ra,24(sp) - 80002b82: 853e mv a0,a5 - 80002b84: 6105 addi sp,sp,32 - 80002b86: bd31 j 800029a2 <__sflush_r> - 80002b88: 60e2 ld ra,24(sp) - 80002b8a: 4501 li a0,0 - 80002b8c: 6105 addi sp,sp,32 - 80002b8e: 8082 ret +000000008000323c <_fflush_r>: + 8000323c: 87aa mv a5,a0 + 8000323e: c119 beqz a0,80003244 <_fflush_r+0x8> + 80003240: 6538 ld a4,72(a0) + 80003242: cb01 beqz a4,80003252 <_fflush_r+0x16> + 80003244: 01059703 lh a4,16(a1) + 80003248: e319 bnez a4,8000324e <_fflush_r+0x12> + 8000324a: 4501 li a0,0 + 8000324c: 8082 ret + 8000324e: 853e mv a0,a5 + 80003250: bd2d j 8000308a <__sflush_r> + 80003252: 1101 addi sp,sp,-32 + 80003254: e42e sd a1,8(sp) + 80003256: ec06 sd ra,24(sp) + 80003258: e02a sd a0,0(sp) + 8000325a: 186000ef jal 800033e0 <__sinit> + 8000325e: 65a2 ld a1,8(sp) + 80003260: 6782 ld a5,0(sp) + 80003262: 01059703 lh a4,16(a1) + 80003266: c709 beqz a4,80003270 <_fflush_r+0x34> + 80003268: 60e2 ld ra,24(sp) + 8000326a: 853e mv a0,a5 + 8000326c: 6105 addi sp,sp,32 + 8000326e: bd31 j 8000308a <__sflush_r> + 80003270: 60e2 ld ra,24(sp) + 80003272: 4501 li a0,0 + 80003274: 6105 addi sp,sp,32 + 80003276: 8082 ret -0000000080002b90 : - 80002b90: 97818613 addi a2,gp,-1672 # 80009cc8 <__sglue> - 80002b94: 00004597 auipc a1,0x4 - 80002b98: f1258593 addi a1,a1,-238 # 80006aa6 <_fclose_r> - 80002b9c: 00007517 auipc a0,0x7 - 80002ba0: fd450513 addi a0,a0,-44 # 80009b70 <_impure_data> - 80002ba4: a1e1 j 8000306c <_fwalk_sglue> +0000000080003278 : + 80003278: 97818613 addi a2,gp,-1672 # 8000a680 <__sglue> + 8000327c: 00004597 auipc a1,0x4 + 80003280: f1258593 addi a1,a1,-238 # 8000718e <_fclose_r> + 80003284: 00007517 auipc a0,0x7 + 80003288: 2a450513 addi a0,a0,676 # 8000a528 <_impure_data> + 8000328c: a1e1 j 80003754 <_fwalk_sglue> -0000000080002ba6 : - 80002ba6: 650c ld a1,8(a0) - 80002ba8: 1141 addi sp,sp,-16 - 80002baa: e022 sd s0,0(sp) - 80002bac: e406 sd ra,8(sp) - 80002bae: 38818793 addi a5,gp,904 # 8000a6d8 <__sf> - 80002bb2: 842a mv s0,a0 - 80002bb4: 00f58463 beq a1,a5,80002bbc - 80002bb8: 6ef030ef jal 80006aa6 <_fclose_r> - 80002bbc: 680c ld a1,16(s0) - 80002bbe: 43818793 addi a5,gp,1080 # 8000a788 <__sf+0xb0> - 80002bc2: 00f58563 beq a1,a5,80002bcc - 80002bc6: 8522 mv a0,s0 - 80002bc8: 6df030ef jal 80006aa6 <_fclose_r> - 80002bcc: 6c0c ld a1,24(s0) - 80002bce: 4e818793 addi a5,gp,1256 # 8000a838 <__sf+0x160> - 80002bd2: 00f58863 beq a1,a5,80002be2 - 80002bd6: 8522 mv a0,s0 - 80002bd8: 6402 ld s0,0(sp) - 80002bda: 60a2 ld ra,8(sp) - 80002bdc: 0141 addi sp,sp,16 - 80002bde: 6c90306f j 80006aa6 <_fclose_r> - 80002be2: 60a2 ld ra,8(sp) - 80002be4: 6402 ld s0,0(sp) - 80002be6: 0141 addi sp,sp,16 - 80002be8: 8082 ret +000000008000328e : + 8000328e: 650c ld a1,8(a0) + 80003290: 1141 addi sp,sp,-16 + 80003292: e022 sd s0,0(sp) + 80003294: e406 sd ra,8(sp) + 80003296: 46018793 addi a5,gp,1120 # 8000b168 <__sf> + 8000329a: 842a mv s0,a0 + 8000329c: 00f58463 beq a1,a5,800032a4 + 800032a0: 6ef030ef jal 8000718e <_fclose_r> + 800032a4: 680c ld a1,16(s0) + 800032a6: 51018793 addi a5,gp,1296 # 8000b218 <__sf+0xb0> + 800032aa: 00f58563 beq a1,a5,800032b4 + 800032ae: 8522 mv a0,s0 + 800032b0: 6df030ef jal 8000718e <_fclose_r> + 800032b4: 6c0c ld a1,24(s0) + 800032b6: 5c018793 addi a5,gp,1472 # 8000b2c8 <__sf+0x160> + 800032ba: 00f58863 beq a1,a5,800032ca + 800032be: 8522 mv a0,s0 + 800032c0: 6402 ld s0,0(sp) + 800032c2: 60a2 ld ra,8(sp) + 800032c4: 0141 addi sp,sp,16 + 800032c6: 6c90306f j 8000718e <_fclose_r> + 800032ca: 60a2 ld ra,8(sp) + 800032cc: 6402 ld s0,0(sp) + 800032ce: 0141 addi sp,sp,16 + 800032d0: 8082 ret -0000000080002bea : - 80002bea: 7179 addi sp,sp,-48 - 80002bec: 00000797 auipc a5,0x0 - 80002bf0: fa478793 addi a5,a5,-92 # 80002b90 - 80002bf4: f406 sd ra,40(sp) - 80002bf6: f022 sd s0,32(sp) - 80002bf8: ec26 sd s1,24(sp) - 80002bfa: 38818413 addi s0,gp,904 # 8000a6d8 <__sf> - 80002bfe: e84a sd s2,16(sp) - 80002c00: e44e sd s3,8(sp) - 80002c02: e052 sd s4,0(sp) - 80002c04: 36f1b023 sd a5,864(gp) # 8000a6b0 <__stdio_exit_handler> - 80002c08: 4621 li a2,8 - 80002c0a: 4791 li a5,4 - 80002c0c: 4581 li a1,0 - 80002c0e: 42c18513 addi a0,gp,1068 # 8000a77c <__sf+0xa4> - 80002c12: c81c sw a5,16(s0) - 80002c14: 00043023 sd zero,0(s0) - 80002c18: 00043423 sd zero,8(s0) - 80002c1c: 0a042623 sw zero,172(s0) - 80002c20: 00043c23 sd zero,24(s0) - 80002c24: 02042023 sw zero,32(s0) - 80002c28: 02042423 sw zero,40(s0) - 80002c2c: 2d1000ef jal 800036fc - 80002c30: 67c1 lui a5,0x10 - 80002c32: 00000a17 auipc s4,0x0 - 80002c36: 4b8a0a13 addi s4,s4,1208 # 800030ea <__sread> - 80002c3a: 00000997 auipc s3,0x0 - 80002c3e: 4e898993 addi s3,s3,1256 # 80003122 <__swrite> - 80002c42: 00000917 auipc s2,0x0 - 80002c46: 53290913 addi s2,s2,1330 # 80003174 <__sseek> - 80002c4a: 00000497 auipc s1,0x0 - 80002c4e: 56848493 addi s1,s1,1384 # 800031b2 <__sclose> - 80002c52: 07a5 addi a5,a5,9 # 10009 - 80002c54: 4621 li a2,8 - 80002c56: 4581 li a1,0 - 80002c58: 4dc18513 addi a0,gp,1244 # 8000a82c <__sf+0x154> - 80002c5c: 0cf42023 sw a5,192(s0) - 80002c60: 03443c23 sd s4,56(s0) - 80002c64: 05343023 sd s3,64(s0) - 80002c68: 05243423 sd s2,72(s0) - 80002c6c: e824 sd s1,80(s0) - 80002c6e: f800 sd s0,48(s0) - 80002c70: 0a043823 sd zero,176(s0) - 80002c74: 0a043c23 sd zero,184(s0) - 80002c78: 14042e23 sw zero,348(s0) - 80002c7c: 0c043423 sd zero,200(s0) - 80002c80: 0c042823 sw zero,208(s0) - 80002c84: 0c042c23 sw zero,216(s0) - 80002c88: 275000ef jal 800036fc - 80002c8c: 000207b7 lui a5,0x20 - 80002c90: 07c9 addi a5,a5,18 # 20012 - 80002c92: 43818713 addi a4,gp,1080 # 8000a788 <__sf+0xb0> - 80002c96: 4621 li a2,8 - 80002c98: 4581 li a1,0 - 80002c9a: 58c18513 addi a0,gp,1420 # 8000a8dc <__sf+0x204> - 80002c9e: 16f42823 sw a5,368(s0) - 80002ca2: 0f443423 sd s4,232(s0) - 80002ca6: 0f343823 sd s3,240(s0) - 80002caa: 0f243c23 sd s2,248(s0) - 80002cae: 10943023 sd s1,256(s0) - 80002cb2: f078 sd a4,224(s0) - 80002cb4: 16043023 sd zero,352(s0) - 80002cb8: 16043423 sd zero,360(s0) - 80002cbc: 20042623 sw zero,524(s0) - 80002cc0: 16043c23 sd zero,376(s0) - 80002cc4: 18042023 sw zero,384(s0) - 80002cc8: 18042423 sw zero,392(s0) - 80002ccc: 231000ef jal 800036fc - 80002cd0: 4e818793 addi a5,gp,1256 # 8000a838 <__sf+0x160> - 80002cd4: 19443c23 sd s4,408(s0) - 80002cd8: 1b343023 sd s3,416(s0) - 80002cdc: 1b243423 sd s2,424(s0) - 80002ce0: 1a943823 sd s1,432(s0) - 80002ce4: 70a2 ld ra,40(sp) - 80002ce6: 18f43823 sd a5,400(s0) - 80002cea: 7402 ld s0,32(sp) - 80002cec: 64e2 ld s1,24(sp) - 80002cee: 6942 ld s2,16(sp) - 80002cf0: 69a2 ld s3,8(sp) - 80002cf2: 6a02 ld s4,0(sp) - 80002cf4: 6145 addi sp,sp,48 - 80002cf6: 8082 ret +00000000800032d2 : + 800032d2: 7179 addi sp,sp,-48 + 800032d4: 00000797 auipc a5,0x0 + 800032d8: fa478793 addi a5,a5,-92 # 80003278 + 800032dc: f406 sd ra,40(sp) + 800032de: f022 sd s0,32(sp) + 800032e0: ec26 sd s1,24(sp) + 800032e2: 46018413 addi s0,gp,1120 # 8000b168 <__sf> + 800032e6: e84a sd s2,16(sp) + 800032e8: e44e sd s3,8(sp) + 800032ea: e052 sd s4,0(sp) + 800032ec: 38f1b023 sd a5,896(gp) # 8000b088 <__stdio_exit_handler> + 800032f0: 4621 li a2,8 + 800032f2: 4791 li a5,4 + 800032f4: 4581 li a1,0 + 800032f6: 50418513 addi a0,gp,1284 # 8000b20c <__sf+0xa4> + 800032fa: c81c sw a5,16(s0) + 800032fc: 00043023 sd zero,0(s0) + 80003300: 00043423 sd zero,8(s0) + 80003304: 0a042623 sw zero,172(s0) + 80003308: 00043c23 sd zero,24(s0) + 8000330c: 02042023 sw zero,32(s0) + 80003310: 02042423 sw zero,40(s0) + 80003314: 2d1000ef jal 80003de4 + 80003318: 67c1 lui a5,0x10 + 8000331a: 00000a17 auipc s4,0x0 + 8000331e: 4b8a0a13 addi s4,s4,1208 # 800037d2 <__sread> + 80003322: 00000997 auipc s3,0x0 + 80003326: 4e898993 addi s3,s3,1256 # 8000380a <__swrite> + 8000332a: 00000917 auipc s2,0x0 + 8000332e: 53290913 addi s2,s2,1330 # 8000385c <__sseek> + 80003332: 00000497 auipc s1,0x0 + 80003336: 56848493 addi s1,s1,1384 # 8000389a <__sclose> + 8000333a: 07a5 addi a5,a5,9 # 10009 + 8000333c: 4621 li a2,8 + 8000333e: 4581 li a1,0 + 80003340: 5b418513 addi a0,gp,1460 # 8000b2bc <__sf+0x154> + 80003344: 0cf42023 sw a5,192(s0) + 80003348: 03443c23 sd s4,56(s0) + 8000334c: 05343023 sd s3,64(s0) + 80003350: 05243423 sd s2,72(s0) + 80003354: e824 sd s1,80(s0) + 80003356: f800 sd s0,48(s0) + 80003358: 0a043823 sd zero,176(s0) + 8000335c: 0a043c23 sd zero,184(s0) + 80003360: 14042e23 sw zero,348(s0) + 80003364: 0c043423 sd zero,200(s0) + 80003368: 0c042823 sw zero,208(s0) + 8000336c: 0c042c23 sw zero,216(s0) + 80003370: 275000ef jal 80003de4 + 80003374: 000207b7 lui a5,0x20 + 80003378: 07c9 addi a5,a5,18 # 20012 + 8000337a: 51018713 addi a4,gp,1296 # 8000b218 <__sf+0xb0> + 8000337e: 4621 li a2,8 + 80003380: 4581 li a1,0 + 80003382: 66418513 addi a0,gp,1636 # 8000b36c <__sf+0x204> + 80003386: 16f42823 sw a5,368(s0) + 8000338a: 0f443423 sd s4,232(s0) + 8000338e: 0f343823 sd s3,240(s0) + 80003392: 0f243c23 sd s2,248(s0) + 80003396: 10943023 sd s1,256(s0) + 8000339a: f078 sd a4,224(s0) + 8000339c: 16043023 sd zero,352(s0) + 800033a0: 16043423 sd zero,360(s0) + 800033a4: 20042623 sw zero,524(s0) + 800033a8: 16043c23 sd zero,376(s0) + 800033ac: 18042023 sw zero,384(s0) + 800033b0: 18042423 sw zero,392(s0) + 800033b4: 231000ef jal 80003de4 + 800033b8: 5c018793 addi a5,gp,1472 # 8000b2c8 <__sf+0x160> + 800033bc: 19443c23 sd s4,408(s0) + 800033c0: 1b343023 sd s3,416(s0) + 800033c4: 1b243423 sd s2,424(s0) + 800033c8: 1a943823 sd s1,432(s0) + 800033cc: 70a2 ld ra,40(sp) + 800033ce: 18f43823 sd a5,400(s0) + 800033d2: 7402 ld s0,32(sp) + 800033d4: 64e2 ld s1,24(sp) + 800033d6: 6942 ld s2,16(sp) + 800033d8: 69a2 ld s3,8(sp) + 800033da: 6a02 ld s4,0(sp) + 800033dc: 6145 addi sp,sp,48 + 800033de: 8082 ret -0000000080002cf8 <__sinit>: - 80002cf8: 653c ld a5,72(a0) - 80002cfa: c391 beqz a5,80002cfe <__sinit+0x6> - 80002cfc: 8082 ret - 80002cfe: 3601b783 ld a5,864(gp) # 8000a6b0 <__stdio_exit_handler> - 80002d02: 00000717 auipc a4,0x0 - 80002d06: ea470713 addi a4,a4,-348 # 80002ba6 - 80002d0a: e538 sd a4,72(a0) - 80002d0c: fbe5 bnez a5,80002cfc <__sinit+0x4> - 80002d0e: bdf1 j 80002bea +00000000800033e0 <__sinit>: + 800033e0: 653c ld a5,72(a0) + 800033e2: c391 beqz a5,800033e6 <__sinit+0x6> + 800033e4: 8082 ret + 800033e6: 3801b783 ld a5,896(gp) # 8000b088 <__stdio_exit_handler> + 800033ea: 00000717 auipc a4,0x0 + 800033ee: ea470713 addi a4,a4,-348 # 8000328e + 800033f2: e538 sd a4,72(a0) + 800033f4: fbe5 bnez a5,800033e4 <__sinit+0x4> + 800033f6: bdf1 j 800032d2 -0000000080002d10 <__sfp_lock_acquire>: - 80002d10: 8082 ret +00000000800033f8 <__sfp_lock_acquire>: + 800033f8: 8082 ret -0000000080002d12 <__sfp_lock_release>: - 80002d12: 8082 ret +00000000800033fa <__sfp_lock_release>: + 800033fa: 8082 ret -0000000080002d14 <__sfvwrite_r>: - 80002d14: 6a1c ld a5,16(a2) - 80002d16: 18078d63 beqz a5,80002eb0 <__sfvwrite_r+0x19c> - 80002d1a: 01059683 lh a3,16(a1) - 80002d1e: 711d addi sp,sp,-96 - 80002d20: e8a2 sd s0,80(sp) - 80002d22: f852 sd s4,48(sp) - 80002d24: f456 sd s5,40(sp) - 80002d26: ec86 sd ra,88(sp) - 80002d28: 0086f793 andi a5,a3,8 - 80002d2c: 842e mv s0,a1 - 80002d2e: 8a2a mv s4,a0 - 80002d30: 8ab2 mv s5,a2 - 80002d32: c7bd beqz a5,80002da0 <__sfvwrite_r+0x8c> - 80002d34: 6d9c ld a5,24(a1) - 80002d36: c7ad beqz a5,80002da0 <__sfvwrite_r+0x8c> - 80002d38: e4a6 sd s1,72(sp) - 80002d3a: e0ca sd s2,64(sp) - 80002d3c: fc4e sd s3,56(sp) - 80002d3e: f05a sd s6,32(sp) - 80002d40: 0026f793 andi a5,a3,2 - 80002d44: 000ab483 ld s1,0(s5) - 80002d48: cfad beqz a5,80002dc2 <__sfvwrite_r+0xae> - 80002d4a: 80000b37 lui s6,0x80000 - 80002d4e: c00b4b13 xori s6,s6,-1024 - 80002d52: 4981 li s3,0 - 80002d54: 4901 li s2,0 - 80002d56: 864e mv a2,s3 - 80002d58: 8552 mv a0,s4 - 80002d5a: 14090563 beqz s2,80002ea4 <__sfvwrite_r+0x190> - 80002d5e: 86ca mv a3,s2 - 80002d60: 012b7663 bgeu s6,s2,80002d6c <__sfvwrite_r+0x58> - 80002d64: 800006b7 lui a3,0x80000 - 80002d68: c006c693 xori a3,a3,-1024 - 80002d6c: 603c ld a5,64(s0) - 80002d6e: 780c ld a1,48(s0) - 80002d70: 2681 sext.w a3,a3 - 80002d72: 9782 jalr a5 - 80002d74: 2ea05163 blez a0,80003056 <__sfvwrite_r+0x342> - 80002d78: 010ab783 ld a5,16(s5) - 80002d7c: 99aa add s3,s3,a0 - 80002d7e: 40a90933 sub s2,s2,a0 - 80002d82: 8f89 sub a5,a5,a0 - 80002d84: 00fab823 sd a5,16(s5) - 80002d88: f7f9 bnez a5,80002d56 <__sfvwrite_r+0x42> - 80002d8a: 60e6 ld ra,88(sp) - 80002d8c: 6446 ld s0,80(sp) - 80002d8e: 64a6 ld s1,72(sp) - 80002d90: 6906 ld s2,64(sp) - 80002d92: 79e2 ld s3,56(sp) - 80002d94: 7b02 ld s6,32(sp) - 80002d96: 7a42 ld s4,48(sp) - 80002d98: 7aa2 ld s5,40(sp) - 80002d9a: 4501 li a0,0 - 80002d9c: 6125 addi sp,sp,96 - 80002d9e: 8082 ret - 80002da0: 85a2 mv a1,s0 - 80002da2: 8552 mv a0,s4 - 80002da4: 414000ef jal 800031b8 <__swsetup_r> - 80002da8: 12051763 bnez a0,80002ed6 <__sfvwrite_r+0x1c2> - 80002dac: 01041683 lh a3,16(s0) - 80002db0: e4a6 sd s1,72(sp) - 80002db2: e0ca sd s2,64(sp) - 80002db4: fc4e sd s3,56(sp) - 80002db6: f05a sd s6,32(sp) - 80002db8: 0026f793 andi a5,a3,2 - 80002dbc: 000ab483 ld s1,0(s5) - 80002dc0: f7c9 bnez a5,80002d4a <__sfvwrite_r+0x36> - 80002dc2: ec5e sd s7,24(sp) - 80002dc4: e862 sd s8,16(sp) - 80002dc6: 0016f793 andi a5,a3,1 - 80002dca: 10079d63 bnez a5,80002ee4 <__sfvwrite_r+0x1d0> - 80002dce: 601c ld a5,0(s0) - 80002dd0: 80000737 lui a4,0x80000 - 80002dd4: fff74c13 not s8,a4 - 80002dd8: 4b01 li s6,0 - 80002dda: 4981 li s3,0 - 80002ddc: 0a098e63 beqz s3,80002e98 <__sfvwrite_r+0x184> - 80002de0: 2006f713 andi a4,a3,512 - 80002de4: 00c42903 lw s2,12(s0) - 80002de8: 853e mv a0,a5 - 80002dea: 18070563 beqz a4,80002f74 <__sfvwrite_r+0x260> - 80002dee: 0729ee63 bltu s3,s2,80002e6a <__sfvwrite_r+0x156> - 80002df2: 4806f713 andi a4,a3,1152 - 80002df6: 8bca mv s7,s2 - 80002df8: cb3d beqz a4,80002e6e <__sfvwrite_r+0x15a> - 80002dfa: 5010 lw a2,32(s0) - 80002dfc: 6c0c ld a1,24(s0) - 80002dfe: 0016171b slliw a4,a2,0x1 - 80002e02: 9f31 addw a4,a4,a2 - 80002e04: 8f8d sub a5,a5,a1 - 80002e06: 01f7591b srliw s2,a4,0x1f - 80002e0a: 00078b9b sext.w s7,a5 - 80002e0e: 00e9093b addw s2,s2,a4 - 80002e12: 001b8713 addi a4,s7,1 - 80002e16: 4019591b sraiw s2,s2,0x1 - 80002e1a: 974e add a4,a4,s3 - 80002e1c: 00e97563 bgeu s2,a4,80002e26 <__sfvwrite_r+0x112> - 80002e20: 2785 addiw a5,a5,1 - 80002e22: 0137893b addw s2,a5,s3 - 80002e26: 4006f693 andi a3,a3,1024 - 80002e2a: 1e068b63 beqz a3,80003020 <__sfvwrite_r+0x30c> - 80002e2e: 85ca mv a1,s2 - 80002e30: 8552 mv a0,s4 - 80002e32: 011020ef jal 80005642 <_malloc_r> - 80002e36: 22050363 beqz a0,8000305c <__sfvwrite_r+0x348> - 80002e3a: 6c0c ld a1,24(s0) - 80002e3c: 865e mv a2,s7 - 80002e3e: e42a sd a0,8(sp) - 80002e40: 24f000ef jal 8000388e - 80002e44: 01045703 lhu a4,16(s0) - 80002e48: 67a2 ld a5,8(sp) - 80002e4a: b7f77713 andi a4,a4,-1153 - 80002e4e: 08076713 ori a4,a4,128 - 80002e52: 00e41823 sh a4,16(s0) - 80002e56: 01778533 add a0,a5,s7 - 80002e5a: 41790bbb subw s7,s2,s7 - 80002e5e: ec1c sd a5,24(s0) - 80002e60: e008 sd a0,0(s0) - 80002e62: 01742623 sw s7,12(s0) - 80002e66: 03242023 sw s2,32(s0) - 80002e6a: 8bce mv s7,s3 - 80002e6c: 894e mv s2,s3 - 80002e6e: 85da mv a1,s6 - 80002e70: 864a mv a2,s2 - 80002e72: 592000ef jal 80003404 - 80002e76: 4454 lw a3,12(s0) - 80002e78: 601c ld a5,0(s0) - 80002e7a: 010ab703 ld a4,16(s5) - 80002e7e: 417686bb subw a3,a3,s7 - 80002e82: 97ca add a5,a5,s2 - 80002e84: c454 sw a3,12(s0) - 80002e86: e01c sd a5,0(s0) - 80002e88: 41370733 sub a4,a4,s3 - 80002e8c: 00eab823 sd a4,16(s5) - 80002e90: 1c070063 beqz a4,80003050 <__sfvwrite_r+0x33c> - 80002e94: 01041683 lh a3,16(s0) - 80002e98: 0004bb03 ld s6,0(s1) - 80002e9c: 0084b983 ld s3,8(s1) - 80002ea0: 04c1 addi s1,s1,16 - 80002ea2: bf2d j 80002ddc <__sfvwrite_r+0xc8> - 80002ea4: 0004b983 ld s3,0(s1) - 80002ea8: 0084b903 ld s2,8(s1) - 80002eac: 04c1 addi s1,s1,16 - 80002eae: b565 j 80002d56 <__sfvwrite_r+0x42> - 80002eb0: 4501 li a0,0 - 80002eb2: 8082 ret - 80002eb4: 85a2 mv a1,s0 - 80002eb6: 8552 mv a0,s4 - 80002eb8: c9dff0ef jal 80002b54 <_fflush_r> - 80002ebc: cd2d beqz a0,80002f36 <__sfvwrite_r+0x222> - 80002ebe: 01041783 lh a5,16(s0) - 80002ec2: 6be2 ld s7,24(sp) - 80002ec4: 6c42 ld s8,16(sp) - 80002ec6: 64a6 ld s1,72(sp) - 80002ec8: 6906 ld s2,64(sp) - 80002eca: 79e2 ld s3,56(sp) - 80002ecc: 7b02 ld s6,32(sp) - 80002ece: 0407e793 ori a5,a5,64 - 80002ed2: 00f41823 sh a5,16(s0) - 80002ed6: 60e6 ld ra,88(sp) - 80002ed8: 6446 ld s0,80(sp) - 80002eda: 7a42 ld s4,48(sp) - 80002edc: 7aa2 ld s5,40(sp) - 80002ede: 557d li a0,-1 - 80002ee0: 6125 addi sp,sp,96 - 80002ee2: 8082 ret - 80002ee4: 4b01 li s6,0 - 80002ee6: 4c01 li s8,0 - 80002ee8: 4501 li a0,0 - 80002eea: 4b81 li s7,0 - 80002eec: 060b0263 beqz s6,80002f50 <__sfvwrite_r+0x23c> - 80002ef0: c925 beqz a0,80002f60 <__sfvwrite_r+0x24c> - 80002ef2: 8962 mv s2,s8 - 80002ef4: 018b7363 bgeu s6,s8,80002efa <__sfvwrite_r+0x1e6> - 80002ef8: 895a mv s2,s6 - 80002efa: 5014 lw a3,32(s0) - 80002efc: 00c42983 lw s3,12(s0) - 80002f00: 6008 ld a0,0(s0) - 80002f02: 6c1c ld a5,24(s0) - 80002f04: 00d989bb addw s3,s3,a3 - 80002f08: 0129a733 slt a4,s3,s2 - 80002f0c: 00a7b7b3 sltu a5,a5,a0 - 80002f10: 8ff9 and a5,a5,a4 - 80002f12: 0e079863 bnez a5,80003002 <__sfvwrite_r+0x2ee> - 80002f16: 0cd94963 blt s2,a3,80002fe8 <__sfvwrite_r+0x2d4> - 80002f1a: 603c ld a5,64(s0) - 80002f1c: 780c ld a1,48(s0) - 80002f1e: 865e mv a2,s7 - 80002f20: 8552 mv a0,s4 - 80002f22: 9782 jalr a5 - 80002f24: 892a mv s2,a0 - 80002f26: f8a05ce3 blez a0,80002ebe <__sfvwrite_r+0x1aa> - 80002f2a: 89aa mv s3,a0 - 80002f2c: 413c0c3b subw s8,s8,s3 - 80002f30: 4505 li a0,1 - 80002f32: f80c01e3 beqz s8,80002eb4 <__sfvwrite_r+0x1a0> - 80002f36: 010ab783 ld a5,16(s5) - 80002f3a: 412787b3 sub a5,a5,s2 - 80002f3e: 00fab823 sd a5,16(s5) - 80002f42: 10078763 beqz a5,80003050 <__sfvwrite_r+0x33c> - 80002f46: 412b0b33 sub s6,s6,s2 - 80002f4a: 9bca add s7,s7,s2 - 80002f4c: fa0b12e3 bnez s6,80002ef0 <__sfvwrite_r+0x1dc> - 80002f50: 0084bb03 ld s6,8(s1) - 80002f54: 87a6 mv a5,s1 - 80002f56: 04c1 addi s1,s1,16 - 80002f58: fe0b0ce3 beqz s6,80002f50 <__sfvwrite_r+0x23c> - 80002f5c: 0007bb83 ld s7,0(a5) - 80002f60: 865a mv a2,s6 - 80002f62: 45a9 li a1,10 - 80002f64: 855e mv a0,s7 - 80002f66: 355000ef jal 80003aba - 80002f6a: c165 beqz a0,8000304a <__sfvwrite_r+0x336> - 80002f6c: 0505 addi a0,a0,1 - 80002f6e: 41750c3b subw s8,a0,s7 - 80002f72: b741 j 80002ef2 <__sfvwrite_r+0x1de> - 80002f74: 6c18 ld a4,24(s0) - 80002f76: 04f76363 bltu a4,a5,80002fbc <__sfvwrite_r+0x2a8> - 80002f7a: 5018 lw a4,32(s0) - 80002f7c: 04e9e063 bltu s3,a4,80002fbc <__sfvwrite_r+0x2a8> - 80002f80: 86ce mv a3,s3 - 80002f82: 013c7363 bgeu s8,s3,80002f88 <__sfvwrite_r+0x274> - 80002f86: 86e2 mv a3,s8 - 80002f88: 02e6c6bb divw a3,a3,a4 - 80002f8c: 603c ld a5,64(s0) - 80002f8e: 780c ld a1,48(s0) - 80002f90: 865a mv a2,s6 - 80002f92: 8552 mv a0,s4 - 80002f94: 02e686bb mulw a3,a3,a4 - 80002f98: 9782 jalr a5 - 80002f9a: f2a052e3 blez a0,80002ebe <__sfvwrite_r+0x1aa> - 80002f9e: 892a mv s2,a0 - 80002fa0: 010ab783 ld a5,16(s5) - 80002fa4: 412989b3 sub s3,s3,s2 - 80002fa8: 412787b3 sub a5,a5,s2 - 80002fac: 00fab823 sd a5,16(s5) - 80002fb0: c3c5 beqz a5,80003050 <__sfvwrite_r+0x33c> - 80002fb2: 01041683 lh a3,16(s0) - 80002fb6: 601c ld a5,0(s0) - 80002fb8: 9b4a add s6,s6,s2 - 80002fba: b50d j 80002ddc <__sfvwrite_r+0xc8> - 80002fbc: 0129f363 bgeu s3,s2,80002fc2 <__sfvwrite_r+0x2ae> - 80002fc0: 894e mv s2,s3 - 80002fc2: 853e mv a0,a5 - 80002fc4: 864a mv a2,s2 - 80002fc6: 85da mv a1,s6 - 80002fc8: 43c000ef jal 80003404 - 80002fcc: 601c ld a5,0(s0) - 80002fce: 4458 lw a4,12(s0) - 80002fd0: 97ca add a5,a5,s2 - 80002fd2: 4127073b subw a4,a4,s2 - 80002fd6: e01c sd a5,0(s0) - 80002fd8: c458 sw a4,12(s0) - 80002fda: f379 bnez a4,80002fa0 <__sfvwrite_r+0x28c> - 80002fdc: 85a2 mv a1,s0 - 80002fde: 8552 mv a0,s4 - 80002fe0: b75ff0ef jal 80002b54 <_fflush_r> - 80002fe4: dd55 beqz a0,80002fa0 <__sfvwrite_r+0x28c> - 80002fe6: bde1 j 80002ebe <__sfvwrite_r+0x1aa> - 80002fe8: 864a mv a2,s2 - 80002fea: 85de mv a1,s7 - 80002fec: 418000ef jal 80003404 - 80002ff0: 4458 lw a4,12(s0) - 80002ff2: 601c ld a5,0(s0) - 80002ff4: 89ca mv s3,s2 - 80002ff6: 4127073b subw a4,a4,s2 - 80002ffa: 97ca add a5,a5,s2 - 80002ffc: c458 sw a4,12(s0) - 80002ffe: e01c sd a5,0(s0) - 80003000: b735 j 80002f2c <__sfvwrite_r+0x218> - 80003002: 85de mv a1,s7 - 80003004: 864e mv a2,s3 - 80003006: 3fe000ef jal 80003404 - 8000300a: 601c ld a5,0(s0) - 8000300c: 85a2 mv a1,s0 - 8000300e: 8552 mv a0,s4 - 80003010: 97ce add a5,a5,s3 - 80003012: e01c sd a5,0(s0) - 80003014: b41ff0ef jal 80002b54 <_fflush_r> - 80003018: ea0513e3 bnez a0,80002ebe <__sfvwrite_r+0x1aa> - 8000301c: 894e mv s2,s3 - 8000301e: b739 j 80002f2c <__sfvwrite_r+0x218> - 80003020: 864a mv a2,s2 - 80003022: 8552 mv a0,s4 - 80003024: 61a030ef jal 8000663e <_realloc_r> - 80003028: 87aa mv a5,a0 - 8000302a: e20516e3 bnez a0,80002e56 <__sfvwrite_r+0x142> - 8000302e: 6c0c ld a1,24(s0) - 80003030: 8552 mv a0,s4 - 80003032: 547000ef jal 80003d78 <_free_r> - 80003036: 01045783 lhu a5,16(s0) - 8000303a: 4731 li a4,12 - 8000303c: 6be2 ld s7,24(sp) - 8000303e: 6c42 ld s8,16(sp) - 80003040: 00ea2023 sw a4,0(s4) - 80003044: f7f7f793 andi a5,a5,-129 - 80003048: bdbd j 80002ec6 <__sfvwrite_r+0x1b2> - 8000304a: 001b0c1b addiw s8,s6,1 # ffffffff80000001 <_stack_top+0xfffffffefff00001> - 8000304e: b555 j 80002ef2 <__sfvwrite_r+0x1de> - 80003050: 6be2 ld s7,24(sp) - 80003052: 6c42 ld s8,16(sp) - 80003054: bb1d j 80002d8a <__sfvwrite_r+0x76> - 80003056: 01041783 lh a5,16(s0) - 8000305a: b5b5 j 80002ec6 <__sfvwrite_r+0x1b2> - 8000305c: 47b1 li a5,12 - 8000305e: 00fa2023 sw a5,0(s4) - 80003062: 6be2 ld s7,24(sp) - 80003064: 01041783 lh a5,16(s0) - 80003068: 6c42 ld s8,16(sp) - 8000306a: bdb1 j 80002ec6 <__sfvwrite_r+0x1b2> +00000000800033fc <__sfvwrite_r>: + 800033fc: 6a1c ld a5,16(a2) + 800033fe: 18078d63 beqz a5,80003598 <__sfvwrite_r+0x19c> + 80003402: 01059683 lh a3,16(a1) + 80003406: 711d addi sp,sp,-96 + 80003408: e8a2 sd s0,80(sp) + 8000340a: f852 sd s4,48(sp) + 8000340c: f456 sd s5,40(sp) + 8000340e: ec86 sd ra,88(sp) + 80003410: 0086f793 andi a5,a3,8 + 80003414: 842e mv s0,a1 + 80003416: 8a2a mv s4,a0 + 80003418: 8ab2 mv s5,a2 + 8000341a: c7bd beqz a5,80003488 <__sfvwrite_r+0x8c> + 8000341c: 6d9c ld a5,24(a1) + 8000341e: c7ad beqz a5,80003488 <__sfvwrite_r+0x8c> + 80003420: e4a6 sd s1,72(sp) + 80003422: e0ca sd s2,64(sp) + 80003424: fc4e sd s3,56(sp) + 80003426: f05a sd s6,32(sp) + 80003428: 0026f793 andi a5,a3,2 + 8000342c: 000ab483 ld s1,0(s5) + 80003430: cfad beqz a5,800034aa <__sfvwrite_r+0xae> + 80003432: 80000b37 lui s6,0x80000 + 80003436: c00b4b13 xori s6,s6,-1024 + 8000343a: 4981 li s3,0 + 8000343c: 4901 li s2,0 + 8000343e: 864e mv a2,s3 + 80003440: 8552 mv a0,s4 + 80003442: 14090563 beqz s2,8000358c <__sfvwrite_r+0x190> + 80003446: 86ca mv a3,s2 + 80003448: 012b7663 bgeu s6,s2,80003454 <__sfvwrite_r+0x58> + 8000344c: 800006b7 lui a3,0x80000 + 80003450: c006c693 xori a3,a3,-1024 + 80003454: 603c ld a5,64(s0) + 80003456: 780c ld a1,48(s0) + 80003458: 2681 sext.w a3,a3 + 8000345a: 9782 jalr a5 + 8000345c: 2ea05163 blez a0,8000373e <__sfvwrite_r+0x342> + 80003460: 010ab783 ld a5,16(s5) + 80003464: 99aa add s3,s3,a0 + 80003466: 40a90933 sub s2,s2,a0 + 8000346a: 8f89 sub a5,a5,a0 + 8000346c: 00fab823 sd a5,16(s5) + 80003470: f7f9 bnez a5,8000343e <__sfvwrite_r+0x42> + 80003472: 60e6 ld ra,88(sp) + 80003474: 6446 ld s0,80(sp) + 80003476: 64a6 ld s1,72(sp) + 80003478: 6906 ld s2,64(sp) + 8000347a: 79e2 ld s3,56(sp) + 8000347c: 7b02 ld s6,32(sp) + 8000347e: 7a42 ld s4,48(sp) + 80003480: 7aa2 ld s5,40(sp) + 80003482: 4501 li a0,0 + 80003484: 6125 addi sp,sp,96 + 80003486: 8082 ret + 80003488: 85a2 mv a1,s0 + 8000348a: 8552 mv a0,s4 + 8000348c: 414000ef jal 800038a0 <__swsetup_r> + 80003490: 12051763 bnez a0,800035be <__sfvwrite_r+0x1c2> + 80003494: 01041683 lh a3,16(s0) + 80003498: e4a6 sd s1,72(sp) + 8000349a: e0ca sd s2,64(sp) + 8000349c: fc4e sd s3,56(sp) + 8000349e: f05a sd s6,32(sp) + 800034a0: 0026f793 andi a5,a3,2 + 800034a4: 000ab483 ld s1,0(s5) + 800034a8: f7c9 bnez a5,80003432 <__sfvwrite_r+0x36> + 800034aa: ec5e sd s7,24(sp) + 800034ac: e862 sd s8,16(sp) + 800034ae: 0016f793 andi a5,a3,1 + 800034b2: 10079d63 bnez a5,800035cc <__sfvwrite_r+0x1d0> + 800034b6: 601c ld a5,0(s0) + 800034b8: 80000737 lui a4,0x80000 + 800034bc: fff74c13 not s8,a4 + 800034c0: 4b01 li s6,0 + 800034c2: 4981 li s3,0 + 800034c4: 0a098e63 beqz s3,80003580 <__sfvwrite_r+0x184> + 800034c8: 2006f713 andi a4,a3,512 + 800034cc: 00c42903 lw s2,12(s0) + 800034d0: 853e mv a0,a5 + 800034d2: 18070563 beqz a4,8000365c <__sfvwrite_r+0x260> + 800034d6: 0729ee63 bltu s3,s2,80003552 <__sfvwrite_r+0x156> + 800034da: 4806f713 andi a4,a3,1152 + 800034de: 8bca mv s7,s2 + 800034e0: cb3d beqz a4,80003556 <__sfvwrite_r+0x15a> + 800034e2: 5010 lw a2,32(s0) + 800034e4: 6c0c ld a1,24(s0) + 800034e6: 0016171b slliw a4,a2,0x1 + 800034ea: 9f31 addw a4,a4,a2 + 800034ec: 8f8d sub a5,a5,a1 + 800034ee: 01f7591b srliw s2,a4,0x1f + 800034f2: 00078b9b sext.w s7,a5 + 800034f6: 00e9093b addw s2,s2,a4 + 800034fa: 001b8713 addi a4,s7,1 + 800034fe: 4019591b sraiw s2,s2,0x1 + 80003502: 974e add a4,a4,s3 + 80003504: 00e97563 bgeu s2,a4,8000350e <__sfvwrite_r+0x112> + 80003508: 2785 addiw a5,a5,1 + 8000350a: 0137893b addw s2,a5,s3 + 8000350e: 4006f693 andi a3,a3,1024 + 80003512: 1e068b63 beqz a3,80003708 <__sfvwrite_r+0x30c> + 80003516: 85ca mv a1,s2 + 80003518: 8552 mv a0,s4 + 8000351a: 011020ef jal 80005d2a <_malloc_r> + 8000351e: 22050363 beqz a0,80003744 <__sfvwrite_r+0x348> + 80003522: 6c0c ld a1,24(s0) + 80003524: 865e mv a2,s7 + 80003526: e42a sd a0,8(sp) + 80003528: 24f000ef jal 80003f76 + 8000352c: 01045703 lhu a4,16(s0) + 80003530: 67a2 ld a5,8(sp) + 80003532: b7f77713 andi a4,a4,-1153 + 80003536: 08076713 ori a4,a4,128 + 8000353a: 00e41823 sh a4,16(s0) + 8000353e: 01778533 add a0,a5,s7 + 80003542: 41790bbb subw s7,s2,s7 + 80003546: ec1c sd a5,24(s0) + 80003548: e008 sd a0,0(s0) + 8000354a: 01742623 sw s7,12(s0) + 8000354e: 03242023 sw s2,32(s0) + 80003552: 8bce mv s7,s3 + 80003554: 894e mv s2,s3 + 80003556: 85da mv a1,s6 + 80003558: 864a mv a2,s2 + 8000355a: 592000ef jal 80003aec + 8000355e: 4454 lw a3,12(s0) + 80003560: 601c ld a5,0(s0) + 80003562: 010ab703 ld a4,16(s5) + 80003566: 417686bb subw a3,a3,s7 + 8000356a: 97ca add a5,a5,s2 + 8000356c: c454 sw a3,12(s0) + 8000356e: e01c sd a5,0(s0) + 80003570: 41370733 sub a4,a4,s3 + 80003574: 00eab823 sd a4,16(s5) + 80003578: 1c070063 beqz a4,80003738 <__sfvwrite_r+0x33c> + 8000357c: 01041683 lh a3,16(s0) + 80003580: 0004bb03 ld s6,0(s1) + 80003584: 0084b983 ld s3,8(s1) + 80003588: 04c1 addi s1,s1,16 + 8000358a: bf2d j 800034c4 <__sfvwrite_r+0xc8> + 8000358c: 0004b983 ld s3,0(s1) + 80003590: 0084b903 ld s2,8(s1) + 80003594: 04c1 addi s1,s1,16 + 80003596: b565 j 8000343e <__sfvwrite_r+0x42> + 80003598: 4501 li a0,0 + 8000359a: 8082 ret + 8000359c: 85a2 mv a1,s0 + 8000359e: 8552 mv a0,s4 + 800035a0: c9dff0ef jal 8000323c <_fflush_r> + 800035a4: cd2d beqz a0,8000361e <__sfvwrite_r+0x222> + 800035a6: 01041783 lh a5,16(s0) + 800035aa: 6be2 ld s7,24(sp) + 800035ac: 6c42 ld s8,16(sp) + 800035ae: 64a6 ld s1,72(sp) + 800035b0: 6906 ld s2,64(sp) + 800035b2: 79e2 ld s3,56(sp) + 800035b4: 7b02 ld s6,32(sp) + 800035b6: 0407e793 ori a5,a5,64 + 800035ba: 00f41823 sh a5,16(s0) + 800035be: 60e6 ld ra,88(sp) + 800035c0: 6446 ld s0,80(sp) + 800035c2: 7a42 ld s4,48(sp) + 800035c4: 7aa2 ld s5,40(sp) + 800035c6: 557d li a0,-1 + 800035c8: 6125 addi sp,sp,96 + 800035ca: 8082 ret + 800035cc: 4b01 li s6,0 + 800035ce: 4c01 li s8,0 + 800035d0: 4501 li a0,0 + 800035d2: 4b81 li s7,0 + 800035d4: 060b0263 beqz s6,80003638 <__sfvwrite_r+0x23c> + 800035d8: c925 beqz a0,80003648 <__sfvwrite_r+0x24c> + 800035da: 8962 mv s2,s8 + 800035dc: 018b7363 bgeu s6,s8,800035e2 <__sfvwrite_r+0x1e6> + 800035e0: 895a mv s2,s6 + 800035e2: 5014 lw a3,32(s0) + 800035e4: 00c42983 lw s3,12(s0) + 800035e8: 6008 ld a0,0(s0) + 800035ea: 6c1c ld a5,24(s0) + 800035ec: 00d989bb addw s3,s3,a3 + 800035f0: 0129a733 slt a4,s3,s2 + 800035f4: 00a7b7b3 sltu a5,a5,a0 + 800035f8: 8ff9 and a5,a5,a4 + 800035fa: 0e079863 bnez a5,800036ea <__sfvwrite_r+0x2ee> + 800035fe: 0cd94963 blt s2,a3,800036d0 <__sfvwrite_r+0x2d4> + 80003602: 603c ld a5,64(s0) + 80003604: 780c ld a1,48(s0) + 80003606: 865e mv a2,s7 + 80003608: 8552 mv a0,s4 + 8000360a: 9782 jalr a5 + 8000360c: 892a mv s2,a0 + 8000360e: f8a05ce3 blez a0,800035a6 <__sfvwrite_r+0x1aa> + 80003612: 89aa mv s3,a0 + 80003614: 413c0c3b subw s8,s8,s3 + 80003618: 4505 li a0,1 + 8000361a: f80c01e3 beqz s8,8000359c <__sfvwrite_r+0x1a0> + 8000361e: 010ab783 ld a5,16(s5) + 80003622: 412787b3 sub a5,a5,s2 + 80003626: 00fab823 sd a5,16(s5) + 8000362a: 10078763 beqz a5,80003738 <__sfvwrite_r+0x33c> + 8000362e: 412b0b33 sub s6,s6,s2 + 80003632: 9bca add s7,s7,s2 + 80003634: fa0b12e3 bnez s6,800035d8 <__sfvwrite_r+0x1dc> + 80003638: 0084bb03 ld s6,8(s1) + 8000363c: 87a6 mv a5,s1 + 8000363e: 04c1 addi s1,s1,16 + 80003640: fe0b0ce3 beqz s6,80003638 <__sfvwrite_r+0x23c> + 80003644: 0007bb83 ld s7,0(a5) + 80003648: 865a mv a2,s6 + 8000364a: 45a9 li a1,10 + 8000364c: 855e mv a0,s7 + 8000364e: 355000ef jal 800041a2 + 80003652: c165 beqz a0,80003732 <__sfvwrite_r+0x336> + 80003654: 0505 addi a0,a0,1 + 80003656: 41750c3b subw s8,a0,s7 + 8000365a: b741 j 800035da <__sfvwrite_r+0x1de> + 8000365c: 6c18 ld a4,24(s0) + 8000365e: 04f76363 bltu a4,a5,800036a4 <__sfvwrite_r+0x2a8> + 80003662: 5018 lw a4,32(s0) + 80003664: 04e9e063 bltu s3,a4,800036a4 <__sfvwrite_r+0x2a8> + 80003668: 86ce mv a3,s3 + 8000366a: 013c7363 bgeu s8,s3,80003670 <__sfvwrite_r+0x274> + 8000366e: 86e2 mv a3,s8 + 80003670: 02e6c6bb divw a3,a3,a4 + 80003674: 603c ld a5,64(s0) + 80003676: 780c ld a1,48(s0) + 80003678: 865a mv a2,s6 + 8000367a: 8552 mv a0,s4 + 8000367c: 02e686bb mulw a3,a3,a4 + 80003680: 9782 jalr a5 + 80003682: f2a052e3 blez a0,800035a6 <__sfvwrite_r+0x1aa> + 80003686: 892a mv s2,a0 + 80003688: 010ab783 ld a5,16(s5) + 8000368c: 412989b3 sub s3,s3,s2 + 80003690: 412787b3 sub a5,a5,s2 + 80003694: 00fab823 sd a5,16(s5) + 80003698: c3c5 beqz a5,80003738 <__sfvwrite_r+0x33c> + 8000369a: 01041683 lh a3,16(s0) + 8000369e: 601c ld a5,0(s0) + 800036a0: 9b4a add s6,s6,s2 + 800036a2: b50d j 800034c4 <__sfvwrite_r+0xc8> + 800036a4: 0129f363 bgeu s3,s2,800036aa <__sfvwrite_r+0x2ae> + 800036a8: 894e mv s2,s3 + 800036aa: 853e mv a0,a5 + 800036ac: 864a mv a2,s2 + 800036ae: 85da mv a1,s6 + 800036b0: 43c000ef jal 80003aec + 800036b4: 601c ld a5,0(s0) + 800036b6: 4458 lw a4,12(s0) + 800036b8: 97ca add a5,a5,s2 + 800036ba: 4127073b subw a4,a4,s2 + 800036be: e01c sd a5,0(s0) + 800036c0: c458 sw a4,12(s0) + 800036c2: f379 bnez a4,80003688 <__sfvwrite_r+0x28c> + 800036c4: 85a2 mv a1,s0 + 800036c6: 8552 mv a0,s4 + 800036c8: b75ff0ef jal 8000323c <_fflush_r> + 800036cc: dd55 beqz a0,80003688 <__sfvwrite_r+0x28c> + 800036ce: bde1 j 800035a6 <__sfvwrite_r+0x1aa> + 800036d0: 864a mv a2,s2 + 800036d2: 85de mv a1,s7 + 800036d4: 418000ef jal 80003aec + 800036d8: 4458 lw a4,12(s0) + 800036da: 601c ld a5,0(s0) + 800036dc: 89ca mv s3,s2 + 800036de: 4127073b subw a4,a4,s2 + 800036e2: 97ca add a5,a5,s2 + 800036e4: c458 sw a4,12(s0) + 800036e6: e01c sd a5,0(s0) + 800036e8: b735 j 80003614 <__sfvwrite_r+0x218> + 800036ea: 85de mv a1,s7 + 800036ec: 864e mv a2,s3 + 800036ee: 3fe000ef jal 80003aec + 800036f2: 601c ld a5,0(s0) + 800036f4: 85a2 mv a1,s0 + 800036f6: 8552 mv a0,s4 + 800036f8: 97ce add a5,a5,s3 + 800036fa: e01c sd a5,0(s0) + 800036fc: b41ff0ef jal 8000323c <_fflush_r> + 80003700: ea0513e3 bnez a0,800035a6 <__sfvwrite_r+0x1aa> + 80003704: 894e mv s2,s3 + 80003706: b739 j 80003614 <__sfvwrite_r+0x218> + 80003708: 864a mv a2,s2 + 8000370a: 8552 mv a0,s4 + 8000370c: 61a030ef jal 80006d26 <_realloc_r> + 80003710: 87aa mv a5,a0 + 80003712: e20516e3 bnez a0,8000353e <__sfvwrite_r+0x142> + 80003716: 6c0c ld a1,24(s0) + 80003718: 8552 mv a0,s4 + 8000371a: 547000ef jal 80004460 <_free_r> + 8000371e: 01045783 lhu a5,16(s0) + 80003722: 4731 li a4,12 + 80003724: 6be2 ld s7,24(sp) + 80003726: 6c42 ld s8,16(sp) + 80003728: 00ea2023 sw a4,0(s4) + 8000372c: f7f7f793 andi a5,a5,-129 + 80003730: bdbd j 800035ae <__sfvwrite_r+0x1b2> + 80003732: 001b0c1b addiw s8,s6,1 # ffffffff80000001 <_stack_top+0xfffffffefff00001> + 80003736: b555 j 800035da <__sfvwrite_r+0x1de> + 80003738: 6be2 ld s7,24(sp) + 8000373a: 6c42 ld s8,16(sp) + 8000373c: bb1d j 80003472 <__sfvwrite_r+0x76> + 8000373e: 01041783 lh a5,16(s0) + 80003742: b5b5 j 800035ae <__sfvwrite_r+0x1b2> + 80003744: 47b1 li a5,12 + 80003746: 00fa2023 sw a5,0(s4) + 8000374a: 6be2 ld s7,24(sp) + 8000374c: 01041783 lh a5,16(s0) + 80003750: 6c42 ld s8,16(sp) + 80003752: bdb1 j 800035ae <__sfvwrite_r+0x1b2> -000000008000306c <_fwalk_sglue>: - 8000306c: 715d addi sp,sp,-80 - 8000306e: f84a sd s2,48(sp) - 80003070: f44e sd s3,40(sp) - 80003072: f052 sd s4,32(sp) - 80003074: ec56 sd s5,24(sp) - 80003076: e85a sd s6,16(sp) - 80003078: e45e sd s7,8(sp) - 8000307a: e062 sd s8,0(sp) - 8000307c: e486 sd ra,72(sp) - 8000307e: e0a2 sd s0,64(sp) - 80003080: fc26 sd s1,56(sp) - 80003082: 89b2 mv s3,a2 - 80003084: 8aaa mv s5,a0 - 80003086: 8b2e mv s6,a1 - 80003088: 4901 li s2,0 - 8000308a: 0b000b93 li s7,176 - 8000308e: 4c05 li s8,1 - 80003090: 5a7d li s4,-1 - 80003092: 0089a483 lw s1,8(s3) - 80003096: 02905963 blez s1,800030c8 <_fwalk_sglue+0x5c> - 8000309a: 037484b3 mul s1,s1,s7 - 8000309e: 0109b403 ld s0,16(s3) - 800030a2: 94a2 add s1,s1,s0 - 800030a4: 01045783 lhu a5,16(s0) - 800030a8: 00fc7c63 bgeu s8,a5,800030c0 <_fwalk_sglue+0x54> - 800030ac: 01241783 lh a5,18(s0) - 800030b0: 85a2 mv a1,s0 - 800030b2: 8556 mv a0,s5 - 800030b4: 01478663 beq a5,s4,800030c0 <_fwalk_sglue+0x54> - 800030b8: 9b02 jalr s6 - 800030ba: 01256933 or s2,a0,s2 - 800030be: 2901 sext.w s2,s2 - 800030c0: 0b040413 addi s0,s0,176 - 800030c4: fe9410e3 bne s0,s1,800030a4 <_fwalk_sglue+0x38> - 800030c8: 0009b983 ld s3,0(s3) - 800030cc: fc0993e3 bnez s3,80003092 <_fwalk_sglue+0x26> - 800030d0: 60a6 ld ra,72(sp) - 800030d2: 6406 ld s0,64(sp) - 800030d4: 74e2 ld s1,56(sp) - 800030d6: 79a2 ld s3,40(sp) - 800030d8: 7a02 ld s4,32(sp) - 800030da: 6ae2 ld s5,24(sp) - 800030dc: 6b42 ld s6,16(sp) - 800030de: 6ba2 ld s7,8(sp) - 800030e0: 6c02 ld s8,0(sp) - 800030e2: 854a mv a0,s2 - 800030e4: 7942 ld s2,48(sp) - 800030e6: 6161 addi sp,sp,80 - 800030e8: 8082 ret +0000000080003754 <_fwalk_sglue>: + 80003754: 715d addi sp,sp,-80 + 80003756: f84a sd s2,48(sp) + 80003758: f44e sd s3,40(sp) + 8000375a: f052 sd s4,32(sp) + 8000375c: ec56 sd s5,24(sp) + 8000375e: e85a sd s6,16(sp) + 80003760: e45e sd s7,8(sp) + 80003762: e062 sd s8,0(sp) + 80003764: e486 sd ra,72(sp) + 80003766: e0a2 sd s0,64(sp) + 80003768: fc26 sd s1,56(sp) + 8000376a: 89b2 mv s3,a2 + 8000376c: 8aaa mv s5,a0 + 8000376e: 8b2e mv s6,a1 + 80003770: 4901 li s2,0 + 80003772: 0b000b93 li s7,176 + 80003776: 4c05 li s8,1 + 80003778: 5a7d li s4,-1 + 8000377a: 0089a483 lw s1,8(s3) + 8000377e: 02905963 blez s1,800037b0 <_fwalk_sglue+0x5c> + 80003782: 037484b3 mul s1,s1,s7 + 80003786: 0109b403 ld s0,16(s3) + 8000378a: 94a2 add s1,s1,s0 + 8000378c: 01045783 lhu a5,16(s0) + 80003790: 00fc7c63 bgeu s8,a5,800037a8 <_fwalk_sglue+0x54> + 80003794: 01241783 lh a5,18(s0) + 80003798: 85a2 mv a1,s0 + 8000379a: 8556 mv a0,s5 + 8000379c: 01478663 beq a5,s4,800037a8 <_fwalk_sglue+0x54> + 800037a0: 9b02 jalr s6 + 800037a2: 01256933 or s2,a0,s2 + 800037a6: 2901 sext.w s2,s2 + 800037a8: 0b040413 addi s0,s0,176 + 800037ac: fe9410e3 bne s0,s1,8000378c <_fwalk_sglue+0x38> + 800037b0: 0009b983 ld s3,0(s3) + 800037b4: fc0993e3 bnez s3,8000377a <_fwalk_sglue+0x26> + 800037b8: 60a6 ld ra,72(sp) + 800037ba: 6406 ld s0,64(sp) + 800037bc: 74e2 ld s1,56(sp) + 800037be: 79a2 ld s3,40(sp) + 800037c0: 7a02 ld s4,32(sp) + 800037c2: 6ae2 ld s5,24(sp) + 800037c4: 6b42 ld s6,16(sp) + 800037c6: 6ba2 ld s7,8(sp) + 800037c8: 6c02 ld s8,0(sp) + 800037ca: 854a mv a0,s2 + 800037cc: 7942 ld s2,48(sp) + 800037ce: 6161 addi sp,sp,80 + 800037d0: 8082 ret -00000000800030ea <__sread>: - 800030ea: 1141 addi sp,sp,-16 - 800030ec: e022 sd s0,0(sp) - 800030ee: 842e mv s0,a1 - 800030f0: 01259583 lh a1,18(a1) - 800030f4: e406 sd ra,8(sp) - 800030f6: 2a2000ef jal 80003398 <_read_r> - 800030fa: 00054963 bltz a0,8000310c <__sread+0x22> - 800030fe: 685c ld a5,144(s0) - 80003100: 60a2 ld ra,8(sp) - 80003102: 97aa add a5,a5,a0 - 80003104: e85c sd a5,144(s0) - 80003106: 6402 ld s0,0(sp) - 80003108: 0141 addi sp,sp,16 - 8000310a: 8082 ret - 8000310c: 01045783 lhu a5,16(s0) - 80003110: 777d lui a4,0xfffff - 80003112: 177d addi a4,a4,-1 # ffffffffffffefff <_stack_top+0xffffffff7fefefff> - 80003114: 8ff9 and a5,a5,a4 - 80003116: 60a2 ld ra,8(sp) - 80003118: 00f41823 sh a5,16(s0) - 8000311c: 6402 ld s0,0(sp) - 8000311e: 0141 addi sp,sp,16 - 80003120: 8082 ret +00000000800037d2 <__sread>: + 800037d2: 1141 addi sp,sp,-16 + 800037d4: e022 sd s0,0(sp) + 800037d6: 842e mv s0,a1 + 800037d8: 01259583 lh a1,18(a1) + 800037dc: e406 sd ra,8(sp) + 800037de: 2a2000ef jal 80003a80 <_read_r> + 800037e2: 00054963 bltz a0,800037f4 <__sread+0x22> + 800037e6: 685c ld a5,144(s0) + 800037e8: 60a2 ld ra,8(sp) + 800037ea: 97aa add a5,a5,a0 + 800037ec: e85c sd a5,144(s0) + 800037ee: 6402 ld s0,0(sp) + 800037f0: 0141 addi sp,sp,16 + 800037f2: 8082 ret + 800037f4: 01045783 lhu a5,16(s0) + 800037f8: 777d lui a4,0xfffff + 800037fa: 177d addi a4,a4,-1 # ffffffffffffefff <_stack_top+0xffffffff7fefefff> + 800037fc: 8ff9 and a5,a5,a4 + 800037fe: 60a2 ld ra,8(sp) + 80003800: 00f41823 sh a5,16(s0) + 80003804: 6402 ld s0,0(sp) + 80003806: 0141 addi sp,sp,16 + 80003808: 8082 ret -0000000080003122 <__swrite>: - 80003122: 01059783 lh a5,16(a1) - 80003126: 7179 addi sp,sp,-48 - 80003128: 8336 mv t1,a3 - 8000312a: f406 sd ra,40(sp) - 8000312c: 1007f693 andi a3,a5,256 - 80003130: 872e mv a4,a1 - 80003132: 88b2 mv a7,a2 - 80003134: 882a mv a6,a0 - 80003136: ee91 bnez a3,80003152 <__swrite+0x30> - 80003138: 76fd lui a3,0xfffff - 8000313a: 16fd addi a3,a3,-1 # ffffffffffffefff <_stack_top+0xffffffff7fefefff> - 8000313c: 70a2 ld ra,40(sp) - 8000313e: 8ff5 and a5,a5,a3 - 80003140: 01271583 lh a1,18(a4) - 80003144: 00f71823 sh a5,16(a4) - 80003148: 869a mv a3,t1 - 8000314a: 8646 mv a2,a7 - 8000314c: 8542 mv a0,a6 - 8000314e: 6145 addi sp,sp,48 - 80003150: acbd j 800033ce <_write_r> - 80003152: 01259583 lh a1,18(a1) - 80003156: e832 sd a2,16(sp) - 80003158: 4689 li a3,2 - 8000315a: 4601 li a2,0 - 8000315c: ec1a sd t1,24(sp) - 8000315e: e03a sd a4,0(sp) - 80003160: e42a sd a0,8(sp) - 80003162: 200000ef jal 80003362 <_lseek_r> - 80003166: 6702 ld a4,0(sp) - 80003168: 6362 ld t1,24(sp) - 8000316a: 68c2 ld a7,16(sp) - 8000316c: 01071783 lh a5,16(a4) - 80003170: 6822 ld a6,8(sp) - 80003172: b7d9 j 80003138 <__swrite+0x16> +000000008000380a <__swrite>: + 8000380a: 01059783 lh a5,16(a1) + 8000380e: 7179 addi sp,sp,-48 + 80003810: 8336 mv t1,a3 + 80003812: f406 sd ra,40(sp) + 80003814: 1007f693 andi a3,a5,256 + 80003818: 872e mv a4,a1 + 8000381a: 88b2 mv a7,a2 + 8000381c: 882a mv a6,a0 + 8000381e: ee91 bnez a3,8000383a <__swrite+0x30> + 80003820: 76fd lui a3,0xfffff + 80003822: 16fd addi a3,a3,-1 # ffffffffffffefff <_stack_top+0xffffffff7fefefff> + 80003824: 70a2 ld ra,40(sp) + 80003826: 8ff5 and a5,a5,a3 + 80003828: 01271583 lh a1,18(a4) + 8000382c: 00f71823 sh a5,16(a4) + 80003830: 869a mv a3,t1 + 80003832: 8646 mv a2,a7 + 80003834: 8542 mv a0,a6 + 80003836: 6145 addi sp,sp,48 + 80003838: acbd j 80003ab6 <_write_r> + 8000383a: 01259583 lh a1,18(a1) + 8000383e: e832 sd a2,16(sp) + 80003840: 4689 li a3,2 + 80003842: 4601 li a2,0 + 80003844: ec1a sd t1,24(sp) + 80003846: e03a sd a4,0(sp) + 80003848: e42a sd a0,8(sp) + 8000384a: 200000ef jal 80003a4a <_lseek_r> + 8000384e: 6702 ld a4,0(sp) + 80003850: 6362 ld t1,24(sp) + 80003852: 68c2 ld a7,16(sp) + 80003854: 01071783 lh a5,16(a4) + 80003858: 6822 ld a6,8(sp) + 8000385a: b7d9 j 80003820 <__swrite+0x16> -0000000080003174 <__sseek>: - 80003174: 1141 addi sp,sp,-16 - 80003176: e022 sd s0,0(sp) - 80003178: 842e mv s0,a1 - 8000317a: 01259583 lh a1,18(a1) - 8000317e: e406 sd ra,8(sp) - 80003180: 1e2000ef jal 80003362 <_lseek_r> - 80003184: 577d li a4,-1 - 80003186: 01041783 lh a5,16(s0) - 8000318a: 00e50b63 beq a0,a4,800031a0 <__sseek+0x2c> - 8000318e: 6705 lui a4,0x1 - 80003190: 8fd9 or a5,a5,a4 - 80003192: 60a2 ld ra,8(sp) - 80003194: e848 sd a0,144(s0) - 80003196: 00f41823 sh a5,16(s0) - 8000319a: 6402 ld s0,0(sp) - 8000319c: 0141 addi sp,sp,16 - 8000319e: 8082 ret - 800031a0: 777d lui a4,0xfffff - 800031a2: 972a add a4,a4,a0 - 800031a4: 8ff9 and a5,a5,a4 - 800031a6: 60a2 ld ra,8(sp) - 800031a8: 00f41823 sh a5,16(s0) - 800031ac: 6402 ld s0,0(sp) - 800031ae: 0141 addi sp,sp,16 - 800031b0: 8082 ret +000000008000385c <__sseek>: + 8000385c: 1141 addi sp,sp,-16 + 8000385e: e022 sd s0,0(sp) + 80003860: 842e mv s0,a1 + 80003862: 01259583 lh a1,18(a1) + 80003866: e406 sd ra,8(sp) + 80003868: 1e2000ef jal 80003a4a <_lseek_r> + 8000386c: 577d li a4,-1 + 8000386e: 01041783 lh a5,16(s0) + 80003872: 00e50b63 beq a0,a4,80003888 <__sseek+0x2c> + 80003876: 6705 lui a4,0x1 + 80003878: 8fd9 or a5,a5,a4 + 8000387a: 60a2 ld ra,8(sp) + 8000387c: e848 sd a0,144(s0) + 8000387e: 00f41823 sh a5,16(s0) + 80003882: 6402 ld s0,0(sp) + 80003884: 0141 addi sp,sp,16 + 80003886: 8082 ret + 80003888: 777d lui a4,0xfffff + 8000388a: 972a add a4,a4,a0 + 8000388c: 8ff9 and a5,a5,a4 + 8000388e: 60a2 ld ra,8(sp) + 80003890: 00f41823 sh a5,16(s0) + 80003894: 6402 ld s0,0(sp) + 80003896: 0141 addi sp,sp,16 + 80003898: 8082 ret -00000000800031b2 <__sclose>: - 800031b2: 01259583 lh a1,18(a1) - 800031b6: aab5 j 80003332 <_close_r> +000000008000389a <__sclose>: + 8000389a: 01259583 lh a1,18(a1) + 8000389e: aab5 j 80003a1a <_close_r> -00000000800031b8 <__swsetup_r>: - 800031b8: 00007717 auipc a4,0x7 - 800031bc: 9a073703 ld a4,-1632(a4) # 80009b58 <_impure_ptr> - 800031c0: 1101 addi sp,sp,-32 - 800031c2: ec06 sd ra,24(sp) - 800031c4: 862a mv a2,a0 - 800031c6: 87ae mv a5,a1 - 800031c8: c319 beqz a4,800031ce <__swsetup_r+0x16> - 800031ca: 6734 ld a3,72(a4) - 800031cc: cedd beqz a3,8000328a <__swsetup_r+0xd2> - 800031ce: 01079703 lh a4,16(a5) - 800031d2: 00877693 andi a3,a4,8 - 800031d6: c29d beqz a3,800031fc <__swsetup_r+0x44> - 800031d8: 6f94 ld a3,24(a5) - 800031da: ce8d beqz a3,80003214 <__swsetup_r+0x5c> - 800031dc: 01079703 lh a4,16(a5) - 800031e0: 00177613 andi a2,a4,1 - 800031e4: ea39 bnez a2,8000323a <__swsetup_r+0x82> - 800031e6: 00277613 andi a2,a4,2 - 800031ea: 4581 li a1,0 - 800031ec: e211 bnez a2,800031f0 <__swsetup_r+0x38> - 800031ee: 538c lw a1,32(a5) - 800031f0: c7cc sw a1,12(a5) - 800031f2: cab9 beqz a3,80003248 <__swsetup_r+0x90> - 800031f4: 4501 li a0,0 - 800031f6: 60e2 ld ra,24(sp) - 800031f8: 6105 addi sp,sp,32 - 800031fa: 8082 ret - 800031fc: 01077693 andi a3,a4,16 - 80003200: cec9 beqz a3,8000329a <__swsetup_r+0xe2> - 80003202: 00477693 andi a3,a4,4 - 80003206: eab1 bnez a3,8000325a <__swsetup_r+0xa2> - 80003208: 6f94 ld a3,24(a5) - 8000320a: 00876713 ori a4,a4,8 - 8000320e: 00e79823 sh a4,16(a5) - 80003212: f6e9 bnez a3,800031dc <__swsetup_r+0x24> - 80003214: 6b98 ld a4,16(a5) - 80003216: 20000593 li a1,512 - 8000321a: 28077713 andi a4,a4,640 - 8000321e: fab70fe3 beq a4,a1,800031dc <__swsetup_r+0x24> - 80003222: 8532 mv a0,a2 - 80003224: 85be mv a1,a5 - 80003226: e03e sd a5,0(sp) - 80003228: 131030ef jal 80006b58 <__smakebuf_r> - 8000322c: 6782 ld a5,0(sp) - 8000322e: 01079703 lh a4,16(a5) - 80003232: 6f94 ld a3,24(a5) - 80003234: 00177613 andi a2,a4,1 - 80003238: d65d beqz a2,800031e6 <__swsetup_r+0x2e> - 8000323a: 5390 lw a2,32(a5) - 8000323c: 0007a623 sw zero,12(a5) - 80003240: 40c0063b negw a2,a2 - 80003244: d790 sw a2,40(a5) - 80003246: f6dd bnez a3,800031f4 <__swsetup_r+0x3c> - 80003248: 08077693 andi a3,a4,128 - 8000324c: d6c5 beqz a3,800031f4 <__swsetup_r+0x3c> - 8000324e: 04076713 ori a4,a4,64 - 80003252: 00e79823 sh a4,16(a5) - 80003256: 557d li a0,-1 - 80003258: bf79 j 800031f6 <__swsetup_r+0x3e> - 8000325a: 6fac ld a1,88(a5) - 8000325c: c185 beqz a1,8000327c <__swsetup_r+0xc4> - 8000325e: 07478693 addi a3,a5,116 - 80003262: 00d58b63 beq a1,a3,80003278 <__swsetup_r+0xc0> - 80003266: 8532 mv a0,a2 - 80003268: e43e sd a5,8(sp) - 8000326a: e032 sd a2,0(sp) - 8000326c: 30d000ef jal 80003d78 <_free_r> - 80003270: 67a2 ld a5,8(sp) - 80003272: 6602 ld a2,0(sp) - 80003274: 01079703 lh a4,16(a5) - 80003278: 0407bc23 sd zero,88(a5) - 8000327c: 6f94 ld a3,24(a5) - 8000327e: fdb77713 andi a4,a4,-37 - 80003282: 0007a423 sw zero,8(a5) - 80003286: e394 sd a3,0(a5) - 80003288: b749 j 8000320a <__swsetup_r+0x52> - 8000328a: e02a sd a0,0(sp) - 8000328c: 853a mv a0,a4 - 8000328e: e42e sd a1,8(sp) - 80003290: a69ff0ef jal 80002cf8 <__sinit> - 80003294: 67a2 ld a5,8(sp) - 80003296: 6602 ld a2,0(sp) - 80003298: bf1d j 800031ce <__swsetup_r+0x16> - 8000329a: 46a5 li a3,9 - 8000329c: 04076713 ori a4,a4,64 - 800032a0: c214 sw a3,0(a2) - 800032a2: 00e79823 sh a4,16(a5) - 800032a6: 557d li a0,-1 - 800032a8: b7b9 j 800031f6 <__swsetup_r+0x3e> +00000000800038a0 <__swsetup_r>: + 800038a0: 00007717 auipc a4,0x7 + 800038a4: c7073703 ld a4,-912(a4) # 8000a510 <_impure_ptr> + 800038a8: 1101 addi sp,sp,-32 + 800038aa: ec06 sd ra,24(sp) + 800038ac: 862a mv a2,a0 + 800038ae: 87ae mv a5,a1 + 800038b0: c319 beqz a4,800038b6 <__swsetup_r+0x16> + 800038b2: 6734 ld a3,72(a4) + 800038b4: cedd beqz a3,80003972 <__swsetup_r+0xd2> + 800038b6: 01079703 lh a4,16(a5) + 800038ba: 00877693 andi a3,a4,8 + 800038be: c29d beqz a3,800038e4 <__swsetup_r+0x44> + 800038c0: 6f94 ld a3,24(a5) + 800038c2: ce8d beqz a3,800038fc <__swsetup_r+0x5c> + 800038c4: 01079703 lh a4,16(a5) + 800038c8: 00177613 andi a2,a4,1 + 800038cc: ea39 bnez a2,80003922 <__swsetup_r+0x82> + 800038ce: 00277613 andi a2,a4,2 + 800038d2: 4581 li a1,0 + 800038d4: e211 bnez a2,800038d8 <__swsetup_r+0x38> + 800038d6: 538c lw a1,32(a5) + 800038d8: c7cc sw a1,12(a5) + 800038da: cab9 beqz a3,80003930 <__swsetup_r+0x90> + 800038dc: 4501 li a0,0 + 800038de: 60e2 ld ra,24(sp) + 800038e0: 6105 addi sp,sp,32 + 800038e2: 8082 ret + 800038e4: 01077693 andi a3,a4,16 + 800038e8: cec9 beqz a3,80003982 <__swsetup_r+0xe2> + 800038ea: 00477693 andi a3,a4,4 + 800038ee: eab1 bnez a3,80003942 <__swsetup_r+0xa2> + 800038f0: 6f94 ld a3,24(a5) + 800038f2: 00876713 ori a4,a4,8 + 800038f6: 00e79823 sh a4,16(a5) + 800038fa: f6e9 bnez a3,800038c4 <__swsetup_r+0x24> + 800038fc: 6b98 ld a4,16(a5) + 800038fe: 20000593 li a1,512 + 80003902: 28077713 andi a4,a4,640 + 80003906: fab70fe3 beq a4,a1,800038c4 <__swsetup_r+0x24> + 8000390a: 8532 mv a0,a2 + 8000390c: 85be mv a1,a5 + 8000390e: e03e sd a5,0(sp) + 80003910: 131030ef jal 80007240 <__smakebuf_r> + 80003914: 6782 ld a5,0(sp) + 80003916: 01079703 lh a4,16(a5) + 8000391a: 6f94 ld a3,24(a5) + 8000391c: 00177613 andi a2,a4,1 + 80003920: d65d beqz a2,800038ce <__swsetup_r+0x2e> + 80003922: 5390 lw a2,32(a5) + 80003924: 0007a623 sw zero,12(a5) + 80003928: 40c0063b negw a2,a2 + 8000392c: d790 sw a2,40(a5) + 8000392e: f6dd bnez a3,800038dc <__swsetup_r+0x3c> + 80003930: 08077693 andi a3,a4,128 + 80003934: d6c5 beqz a3,800038dc <__swsetup_r+0x3c> + 80003936: 04076713 ori a4,a4,64 + 8000393a: 00e79823 sh a4,16(a5) + 8000393e: 557d li a0,-1 + 80003940: bf79 j 800038de <__swsetup_r+0x3e> + 80003942: 6fac ld a1,88(a5) + 80003944: c185 beqz a1,80003964 <__swsetup_r+0xc4> + 80003946: 07478693 addi a3,a5,116 + 8000394a: 00d58b63 beq a1,a3,80003960 <__swsetup_r+0xc0> + 8000394e: 8532 mv a0,a2 + 80003950: e43e sd a5,8(sp) + 80003952: e032 sd a2,0(sp) + 80003954: 30d000ef jal 80004460 <_free_r> + 80003958: 67a2 ld a5,8(sp) + 8000395a: 6602 ld a2,0(sp) + 8000395c: 01079703 lh a4,16(a5) + 80003960: 0407bc23 sd zero,88(a5) + 80003964: 6f94 ld a3,24(a5) + 80003966: fdb77713 andi a4,a4,-37 + 8000396a: 0007a423 sw zero,8(a5) + 8000396e: e394 sd a3,0(a5) + 80003970: b749 j 800038f2 <__swsetup_r+0x52> + 80003972: e02a sd a0,0(sp) + 80003974: 853a mv a0,a4 + 80003976: e42e sd a1,8(sp) + 80003978: a69ff0ef jal 800033e0 <__sinit> + 8000397c: 67a2 ld a5,8(sp) + 8000397e: 6602 ld a2,0(sp) + 80003980: bf1d j 800038b6 <__swsetup_r+0x16> + 80003982: 46a5 li a3,9 + 80003984: 04076713 ori a4,a4,64 + 80003988: c214 sw a3,0(a2) + 8000398a: 00e79823 sh a4,16(a5) + 8000398e: 557d li a0,-1 + 80003990: b7b9 j 800038de <__swsetup_r+0x3e> -00000000800032aa : - 800032aa: 431d li t1,7 - 800032ac: 872a mv a4,a0 - 800032ae: 06c37063 bgeu t1,a2,8000330e - 800032b2: 7f7f8737 lui a4,0x7f7f8 - 800032b6: f7f70713 addi a4,a4,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> - 800032ba: feff07b7 lui a5,0xfeff0 - 800032be: 02071893 slli a7,a4,0x20 - 800032c2: eff78793 addi a5,a5,-257 # fffffffffefefeff <_stack_top+0xffffffff7eeefeff> - 800032c6: 98ba add a7,a7,a4 - 800032c8: 02079e13 slli t3,a5,0x20 - 800032cc: fff8c893 not a7,a7 - 800032d0: 9e3e add t3,t3,a5 - 800032d2: 872a mv a4,a0 - 800032d4: 6194 ld a3,0(a1) - 800032d6: 01c687b3 add a5,a3,t3 - 800032da: fff6c813 not a6,a3 - 800032de: 0107f7b3 and a5,a5,a6 - 800032e2: 0117f7b3 and a5,a5,a7 - 800032e6: e785 bnez a5,8000330e - 800032e8: 1661 addi a2,a2,-8 - 800032ea: e314 sd a3,0(a4) - 800032ec: 0721 addi a4,a4,8 - 800032ee: 05a1 addi a1,a1,8 - 800032f0: fec362e3 bltu t1,a2,800032d4 - 800032f4: 0585 addi a1,a1,1 - 800032f6: 00170793 addi a5,a4,1 - 800032fa: ce11 beqz a2,80003316 - 800032fc: fff5c683 lbu a3,-1(a1) - 80003300: fff60813 addi a6,a2,-1 - 80003304: fed78fa3 sb a3,-1(a5) - 80003308: ca81 beqz a3,80003318 - 8000330a: 873e mv a4,a5 - 8000330c: 8642 mv a2,a6 - 8000330e: 0585 addi a1,a1,1 - 80003310: 00170793 addi a5,a4,1 - 80003314: f665 bnez a2,800032fc - 80003316: 8082 ret - 80003318: 9732 add a4,a4,a2 - 8000331a: 00080863 beqz a6,8000332a - 8000331e: 0785 addi a5,a5,1 - 80003320: fe078fa3 sb zero,-1(a5) - 80003324: fee79de3 bne a5,a4,8000331e - 80003328: 8082 ret - 8000332a: 8082 ret +0000000080003992 : + 80003992: 431d li t1,7 + 80003994: 872a mv a4,a0 + 80003996: 06c37063 bgeu t1,a2,800039f6 + 8000399a: 7f7f8737 lui a4,0x7f7f8 + 8000399e: f7f70713 addi a4,a4,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> + 800039a2: feff07b7 lui a5,0xfeff0 + 800039a6: 02071893 slli a7,a4,0x20 + 800039aa: eff78793 addi a5,a5,-257 # fffffffffefefeff <_stack_top+0xffffffff7eeefeff> + 800039ae: 98ba add a7,a7,a4 + 800039b0: 02079e13 slli t3,a5,0x20 + 800039b4: fff8c893 not a7,a7 + 800039b8: 9e3e add t3,t3,a5 + 800039ba: 872a mv a4,a0 + 800039bc: 6194 ld a3,0(a1) + 800039be: 01c687b3 add a5,a3,t3 + 800039c2: fff6c813 not a6,a3 + 800039c6: 0107f7b3 and a5,a5,a6 + 800039ca: 0117f7b3 and a5,a5,a7 + 800039ce: e785 bnez a5,800039f6 + 800039d0: 1661 addi a2,a2,-8 + 800039d2: e314 sd a3,0(a4) + 800039d4: 0721 addi a4,a4,8 + 800039d6: 05a1 addi a1,a1,8 + 800039d8: fec362e3 bltu t1,a2,800039bc + 800039dc: 0585 addi a1,a1,1 + 800039de: 00170793 addi a5,a4,1 + 800039e2: ce11 beqz a2,800039fe + 800039e4: fff5c683 lbu a3,-1(a1) + 800039e8: fff60813 addi a6,a2,-1 + 800039ec: fed78fa3 sb a3,-1(a5) + 800039f0: ca81 beqz a3,80003a00 + 800039f2: 873e mv a4,a5 + 800039f4: 8642 mv a2,a6 + 800039f6: 0585 addi a1,a1,1 + 800039f8: 00170793 addi a5,a4,1 + 800039fc: f665 bnez a2,800039e4 + 800039fe: 8082 ret + 80003a00: 9732 add a4,a4,a2 + 80003a02: 00080863 beqz a6,80003a12 + 80003a06: 0785 addi a5,a5,1 + 80003a08: fe078fa3 sb zero,-1(a5) + 80003a0c: fee79de3 bne a5,a4,80003a06 + 80003a10: 8082 ret + 80003a12: 8082 ret -000000008000332c <_localeconv_r>: - 8000332c: 2a018513 addi a0,gp,672 # 8000a5f0 <__global_locale+0x100> - 80003330: 8082 ret +0000000080003a14 <_localeconv_r>: + 80003a14: 2a018513 addi a0,gp,672 # 8000afa8 <__global_locale+0x100> + 80003a18: 8082 ret -0000000080003332 <_close_r>: - 80003332: 1141 addi sp,sp,-16 - 80003334: e022 sd s0,0(sp) - 80003336: 842a mv s0,a0 - 80003338: 852e mv a0,a1 - 8000333a: 3601a423 sw zero,872(gp) # 8000a6b8 - 8000333e: e406 sd ra,8(sp) - 80003340: dcdfc0ef jal 8000010c <_close> - 80003344: 57fd li a5,-1 - 80003346: 00f50663 beq a0,a5,80003352 <_close_r+0x20> - 8000334a: 60a2 ld ra,8(sp) - 8000334c: 6402 ld s0,0(sp) - 8000334e: 0141 addi sp,sp,16 - 80003350: 8082 ret - 80003352: 3681a783 lw a5,872(gp) # 8000a6b8 - 80003356: dbf5 beqz a5,8000334a <_close_r+0x18> - 80003358: 60a2 ld ra,8(sp) - 8000335a: c01c sw a5,0(s0) - 8000335c: 6402 ld s0,0(sp) - 8000335e: 0141 addi sp,sp,16 - 80003360: 8082 ret +0000000080003a1a <_close_r>: + 80003a1a: 1141 addi sp,sp,-16 + 80003a1c: e022 sd s0,0(sp) + 80003a1e: 842a mv s0,a0 + 80003a20: 852e mv a0,a1 + 80003a22: 3801a423 sw zero,904(gp) # 8000b090 + 80003a26: e406 sd ra,8(sp) + 80003a28: ee8fc0ef jal 80000110 <_close> + 80003a2c: 57fd li a5,-1 + 80003a2e: 00f50663 beq a0,a5,80003a3a <_close_r+0x20> + 80003a32: 60a2 ld ra,8(sp) + 80003a34: 6402 ld s0,0(sp) + 80003a36: 0141 addi sp,sp,16 + 80003a38: 8082 ret + 80003a3a: 3881a783 lw a5,904(gp) # 8000b090 + 80003a3e: dbf5 beqz a5,80003a32 <_close_r+0x18> + 80003a40: 60a2 ld ra,8(sp) + 80003a42: c01c sw a5,0(s0) + 80003a44: 6402 ld s0,0(sp) + 80003a46: 0141 addi sp,sp,16 + 80003a48: 8082 ret -0000000080003362 <_lseek_r>: - 80003362: 87ae mv a5,a1 - 80003364: 1141 addi sp,sp,-16 - 80003366: e022 sd s0,0(sp) - 80003368: 85b2 mv a1,a2 - 8000336a: 842a mv s0,a0 - 8000336c: 8636 mv a2,a3 - 8000336e: 853e mv a0,a5 - 80003370: e406 sd ra,8(sp) - 80003372: 3601a423 sw zero,872(gp) # 8000a6b8 - 80003376: dc3fc0ef jal 80000138 <_lseek> - 8000337a: 57fd li a5,-1 - 8000337c: 00f50663 beq a0,a5,80003388 <_lseek_r+0x26> - 80003380: 60a2 ld ra,8(sp) - 80003382: 6402 ld s0,0(sp) - 80003384: 0141 addi sp,sp,16 - 80003386: 8082 ret - 80003388: 3681a783 lw a5,872(gp) # 8000a6b8 - 8000338c: dbf5 beqz a5,80003380 <_lseek_r+0x1e> - 8000338e: 60a2 ld ra,8(sp) - 80003390: c01c sw a5,0(s0) - 80003392: 6402 ld s0,0(sp) - 80003394: 0141 addi sp,sp,16 - 80003396: 8082 ret - -0000000080003398 <_read_r>: - 80003398: 87ae mv a5,a1 - 8000339a: 1141 addi sp,sp,-16 - 8000339c: e022 sd s0,0(sp) - 8000339e: 85b2 mv a1,a2 - 800033a0: 842a mv s0,a0 - 800033a2: 8636 mv a2,a3 - 800033a4: 853e mv a0,a5 - 800033a6: e406 sd ra,8(sp) - 800033a8: 3601a423 sw zero,872(gp) # 8000a6b8 - 800033ac: d21fc0ef jal 800000cc <_read> - 800033b0: 57fd li a5,-1 - 800033b2: 00f50663 beq a0,a5,800033be <_read_r+0x26> - 800033b6: 60a2 ld ra,8(sp) - 800033b8: 6402 ld s0,0(sp) - 800033ba: 0141 addi sp,sp,16 - 800033bc: 8082 ret - 800033be: 3681a783 lw a5,872(gp) # 8000a6b8 - 800033c2: dbf5 beqz a5,800033b6 <_read_r+0x1e> - 800033c4: 60a2 ld ra,8(sp) - 800033c6: c01c sw a5,0(s0) - 800033c8: 6402 ld s0,0(sp) - 800033ca: 0141 addi sp,sp,16 - 800033cc: 8082 ret - -00000000800033ce <_write_r>: - 800033ce: 87ae mv a5,a1 - 800033d0: 1141 addi sp,sp,-16 - 800033d2: e022 sd s0,0(sp) - 800033d4: 85b2 mv a1,a2 - 800033d6: 842a mv s0,a0 - 800033d8: 8636 mv a2,a3 - 800033da: 853e mv a0,a5 - 800033dc: e406 sd ra,8(sp) - 800033de: 3601a423 sw zero,872(gp) # 8000a6b8 - 800033e2: cabfc0ef jal 8000008c <_write> - 800033e6: 57fd li a5,-1 - 800033e8: 00f50663 beq a0,a5,800033f4 <_write_r+0x26> - 800033ec: 60a2 ld ra,8(sp) - 800033ee: 6402 ld s0,0(sp) - 800033f0: 0141 addi sp,sp,16 - 800033f2: 8082 ret - 800033f4: 3681a783 lw a5,872(gp) # 8000a6b8 - 800033f8: dbf5 beqz a5,800033ec <_write_r+0x1e> - 800033fa: 60a2 ld ra,8(sp) - 800033fc: c01c sw a5,0(s0) - 800033fe: 6402 ld s0,0(sp) - 80003400: 0141 addi sp,sp,16 - 80003402: 8082 ret - -0000000080003404 : - 80003404: 02b56763 bltu a0,a1,80003432 - 80003408: 00c58733 add a4,a1,a2 - 8000340c: 0ee56663 bltu a0,a4,800034f8 - 80003410: 47a1 li a5,8 - 80003412: 0ec7e263 bltu a5,a2,800034f6 - 80003416: 00c586b3 add a3,a1,a2 - 8000341a: 87aa mv a5,a0 - 8000341c: 1c060463 beqz a2,800035e4 - 80003420: 0005c703 lbu a4,0(a1) - 80003424: 0585 addi a1,a1,1 - 80003426: 0785 addi a5,a5,1 - 80003428: fee78fa3 sb a4,-1(a5) - 8000342c: fed59ae3 bne a1,a3,80003420 - 80003430: 8082 ret - 80003432: 00c507b3 add a5,a0,a2 - 80003436: fcf5fde3 bgeu a1,a5,80003410 - 8000343a: 471d li a4,7 - 8000343c: 18c77563 bgeu a4,a2,800035c6 - 80003440: 00a5e733 or a4,a1,a0 - 80003444: 8b1d andi a4,a4,7 - 80003446: 18071263 bnez a4,800035ca - 8000344a: 04700293 li t0,71 - 8000344e: 87aa mv a5,a0 - 80003450: 04c2fd63 bgeu t0,a2,800034aa - 80003454: 0005bf83 ld t6,0(a1) - 80003458: 0085bf03 ld t5,8(a1) - 8000345c: 0105be83 ld t4,16(a1) - 80003460: 0185be03 ld t3,24(a1) - 80003464: 0205b303 ld t1,32(a1) - 80003468: 0285b883 ld a7,40(a1) - 8000346c: 0305b803 ld a6,48(a1) - 80003470: 7d94 ld a3,56(a1) - 80003472: 61b8 ld a4,64(a1) - 80003474: fb860613 addi a2,a2,-72 - 80003478: 01f7b023 sd t6,0(a5) - 8000347c: 01e7b423 sd t5,8(a5) - 80003480: 01d7b823 sd t4,16(a5) - 80003484: 01c7bc23 sd t3,24(a5) - 80003488: 0267b023 sd t1,32(a5) - 8000348c: 0317b423 sd a7,40(a5) - 80003490: 0307b823 sd a6,48(a5) - 80003494: ff94 sd a3,56(a5) - 80003496: e3b8 sd a4,64(a5) - 80003498: 04858593 addi a1,a1,72 - 8000349c: 04878793 addi a5,a5,72 - 800034a0: fac2eae3 bltu t0,a2,80003454 - 800034a4: 471d li a4,7 - 800034a6: 02c77a63 bgeu a4,a2,800034da - 800034aa: 00365713 srli a4,a2,0x3 - 800034ae: 00371893 slli a7,a4,0x3 - 800034b2: fff70313 addi t1,a4,-1 - 800034b6: 98be add a7,a7,a5 - 800034b8: 86ae mv a3,a1 - 800034ba: 873e mv a4,a5 - 800034bc: 0006b803 ld a6,0(a3) - 800034c0: 0721 addi a4,a4,8 - 800034c2: 06a1 addi a3,a3,8 - 800034c4: ff073c23 sd a6,-8(a4) - 800034c8: ff171ae3 bne a4,a7,800034bc - 800034cc: 00331713 slli a4,t1,0x3 - 800034d0: 07a1 addi a5,a5,8 - 800034d2: 05a1 addi a1,a1,8 - 800034d4: 97ba add a5,a5,a4 - 800034d6: 95ba add a1,a1,a4 - 800034d8: 8a1d andi a2,a2,7 - 800034da: da39 beqz a2,80003430 - 800034dc: fff60693 addi a3,a2,-1 - 800034e0: 0685 addi a3,a3,1 - 800034e2: 96ae add a3,a3,a1 - 800034e4: 0005c703 lbu a4,0(a1) - 800034e8: 0585 addi a1,a1,1 - 800034ea: 0785 addi a5,a5,1 - 800034ec: fee78fa3 sb a4,-1(a5) - 800034f0: fed59ae3 bne a1,a3,800034e4 - 800034f4: 8082 ret - 800034f6: ae61 j 8000388e - 800034f8: 469d li a3,7 - 800034fa: 00c507b3 add a5,a0,a2 - 800034fe: 0ac6f463 bgeu a3,a2,800035a6 - 80003502: 00e7e6b3 or a3,a5,a4 - 80003506: 8a9d andi a3,a3,7 - 80003508: 883a mv a6,a4 - 8000350a: e6f9 bnez a3,800035d8 - 8000350c: 04700293 li t0,71 - 80003510: 06c2f163 bgeu t0,a2,80003572 - 80003514: fb873f83 ld t6,-72(a4) - 80003518: fc073f03 ld t5,-64(a4) - 8000351c: fc873e83 ld t4,-56(a4) - 80003520: fd073e03 ld t3,-48(a4) - 80003524: fd873303 ld t1,-40(a4) - 80003528: fe073883 ld a7,-32(a4) - 8000352c: fe873803 ld a6,-24(a4) - 80003530: ff073583 ld a1,-16(a4) - 80003534: ff873683 ld a3,-8(a4) - 80003538: fb860613 addi a2,a2,-72 - 8000353c: fbf7bc23 sd t6,-72(a5) - 80003540: fde7b023 sd t5,-64(a5) - 80003544: fdd7b423 sd t4,-56(a5) - 80003548: fdc7b823 sd t3,-48(a5) - 8000354c: fc67bc23 sd t1,-40(a5) - 80003550: ff17b023 sd a7,-32(a5) - 80003554: ff07b423 sd a6,-24(a5) - 80003558: feb7b823 sd a1,-16(a5) - 8000355c: fed7bc23 sd a3,-8(a5) - 80003560: fb870713 addi a4,a4,-72 - 80003564: fb878793 addi a5,a5,-72 - 80003568: fac2e6e3 bltu t0,a2,80003514 - 8000356c: 469d li a3,7 - 8000356e: 02c6fc63 bgeu a3,a2,800035a6 - 80003572: 00365693 srli a3,a2,0x3 - 80003576: 00369893 slli a7,a3,0x3 - 8000357a: fff68313 addi t1,a3,-1 - 8000357e: 411788b3 sub a7,a5,a7 - 80003582: 85ba mv a1,a4 - 80003584: 86be mv a3,a5 - 80003586: ff85b803 ld a6,-8(a1) - 8000358a: 16e1 addi a3,a3,-8 - 8000358c: 15e1 addi a1,a1,-8 - 8000358e: 0106b023 sd a6,0(a3) - 80003592: ff169ae3 bne a3,a7,80003586 - 80003596: 406006b3 neg a3,t1 - 8000359a: 068e slli a3,a3,0x3 - 8000359c: 1761 addi a4,a4,-8 - 8000359e: 17e1 addi a5,a5,-8 - 800035a0: 9736 add a4,a4,a3 - 800035a2: 97b6 add a5,a5,a3 - 800035a4: 8a1d andi a2,a2,7 - 800035a6: fff60693 addi a3,a2,-1 - 800035aa: 14060863 beqz a2,800036fa - 800035ae: fff6c613 not a2,a3 - 800035b2: 963e add a2,a2,a5 - 800035b4: fff74683 lbu a3,-1(a4) - 800035b8: 17fd addi a5,a5,-1 - 800035ba: 177d addi a4,a4,-1 - 800035bc: 00d78023 sb a3,0(a5) - 800035c0: fec79ae3 bne a5,a2,800035b4 - 800035c4: 8082 ret - 800035c6: 87aa mv a5,a0 - 800035c8: bf09 j 800034da - 800035ca: 4741 li a4,16 - 800035cc: 00c76d63 bltu a4,a2,800035e6 - 800035d0: fff60693 addi a3,a2,-1 - 800035d4: 87aa mv a5,a0 - 800035d6: b729 j 800034e0 - 800035d8: 46c1 li a3,16 - 800035da: 08c6eb63 bltu a3,a2,80003670 - 800035de: fff60693 addi a3,a2,-1 - 800035e2: b7f1 j 800035ae - 800035e4: 8082 ret - 800035e6: 0075f713 andi a4,a1,7 - 800035ea: 86aa mv a3,a0 - 800035ec: cf01 beqz a4,80003604 - 800035ee: 0005c603 lbu a2,0(a1) - 800035f2: 0585 addi a1,a1,1 - 800035f4: 0075f713 andi a4,a1,7 - 800035f8: 00c68023 sb a2,0(a3) - 800035fc: 0685 addi a3,a3,1 - 800035fe: fb65 bnez a4,800035ee - 80003600: 40d78633 sub a2,a5,a3 - 80003604: ff860713 addi a4,a2,-8 - 80003608: 00375293 srli t0,a4,0x3 - 8000360c: 00128f93 addi t6,t0,1 - 80003610: 0f8e slli t6,t6,0x3 - 80003612: 9fb6 add t6,t6,a3 - 80003614: 882e mv a6,a1 - 80003616: 87b6 mv a5,a3 - 80003618: 00083703 ld a4,0(a6) - 8000361c: 07a1 addi a5,a5,8 - 8000361e: 0821 addi a6,a6,8 - 80003620: 00875893 srli a7,a4,0x8 - 80003624: 01075f13 srli t5,a4,0x10 - 80003628: 01875e93 srli t4,a4,0x18 - 8000362c: 02075e13 srli t3,a4,0x20 - 80003630: 02875313 srli t1,a4,0x28 - 80003634: fee78c23 sb a4,-8(a5) - 80003638: ff178ca3 sb a7,-7(a5) - 8000363c: 03075893 srli a7,a4,0x30 - 80003640: 9361 srli a4,a4,0x38 - 80003642: ffe78d23 sb t5,-6(a5) - 80003646: ffd78da3 sb t4,-5(a5) - 8000364a: ffc78e23 sb t3,-4(a5) - 8000364e: fe678ea3 sb t1,-3(a5) - 80003652: ff178f23 sb a7,-2(a5) - 80003656: fee78fa3 sb a4,-1(a5) - 8000365a: fbf79fe3 bne a5,t6,80003618 - 8000365e: 00329713 slli a4,t0,0x3 - 80003662: 05a1 addi a1,a1,8 - 80003664: 00868793 addi a5,a3,8 - 80003668: 95ba add a1,a1,a4 - 8000366a: 97ba add a5,a5,a4 - 8000366c: 8a1d andi a2,a2,7 - 8000366e: b5b5 j 800034da - 80003670: 00777693 andi a3,a4,7 - 80003674: ce89 beqz a3,8000368e - 80003676: fff74583 lbu a1,-1(a4) - 8000367a: 177d addi a4,a4,-1 - 8000367c: 00777693 andi a3,a4,7 - 80003680: feb78fa3 sb a1,-1(a5) - 80003684: 17fd addi a5,a5,-1 - 80003686: fae5 bnez a3,80003676 - 80003688: 963a add a2,a2,a4 - 8000368a: 41060633 sub a2,a2,a6 - 8000368e: ff860293 addi t0,a2,-8 - 80003692: 0032d293 srli t0,t0,0x3 - 80003696: fff2cf93 not t6,t0 - 8000369a: 0f8e slli t6,t6,0x3 - 8000369c: 9fbe add t6,t6,a5 - 8000369e: 883a mv a6,a4 - 800036a0: 86be mv a3,a5 - 800036a2: ff883583 ld a1,-8(a6) - 800036a6: 16e1 addi a3,a3,-8 - 800036a8: 1861 addi a6,a6,-8 - 800036aa: 0085d893 srli a7,a1,0x8 - 800036ae: 0105df13 srli t5,a1,0x10 - 800036b2: 0185de93 srli t4,a1,0x18 - 800036b6: 0205de13 srli t3,a1,0x20 - 800036ba: 0285d313 srli t1,a1,0x28 - 800036be: 011680a3 sb a7,1(a3) - 800036c2: 00b68023 sb a1,0(a3) - 800036c6: 0305d893 srli a7,a1,0x30 - 800036ca: 91e1 srli a1,a1,0x38 - 800036cc: 01e68123 sb t5,2(a3) - 800036d0: 01d681a3 sb t4,3(a3) - 800036d4: 01c68223 sb t3,4(a3) - 800036d8: 006682a3 sb t1,5(a3) - 800036dc: 01168323 sb a7,6(a3) - 800036e0: 00b683a3 sb a1,7(a3) - 800036e4: fbf69fe3 bne a3,t6,800036a2 - 800036e8: 405006b3 neg a3,t0 - 800036ec: 068e slli a3,a3,0x3 - 800036ee: 17e1 addi a5,a5,-8 - 800036f0: 1761 addi a4,a4,-8 - 800036f2: 97b6 add a5,a5,a3 - 800036f4: 9736 add a4,a4,a3 - 800036f6: 8a1d andi a2,a2,7 - 800036f8: b57d j 800035a6 - 800036fa: 8082 ret - -00000000800036fc : - 800036fc: 47fd li a5,31 - 800036fe: 86aa mv a3,a0 - 80003700: 10c7f063 bgeu a5,a2,80003800 - 80003704: 0076f713 andi a4,a3,7 - 80003708: cf19 beqz a4,80003726 - 8000370a: 00000297 auipc t0,0x0 - 8000370e: 00271313 slli t1,a4,0x2 - 80003712: 929a add t0,t0,t1 - 80003714: 8306 mv t1,ra - 80003716: 162280e7 jalr 354(t0) # 8000386c - 8000371a: 809a mv ra,t1 - 8000371c: 1761 addi a4,a4,-8 - 8000371e: 963a add a2,a2,a4 - 80003720: 8e99 sub a3,a3,a4 - 80003722: 0cc7ff63 bgeu a5,a2,80003800 - 80003726: e199 bnez a1,8000372c - 80003728: a005 j 80003748 - 8000372a: 0001 nop - 8000372c: 0ff5f593 zext.b a1,a1 - 80003730: 00859293 slli t0,a1,0x8 - 80003734: 0055e5b3 or a1,a1,t0 - 80003738: 01059293 slli t0,a1,0x10 - 8000373c: 0055e5b3 or a1,a1,t0 - 80003740: 02059293 slli t0,a1,0x20 - 80003744: 0055e5b3 or a1,a1,t0 - 80003748: ff867293 andi t0,a2,-8 - 8000374c: 00568333 add t1,a3,t0 - 80003750: 0f82f293 andi t0,t0,248 - 80003754: 02028063 beqz t0,80003774 - 80003758: 405002b3 neg t0,t0 - 8000375c: 10028293 addi t0,t0,256 - 80003760: 405686b3 sub a3,a3,t0 - 80003764: 00000397 auipc t2,0x0 - 80003768: 0012d293 srli t0,t0,0x1 - 8000376c: 9396 add t2,t2,t0 - 8000376e: 01038067 jr 16(t2) # 80003774 - 80003772: 0001 nop - 80003774: 00b6b023 sd a1,0(a3) - 80003778: 00b6b423 sd a1,8(a3) - 8000377c: 00b6b823 sd a1,16(a3) - 80003780: 00b6bc23 sd a1,24(a3) - 80003784: 02b6b023 sd a1,32(a3) - 80003788: 02b6b423 sd a1,40(a3) - 8000378c: 02b6b823 sd a1,48(a3) - 80003790: 02b6bc23 sd a1,56(a3) - 80003794: 04b6b023 sd a1,64(a3) - 80003798: 04b6b423 sd a1,72(a3) - 8000379c: 04b6b823 sd a1,80(a3) - 800037a0: 04b6bc23 sd a1,88(a3) - 800037a4: 06b6b023 sd a1,96(a3) - 800037a8: 06b6b423 sd a1,104(a3) - 800037ac: 06b6b823 sd a1,112(a3) - 800037b0: 06b6bc23 sd a1,120(a3) - 800037b4: 08b6b023 sd a1,128(a3) - 800037b8: 08b6b423 sd a1,136(a3) - 800037bc: 08b6b823 sd a1,144(a3) - 800037c0: 08b6bc23 sd a1,152(a3) - 800037c4: 0ab6b023 sd a1,160(a3) - 800037c8: 0ab6b423 sd a1,168(a3) - 800037cc: 0ab6b823 sd a1,176(a3) - 800037d0: 0ab6bc23 sd a1,184(a3) - 800037d4: 0cb6b023 sd a1,192(a3) - 800037d8: 0cb6b423 sd a1,200(a3) - 800037dc: 0cb6b823 sd a1,208(a3) - 800037e0: 0cb6bc23 sd a1,216(a3) - 800037e4: 0eb6b023 sd a1,224(a3) - 800037e8: 0eb6b423 sd a1,232(a3) - 800037ec: 0eb6b823 sd a1,240(a3) - 800037f0: 0eb6bc23 sd a1,248(a3) - 800037f4: 10068693 addi a3,a3,256 - 800037f8: f666eee3 bltu a3,t1,80003774 - 800037fc: 8a1d andi a2,a2,7 - 800037fe: c659 beqz a2,8000388c - 80003800: 00000297 auipc t0,0x0 - 80003804: 40c78633 sub a2,a5,a2 - 80003808: 060a slli a2,a2,0x2 - 8000380a: 92b2 add t0,t0,a2 - 8000380c: 01028067 jr 16(t0) # 80003810 - 80003810: 00b68f23 sb a1,30(a3) - 80003814: 00b68ea3 sb a1,29(a3) - 80003818: 00b68e23 sb a1,28(a3) - 8000381c: 00b68da3 sb a1,27(a3) - 80003820: 00b68d23 sb a1,26(a3) - 80003824: 00b68ca3 sb a1,25(a3) - 80003828: 00b68c23 sb a1,24(a3) - 8000382c: 00b68ba3 sb a1,23(a3) - 80003830: 00b68b23 sb a1,22(a3) - 80003834: 00b68aa3 sb a1,21(a3) - 80003838: 00b68a23 sb a1,20(a3) - 8000383c: 00b689a3 sb a1,19(a3) - 80003840: 00b68923 sb a1,18(a3) - 80003844: 00b688a3 sb a1,17(a3) - 80003848: 00b68823 sb a1,16(a3) - 8000384c: 00b687a3 sb a1,15(a3) - 80003850: 00b68723 sb a1,14(a3) - 80003854: 00b686a3 sb a1,13(a3) - 80003858: 00b68623 sb a1,12(a3) - 8000385c: 00b685a3 sb a1,11(a3) - 80003860: 00b68523 sb a1,10(a3) - 80003864: 00b684a3 sb a1,9(a3) - 80003868: 00b68423 sb a1,8(a3) - 8000386c: 00b683a3 sb a1,7(a3) - 80003870: 00b68323 sb a1,6(a3) - 80003874: 00b682a3 sb a1,5(a3) - 80003878: 00b68223 sb a1,4(a3) - 8000387c: 00b681a3 sb a1,3(a3) - 80003880: 00b68123 sb a1,2(a3) - 80003884: 00b680a3 sb a1,1(a3) - 80003888: 00b68023 sb a1,0(a3) - 8000388c: 8082 ret - -000000008000388e : - 8000388e: 479d li a5,7 - 80003890: 00c50733 add a4,a0,a2 - 80003894: 08c7f363 bgeu a5,a2,8000391a - 80003898: 00a5c7b3 xor a5,a1,a0 - 8000389c: 8b9d andi a5,a5,7 - 8000389e: e7d5 bnez a5,8000394a - 800038a0: 00757693 andi a3,a0,7 - 800038a4: 87aa mv a5,a0 - 800038a6: 14069a63 bnez a3,800039fa - 800038aa: ff877613 andi a2,a4,-8 - 800038ae: 40f60833 sub a6,a2,a5 - 800038b2: 04000693 li a3,64 - 800038b6: 0106c563 blt a3,a6,800038c0 - 800038ba: 06e7ed63 bltu a5,a4,80003934 - 800038be: 8082 ret - 800038c0: 0005b803 ld a6,0(a1) - 800038c4: 0085b283 ld t0,8(a1) - 800038c8: 0105bf83 ld t6,16(a1) - 800038cc: 0185bf03 ld t5,24(a1) - 800038d0: 0205be83 ld t4,32(a1) - 800038d4: 0285be03 ld t3,40(a1) - 800038d8: 0305b303 ld t1,48(a1) - 800038dc: 0385b883 ld a7,56(a1) - 800038e0: 04858593 addi a1,a1,72 - 800038e4: 0107b023 sd a6,0(a5) - 800038e8: ff85b803 ld a6,-8(a1) - 800038ec: 0057b423 sd t0,8(a5) - 800038f0: 01f7b823 sd t6,16(a5) - 800038f4: 01e7bc23 sd t5,24(a5) - 800038f8: 03d7b023 sd t4,32(a5) - 800038fc: 03c7b423 sd t3,40(a5) - 80003900: 0267b823 sd t1,48(a5) - 80003904: 0317bc23 sd a7,56(a5) - 80003908: 04878793 addi a5,a5,72 - 8000390c: ff07bc23 sd a6,-8(a5) - 80003910: 40f60833 sub a6,a2,a5 - 80003914: fb06c6e3 blt a3,a6,800038c0 - 80003918: b74d j 800038ba - 8000391a: fae572e3 bgeu a0,a4,800038be - 8000391e: 962e add a2,a2,a1 - 80003920: 87aa mv a5,a0 - 80003922: 0005c703 lbu a4,0(a1) - 80003926: 0585 addi a1,a1,1 - 80003928: 0785 addi a5,a5,1 - 8000392a: fee78fa3 sb a4,-1(a5) - 8000392e: fec59ae3 bne a1,a2,80003922 - 80003932: 8082 ret - 80003934: 8f1d sub a4,a4,a5 - 80003936: 972e add a4,a4,a1 - 80003938: 0005c683 lbu a3,0(a1) - 8000393c: 0585 addi a1,a1,1 - 8000393e: 0785 addi a5,a5,1 - 80003940: fed78fa3 sb a3,-1(a5) - 80003944: fee59ae3 bne a1,a4,80003938 - 80003948: 8082 ret - 8000394a: 40a00e33 neg t3,a0 - 8000394e: 007e7e13 andi t3,t3,7 - 80003952: 01c50eb3 add t4,a0,t3 - 80003956: 87aa mv a5,a0 - 80003958: 9e2e add t3,t3,a1 - 8000395a: 01d57a63 bgeu a0,t4,8000396e - 8000395e: 0005c683 lbu a3,0(a1) - 80003962: 0585 addi a1,a1,1 - 80003964: 0785 addi a5,a5,1 - 80003966: fed78fa3 sb a3,-1(a5) - 8000396a: ffc59ae3 bne a1,t3,8000395e - 8000396e: ff877f13 andi t5,a4,-8 - 80003972: 86f2 mv a3,t3 - 80003974: 07eef563 bgeu t4,t5,800039de - 80003978: 87f2 mv a5,t3 - 8000397a: 8376 mv t1,t4 - 8000397c: 0017c603 lbu a2,1(a5) - 80003980: 0007c583 lbu a1,0(a5) - 80003984: 0027c683 lbu a3,2(a5) - 80003988: 0037c883 lbu a7,3(a5) - 8000398c: 0047c803 lbu a6,4(a5) - 80003990: 0622 slli a2,a2,0x8 - 80003992: 8e4d or a2,a2,a1 - 80003994: 06c2 slli a3,a3,0x10 - 80003996: 0057c583 lbu a1,5(a5) - 8000399a: 8ed1 or a3,a3,a2 - 8000399c: 08e2 slli a7,a7,0x18 - 8000399e: 0067c603 lbu a2,6(a5) - 800039a2: 00d8e8b3 or a7,a7,a3 - 800039a6: 1802 slli a6,a6,0x20 - 800039a8: 0077c683 lbu a3,7(a5) - 800039ac: 01186833 or a6,a6,a7 - 800039b0: 15a2 slli a1,a1,0x28 - 800039b2: 0105e5b3 or a1,a1,a6 - 800039b6: 1642 slli a2,a2,0x30 - 800039b8: 8e4d or a2,a2,a1 - 800039ba: 16e2 slli a3,a3,0x38 - 800039bc: 0321 addi t1,t1,8 - 800039be: 8ed1 or a3,a3,a2 - 800039c0: fed33c23 sd a3,-8(t1) - 800039c4: 07a1 addi a5,a5,8 - 800039c6: fbe36be3 bltu t1,t5,8000397c - 800039ca: ffff0793 addi a5,t5,-1 - 800039ce: 41d787b3 sub a5,a5,t4 - 800039d2: 9be1 andi a5,a5,-8 - 800039d4: 0e21 addi t3,t3,8 - 800039d6: 0ea1 addi t4,t4,8 - 800039d8: 00fe06b3 add a3,t3,a5 - 800039dc: 9ebe add t4,t4,a5 - 800039de: eeeef0e3 bgeu t4,a4,800038be - 800039e2: 41d70733 sub a4,a4,t4 - 800039e6: 9736 add a4,a4,a3 - 800039e8: 0006c783 lbu a5,0(a3) - 800039ec: 0685 addi a3,a3,1 - 800039ee: 0e85 addi t4,t4,1 - 800039f0: fefe8fa3 sb a5,-1(t4) - 800039f4: fee69ae3 bne a3,a4,800039e8 - 800039f8: 8082 ret - 800039fa: 4821 li a6,8 - 800039fc: 40d80833 sub a6,a6,a3 - 80003a00: 010507b3 add a5,a0,a6 - 80003a04: 86aa mv a3,a0 - 80003a06: 982e add a6,a6,a1 - 80003a08: 00f57a63 bgeu a0,a5,80003a1c - 80003a0c: 0005c603 lbu a2,0(a1) - 80003a10: 0585 addi a1,a1,1 - 80003a12: 0685 addi a3,a3,1 - 80003a14: fec68fa3 sb a2,-1(a3) - 80003a18: ff059ae3 bne a1,a6,80003a0c - 80003a1c: 85c2 mv a1,a6 - 80003a1e: b571 j 800038aa - -0000000080003a20 : - 80003a20: 00757793 andi a5,a0,7 - 80003a24: 872a mv a4,a0 - 80003a26: efb1 bnez a5,80003a82 - 80003a28: 7f7f87b7 lui a5,0x7f7f8 - 80003a2c: f7f78793 addi a5,a5,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> - 80003a30: 02079693 slli a3,a5,0x20 - 80003a34: 96be add a3,a3,a5 - 80003a36: 55fd li a1,-1 - 80003a38: 6310 ld a2,0(a4) - 80003a3a: 0721 addi a4,a4,8 - 80003a3c: 00d677b3 and a5,a2,a3 - 80003a40: 97b6 add a5,a5,a3 - 80003a42: 8fd1 or a5,a5,a2 - 80003a44: 8fd5 or a5,a5,a3 - 80003a46: feb789e3 beq a5,a1,80003a38 - 80003a4a: ff874783 lbu a5,-8(a4) - 80003a4e: 40a706b3 sub a3,a4,a0 - 80003a52: c7a9 beqz a5,80003a9c - 80003a54: ff974783 lbu a5,-7(a4) - 80003a58: cf9d beqz a5,80003a96 - 80003a5a: ffa74783 lbu a5,-6(a4) - 80003a5e: c7a9 beqz a5,80003aa8 - 80003a60: ffb74783 lbu a5,-5(a4) - 80003a64: cf9d beqz a5,80003aa2 - 80003a66: ffc74783 lbu a5,-4(a4) - 80003a6a: c3b1 beqz a5,80003aae - 80003a6c: ffd74783 lbu a5,-3(a4) - 80003a70: c3b1 beqz a5,80003ab4 - 80003a72: ffe74783 lbu a5,-2(a4) - 80003a76: 00f03533 snez a0,a5 - 80003a7a: 9536 add a0,a0,a3 - 80003a7c: 1579 addi a0,a0,-2 +0000000080003a4a <_lseek_r>: + 80003a4a: 87ae mv a5,a1 + 80003a4c: 1141 addi sp,sp,-16 + 80003a4e: e022 sd s0,0(sp) + 80003a50: 85b2 mv a1,a2 + 80003a52: 842a mv s0,a0 + 80003a54: 8636 mv a2,a3 + 80003a56: 853e mv a0,a5 + 80003a58: e406 sd ra,8(sp) + 80003a5a: 3801a423 sw zero,904(gp) # 8000b090 + 80003a5e: edefc0ef jal 8000013c <_lseek> + 80003a62: 57fd li a5,-1 + 80003a64: 00f50663 beq a0,a5,80003a70 <_lseek_r+0x26> + 80003a68: 60a2 ld ra,8(sp) + 80003a6a: 6402 ld s0,0(sp) + 80003a6c: 0141 addi sp,sp,16 + 80003a6e: 8082 ret + 80003a70: 3881a783 lw a5,904(gp) # 8000b090 + 80003a74: dbf5 beqz a5,80003a68 <_lseek_r+0x1e> + 80003a76: 60a2 ld ra,8(sp) + 80003a78: c01c sw a5,0(s0) + 80003a7a: 6402 ld s0,0(sp) + 80003a7c: 0141 addi sp,sp,16 80003a7e: 8082 ret - 80003a80: d6c5 beqz a3,80003a28 - 80003a82: 00074783 lbu a5,0(a4) - 80003a86: 0705 addi a4,a4,1 - 80003a88: 00777693 andi a3,a4,7 - 80003a8c: fbf5 bnez a5,80003a80 - 80003a8e: 8f09 sub a4,a4,a0 - 80003a90: fff70513 addi a0,a4,-1 - 80003a94: 8082 ret - 80003a96: ff968513 addi a0,a3,-7 - 80003a9a: 8082 ret - 80003a9c: ff868513 addi a0,a3,-8 - 80003aa0: 8082 ret - 80003aa2: ffb68513 addi a0,a3,-5 - 80003aa6: 8082 ret - 80003aa8: ffa68513 addi a0,a3,-6 - 80003aac: 8082 ret - 80003aae: ffc68513 addi a0,a3,-4 - 80003ab2: 8082 ret - 80003ab4: ffd68513 addi a0,a3,-3 - 80003ab8: 8082 ret -0000000080003aba : - 80003aba: 00757693 andi a3,a0,7 - 80003abe: 872a mv a4,a0 - 80003ac0: 0ff5f813 zext.b a6,a1 - 80003ac4: cead beqz a3,80003b3e - 80003ac6: 47a1 li a5,8 - 80003ac8: 8f95 sub a5,a5,a3 - 80003aca: 12f66063 bltu a2,a5,80003bea - 80003ace: 469d li a3,7 - 80003ad0: 06f6e663 bltu a3,a5,80003b3c - 80003ad4: 00006517 auipc a0,0x6 - 80003ad8: b6c50513 addi a0,a0,-1172 # 80009640 - 80003adc: 00279693 slli a3,a5,0x2 - 80003ae0: 96aa add a3,a3,a0 - 80003ae2: 4294 lw a3,0(a3) - 80003ae4: 96aa add a3,a3,a0 - 80003ae6: 8682 jr a3 - 80003ae8: 00074683 lbu a3,0(a4) - 80003aec: 853a mv a0,a4 - 80003aee: 0f068d63 beq a3,a6,80003be8 - 80003af2: 0705 addi a4,a4,1 - 80003af4: 00074683 lbu a3,0(a4) - 80003af8: 853a mv a0,a4 - 80003afa: 0f068763 beq a3,a6,80003be8 - 80003afe: 0705 addi a4,a4,1 - 80003b00: 00074683 lbu a3,0(a4) - 80003b04: 853a mv a0,a4 - 80003b06: 0f068163 beq a3,a6,80003be8 - 80003b0a: 0705 addi a4,a4,1 - 80003b0c: 00074683 lbu a3,0(a4) - 80003b10: 853a mv a0,a4 - 80003b12: 0d068b63 beq a3,a6,80003be8 - 80003b16: 0705 addi a4,a4,1 - 80003b18: 00074683 lbu a3,0(a4) - 80003b1c: 853a mv a0,a4 - 80003b1e: 0d068563 beq a3,a6,80003be8 - 80003b22: 0705 addi a4,a4,1 - 80003b24: 00074683 lbu a3,0(a4) - 80003b28: 853a mv a0,a4 - 80003b2a: 0b068f63 beq a3,a6,80003be8 - 80003b2e: 0705 addi a4,a4,1 - 80003b30: 00074683 lbu a3,0(a4) - 80003b34: 853a mv a0,a4 - 80003b36: 0b068963 beq a3,a6,80003be8 - 80003b3a: 0705 addi a4,a4,1 - 80003b3c: 8e1d sub a2,a2,a5 - 80003b3e: ff867513 andi a0,a2,-8 - 80003b42: 953a add a0,a0,a4 - 80003b44: 08a77663 bgeu a4,a0,80003bd0 - 80003b48: 0ff5f593 zext.b a1,a1 - 80003b4c: 0085979b slliw a5,a1,0x8 - 80003b50: 9fad addw a5,a5,a1 - 80003b52: 01079893 slli a7,a5,0x10 - 80003b56: 98be add a7,a7,a5 - 80003b58: 7f7f87b7 lui a5,0x7f7f8 - 80003b5c: f7f78793 addi a5,a5,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> - 80003b60: 02089693 slli a3,a7,0x20 - 80003b64: 02079593 slli a1,a5,0x20 - 80003b68: 98b6 add a7,a7,a3 - 80003b6a: 95be add a1,a1,a5 - 80003b6c: 537d li t1,-1 - 80003b6e: a021 j 80003b76 - 80003b70: 0721 addi a4,a4,8 - 80003b72: 04a77e63 bgeu a4,a0,80003bce - 80003b76: 6314 ld a3,0(a4) - 80003b78: 00d8c6b3 xor a3,a7,a3 - 80003b7c: 00b6f7b3 and a5,a3,a1 - 80003b80: 97ae add a5,a5,a1 - 80003b82: 8fd5 or a5,a5,a3 - 80003b84: 8fcd or a5,a5,a1 - 80003b86: fe6785e3 beq a5,t1,80003b70 - 80003b8a: 00074783 lbu a5,0(a4) - 80003b8e: 853a mv a0,a4 - 80003b90: 05078c63 beq a5,a6,80003be8 - 80003b94: 00174783 lbu a5,1(a4) - 80003b98: 07078063 beq a5,a6,80003bf8 - 80003b9c: 00274783 lbu a5,2(a4) - 80003ba0: 05078f63 beq a5,a6,80003bfe - 80003ba4: 00374783 lbu a5,3(a4) - 80003ba8: 05078e63 beq a5,a6,80003c04 - 80003bac: 00474783 lbu a5,4(a4) - 80003bb0: 05078d63 beq a5,a6,80003c0a - 80003bb4: 00574783 lbu a5,5(a4) - 80003bb8: 03078d63 beq a5,a6,80003bf2 - 80003bbc: 00674503 lbu a0,6(a4) - 80003bc0: 41050533 sub a0,a0,a6 - 80003bc4: 00a03533 snez a0,a0 - 80003bc8: 953a add a0,a0,a4 - 80003bca: 0519 addi a0,a0,6 - 80003bcc: 8082 ret - 80003bce: 8a1d andi a2,a2,7 - 80003bd0: 00c706b3 add a3,a4,a2 - 80003bd4: 853a mv a0,a4 - 80003bd6: e609 bnez a2,80003be0 - 80003bd8: a819 j 80003bee - 80003bda: 0505 addi a0,a0,1 - 80003bdc: 00d50963 beq a0,a3,80003bee - 80003be0: 00054783 lbu a5,0(a0) - 80003be4: ff079be3 bne a5,a6,80003bda - 80003be8: 8082 ret - 80003bea: 87b2 mv a5,a2 - 80003bec: b5cd j 80003ace - 80003bee: 4501 li a0,0 - 80003bf0: 8082 ret - 80003bf2: 00570513 addi a0,a4,5 - 80003bf6: 8082 ret - 80003bf8: 00170513 addi a0,a4,1 - 80003bfc: 8082 ret - 80003bfe: 00270513 addi a0,a4,2 - 80003c02: 8082 ret - 80003c04: 00370513 addi a0,a4,3 - 80003c08: 8082 ret - 80003c0a: 00470513 addi a0,a4,4 - 80003c0e: 8082 ret +0000000080003a80 <_read_r>: + 80003a80: 87ae mv a5,a1 + 80003a82: 1141 addi sp,sp,-16 + 80003a84: e022 sd s0,0(sp) + 80003a86: 85b2 mv a1,a2 + 80003a88: 842a mv s0,a0 + 80003a8a: 8636 mv a2,a3 + 80003a8c: 853e mv a0,a5 + 80003a8e: e406 sd ra,8(sp) + 80003a90: 3801a423 sw zero,904(gp) # 8000b090 + 80003a94: e3cfc0ef jal 800000d0 <_read> + 80003a98: 57fd li a5,-1 + 80003a9a: 00f50663 beq a0,a5,80003aa6 <_read_r+0x26> + 80003a9e: 60a2 ld ra,8(sp) + 80003aa0: 6402 ld s0,0(sp) + 80003aa2: 0141 addi sp,sp,16 + 80003aa4: 8082 ret + 80003aa6: 3881a783 lw a5,904(gp) # 8000b090 + 80003aaa: dbf5 beqz a5,80003a9e <_read_r+0x1e> + 80003aac: 60a2 ld ra,8(sp) + 80003aae: c01c sw a5,0(s0) + 80003ab0: 6402 ld s0,0(sp) + 80003ab2: 0141 addi sp,sp,16 + 80003ab4: 8082 ret -0000000080003c10 : - 80003c10: 715d addi sp,sp,-80 - 80003c12: 00159793 slli a5,a1,0x1 - 80003c16: e0a2 sd s0,64(sp) - 80003c18: fc26 sd s1,56(sp) - 80003c1a: f84a sd s2,48(sp) - 80003c1c: f44e sd s3,40(sp) - 80003c1e: f052 sd s4,32(sp) - 80003c20: ec56 sd s5,24(sp) - 80003c22: e486 sd ra,72(sp) - 80003c24: 7461 lui s0,0xffff8 - 80003c26: 0317d493 srli s1,a5,0x31 - 80003c2a: 00062023 sw zero,0(a2) - 80003c2e: 8932 mv s2,a2 - 80003c30: 0405 addi s0,s0,1 # ffffffffffff8001 <_stack_top+0xffffffff7fef8001> - 80003c32: 4601 li a2,0 - 80003c34: 4681 li a3,0 - 80003c36: 89ae mv s3,a1 - 80003c38: e42e sd a1,8(sp) - 80003c3a: 8aaa mv s5,a0 - 80003c3c: 9426 add s0,s0,s1 - 80003c3e: 8a2a mv s4,a0 - 80003c40: 180040ef jal 80007dc0 <__eqtf2> - 80003c44: 00153793 seqz a5,a0 - 80003c48: 00143413 seqz s0,s0 - 80003c4c: 8fc1 or a5,a5,s0 - 80003c4e: 85ce mv a1,s3 - 80003c50: 8556 mv a0,s5 - 80003c52: e78d bnez a5,80003c7c - 80003c54: 4681 li a3,0 - 80003c56: cc85 beqz s1,80003c8e - 80003c58: 7771 lui a4,0xffffc - 80003c5a: f80017b7 lui a5,0xf8001 - 80003c5e: 2709 addiw a4,a4,2 # ffffffffffffc002 <_stack_top+0xffffffff7fefc002> - 80003c60: 1792 slli a5,a5,0x24 - 80003c62: 9cb9 addw s1,s1,a4 - 80003c64: 17fd addi a5,a5,-1 # fffffffff8000fff <_stack_top+0xffffffff77f00fff> - 80003c66: 01fff5b7 lui a1,0x1fff - 80003c6a: 9cb5 addw s1,s1,a3 - 80003c6c: 00f9f9b3 and s3,s3,a5 - 80003c70: 1596 slli a1,a1,0x25 - 80003c72: 8552 mv a0,s4 - 80003c74: 00992023 sw s1,0(s2) - 80003c78: 00b9e5b3 or a1,s3,a1 - 80003c7c: 60a6 ld ra,72(sp) - 80003c7e: 6406 ld s0,64(sp) - 80003c80: 74e2 ld s1,56(sp) - 80003c82: 7942 ld s2,48(sp) - 80003c84: 79a2 ld s3,40(sp) - 80003c86: 7a02 ld s4,32(sp) - 80003c88: 6ae2 ld s5,24(sp) - 80003c8a: 6161 addi sp,sp,80 - 80003c8c: 8082 ret - 80003c8e: 00006797 auipc a5,0x6 - 80003c92: 98278793 addi a5,a5,-1662 # 80009610 - 80003c96: 6794 ld a3,8(a5) - 80003c98: 6390 ld a2,0(a5) - 80003c9a: 32c040ef jal 80007fc6 <__multf3> - 80003c9e: 00159793 slli a5,a1,0x1 - 80003ca2: 89ae mv s3,a1 - 80003ca4: 8a2a mv s4,a0 - 80003ca6: 0317d493 srli s1,a5,0x31 - 80003caa: f8e00693 li a3,-114 - 80003cae: b76d j 80003c58 +0000000080003ab6 <_write_r>: + 80003ab6: 87ae mv a5,a1 + 80003ab8: 1141 addi sp,sp,-16 + 80003aba: e022 sd s0,0(sp) + 80003abc: 85b2 mv a1,a2 + 80003abe: 842a mv s0,a0 + 80003ac0: 8636 mv a2,a3 + 80003ac2: 853e mv a0,a5 + 80003ac4: e406 sd ra,8(sp) + 80003ac6: 3801a423 sw zero,904(gp) # 8000b090 + 80003aca: dc6fc0ef jal 80000090 <_write> + 80003ace: 57fd li a5,-1 + 80003ad0: 00f50663 beq a0,a5,80003adc <_write_r+0x26> + 80003ad4: 60a2 ld ra,8(sp) + 80003ad6: 6402 ld s0,0(sp) + 80003ad8: 0141 addi sp,sp,16 + 80003ada: 8082 ret + 80003adc: 3881a783 lw a5,904(gp) # 8000b090 + 80003ae0: dbf5 beqz a5,80003ad4 <_write_r+0x1e> + 80003ae2: 60a2 ld ra,8(sp) + 80003ae4: c01c sw a5,0(s0) + 80003ae6: 6402 ld s0,0(sp) + 80003ae8: 0141 addi sp,sp,16 + 80003aea: 8082 ret -0000000080003cb0 <_malloc_trim_r>: - 80003cb0: 7179 addi sp,sp,-48 - 80003cb2: f022 sd s0,32(sp) - 80003cb4: ec26 sd s1,24(sp) - 80003cb6: e84a sd s2,16(sp) - 80003cb8: e44e sd s3,8(sp) - 80003cba: 842e mv s0,a1 - 80003cbc: f406 sd ra,40(sp) - 80003cbe: 892a mv s2,a0 - 80003cc0: 00006997 auipc s3,0x6 - 80003cc4: 02098993 addi s3,s3,32 # 80009ce0 <__malloc_av_> - 80003cc8: 7d1010ef jal 80005c98 <__malloc_lock> - 80003ccc: 0109b783 ld a5,16(s3) - 80003cd0: 6705 lui a4,0x1 - 80003cd2: 6784 ld s1,8(a5) - 80003cd4: 98f1 andi s1,s1,-4 - 80003cd6: 7e048793 addi a5,s1,2016 - 80003cda: 7ff78793 addi a5,a5,2047 - 80003cde: 40878433 sub s0,a5,s0 - 80003ce2: 8031 srli s0,s0,0xc - 80003ce4: 147d addi s0,s0,-1 - 80003ce6: 0432 slli s0,s0,0xc - 80003ce8: 00e44b63 blt s0,a4,80003cfe <_malloc_trim_r+0x4e> - 80003cec: 4581 li a1,0 - 80003cee: 854a mv a0,s2 - 80003cf0: 7d3020ef jal 80006cc2 <_sbrk_r> - 80003cf4: 0109b783 ld a5,16(s3) - 80003cf8: 97a6 add a5,a5,s1 - 80003cfa: 00f50d63 beq a0,a5,80003d14 <_malloc_trim_r+0x64> - 80003cfe: 854a mv a0,s2 - 80003d00: 79b010ef jal 80005c9a <__malloc_unlock> - 80003d04: 70a2 ld ra,40(sp) - 80003d06: 7402 ld s0,32(sp) - 80003d08: 64e2 ld s1,24(sp) - 80003d0a: 6942 ld s2,16(sp) - 80003d0c: 69a2 ld s3,8(sp) - 80003d0e: 4501 li a0,0 - 80003d10: 6145 addi sp,sp,48 - 80003d12: 8082 ret - 80003d14: 408005b3 neg a1,s0 - 80003d18: 854a mv a0,s2 - 80003d1a: 7a9020ef jal 80006cc2 <_sbrk_r> - 80003d1e: 57fd li a5,-1 - 80003d20: 02f50863 beq a0,a5,80003d50 <_malloc_trim_r+0xa0> - 80003d24: 0109b703 ld a4,16(s3) - 80003d28: 5981b783 ld a5,1432(gp) # 8000a8e8 <__malloc_current_mallinfo> - 80003d2c: 8c81 sub s1,s1,s0 - 80003d2e: 0014e493 ori s1,s1,1 - 80003d32: e704 sd s1,8(a4) - 80003d34: 854a mv a0,s2 - 80003d36: 8f81 sub a5,a5,s0 - 80003d38: 58f1bc23 sd a5,1432(gp) # 8000a8e8 <__malloc_current_mallinfo> - 80003d3c: 75f010ef jal 80005c9a <__malloc_unlock> - 80003d40: 70a2 ld ra,40(sp) - 80003d42: 7402 ld s0,32(sp) - 80003d44: 64e2 ld s1,24(sp) - 80003d46: 6942 ld s2,16(sp) - 80003d48: 69a2 ld s3,8(sp) - 80003d4a: 4505 li a0,1 - 80003d4c: 6145 addi sp,sp,48 - 80003d4e: 8082 ret - 80003d50: 4581 li a1,0 - 80003d52: 854a mv a0,s2 - 80003d54: 76f020ef jal 80006cc2 <_sbrk_r> - 80003d58: 0109b703 ld a4,16(s3) - 80003d5c: 46fd li a3,31 - 80003d5e: 40e507b3 sub a5,a0,a4 - 80003d62: f8f6dee3 bge a3,a5,80003cfe <_malloc_trim_r+0x4e> - 80003d66: 8101b683 ld a3,-2032(gp) # 80009b60 <__malloc_sbrk_base> - 80003d6a: 0017e793 ori a5,a5,1 - 80003d6e: e71c sd a5,8(a4) - 80003d70: 8d15 sub a0,a0,a3 - 80003d72: 58a1bc23 sd a0,1432(gp) # 8000a8e8 <__malloc_current_mallinfo> - 80003d76: b761 j 80003cfe <_malloc_trim_r+0x4e> +0000000080003aec : + 80003aec: 02b56763 bltu a0,a1,80003b1a + 80003af0: 00c58733 add a4,a1,a2 + 80003af4: 0ee56663 bltu a0,a4,80003be0 + 80003af8: 47a1 li a5,8 + 80003afa: 0ec7e263 bltu a5,a2,80003bde + 80003afe: 00c586b3 add a3,a1,a2 + 80003b02: 87aa mv a5,a0 + 80003b04: 1c060463 beqz a2,80003ccc + 80003b08: 0005c703 lbu a4,0(a1) + 80003b0c: 0585 addi a1,a1,1 + 80003b0e: 0785 addi a5,a5,1 + 80003b10: fee78fa3 sb a4,-1(a5) + 80003b14: fed59ae3 bne a1,a3,80003b08 + 80003b18: 8082 ret + 80003b1a: 00c507b3 add a5,a0,a2 + 80003b1e: fcf5fde3 bgeu a1,a5,80003af8 + 80003b22: 471d li a4,7 + 80003b24: 18c77563 bgeu a4,a2,80003cae + 80003b28: 00a5e733 or a4,a1,a0 + 80003b2c: 8b1d andi a4,a4,7 + 80003b2e: 18071263 bnez a4,80003cb2 + 80003b32: 04700293 li t0,71 + 80003b36: 87aa mv a5,a0 + 80003b38: 04c2fd63 bgeu t0,a2,80003b92 + 80003b3c: 0005bf83 ld t6,0(a1) + 80003b40: 0085bf03 ld t5,8(a1) + 80003b44: 0105be83 ld t4,16(a1) + 80003b48: 0185be03 ld t3,24(a1) + 80003b4c: 0205b303 ld t1,32(a1) + 80003b50: 0285b883 ld a7,40(a1) + 80003b54: 0305b803 ld a6,48(a1) + 80003b58: 7d94 ld a3,56(a1) + 80003b5a: 61b8 ld a4,64(a1) + 80003b5c: fb860613 addi a2,a2,-72 + 80003b60: 01f7b023 sd t6,0(a5) + 80003b64: 01e7b423 sd t5,8(a5) + 80003b68: 01d7b823 sd t4,16(a5) + 80003b6c: 01c7bc23 sd t3,24(a5) + 80003b70: 0267b023 sd t1,32(a5) + 80003b74: 0317b423 sd a7,40(a5) + 80003b78: 0307b823 sd a6,48(a5) + 80003b7c: ff94 sd a3,56(a5) + 80003b7e: e3b8 sd a4,64(a5) + 80003b80: 04858593 addi a1,a1,72 + 80003b84: 04878793 addi a5,a5,72 + 80003b88: fac2eae3 bltu t0,a2,80003b3c + 80003b8c: 471d li a4,7 + 80003b8e: 02c77a63 bgeu a4,a2,80003bc2 + 80003b92: 00365713 srli a4,a2,0x3 + 80003b96: 00371893 slli a7,a4,0x3 + 80003b9a: fff70313 addi t1,a4,-1 + 80003b9e: 98be add a7,a7,a5 + 80003ba0: 86ae mv a3,a1 + 80003ba2: 873e mv a4,a5 + 80003ba4: 0006b803 ld a6,0(a3) + 80003ba8: 0721 addi a4,a4,8 + 80003baa: 06a1 addi a3,a3,8 + 80003bac: ff073c23 sd a6,-8(a4) + 80003bb0: ff171ae3 bne a4,a7,80003ba4 + 80003bb4: 00331713 slli a4,t1,0x3 + 80003bb8: 07a1 addi a5,a5,8 + 80003bba: 05a1 addi a1,a1,8 + 80003bbc: 97ba add a5,a5,a4 + 80003bbe: 95ba add a1,a1,a4 + 80003bc0: 8a1d andi a2,a2,7 + 80003bc2: da39 beqz a2,80003b18 + 80003bc4: fff60693 addi a3,a2,-1 + 80003bc8: 0685 addi a3,a3,1 + 80003bca: 96ae add a3,a3,a1 + 80003bcc: 0005c703 lbu a4,0(a1) + 80003bd0: 0585 addi a1,a1,1 + 80003bd2: 0785 addi a5,a5,1 + 80003bd4: fee78fa3 sb a4,-1(a5) + 80003bd8: fed59ae3 bne a1,a3,80003bcc + 80003bdc: 8082 ret + 80003bde: ae61 j 80003f76 + 80003be0: 469d li a3,7 + 80003be2: 00c507b3 add a5,a0,a2 + 80003be6: 0ac6f463 bgeu a3,a2,80003c8e + 80003bea: 00e7e6b3 or a3,a5,a4 + 80003bee: 8a9d andi a3,a3,7 + 80003bf0: 883a mv a6,a4 + 80003bf2: e6f9 bnez a3,80003cc0 + 80003bf4: 04700293 li t0,71 + 80003bf8: 06c2f163 bgeu t0,a2,80003c5a + 80003bfc: fb873f83 ld t6,-72(a4) + 80003c00: fc073f03 ld t5,-64(a4) + 80003c04: fc873e83 ld t4,-56(a4) + 80003c08: fd073e03 ld t3,-48(a4) + 80003c0c: fd873303 ld t1,-40(a4) + 80003c10: fe073883 ld a7,-32(a4) + 80003c14: fe873803 ld a6,-24(a4) + 80003c18: ff073583 ld a1,-16(a4) + 80003c1c: ff873683 ld a3,-8(a4) + 80003c20: fb860613 addi a2,a2,-72 + 80003c24: fbf7bc23 sd t6,-72(a5) + 80003c28: fde7b023 sd t5,-64(a5) + 80003c2c: fdd7b423 sd t4,-56(a5) + 80003c30: fdc7b823 sd t3,-48(a5) + 80003c34: fc67bc23 sd t1,-40(a5) + 80003c38: ff17b023 sd a7,-32(a5) + 80003c3c: ff07b423 sd a6,-24(a5) + 80003c40: feb7b823 sd a1,-16(a5) + 80003c44: fed7bc23 sd a3,-8(a5) + 80003c48: fb870713 addi a4,a4,-72 + 80003c4c: fb878793 addi a5,a5,-72 + 80003c50: fac2e6e3 bltu t0,a2,80003bfc + 80003c54: 469d li a3,7 + 80003c56: 02c6fc63 bgeu a3,a2,80003c8e + 80003c5a: 00365693 srli a3,a2,0x3 + 80003c5e: 00369893 slli a7,a3,0x3 + 80003c62: fff68313 addi t1,a3,-1 + 80003c66: 411788b3 sub a7,a5,a7 + 80003c6a: 85ba mv a1,a4 + 80003c6c: 86be mv a3,a5 + 80003c6e: ff85b803 ld a6,-8(a1) + 80003c72: 16e1 addi a3,a3,-8 + 80003c74: 15e1 addi a1,a1,-8 + 80003c76: 0106b023 sd a6,0(a3) + 80003c7a: ff169ae3 bne a3,a7,80003c6e + 80003c7e: 406006b3 neg a3,t1 + 80003c82: 068e slli a3,a3,0x3 + 80003c84: 1761 addi a4,a4,-8 + 80003c86: 17e1 addi a5,a5,-8 + 80003c88: 9736 add a4,a4,a3 + 80003c8a: 97b6 add a5,a5,a3 + 80003c8c: 8a1d andi a2,a2,7 + 80003c8e: fff60693 addi a3,a2,-1 + 80003c92: 14060863 beqz a2,80003de2 + 80003c96: fff6c613 not a2,a3 + 80003c9a: 963e add a2,a2,a5 + 80003c9c: fff74683 lbu a3,-1(a4) + 80003ca0: 17fd addi a5,a5,-1 + 80003ca2: 177d addi a4,a4,-1 + 80003ca4: 00d78023 sb a3,0(a5) + 80003ca8: fec79ae3 bne a5,a2,80003c9c + 80003cac: 8082 ret + 80003cae: 87aa mv a5,a0 + 80003cb0: bf09 j 80003bc2 + 80003cb2: 4741 li a4,16 + 80003cb4: 00c76d63 bltu a4,a2,80003cce + 80003cb8: fff60693 addi a3,a2,-1 + 80003cbc: 87aa mv a5,a0 + 80003cbe: b729 j 80003bc8 + 80003cc0: 46c1 li a3,16 + 80003cc2: 08c6eb63 bltu a3,a2,80003d58 + 80003cc6: fff60693 addi a3,a2,-1 + 80003cca: b7f1 j 80003c96 + 80003ccc: 8082 ret + 80003cce: 0075f713 andi a4,a1,7 + 80003cd2: 86aa mv a3,a0 + 80003cd4: cf01 beqz a4,80003cec + 80003cd6: 0005c603 lbu a2,0(a1) + 80003cda: 0585 addi a1,a1,1 + 80003cdc: 0075f713 andi a4,a1,7 + 80003ce0: 00c68023 sb a2,0(a3) + 80003ce4: 0685 addi a3,a3,1 + 80003ce6: fb65 bnez a4,80003cd6 + 80003ce8: 40d78633 sub a2,a5,a3 + 80003cec: ff860713 addi a4,a2,-8 + 80003cf0: 00375293 srli t0,a4,0x3 + 80003cf4: 00128f93 addi t6,t0,1 + 80003cf8: 0f8e slli t6,t6,0x3 + 80003cfa: 9fb6 add t6,t6,a3 + 80003cfc: 882e mv a6,a1 + 80003cfe: 87b6 mv a5,a3 + 80003d00: 00083703 ld a4,0(a6) + 80003d04: 07a1 addi a5,a5,8 + 80003d06: 0821 addi a6,a6,8 + 80003d08: 00875893 srli a7,a4,0x8 + 80003d0c: 01075f13 srli t5,a4,0x10 + 80003d10: 01875e93 srli t4,a4,0x18 + 80003d14: 02075e13 srli t3,a4,0x20 + 80003d18: 02875313 srli t1,a4,0x28 + 80003d1c: fee78c23 sb a4,-8(a5) + 80003d20: ff178ca3 sb a7,-7(a5) + 80003d24: 03075893 srli a7,a4,0x30 + 80003d28: 9361 srli a4,a4,0x38 + 80003d2a: ffe78d23 sb t5,-6(a5) + 80003d2e: ffd78da3 sb t4,-5(a5) + 80003d32: ffc78e23 sb t3,-4(a5) + 80003d36: fe678ea3 sb t1,-3(a5) + 80003d3a: ff178f23 sb a7,-2(a5) + 80003d3e: fee78fa3 sb a4,-1(a5) + 80003d42: fbf79fe3 bne a5,t6,80003d00 + 80003d46: 00329713 slli a4,t0,0x3 + 80003d4a: 05a1 addi a1,a1,8 + 80003d4c: 00868793 addi a5,a3,8 + 80003d50: 95ba add a1,a1,a4 + 80003d52: 97ba add a5,a5,a4 + 80003d54: 8a1d andi a2,a2,7 + 80003d56: b5b5 j 80003bc2 + 80003d58: 00777693 andi a3,a4,7 + 80003d5c: ce89 beqz a3,80003d76 + 80003d5e: fff74583 lbu a1,-1(a4) + 80003d62: 177d addi a4,a4,-1 + 80003d64: 00777693 andi a3,a4,7 + 80003d68: feb78fa3 sb a1,-1(a5) + 80003d6c: 17fd addi a5,a5,-1 + 80003d6e: fae5 bnez a3,80003d5e + 80003d70: 963a add a2,a2,a4 + 80003d72: 41060633 sub a2,a2,a6 + 80003d76: ff860293 addi t0,a2,-8 + 80003d7a: 0032d293 srli t0,t0,0x3 + 80003d7e: fff2cf93 not t6,t0 + 80003d82: 0f8e slli t6,t6,0x3 + 80003d84: 9fbe add t6,t6,a5 + 80003d86: 883a mv a6,a4 + 80003d88: 86be mv a3,a5 + 80003d8a: ff883583 ld a1,-8(a6) + 80003d8e: 16e1 addi a3,a3,-8 + 80003d90: 1861 addi a6,a6,-8 + 80003d92: 0085d893 srli a7,a1,0x8 + 80003d96: 0105df13 srli t5,a1,0x10 + 80003d9a: 0185de93 srli t4,a1,0x18 + 80003d9e: 0205de13 srli t3,a1,0x20 + 80003da2: 0285d313 srli t1,a1,0x28 + 80003da6: 011680a3 sb a7,1(a3) + 80003daa: 00b68023 sb a1,0(a3) + 80003dae: 0305d893 srli a7,a1,0x30 + 80003db2: 91e1 srli a1,a1,0x38 + 80003db4: 01e68123 sb t5,2(a3) + 80003db8: 01d681a3 sb t4,3(a3) + 80003dbc: 01c68223 sb t3,4(a3) + 80003dc0: 006682a3 sb t1,5(a3) + 80003dc4: 01168323 sb a7,6(a3) + 80003dc8: 00b683a3 sb a1,7(a3) + 80003dcc: fbf69fe3 bne a3,t6,80003d8a + 80003dd0: 405006b3 neg a3,t0 + 80003dd4: 068e slli a3,a3,0x3 + 80003dd6: 17e1 addi a5,a5,-8 + 80003dd8: 1761 addi a4,a4,-8 + 80003dda: 97b6 add a5,a5,a3 + 80003ddc: 9736 add a4,a4,a3 + 80003dde: 8a1d andi a2,a2,7 + 80003de0: b57d j 80003c8e + 80003de2: 8082 ret -0000000080003d78 <_free_r>: - 80003d78: c5e5 beqz a1,80003e60 <_free_r+0xe8> - 80003d7a: 1101 addi sp,sp,-32 - 80003d7c: e822 sd s0,16(sp) - 80003d7e: e42e sd a1,8(sp) - 80003d80: 842a mv s0,a0 - 80003d82: ec06 sd ra,24(sp) - 80003d84: 715010ef jal 80005c98 <__malloc_lock> - 80003d88: 65a2 ld a1,8(sp) - 80003d8a: 00006897 auipc a7,0x6 - 80003d8e: f5688893 addi a7,a7,-170 # 80009ce0 <__malloc_av_> - 80003d92: 0108b803 ld a6,16(a7) - 80003d96: ff85b503 ld a0,-8(a1) # 1ffeff8 <__dtim_size+0x1efeff8> - 80003d9a: ff058713 addi a4,a1,-16 - 80003d9e: ffe57793 andi a5,a0,-2 - 80003da2: 00f70633 add a2,a4,a5 - 80003da6: 6614 ld a3,8(a2) - 80003da8: 00157313 andi t1,a0,1 - 80003dac: 9af1 andi a3,a3,-4 - 80003dae: 12c80663 beq a6,a2,80003eda <_free_r+0x162> - 80003db2: e614 sd a3,8(a2) - 80003db4: 00d60833 add a6,a2,a3 - 80003db8: 00883803 ld a6,8(a6) - 80003dbc: 00187813 andi a6,a6,1 - 80003dc0: 06031b63 bnez t1,80003e36 <_free_r+0xbe> - 80003dc4: ff05b303 ld t1,-16(a1) - 80003dc8: 00006517 auipc a0,0x6 - 80003dcc: f2850513 addi a0,a0,-216 # 80009cf0 <__malloc_av_+0x10> - 80003dd0: 40670733 sub a4,a4,t1 - 80003dd4: 6b0c ld a1,16(a4) - 80003dd6: 979a add a5,a5,t1 - 80003dd8: 0ea58463 beq a1,a0,80003ec0 <_free_r+0x148> - 80003ddc: 01873303 ld t1,24(a4) # 1018 - 80003de0: 0065bc23 sd t1,24(a1) - 80003de4: 00b33823 sd a1,16(t1) - 80003de8: 12080363 beqz a6,80003f0e <_free_r+0x196> - 80003dec: 0017e693 ori a3,a5,1 - 80003df0: e714 sd a3,8(a4) - 80003df2: e21c sd a5,0(a2) - 80003df4: 1ff00693 li a3,511 - 80003df8: 06f6ee63 bltu a3,a5,80003e74 <_free_r+0xfc> - 80003dfc: 838d srli a5,a5,0x3 - 80003dfe: 00179693 slli a3,a5,0x1 - 80003e02: 2689 addiw a3,a3,2 - 80003e04: 068e slli a3,a3,0x3 - 80003e06: 0088b503 ld a0,8(a7) - 80003e0a: 96c6 add a3,a3,a7 - 80003e0c: 628c ld a1,0(a3) - 80003e0e: 4027d61b sraiw a2,a5,0x2 - 80003e12: 4785 li a5,1 - 80003e14: 00c797b3 sll a5,a5,a2 - 80003e18: 8fc9 or a5,a5,a0 - 80003e1a: ff068613 addi a2,a3,-16 - 80003e1e: eb0c sd a1,16(a4) - 80003e20: ef10 sd a2,24(a4) - 80003e22: 00f8b423 sd a5,8(a7) - 80003e26: e298 sd a4,0(a3) - 80003e28: ed98 sd a4,24(a1) - 80003e2a: 8522 mv a0,s0 - 80003e2c: 6442 ld s0,16(sp) - 80003e2e: 60e2 ld ra,24(sp) - 80003e30: 6105 addi sp,sp,32 - 80003e32: 6690106f j 80005c9a <__malloc_unlock> - 80003e36: 02081663 bnez a6,80003e62 <_free_r+0xea> - 80003e3a: 97b6 add a5,a5,a3 - 80003e3c: 00006517 auipc a0,0x6 - 80003e40: eb450513 addi a0,a0,-332 # 80009cf0 <__malloc_av_+0x10> - 80003e44: 6a14 ld a3,16(a2) - 80003e46: 0017e813 ori a6,a5,1 - 80003e4a: 00f705b3 add a1,a4,a5 - 80003e4e: 10a68063 beq a3,a0,80003f4e <_free_r+0x1d6> - 80003e52: 6e10 ld a2,24(a2) - 80003e54: ee90 sd a2,24(a3) - 80003e56: ea14 sd a3,16(a2) - 80003e58: 01073423 sd a6,8(a4) - 80003e5c: e19c sd a5,0(a1) - 80003e5e: bf59 j 80003df4 <_free_r+0x7c> - 80003e60: 8082 ret - 80003e62: 00156513 ori a0,a0,1 - 80003e66: fea5bc23 sd a0,-8(a1) - 80003e6a: e21c sd a5,0(a2) - 80003e6c: 1ff00693 li a3,511 - 80003e70: f8f6f6e3 bgeu a3,a5,80003dfc <_free_r+0x84> - 80003e74: 0097d693 srli a3,a5,0x9 - 80003e78: 4611 li a2,4 - 80003e7a: 08d66c63 bltu a2,a3,80003f12 <_free_r+0x19a> - 80003e7e: 0067d693 srli a3,a5,0x6 - 80003e82: 00169593 slli a1,a3,0x1 - 80003e86: 0725859b addiw a1,a1,114 - 80003e8a: 058e slli a1,a1,0x3 - 80003e8c: 0386861b addiw a2,a3,56 - 80003e90: 95c6 add a1,a1,a7 - 80003e92: 6194 ld a3,0(a1) - 80003e94: 15c1 addi a1,a1,-16 - 80003e96: 00d59663 bne a1,a3,80003ea2 <_free_r+0x12a> - 80003e9a: a0e1 j 80003f62 <_free_r+0x1ea> - 80003e9c: 6a94 ld a3,16(a3) - 80003e9e: 00d58663 beq a1,a3,80003eaa <_free_r+0x132> - 80003ea2: 6690 ld a2,8(a3) - 80003ea4: 9a71 andi a2,a2,-4 - 80003ea6: fec7ebe3 bltu a5,a2,80003e9c <_free_r+0x124> - 80003eaa: 6e8c ld a1,24(a3) - 80003eac: ef0c sd a1,24(a4) - 80003eae: eb14 sd a3,16(a4) - 80003eb0: 8522 mv a0,s0 - 80003eb2: 6442 ld s0,16(sp) - 80003eb4: 60e2 ld ra,24(sp) - 80003eb6: e998 sd a4,16(a1) - 80003eb8: ee98 sd a4,24(a3) - 80003eba: 6105 addi sp,sp,32 - 80003ebc: 5df0106f j 80005c9a <__malloc_unlock> - 80003ec0: 06081a63 bnez a6,80003f34 <_free_r+0x1bc> - 80003ec4: 6e0c ld a1,24(a2) - 80003ec6: 6a10 ld a2,16(a2) - 80003ec8: 96be add a3,a3,a5 - 80003eca: 0016e793 ori a5,a3,1 - 80003ece: ee0c sd a1,24(a2) - 80003ed0: e990 sd a2,16(a1) - 80003ed2: e71c sd a5,8(a4) - 80003ed4: 9736 add a4,a4,a3 - 80003ed6: e314 sd a3,0(a4) - 80003ed8: bf89 j 80003e2a <_free_r+0xb2> - 80003eda: 96be add a3,a3,a5 - 80003edc: 00031a63 bnez t1,80003ef0 <_free_r+0x178> - 80003ee0: ff05b783 ld a5,-16(a1) - 80003ee4: 8f1d sub a4,a4,a5 - 80003ee6: 6b10 ld a2,16(a4) - 80003ee8: 96be add a3,a3,a5 - 80003eea: 6f1c ld a5,24(a4) - 80003eec: ee1c sd a5,24(a2) - 80003eee: eb90 sd a2,16(a5) - 80003ef0: 0016e613 ori a2,a3,1 - 80003ef4: 8181b783 ld a5,-2024(gp) # 80009b68 <__malloc_trim_threshold> - 80003ef8: e710 sd a2,8(a4) - 80003efa: 00e8b823 sd a4,16(a7) - 80003efe: f2f6e6e3 bltu a3,a5,80003e2a <_free_r+0xb2> - 80003f02: 3801b583 ld a1,896(gp) # 8000a6d0 <__malloc_top_pad> - 80003f06: 8522 mv a0,s0 - 80003f08: da9ff0ef jal 80003cb0 <_malloc_trim_r> - 80003f0c: bf39 j 80003e2a <_free_r+0xb2> - 80003f0e: 97b6 add a5,a5,a3 - 80003f10: bf15 j 80003e44 <_free_r+0xcc> - 80003f12: 4651 li a2,20 - 80003f14: 02d67563 bgeu a2,a3,80003f3e <_free_r+0x1c6> - 80003f18: 05400613 li a2,84 - 80003f1c: 04d66e63 bltu a2,a3,80003f78 <_free_r+0x200> - 80003f20: 00c7d693 srli a3,a5,0xc - 80003f24: 00169593 slli a1,a3,0x1 - 80003f28: 0de5859b addiw a1,a1,222 - 80003f2c: 058e slli a1,a1,0x3 - 80003f2e: 06e6861b addiw a2,a3,110 - 80003f32: bfb9 j 80003e90 <_free_r+0x118> - 80003f34: 0017e693 ori a3,a5,1 - 80003f38: e714 sd a3,8(a4) - 80003f3a: e21c sd a5,0(a2) - 80003f3c: b5fd j 80003e2a <_free_r+0xb2> - 80003f3e: 00169593 slli a1,a3,0x1 - 80003f42: 0b85859b addiw a1,a1,184 - 80003f46: 058e slli a1,a1,0x3 - 80003f48: 05b6861b addiw a2,a3,91 - 80003f4c: b791 j 80003e90 <_free_r+0x118> - 80003f4e: 02e8b423 sd a4,40(a7) - 80003f52: 02e8b023 sd a4,32(a7) - 80003f56: ef08 sd a0,24(a4) - 80003f58: eb08 sd a0,16(a4) - 80003f5a: 01073423 sd a6,8(a4) - 80003f5e: e19c sd a5,0(a1) - 80003f60: b5e9 j 80003e2a <_free_r+0xb2> - 80003f62: 0088b503 ld a0,8(a7) - 80003f66: 4026561b sraiw a2,a2,0x2 - 80003f6a: 4785 li a5,1 - 80003f6c: 00c797b3 sll a5,a5,a2 - 80003f70: 8fc9 or a5,a5,a0 - 80003f72: 00f8b423 sd a5,8(a7) - 80003f76: bf1d j 80003eac <_free_r+0x134> - 80003f78: 15400613 li a2,340 - 80003f7c: 00d66c63 bltu a2,a3,80003f94 <_free_r+0x21c> - 80003f80: 00f7d693 srli a3,a5,0xf - 80003f84: 00169593 slli a1,a3,0x1 - 80003f88: 0f05859b addiw a1,a1,240 - 80003f8c: 058e slli a1,a1,0x3 - 80003f8e: 0776861b addiw a2,a3,119 - 80003f92: bdfd j 80003e90 <_free_r+0x118> - 80003f94: 55400513 li a0,1364 - 80003f98: 7f000593 li a1,2032 - 80003f9c: 07e00613 li a2,126 - 80003fa0: eed568e3 bltu a0,a3,80003e90 <_free_r+0x118> - 80003fa4: 0127d693 srli a3,a5,0x12 - 80003fa8: 00169593 slli a1,a3,0x1 - 80003fac: 0fa5859b addiw a1,a1,250 - 80003fb0: 058e slli a1,a1,0x3 - 80003fb2: 07c6861b addiw a2,a3,124 - 80003fb6: bde9 j 80003e90 <_free_r+0x118> +0000000080003de4 : + 80003de4: 47fd li a5,31 + 80003de6: 86aa mv a3,a0 + 80003de8: 10c7f063 bgeu a5,a2,80003ee8 + 80003dec: 0076f713 andi a4,a3,7 + 80003df0: cf19 beqz a4,80003e0e + 80003df2: 00000297 auipc t0,0x0 + 80003df6: 00271313 slli t1,a4,0x2 + 80003dfa: 929a add t0,t0,t1 + 80003dfc: 8306 mv t1,ra + 80003dfe: 162280e7 jalr 354(t0) # 80003f54 + 80003e02: 809a mv ra,t1 + 80003e04: 1761 addi a4,a4,-8 + 80003e06: 963a add a2,a2,a4 + 80003e08: 8e99 sub a3,a3,a4 + 80003e0a: 0cc7ff63 bgeu a5,a2,80003ee8 + 80003e0e: e199 bnez a1,80003e14 + 80003e10: a005 j 80003e30 + 80003e12: 0001 nop + 80003e14: 0ff5f593 zext.b a1,a1 + 80003e18: 00859293 slli t0,a1,0x8 + 80003e1c: 0055e5b3 or a1,a1,t0 + 80003e20: 01059293 slli t0,a1,0x10 + 80003e24: 0055e5b3 or a1,a1,t0 + 80003e28: 02059293 slli t0,a1,0x20 + 80003e2c: 0055e5b3 or a1,a1,t0 + 80003e30: ff867293 andi t0,a2,-8 + 80003e34: 00568333 add t1,a3,t0 + 80003e38: 0f82f293 andi t0,t0,248 + 80003e3c: 02028063 beqz t0,80003e5c + 80003e40: 405002b3 neg t0,t0 + 80003e44: 10028293 addi t0,t0,256 + 80003e48: 405686b3 sub a3,a3,t0 + 80003e4c: 00000397 auipc t2,0x0 + 80003e50: 0012d293 srli t0,t0,0x1 + 80003e54: 9396 add t2,t2,t0 + 80003e56: 01038067 jr 16(t2) # 80003e5c + 80003e5a: 0001 nop + 80003e5c: 00b6b023 sd a1,0(a3) + 80003e60: 00b6b423 sd a1,8(a3) + 80003e64: 00b6b823 sd a1,16(a3) + 80003e68: 00b6bc23 sd a1,24(a3) + 80003e6c: 02b6b023 sd a1,32(a3) + 80003e70: 02b6b423 sd a1,40(a3) + 80003e74: 02b6b823 sd a1,48(a3) + 80003e78: 02b6bc23 sd a1,56(a3) + 80003e7c: 04b6b023 sd a1,64(a3) + 80003e80: 04b6b423 sd a1,72(a3) + 80003e84: 04b6b823 sd a1,80(a3) + 80003e88: 04b6bc23 sd a1,88(a3) + 80003e8c: 06b6b023 sd a1,96(a3) + 80003e90: 06b6b423 sd a1,104(a3) + 80003e94: 06b6b823 sd a1,112(a3) + 80003e98: 06b6bc23 sd a1,120(a3) + 80003e9c: 08b6b023 sd a1,128(a3) + 80003ea0: 08b6b423 sd a1,136(a3) + 80003ea4: 08b6b823 sd a1,144(a3) + 80003ea8: 08b6bc23 sd a1,152(a3) + 80003eac: 0ab6b023 sd a1,160(a3) + 80003eb0: 0ab6b423 sd a1,168(a3) + 80003eb4: 0ab6b823 sd a1,176(a3) + 80003eb8: 0ab6bc23 sd a1,184(a3) + 80003ebc: 0cb6b023 sd a1,192(a3) + 80003ec0: 0cb6b423 sd a1,200(a3) + 80003ec4: 0cb6b823 sd a1,208(a3) + 80003ec8: 0cb6bc23 sd a1,216(a3) + 80003ecc: 0eb6b023 sd a1,224(a3) + 80003ed0: 0eb6b423 sd a1,232(a3) + 80003ed4: 0eb6b823 sd a1,240(a3) + 80003ed8: 0eb6bc23 sd a1,248(a3) + 80003edc: 10068693 addi a3,a3,256 + 80003ee0: f666eee3 bltu a3,t1,80003e5c + 80003ee4: 8a1d andi a2,a2,7 + 80003ee6: c659 beqz a2,80003f74 + 80003ee8: 00000297 auipc t0,0x0 + 80003eec: 40c78633 sub a2,a5,a2 + 80003ef0: 060a slli a2,a2,0x2 + 80003ef2: 92b2 add t0,t0,a2 + 80003ef4: 01028067 jr 16(t0) # 80003ef8 + 80003ef8: 00b68f23 sb a1,30(a3) + 80003efc: 00b68ea3 sb a1,29(a3) + 80003f00: 00b68e23 sb a1,28(a3) + 80003f04: 00b68da3 sb a1,27(a3) + 80003f08: 00b68d23 sb a1,26(a3) + 80003f0c: 00b68ca3 sb a1,25(a3) + 80003f10: 00b68c23 sb a1,24(a3) + 80003f14: 00b68ba3 sb a1,23(a3) + 80003f18: 00b68b23 sb a1,22(a3) + 80003f1c: 00b68aa3 sb a1,21(a3) + 80003f20: 00b68a23 sb a1,20(a3) + 80003f24: 00b689a3 sb a1,19(a3) + 80003f28: 00b68923 sb a1,18(a3) + 80003f2c: 00b688a3 sb a1,17(a3) + 80003f30: 00b68823 sb a1,16(a3) + 80003f34: 00b687a3 sb a1,15(a3) + 80003f38: 00b68723 sb a1,14(a3) + 80003f3c: 00b686a3 sb a1,13(a3) + 80003f40: 00b68623 sb a1,12(a3) + 80003f44: 00b685a3 sb a1,11(a3) + 80003f48: 00b68523 sb a1,10(a3) + 80003f4c: 00b684a3 sb a1,9(a3) + 80003f50: 00b68423 sb a1,8(a3) + 80003f54: 00b683a3 sb a1,7(a3) + 80003f58: 00b68323 sb a1,6(a3) + 80003f5c: 00b682a3 sb a1,5(a3) + 80003f60: 00b68223 sb a1,4(a3) + 80003f64: 00b681a3 sb a1,3(a3) + 80003f68: 00b68123 sb a1,2(a3) + 80003f6c: 00b680a3 sb a1,1(a3) + 80003f70: 00b68023 sb a1,0(a3) + 80003f74: 8082 ret -0000000080003fb8 <_ldtoa_r>: - 80003fb8: 00005317 auipc t1,0x5 - 80003fbc: 6a830313 addi t1,t1,1704 # 80009660 - 80003fc0: 00033f03 ld t5,0(t1) - 80003fc4: 00833e83 ld t4,8(t1) - 80003fc8: 00005317 auipc t1,0x5 - 80003fcc: 6a832303 lw t1,1704(t1) # 80009670 - 80003fd0: 05053e03 ld t3,80(a0) - 80003fd4: 7171 addi sp,sp,-176 - 80003fd6: ed26 sd s1,152(sp) - 80003fd8: e94a sd s2,144(sp) - 80003fda: e54e sd s3,136(sp) - 80003fdc: e152 sd s4,128(sp) - 80003fde: fcd6 sd s5,120(sp) - 80003fe0: f0e2 sd s8,96(sp) - 80003fe2: ece6 sd s9,88(sp) - 80003fe4: e8ea sd s10,80(sp) - 80003fe6: f506 sd ra,168(sp) - 80003fe8: f122 sd s0,160(sp) - 80003fea: f8da sd s6,112(sp) - 80003fec: f4de sd s7,104(sp) - 80003fee: fc7a sd t5,56(sp) - 80003ff0: e0f6 sd t4,64(sp) - 80003ff2: c49a sw t1,72(sp) - 80003ff4: 89aa mv s3,a0 - 80003ff6: 892e mv s2,a1 - 80003ff8: 84b2 mv s1,a2 - 80003ffa: 8c36 mv s8,a3 - 80003ffc: 8cba mv s9,a4 - 80003ffe: 8a3e mv s4,a5 - 80004000: 8ac2 mv s5,a6 - 80004002: 8d46 mv s10,a7 - 80004004: 000e0763 beqz t3,80004012 <_ldtoa_r+0x5a> - 80004008: 85f2 mv a1,t3 - 8000400a: 3ca010ef jal 800053d4 <__freedtoa> - 8000400e: 0409b823 sd zero,80(s3) - 80004012: 4716 lw a4,68(sp) - 80004014: 0004a793 slti a5,s1,0 - 80004018: 00149413 slli s0,s1,0x1 - 8000401c: 4017569b sraiw a3,a4,0x1 - 80004020: 8ff5 and a5,a5,a3 - 80004022: 8f3d xor a4,a4,a5 - 80004024: c2ba sw a4,68(sp) - 80004026: 0004a713 slti a4,s1,0 - 8000402a: 00eaa023 sw a4,0(s5) - 8000402e: 00149713 slli a4,s1,0x1 - 80004032: 8005 srli s0,s0,0x1 - 80004034: 03175b13 srli s6,a4,0x31 - 80004038: 77f1 lui a5,0xffffc - 8000403a: 01049713 slli a4,s1,0x10 - 8000403e: f917879b addiw a5,a5,-111 # ffffffffffffbf91 <_stack_top+0xffffffff7fefbf91> - 80004042: 03075a93 srli s5,a4,0x30 - 80004046: 86a2 mv a3,s0 - 80004048: 85a2 mv a1,s0 - 8000404a: 864a mv a2,s2 - 8000404c: 854a mv a0,s2 - 8000404e: f44a sd s2,40(sp) - 80004050: d826 sw s1,48(sp) - 80004052: 00fb0bbb addw s7,s6,a5 - 80004056: da56 sw s5,52(sp) - 80004058: 579040ef jal 80008dd0 <__unordtf2> - 8000405c: ed5d bnez a0,8000411a <_ldtoa_r+0x162> - 8000405e: 00005797 auipc a5,0x5 - 80004062: 5c278793 addi a5,a5,1474 # 80009620 - 80004066: 6390 ld a2,0(a5) - 80004068: 6794 ld a3,8(a5) - 8000406a: 854a mv a0,s2 - 8000406c: 85a2 mv a1,s0 - 8000406e: ec32 sd a2,24(sp) - 80004070: e836 sd a3,16(sp) - 80004072: 55f040ef jal 80008dd0 <__unordtf2> - 80004076: ed31 bnez a0,800040d2 <_ldtoa_r+0x11a> - 80004078: 6662 ld a2,24(sp) - 8000407a: 66c2 ld a3,16(sp) - 8000407c: 854a mv a0,s2 - 8000407e: 85a2 mv a1,s0 - 80004080: 691030ef jal 80007f10 <__letf2> - 80004084: 04a05763 blez a0,800040d2 <_ldtoa_r+0x11a> - 80004088: 478d li a5,3 - 8000408a: d23e sw a5,36(sp) - 8000408c: 87e2 mv a5,s8 - 8000408e: 1058 addi a4,sp,36 - 80004090: e06a sd s10,0(sp) - 80004092: 8866 mv a6,s9 - 80004094: 865e mv a2,s7 - 80004096: 854e mv a0,s3 - 80004098: 88d2 mv a7,s4 - 8000409a: 1034 addi a3,sp,40 - 8000409c: 182c addi a1,sp,56 - 8000409e: 0f8000ef jal 80004196 <__gdtoa> - 800040a2: 000a2703 lw a4,0(s4) - 800040a6: 77e1 lui a5,0xffff8 - 800040a8: 00f71763 bne a4,a5,800040b6 <_ldtoa_r+0xfe> - 800040ac: 800007b7 lui a5,0x80000 - 800040b0: 17fd addi a5,a5,-1 # ffffffff7fffffff <_stack_top+0xfffffffeffefffff> - 800040b2: 00fa2023 sw a5,0(s4) - 800040b6: 70aa ld ra,168(sp) - 800040b8: 740a ld s0,160(sp) - 800040ba: 64ea ld s1,152(sp) - 800040bc: 694a ld s2,144(sp) - 800040be: 69aa ld s3,136(sp) - 800040c0: 6a0a ld s4,128(sp) - 800040c2: 7ae6 ld s5,120(sp) - 800040c4: 7b46 ld s6,112(sp) - 800040c6: 7ba6 ld s7,104(sp) - 800040c8: 7c06 ld s8,96(sp) - 800040ca: 6ce6 ld s9,88(sp) - 800040cc: 6d46 ld s10,80(sp) - 800040ce: 614d addi sp,sp,176 - 800040d0: 8082 ret - 800040d2: 00005797 auipc a5,0x5 - 800040d6: 55e78793 addi a5,a5,1374 # 80009630 - 800040da: 6390 ld a2,0(a5) - 800040dc: 6794 ld a3,8(a5) - 800040de: 85a2 mv a1,s0 - 800040e0: 854a mv a0,s2 - 800040e2: 579030ef jal 80007e5a <__getf2> - 800040e6: 00054963 bltz a0,800040f8 <_ldtoa_r+0x140> - 800040ea: 67c1 lui a5,0x10 - 800040ec: 0157e7b3 or a5,a5,s5 - 800040f0: 4705 li a4,1 - 800040f2: da3e sw a5,52(sp) - 800040f4: d23a sw a4,36(sp) - 800040f6: bf59 j 8000408c <_ldtoa_r+0xd4> - 800040f8: 854a mv a0,s2 - 800040fa: 85a6 mv a1,s1 - 800040fc: 4601 li a2,0 - 800040fe: 4681 li a3,0 - 80004100: 4c1030ef jal 80007dc0 <__eqtf2> - 80004104: e119 bnez a0,8000410a <_ldtoa_r+0x152> - 80004106: d202 sw zero,36(sp) - 80004108: b751 j 8000408c <_ldtoa_r+0xd4> - 8000410a: 77f1 lui a5,0xffffc - 8000410c: f927879b addiw a5,a5,-110 # ffffffffffffbf92 <_stack_top+0xffffffff7fefbf92> - 80004110: 4709 li a4,2 - 80004112: 00fb0bbb addw s7,s6,a5 - 80004116: d23a sw a4,36(sp) - 80004118: bf95 j 8000408c <_ldtoa_r+0xd4> - 8000411a: 4791 li a5,4 - 8000411c: d23e sw a5,36(sp) - 8000411e: b7bd j 8000408c <_ldtoa_r+0xd4> +0000000080003f76 : + 80003f76: 479d li a5,7 + 80003f78: 00c50733 add a4,a0,a2 + 80003f7c: 08c7f363 bgeu a5,a2,80004002 + 80003f80: 00a5c7b3 xor a5,a1,a0 + 80003f84: 8b9d andi a5,a5,7 + 80003f86: e7d5 bnez a5,80004032 + 80003f88: 00757693 andi a3,a0,7 + 80003f8c: 87aa mv a5,a0 + 80003f8e: 14069a63 bnez a3,800040e2 + 80003f92: ff877613 andi a2,a4,-8 + 80003f96: 40f60833 sub a6,a2,a5 + 80003f9a: 04000693 li a3,64 + 80003f9e: 0106c563 blt a3,a6,80003fa8 + 80003fa2: 06e7ed63 bltu a5,a4,8000401c + 80003fa6: 8082 ret + 80003fa8: 0005b803 ld a6,0(a1) + 80003fac: 0085b283 ld t0,8(a1) + 80003fb0: 0105bf83 ld t6,16(a1) + 80003fb4: 0185bf03 ld t5,24(a1) + 80003fb8: 0205be83 ld t4,32(a1) + 80003fbc: 0285be03 ld t3,40(a1) + 80003fc0: 0305b303 ld t1,48(a1) + 80003fc4: 0385b883 ld a7,56(a1) + 80003fc8: 04858593 addi a1,a1,72 + 80003fcc: 0107b023 sd a6,0(a5) + 80003fd0: ff85b803 ld a6,-8(a1) + 80003fd4: 0057b423 sd t0,8(a5) + 80003fd8: 01f7b823 sd t6,16(a5) + 80003fdc: 01e7bc23 sd t5,24(a5) + 80003fe0: 03d7b023 sd t4,32(a5) + 80003fe4: 03c7b423 sd t3,40(a5) + 80003fe8: 0267b823 sd t1,48(a5) + 80003fec: 0317bc23 sd a7,56(a5) + 80003ff0: 04878793 addi a5,a5,72 + 80003ff4: ff07bc23 sd a6,-8(a5) + 80003ff8: 40f60833 sub a6,a2,a5 + 80003ffc: fb06c6e3 blt a3,a6,80003fa8 + 80004000: b74d j 80003fa2 + 80004002: fae572e3 bgeu a0,a4,80003fa6 + 80004006: 962e add a2,a2,a1 + 80004008: 87aa mv a5,a0 + 8000400a: 0005c703 lbu a4,0(a1) + 8000400e: 0585 addi a1,a1,1 + 80004010: 0785 addi a5,a5,1 + 80004012: fee78fa3 sb a4,-1(a5) + 80004016: fec59ae3 bne a1,a2,8000400a + 8000401a: 8082 ret + 8000401c: 8f1d sub a4,a4,a5 + 8000401e: 972e add a4,a4,a1 + 80004020: 0005c683 lbu a3,0(a1) + 80004024: 0585 addi a1,a1,1 + 80004026: 0785 addi a5,a5,1 + 80004028: fed78fa3 sb a3,-1(a5) + 8000402c: fee59ae3 bne a1,a4,80004020 + 80004030: 8082 ret + 80004032: 40a00e33 neg t3,a0 + 80004036: 007e7e13 andi t3,t3,7 + 8000403a: 01c50eb3 add t4,a0,t3 + 8000403e: 87aa mv a5,a0 + 80004040: 9e2e add t3,t3,a1 + 80004042: 01d57a63 bgeu a0,t4,80004056 + 80004046: 0005c683 lbu a3,0(a1) + 8000404a: 0585 addi a1,a1,1 + 8000404c: 0785 addi a5,a5,1 + 8000404e: fed78fa3 sb a3,-1(a5) + 80004052: ffc59ae3 bne a1,t3,80004046 + 80004056: ff877f13 andi t5,a4,-8 + 8000405a: 86f2 mv a3,t3 + 8000405c: 07eef563 bgeu t4,t5,800040c6 + 80004060: 87f2 mv a5,t3 + 80004062: 8376 mv t1,t4 + 80004064: 0017c603 lbu a2,1(a5) + 80004068: 0007c583 lbu a1,0(a5) + 8000406c: 0027c683 lbu a3,2(a5) + 80004070: 0037c883 lbu a7,3(a5) + 80004074: 0047c803 lbu a6,4(a5) + 80004078: 0622 slli a2,a2,0x8 + 8000407a: 8e4d or a2,a2,a1 + 8000407c: 06c2 slli a3,a3,0x10 + 8000407e: 0057c583 lbu a1,5(a5) + 80004082: 8ed1 or a3,a3,a2 + 80004084: 08e2 slli a7,a7,0x18 + 80004086: 0067c603 lbu a2,6(a5) + 8000408a: 00d8e8b3 or a7,a7,a3 + 8000408e: 1802 slli a6,a6,0x20 + 80004090: 0077c683 lbu a3,7(a5) + 80004094: 01186833 or a6,a6,a7 + 80004098: 15a2 slli a1,a1,0x28 + 8000409a: 0105e5b3 or a1,a1,a6 + 8000409e: 1642 slli a2,a2,0x30 + 800040a0: 8e4d or a2,a2,a1 + 800040a2: 16e2 slli a3,a3,0x38 + 800040a4: 0321 addi t1,t1,8 + 800040a6: 8ed1 or a3,a3,a2 + 800040a8: fed33c23 sd a3,-8(t1) + 800040ac: 07a1 addi a5,a5,8 + 800040ae: fbe36be3 bltu t1,t5,80004064 + 800040b2: ffff0793 addi a5,t5,-1 + 800040b6: 41d787b3 sub a5,a5,t4 + 800040ba: 9be1 andi a5,a5,-8 + 800040bc: 0e21 addi t3,t3,8 + 800040be: 0ea1 addi t4,t4,8 + 800040c0: 00fe06b3 add a3,t3,a5 + 800040c4: 9ebe add t4,t4,a5 + 800040c6: eeeef0e3 bgeu t4,a4,80003fa6 + 800040ca: 41d70733 sub a4,a4,t4 + 800040ce: 9736 add a4,a4,a3 + 800040d0: 0006c783 lbu a5,0(a3) + 800040d4: 0685 addi a3,a3,1 + 800040d6: 0e85 addi t4,t4,1 + 800040d8: fefe8fa3 sb a5,-1(t4) + 800040dc: fee69ae3 bne a3,a4,800040d0 + 800040e0: 8082 ret + 800040e2: 4821 li a6,8 + 800040e4: 40d80833 sub a6,a6,a3 + 800040e8: 010507b3 add a5,a0,a6 + 800040ec: 86aa mv a3,a0 + 800040ee: 982e add a6,a6,a1 + 800040f0: 00f57a63 bgeu a0,a5,80004104 + 800040f4: 0005c603 lbu a2,0(a1) + 800040f8: 0585 addi a1,a1,1 + 800040fa: 0685 addi a3,a3,1 + 800040fc: fec68fa3 sb a2,-1(a3) + 80004100: ff059ae3 bne a1,a6,800040f4 + 80004104: 85c2 mv a1,a6 + 80004106: b571 j 80003f92 -0000000080004120 <_ldcheck>: - 80004120: 7179 addi sp,sp,-48 - 80004122: f022 sd s0,32(sp) - 80004124: 6500 ld s0,8(a0) - 80004126: e84a sd s2,16(sp) - 80004128: 00053903 ld s2,0(a0) - 8000412c: 0406 slli s0,s0,0x1 - 8000412e: 8005 srli s0,s0,0x1 - 80004130: 86a2 mv a3,s0 - 80004132: 85a2 mv a1,s0 - 80004134: 864a mv a2,s2 - 80004136: 854a mv a0,s2 - 80004138: f406 sd ra,40(sp) - 8000413a: 497040ef jal 80008dd0 <__unordtf2> - 8000413e: e531 bnez a0,8000418a <_ldcheck+0x6a> - 80004140: 00005797 auipc a5,0x5 - 80004144: 4e078793 addi a5,a5,1248 # 80009620 - 80004148: 6390 ld a2,0(a5) - 8000414a: 6794 ld a3,8(a5) - 8000414c: 854a mv a0,s2 - 8000414e: 85a2 mv a1,s0 - 80004150: ec26 sd s1,24(sp) - 80004152: e432 sd a2,8(sp) - 80004154: e036 sd a3,0(sp) - 80004156: 4485 li s1,1 - 80004158: 479040ef jal 80008dd0 <__unordtf2> - 8000415c: cd09 beqz a0,80004176 <_ldcheck+0x56> - 8000415e: 70a2 ld ra,40(sp) - 80004160: 7402 ld s0,32(sp) - 80004162: 0014c513 xori a0,s1,1 - 80004166: 0ff57513 zext.b a0,a0 - 8000416a: 64e2 ld s1,24(sp) - 8000416c: 6942 ld s2,16(sp) - 8000416e: 0015151b slliw a0,a0,0x1 - 80004172: 6145 addi sp,sp,48 - 80004174: 8082 ret - 80004176: 6622 ld a2,8(sp) - 80004178: 6682 ld a3,0(sp) - 8000417a: 854a mv a0,s2 - 8000417c: 85a2 mv a1,s0 - 8000417e: 593030ef jal 80007f10 <__letf2> - 80004182: fca05ee3 blez a0,8000415e <_ldcheck+0x3e> - 80004186: 4481 li s1,0 - 80004188: bfd9 j 8000415e <_ldcheck+0x3e> - 8000418a: 70a2 ld ra,40(sp) - 8000418c: 7402 ld s0,32(sp) - 8000418e: 6942 ld s2,16(sp) - 80004190: 4505 li a0,1 - 80004192: 6145 addi sp,sp,48 +0000000080004108 : + 80004108: 00757793 andi a5,a0,7 + 8000410c: 872a mv a4,a0 + 8000410e: efb1 bnez a5,8000416a + 80004110: 7f7f87b7 lui a5,0x7f7f8 + 80004114: f7f78793 addi a5,a5,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> + 80004118: 02079693 slli a3,a5,0x20 + 8000411c: 96be add a3,a3,a5 + 8000411e: 55fd li a1,-1 + 80004120: 6310 ld a2,0(a4) + 80004122: 0721 addi a4,a4,8 + 80004124: 00d677b3 and a5,a2,a3 + 80004128: 97b6 add a5,a5,a3 + 8000412a: 8fd1 or a5,a5,a2 + 8000412c: 8fd5 or a5,a5,a3 + 8000412e: feb789e3 beq a5,a1,80004120 + 80004132: ff874783 lbu a5,-8(a4) + 80004136: 40a706b3 sub a3,a4,a0 + 8000413a: c7a9 beqz a5,80004184 + 8000413c: ff974783 lbu a5,-7(a4) + 80004140: cf9d beqz a5,8000417e + 80004142: ffa74783 lbu a5,-6(a4) + 80004146: c7a9 beqz a5,80004190 + 80004148: ffb74783 lbu a5,-5(a4) + 8000414c: cf9d beqz a5,8000418a + 8000414e: ffc74783 lbu a5,-4(a4) + 80004152: c3b1 beqz a5,80004196 + 80004154: ffd74783 lbu a5,-3(a4) + 80004158: c3b1 beqz a5,8000419c + 8000415a: ffe74783 lbu a5,-2(a4) + 8000415e: 00f03533 snez a0,a5 + 80004162: 9536 add a0,a0,a3 + 80004164: 1579 addi a0,a0,-2 + 80004166: 8082 ret + 80004168: d6c5 beqz a3,80004110 + 8000416a: 00074783 lbu a5,0(a4) + 8000416e: 0705 addi a4,a4,1 + 80004170: 00777693 andi a3,a4,7 + 80004174: fbf5 bnez a5,80004168 + 80004176: 8f09 sub a4,a4,a0 + 80004178: fff70513 addi a0,a4,-1 + 8000417c: 8082 ret + 8000417e: ff968513 addi a0,a3,-7 + 80004182: 8082 ret + 80004184: ff868513 addi a0,a3,-8 + 80004188: 8082 ret + 8000418a: ffb68513 addi a0,a3,-5 + 8000418e: 8082 ret + 80004190: ffa68513 addi a0,a3,-6 80004194: 8082 ret + 80004196: ffc68513 addi a0,a3,-4 + 8000419a: 8082 ret + 8000419c: ffd68513 addi a0,a3,-3 + 800041a0: 8082 ret -0000000080004196 <__gdtoa>: - 80004196: 00072303 lw t1,0(a4) - 8000419a: 7111 addi sp,sp,-256 - 8000419c: f9a2 sd s0,240(sp) - 8000419e: 6412 ld s0,256(sp) - 800041a0: edce sd s3,216(sp) - 800041a2: fcf37e13 andi t3,t1,-49 - 800041a6: fd86 sd ra,248(sp) - 800041a8: 01c72023 sw t3,0(a4) - 800041ac: 4e8d li t4,3 - 800041ae: 00f37e13 andi t3,t1,15 - 800041b2: 89a2 mv s3,s0 - 800041b4: 27de0563 beq t3,t4,8000441e <__gdtoa+0x288> - 800041b8: fd5e sd s7,184(sp) - 800041ba: 00c37413 andi s0,t1,12 - 800041be: 8ba2 mv s7,s0 - 800041c0: 1c041c63 bnez s0,80004398 <__gdtoa+0x202> - 800041c4: e9d2 sd s4,208(sp) - 800041c6: f962 sd s8,176(sp) - 800041c8: f566 sd s9,168(sp) - 800041ca: f16a sd s10,160(sp) - 800041cc: ed6e sd s11,152(sp) - 800041ce: e03a sd a4,0(sp) - 800041d0: 8a2a mv s4,a0 - 800041d2: 8cc6 mv s9,a7 - 800041d4: 8c36 mv s8,a3 - 800041d6: 8d32 mv s10,a2 - 800041d8: 8dae mv s11,a1 - 800041da: 1e0e0963 beqz t3,800043cc <__gdtoa+0x236> - 800041de: 4194 lw a3,0(a1) - 800041e0: e5d6 sd s5,200(sp) - 800041e2: e1da sd s6,192(sp) - 800041e4: 8abe mv s5,a5 - 800041e6: 02000793 li a5,32 - 800041ea: 8b42 mv s6,a6 - 800041ec: 4581 li a1,0 - 800041ee: 00d7d763 bge a5,a3,800041fc <__gdtoa+0x66> - 800041f2: 0017979b slliw a5,a5,0x1 - 800041f6: 2585 addiw a1,a1,1 - 800041f8: fed7cde3 blt a5,a3,800041f2 <__gdtoa+0x5c> - 800041fc: 8552 mv a0,s4 - 800041fe: e836 sd a3,16(sp) - 80004200: e41a sd t1,8(sp) - 80004202: 29b010ef jal 80005c9c <_Balloc> - 80004206: 842a mv s0,a0 - 80004208: 4701 li a4,0 - 8000420a: 1e050c63 beqz a0,80004402 <__gdtoa+0x26c> - 8000420e: 66c2 ld a3,16(sp) - 80004210: 6322 ld t1,8(sp) - 80004212: 87e2 mv a5,s8 - 80004214: fff6871b addiw a4,a3,-1 - 80004218: 4057571b sraiw a4,a4,0x5 - 8000421c: 070a slli a4,a4,0x2 - 8000421e: 00ec0533 add a0,s8,a4 - 80004222: 01840613 addi a2,s0,24 - 80004226: 438c lw a1,0(a5) - 80004228: 0791 addi a5,a5,4 - 8000422a: 0611 addi a2,a2,4 - 8000422c: feb62e23 sw a1,-4(a2) - 80004230: fef57be3 bgeu a0,a5,80004226 <__gdtoa+0x90> - 80004234: 001c0793 addi a5,s8,1 - 80004238: 0505 addi a0,a0,1 - 8000423a: 00f53533 sltu a0,a0,a5 - 8000423e: 157d addi a0,a0,-1 - 80004240: 8f69 and a4,a4,a0 - 80004242: 0711 addi a4,a4,4 - 80004244: 40275793 srai a5,a4,0x2 - 80004248: 9722 add a4,a4,s0 - 8000424a: a021 j 80004252 <__gdtoa+0xbc> - 8000424c: 1771 addi a4,a4,-4 - 8000424e: 1e078763 beqz a5,8000443c <__gdtoa+0x2a6> - 80004252: 4b50 lw a2,20(a4) - 80004254: 85be mv a1,a5 - 80004256: 37fd addiw a5,a5,-1 - 80004258: da75 beqz a2,8000424c <__gdtoa+0xb6> - 8000425a: 078a slli a5,a5,0x2 - 8000425c: 97a2 add a5,a5,s0 - 8000425e: 4f88 lw a0,24(a5) - 80004260: c84c sw a1,20(s0) - 80004262: ec1a sd t1,24(sp) - 80004264: e836 sd a3,16(sp) - 80004266: e42e sd a1,8(sp) - 80004268: 3a7010ef jal 80005e0e <__hi0bits> - 8000426c: 65a2 ld a1,8(sp) - 8000426e: 6362 ld t1,24(sp) - 80004270: 66c2 ld a3,16(sp) - 80004272: 0055959b slliw a1,a1,0x5 - 80004276: 40a587bb subw a5,a1,a0 - 8000427a: 8522 mv a0,s0 - 8000427c: ec3e sd a5,24(sp) - 8000427e: e836 sd a3,16(sp) - 80004280: e41a sd t1,8(sp) - 80004282: 380010ef jal 80005602 <__trailz_D2A> - 80004286: c72a sw a0,140(sp) - 80004288: 6322 ld t1,8(sp) - 8000428a: 66c2 ld a3,16(sp) - 8000428c: 67e2 ld a5,24(sp) - 8000428e: 8fea mv t6,s10 - 80004290: 1a051963 bnez a0,80004442 <__gdtoa+0x2ac> - 80004294: 4858 lw a4,20(s0) - 80004296: 12070563 beqz a4,800043c0 <__gdtoa+0x22a> - 8000429a: 016c addi a1,sp,140 - 8000429c: 8522 mv a0,s0 - 8000429e: f03e sd a5,32(sp) - 800042a0: ec36 sd a3,24(sp) - 800042a2: e87e sd t6,16(sp) - 800042a4: e41a sd t1,8(sp) - 800042a6: f5a6 sd s1,232(sp) - 800042a8: 2b8020ef jal 80006560 <__b2d> - 800042ac: e2050753 fmv.x.d a4,fa0 - 800042b0: 3ff005b7 lui a1,0x3ff00 - 800042b4: 00006797 auipc a5,0x6 - 800042b8: 8347b707 fld fa4,-1996(a5) # 80009ae8 <__clz_tab+0x108> - 800042bc: 00c71613 slli a2,a4,0xc - 800042c0: 02071813 slli a6,a4,0x20 - 800042c4: 02c65713 srli a4,a2,0x2c - 800042c8: 00b76633 or a2,a4,a1 - 800042cc: 02061713 slli a4,a2,0x20 - 800042d0: 02085813 srli a6,a6,0x20 - 800042d4: 00e86833 or a6,a6,a4 - 800042d8: f20807d3 fmv.d.x fa5,a6 - 800042dc: 00006797 auipc a5,0x6 - 800042e0: 8147b587 fld fa1,-2028(a5) # 80009af0 <__clz_tab+0x110> - 800042e4: 00006797 auipc a5,0x6 - 800042e8: 8147b607 fld fa2,-2028(a5) # 80009af8 <__clz_tab+0x118> - 800042ec: 0ae7f753 fsub.d fa4,fa5,fa4 - 800042f0: 6fc2 ld t6,16(sp) - 800042f2: 7782 ld a5,32(sp) - 800042f4: 85b2 mv a1,a2 - 800042f6: 00006717 auipc a4,0x6 - 800042fa: 80a73687 fld fa3,-2038(a4) # 80009b00 <__clz_tab+0x120> - 800042fe: 00ff853b addw a0,t6,a5 - 80004302: fff5061b addiw a2,a0,-1 - 80004306: 62b77743 fmadd.d fa4,fa4,fa1,fa2 - 8000430a: d20607d3 fcvt.d.w fa5,a2 - 8000430e: 6322 ld t1,8(sp) - 80004310: 66e2 ld a3,24(sp) - 80004312: 8732 mv a4,a2 - 80004314: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 - 80004318: 00065463 bgez a2,80004320 <__gdtoa+0x18a> - 8000431c: 4705 li a4,1 - 8000431e: 9f09 subw a4,a4,a0 - 80004320: bcb7071b addiw a4,a4,-1077 - 80004324: 00e05a63 blez a4,80004338 <__gdtoa+0x1a2> - 80004328: d20706d3 fcvt.d.w fa3,a4 - 8000432c: 00005717 auipc a4,0x5 - 80004330: 7dc73707 fld fa4,2012(a4) # 80009b08 <__clz_tab+0x128> - 80004334: 7ae6f7c3 fmadd.d fa5,fa3,fa4,fa5 - 80004338: f2000753 fmv.d.x fa4,zero - 8000433c: c20798d3 fcvt.w.d a7,fa5,rtz - 80004340: a2e79753 flt.d a4,fa5,fa4 - 80004344: 42071f63 bnez a4,80004782 <__gdtoa+0x5ec> - 80004348: 0146171b slliw a4,a2,0x14 - 8000434c: 1802 slli a6,a6,0x20 - 8000434e: 9f2d addw a4,a4,a1 - 80004350: 1702 slli a4,a4,0x20 - 80004352: 02085813 srli a6,a6,0x20 - 80004356: 40c7863b subw a2,a5,a2 - 8000435a: 00e86833 or a6,a6,a4 - 8000435e: fff60f1b addiw t5,a2,-1 - 80004362: 4759 li a4,22 - 80004364: 8e7a mv t3,t5 - 80004366: 0f176b63 bltu a4,a7,8000445c <__gdtoa+0x2c6> - 8000436a: 00005597 auipc a1,0x5 - 8000436e: 31e58593 addi a1,a1,798 # 80009688 <__mprec_tens> - 80004372: 00389713 slli a4,a7,0x3 - 80004376: 972e add a4,a4,a1 - 80004378: 231c fld fa5,0(a4) - 8000437a: f2080753 fmv.d.x fa4,a6 - 8000437e: a2f71753 flt.d a4,fa4,fa5 - 80004382: 2e071d63 bnez a4,8000467c <__gdtoa+0x4e6> - 80004386: 12c057e3 blez a2,80004cb4 <__gdtoa+0xb1e> - 8000438a: 01e88f3b addw t5,a7,t5 - 8000438e: f082 sd zero,96(sp) - 80004390: e8c6 sd a7,80(sp) - 80004392: e482 sd zero,72(sp) - 80004394: e802 sd zero,16(sp) - 80004396: a0d5 j 8000447a <__gdtoa+0x2e4> - 80004398: 4791 li a5,4 - 8000439a: 4701 li a4,0 - 8000439c: 04fe1963 bne t3,a5,800043ee <__gdtoa+0x258> - 800043a0: 744e ld s0,240(sp) - 800043a2: 7bea ld s7,184(sp) - 800043a4: 70ee ld ra,248(sp) - 800043a6: 77e1 lui a5,0xffff8 - 800043a8: 864e mv a2,s3 - 800043aa: 69ee ld s3,216(sp) - 800043ac: 00f8a023 sw a5,0(a7) - 800043b0: 86f6 mv a3,t4 - 800043b2: 00005597 auipc a1,0x5 - 800043b6: f5658593 addi a1,a1,-170 # 80009308 <__clzdi2+0x32e> - 800043ba: 6111 addi sp,sp,256 - 800043bc: 7a70006f j 80005362 <__nrv_alloc_D2A> - 800043c0: 85a2 mv a1,s0 - 800043c2: 8552 mv a0,s4 - 800043c4: 149010ef jal 80005d0c <_Bfree> - 800043c8: 6aae ld s5,200(sp) - 800043ca: 6b0e ld s6,192(sp) - 800043cc: 4685 li a3,1 - 800043ce: 8552 mv a0,s4 - 800043d0: 00dca023 sw a3,0(s9) - 800043d4: 864e mv a2,s3 - 800043d6: 00005597 auipc a1,0x5 - 800043da: f1a58593 addi a1,a1,-230 # 800092f0 <__clzdi2+0x316> - 800043de: 785000ef jal 80005362 <__nrv_alloc_D2A> - 800043e2: 6a4e ld s4,208(sp) - 800043e4: 7c4a ld s8,176(sp) - 800043e6: 7caa ld s9,168(sp) - 800043e8: 7d0a ld s10,160(sp) - 800043ea: 6dea ld s11,152(sp) - 800043ec: 872a mv a4,a0 - 800043ee: 70ee ld ra,248(sp) - 800043f0: 744e ld s0,240(sp) - 800043f2: 7bea ld s7,184(sp) - 800043f4: 69ee ld s3,216(sp) - 800043f6: 853a mv a0,a4 - 800043f8: 6111 addi sp,sp,256 +00000000800041a2 : + 800041a2: 00757693 andi a3,a0,7 + 800041a6: 872a mv a4,a0 + 800041a8: 0ff5f813 zext.b a6,a1 + 800041ac: cead beqz a3,80004226 + 800041ae: 47a1 li a5,8 + 800041b0: 8f95 sub a5,a5,a3 + 800041b2: 12f66063 bltu a2,a5,800042d2 + 800041b6: 469d li a3,7 + 800041b8: 06f6e663 bltu a3,a5,80004224 + 800041bc: 00006517 auipc a0,0x6 + 800041c0: e1450513 addi a0,a0,-492 # 80009fd0 + 800041c4: 00279693 slli a3,a5,0x2 + 800041c8: 96aa add a3,a3,a0 + 800041ca: 4294 lw a3,0(a3) + 800041cc: 96aa add a3,a3,a0 + 800041ce: 8682 jr a3 + 800041d0: 00074683 lbu a3,0(a4) + 800041d4: 853a mv a0,a4 + 800041d6: 0f068d63 beq a3,a6,800042d0 + 800041da: 0705 addi a4,a4,1 + 800041dc: 00074683 lbu a3,0(a4) + 800041e0: 853a mv a0,a4 + 800041e2: 0f068763 beq a3,a6,800042d0 + 800041e6: 0705 addi a4,a4,1 + 800041e8: 00074683 lbu a3,0(a4) + 800041ec: 853a mv a0,a4 + 800041ee: 0f068163 beq a3,a6,800042d0 + 800041f2: 0705 addi a4,a4,1 + 800041f4: 00074683 lbu a3,0(a4) + 800041f8: 853a mv a0,a4 + 800041fa: 0d068b63 beq a3,a6,800042d0 + 800041fe: 0705 addi a4,a4,1 + 80004200: 00074683 lbu a3,0(a4) + 80004204: 853a mv a0,a4 + 80004206: 0d068563 beq a3,a6,800042d0 + 8000420a: 0705 addi a4,a4,1 + 8000420c: 00074683 lbu a3,0(a4) + 80004210: 853a mv a0,a4 + 80004212: 0b068f63 beq a3,a6,800042d0 + 80004216: 0705 addi a4,a4,1 + 80004218: 00074683 lbu a3,0(a4) + 8000421c: 853a mv a0,a4 + 8000421e: 0b068963 beq a3,a6,800042d0 + 80004222: 0705 addi a4,a4,1 + 80004224: 8e1d sub a2,a2,a5 + 80004226: ff867513 andi a0,a2,-8 + 8000422a: 953a add a0,a0,a4 + 8000422c: 08a77663 bgeu a4,a0,800042b8 + 80004230: 0ff5f593 zext.b a1,a1 + 80004234: 0085979b slliw a5,a1,0x8 + 80004238: 9fad addw a5,a5,a1 + 8000423a: 01079893 slli a7,a5,0x10 + 8000423e: 98be add a7,a7,a5 + 80004240: 7f7f87b7 lui a5,0x7f7f8 + 80004244: f7f78793 addi a5,a5,-129 # 7f7f7f7f <__dtim_size+0x7f6f7f7f> + 80004248: 02089693 slli a3,a7,0x20 + 8000424c: 02079593 slli a1,a5,0x20 + 80004250: 98b6 add a7,a7,a3 + 80004252: 95be add a1,a1,a5 + 80004254: 537d li t1,-1 + 80004256: a021 j 8000425e + 80004258: 0721 addi a4,a4,8 + 8000425a: 04a77e63 bgeu a4,a0,800042b6 + 8000425e: 6314 ld a3,0(a4) + 80004260: 00d8c6b3 xor a3,a7,a3 + 80004264: 00b6f7b3 and a5,a3,a1 + 80004268: 97ae add a5,a5,a1 + 8000426a: 8fd5 or a5,a5,a3 + 8000426c: 8fcd or a5,a5,a1 + 8000426e: fe6785e3 beq a5,t1,80004258 + 80004272: 00074783 lbu a5,0(a4) + 80004276: 853a mv a0,a4 + 80004278: 05078c63 beq a5,a6,800042d0 + 8000427c: 00174783 lbu a5,1(a4) + 80004280: 07078063 beq a5,a6,800042e0 + 80004284: 00274783 lbu a5,2(a4) + 80004288: 05078f63 beq a5,a6,800042e6 + 8000428c: 00374783 lbu a5,3(a4) + 80004290: 05078e63 beq a5,a6,800042ec + 80004294: 00474783 lbu a5,4(a4) + 80004298: 05078d63 beq a5,a6,800042f2 + 8000429c: 00574783 lbu a5,5(a4) + 800042a0: 03078d63 beq a5,a6,800042da + 800042a4: 00674503 lbu a0,6(a4) + 800042a8: 41050533 sub a0,a0,a6 + 800042ac: 00a03533 snez a0,a0 + 800042b0: 953a add a0,a0,a4 + 800042b2: 0519 addi a0,a0,6 + 800042b4: 8082 ret + 800042b6: 8a1d andi a2,a2,7 + 800042b8: 00c706b3 add a3,a4,a2 + 800042bc: 853a mv a0,a4 + 800042be: e609 bnez a2,800042c8 + 800042c0: a819 j 800042d6 + 800042c2: 0505 addi a0,a0,1 + 800042c4: 00d50963 beq a0,a3,800042d6 + 800042c8: 00054783 lbu a5,0(a0) + 800042cc: ff079be3 bne a5,a6,800042c2 + 800042d0: 8082 ret + 800042d2: 87b2 mv a5,a2 + 800042d4: b5cd j 800041b6 + 800042d6: 4501 li a0,0 + 800042d8: 8082 ret + 800042da: 00570513 addi a0,a4,5 + 800042de: 8082 ret + 800042e0: 00170513 addi a0,a4,1 + 800042e4: 8082 ret + 800042e6: 00270513 addi a0,a4,2 + 800042ea: 8082 ret + 800042ec: 00370513 addi a0,a4,3 + 800042f0: 8082 ret + 800042f2: 00470513 addi a0,a4,4 + 800042f6: 8082 ret + +00000000800042f8 : + 800042f8: 715d addi sp,sp,-80 + 800042fa: 00159793 slli a5,a1,0x1 + 800042fe: e0a2 sd s0,64(sp) + 80004300: fc26 sd s1,56(sp) + 80004302: f84a sd s2,48(sp) + 80004304: f44e sd s3,40(sp) + 80004306: f052 sd s4,32(sp) + 80004308: ec56 sd s5,24(sp) + 8000430a: e486 sd ra,72(sp) + 8000430c: 7461 lui s0,0xffff8 + 8000430e: 0317d493 srli s1,a5,0x31 + 80004312: 00062023 sw zero,0(a2) + 80004316: 8932 mv s2,a2 + 80004318: 0405 addi s0,s0,1 # ffffffffffff8001 <_stack_top+0xffffffff7fef8001> + 8000431a: 4601 li a2,0 + 8000431c: 4681 li a3,0 + 8000431e: 89ae mv s3,a1 + 80004320: e42e sd a1,8(sp) + 80004322: 8aaa mv s5,a0 + 80004324: 9426 add s0,s0,s1 + 80004326: 8a2a mv s4,a0 + 80004328: 180040ef jal 800084a8 <__eqtf2> + 8000432c: 00153793 seqz a5,a0 + 80004330: 00143413 seqz s0,s0 + 80004334: 8fc1 or a5,a5,s0 + 80004336: 85ce mv a1,s3 + 80004338: 8556 mv a0,s5 + 8000433a: e78d bnez a5,80004364 + 8000433c: 4681 li a3,0 + 8000433e: cc85 beqz s1,80004376 + 80004340: 7771 lui a4,0xffffc + 80004342: f80017b7 lui a5,0xf8001 + 80004346: 2709 addiw a4,a4,2 # ffffffffffffc002 <_stack_top+0xffffffff7fefc002> + 80004348: 1792 slli a5,a5,0x24 + 8000434a: 9cb9 addw s1,s1,a4 + 8000434c: 17fd addi a5,a5,-1 # fffffffff8000fff <_stack_top+0xffffffff77f00fff> + 8000434e: 01fff5b7 lui a1,0x1fff + 80004352: 9cb5 addw s1,s1,a3 + 80004354: 00f9f9b3 and s3,s3,a5 + 80004358: 1596 slli a1,a1,0x25 + 8000435a: 8552 mv a0,s4 + 8000435c: 00992023 sw s1,0(s2) + 80004360: 00b9e5b3 or a1,s3,a1 + 80004364: 60a6 ld ra,72(sp) + 80004366: 6406 ld s0,64(sp) + 80004368: 74e2 ld s1,56(sp) + 8000436a: 7942 ld s2,48(sp) + 8000436c: 79a2 ld s3,40(sp) + 8000436e: 7a02 ld s4,32(sp) + 80004370: 6ae2 ld s5,24(sp) + 80004372: 6161 addi sp,sp,80 + 80004374: 8082 ret + 80004376: 00006797 auipc a5,0x6 + 8000437a: c2a78793 addi a5,a5,-982 # 80009fa0 + 8000437e: 6794 ld a3,8(a5) + 80004380: 6390 ld a2,0(a5) + 80004382: 32c040ef jal 800086ae <__multf3> + 80004386: 00159793 slli a5,a1,0x1 + 8000438a: 89ae mv s3,a1 + 8000438c: 8a2a mv s4,a0 + 8000438e: 0317d493 srli s1,a5,0x31 + 80004392: f8e00693 li a3,-114 + 80004396: b76d j 80004340 + +0000000080004398 <_malloc_trim_r>: + 80004398: 7179 addi sp,sp,-48 + 8000439a: f022 sd s0,32(sp) + 8000439c: ec26 sd s1,24(sp) + 8000439e: e84a sd s2,16(sp) + 800043a0: e44e sd s3,8(sp) + 800043a2: 842e mv s0,a1 + 800043a4: f406 sd ra,40(sp) + 800043a6: 892a mv s2,a0 + 800043a8: 00006997 auipc s3,0x6 + 800043ac: 2f098993 addi s3,s3,752 # 8000a698 <__malloc_av_> + 800043b0: 7d1010ef jal 80006380 <__malloc_lock> + 800043b4: 0109b783 ld a5,16(s3) + 800043b8: 6705 lui a4,0x1 + 800043ba: 6784 ld s1,8(a5) + 800043bc: 98f1 andi s1,s1,-4 + 800043be: 7e048793 addi a5,s1,2016 + 800043c2: 7ff78793 addi a5,a5,2047 + 800043c6: 40878433 sub s0,a5,s0 + 800043ca: 8031 srli s0,s0,0xc + 800043cc: 147d addi s0,s0,-1 + 800043ce: 0432 slli s0,s0,0xc + 800043d0: 00e44b63 blt s0,a4,800043e6 <_malloc_trim_r+0x4e> + 800043d4: 4581 li a1,0 + 800043d6: 854a mv a0,s2 + 800043d8: 7d3020ef jal 800073aa <_sbrk_r> + 800043dc: 0109b783 ld a5,16(s3) + 800043e0: 97a6 add a5,a5,s1 + 800043e2: 00f50d63 beq a0,a5,800043fc <_malloc_trim_r+0x64> + 800043e6: 854a mv a0,s2 + 800043e8: 79b010ef jal 80006382 <__malloc_unlock> + 800043ec: 70a2 ld ra,40(sp) + 800043ee: 7402 ld s0,32(sp) + 800043f0: 64e2 ld s1,24(sp) + 800043f2: 6942 ld s2,16(sp) + 800043f4: 69a2 ld s3,8(sp) + 800043f6: 4501 li a0,0 + 800043f8: 6145 addi sp,sp,48 800043fa: 8082 ret - 800043fc: 74ae ld s1,232(sp) - 800043fe: 790e ld s2,224(sp) - 80004400: 4701 li a4,0 - 80004402: 70ee ld ra,248(sp) - 80004404: 744e ld s0,240(sp) - 80004406: 6a4e ld s4,208(sp) - 80004408: 6aae ld s5,200(sp) - 8000440a: 6b0e ld s6,192(sp) - 8000440c: 7c4a ld s8,176(sp) - 8000440e: 7caa ld s9,168(sp) - 80004410: 7d0a ld s10,160(sp) - 80004412: 6dea ld s11,152(sp) - 80004414: 7bea ld s7,184(sp) - 80004416: 69ee ld s3,216(sp) - 80004418: 853a mv a0,a4 - 8000441a: 6111 addi sp,sp,256 - 8000441c: 8082 ret - 8000441e: 8622 mv a2,s0 - 80004420: 744e ld s0,240(sp) - 80004422: 70ee ld ra,248(sp) - 80004424: 69ee ld s3,216(sp) - 80004426: 77e1 lui a5,0xffff8 - 80004428: 00f8a023 sw a5,0(a7) - 8000442c: 46a1 li a3,8 - 8000442e: 00005597 auipc a1,0x5 - 80004432: eca58593 addi a1,a1,-310 # 800092f8 <__clzdi2+0x31e> - 80004436: 6111 addi sp,sp,256 - 80004438: 72b0006f j 80005362 <__nrv_alloc_D2A> - 8000443c: 00042a23 sw zero,20(s0) - 80004440: bd2d j 8000427a <__gdtoa+0xe4> - 80004442: 85aa mv a1,a0 - 80004444: 8522 mv a0,s0 - 80004446: 11a010ef jal 80005560 <__rshift_D2A> - 8000444a: 4fba lw t6,140(sp) - 8000444c: 67e2 ld a5,24(sp) - 8000444e: 66c2 ld a3,16(sp) - 80004450: 6322 ld t1,8(sp) - 80004452: 41f787bb subw a5,a5,t6 - 80004456: 01af8fbb addw t6,t6,s10 - 8000445a: bd2d j 80004294 <__gdtoa+0xfe> - 8000445c: 4705 li a4,1 - 8000445e: f0ba sd a4,96(sp) - 80004460: e802 sd zero,16(sp) - 80004462: 200e4663 bltz t3,8000466e <__gdtoa+0x4d8> - 80004466: 1e08df63 bgez a7,80004664 <__gdtoa+0x4ce> - 8000446a: 6742 ld a4,16(sp) - 8000446c: e882 sd zero,80(sp) - 8000446e: 4117073b subw a4,a4,a7 - 80004472: e83a sd a4,16(sp) - 80004474: 4110073b negw a4,a7 - 80004478: e4ba sd a4,72(sp) - 8000447a: 4725 li a4,9 - 8000447c: 2d576b63 bltu a4,s5,80004752 <__gdtoa+0x5bc> - 80004480: 4715 li a4,5 - 80004482: 61575963 bge a4,s5,80004a94 <__gdtoa+0x8fe> - 80004486: ffca859b addiw a1,s5,-4 - 8000448a: 4611 li a2,4 - 8000448c: 8aae mv s5,a1 - 8000448e: 30c58263 beq a1,a2,80004792 <__gdtoa+0x5fc> - 80004492: 1ae589e3 beq a1,a4,80004e44 <__gdtoa+0xcae> - 80004496: 4709 li a4,2 - 80004498: f482 sd zero,104(sp) - 8000449a: 4481 li s1,0 - 8000449c: 2ee58e63 beq a1,a4,80004798 <__gdtoa+0x602> - 800044a0: 4a8d li s5,3 - 800044a2: 011b073b addw a4,s6,a7 - 800044a6: f8ba sd a4,112(sp) - 800044a8: 00170e1b addiw t3,a4,1 - 800044ac: 4705 li a4,1 - 800044ae: 85ba mv a1,a4 - 800044b0: 01c05463 blez t3,800044b8 <__gdtoa+0x322> - 800044b4: 8772 mv a4,t3 - 800044b6: 85f2 mv a1,t3 - 800044b8: 8552 mv a0,s4 - 800044ba: c73a sw a4,140(sp) - 800044bc: e0c2 sd a6,64(sp) - 800044be: fc7a sd t5,56(sp) - 800044c0: f83e sd a5,48(sp) - 800044c2: f436 sd a3,40(sp) - 800044c4: f046 sd a7,32(sp) - 800044c6: ec7e sd t6,24(sp) - 800044c8: e472 sd t3,8(sp) - 800044ca: ec9a sd t1,88(sp) - 800044cc: 653000ef jal 8000531e <__rv_alloc_D2A> - 800044d0: 872a mv a4,a0 - 800044d2: 18050763 beqz a0,80004660 <__gdtoa+0x4ca> - 800044d6: 00cdae83 lw t4,12(s11) - 800044da: 6e22 ld t3,8(sp) - 800044dc: 6fe2 ld t6,24(sp) - 800044de: 3efd addiw t4,t4,-1 - 800044e0: 7882 ld a7,32(sp) - 800044e2: 76a2 ld a3,40(sp) - 800044e4: 77c2 ld a5,48(sp) - 800044e6: 7f62 ld t5,56(sp) - 800044e8: 6806 ld a6,64(sp) - 800044ea: 000e8d63 beqz t4,80004504 <__gdtoa+0x36e> - 800044ee: 6366 ld t1,88(sp) - 800044f0: 000ed363 bgez t4,800044f6 <__gdtoa+0x360> - 800044f4: 4e89 li t4,2 - 800044f6: 10037313 andi t1,t1,256 - 800044fa: 1e030063 beqz t1,800046da <__gdtoa+0x544> - 800044fe: 460d li a2,3 - 80004500: 41d60ebb subw t4,a2,t4 - 80004504: 00fe3613 sltiu a2,t3,15 - 80004508: 8e65 and a2,a2,s1 - 8000450a: 1c060863 beqz a2,800046da <__gdtoa+0x544> - 8000450e: 011ee633 or a2,t4,a7 - 80004512: 2601 sext.w a2,a2 - 80004514: 1c061363 bnez a2,800046da <__gdtoa+0x544> - 80004518: 7606 ld a2,96(sp) - 8000451a: c702 sw zero,140(sp) - 8000451c: f20806d3 fmv.d.x fa3,a6 - 80004520: ca09 beqz a2,80004532 <__gdtoa+0x39c> - 80004522: 00005617 auipc a2,0x5 - 80004526: 5f663587 fld fa1,1526(a2) # 80009b18 <__clz_tab+0x138> - 8000452a: a2b69653 flt.d a2,fa3,fa1 - 8000452e: 14061a63 bnez a2,80004682 <__gdtoa+0x4ec> - 80004532: 00005617 auipc a2,0x5 - 80004536: 5ee63787 fld fa5,1518(a2) # 80009b20 <__clz_tab+0x140> - 8000453a: 00005617 auipc a2,0x5 - 8000453e: 5ee63707 fld fa4,1518(a2) # 80009b28 <__clz_tab+0x148> - 80004542: fcc005b7 lui a1,0xfcc00 - 80004546: 72f6f7c3 fmadd.d fa5,fa3,fa5,fa4 - 8000454a: e2078653 fmv.x.d a2,fa5 - 8000454e: 02061e93 slli t4,a2,0x20 - 80004552: 9201 srli a2,a2,0x20 - 80004554: 9e2d addw a2,a2,a1 - 80004556: 020ede93 srli t4,t4,0x20 - 8000455a: 1602 slli a2,a2,0x20 - 8000455c: 00ceeeb3 or t4,t4,a2 - 80004560: 140e0a63 beqz t3,800046b4 <__gdtoa+0x51e> - 80004564: 22d687d3 fmv.d fa5,fa3 - 80004568: 4501 li a0,0 - 8000456a: 8372 mv t1,t3 - 8000456c: fff3061b addiw a2,t1,-1 - 80004570: 060e slli a2,a2,0x3 - 80004572: 00005597 auipc a1,0x5 - 80004576: 11658593 addi a1,a1,278 # 80009688 <__mprec_tens> - 8000457a: 962e add a2,a2,a1 - 8000457c: 2210 fld fa2,0(a2) - 8000457e: 7626 ld a2,104(sp) - 80004580: 14060be3 beqz a2,80004ed6 <__gdtoa+0xd40> - 80004584: 00005617 auipc a2,0x5 - 80004588: 5c463707 fld fa4,1476(a2) # 80009b48 <__clz_tab+0x168> - 8000458c: c2079653 fcvt.w.d a2,fa5,rtz - 80004590: 00170293 addi t0,a4,1 - 80004594: 1ac77753 fdiv.d fa4,fa4,fa2 - 80004598: d20606d3 fcvt.d.w fa3,a2 - 8000459c: 0306061b addiw a2,a2,48 - 800045a0: 00c70023 sb a2,0(a4) - 800045a4: 0ad7f7d3 fsub.d fa5,fa5,fa3 - 800045a8: f20e86d3 fmv.d.x fa3,t4 - 800045ac: 8616 mv a2,t0 - 800045ae: 0ad77753 fsub.d fa4,fa4,fa3 - 800045b2: a2e79ed3 flt.d t4,fa5,fa4 - 800045b6: 340e94e3 bnez t4,800050fe <__gdtoa+0xf68> - 800045ba: 00005497 auipc s1,0x5 - 800045be: 55e4b587 fld fa1,1374(s1) # 80009b18 <__clz_tab+0x138> - 800045c2: 00005497 auipc s1,0x5 - 800045c6: 56e4b607 fld fa2,1390(s1) # 80009b30 <__clz_tab+0x150> - 800045ca: a80d j 800045fc <__gdtoa+0x466> - 800045cc: 4eba lw t4,140(sp) - 800045ce: 0605 addi a2,a2,1 - 800045d0: 2e85 addiw t4,t4,1 - 800045d2: c776 sw t4,140(sp) - 800045d4: 526ed563 bge t4,t1,80004afe <__gdtoa+0x968> - 800045d8: 12c7f7d3 fmul.d fa5,fa5,fa2 - 800045dc: 12c77753 fmul.d fa4,fa4,fa2 - 800045e0: c2079ed3 fcvt.w.d t4,fa5,rtz - 800045e4: d20e86d3 fcvt.d.w fa3,t4 - 800045e8: 030e8e9b addiw t4,t4,48 - 800045ec: ffd60fa3 sb t4,-1(a2) - 800045f0: 0ad7f7d3 fsub.d fa5,fa5,fa3 - 800045f4: a2e79ed3 flt.d t4,fa5,fa4 - 800045f8: 300e93e3 bnez t4,800050fe <__gdtoa+0xf68> - 800045fc: 0af5f6d3 fsub.d fa3,fa1,fa5 - 80004600: a2e69ed3 flt.d t4,fa3,fa4 - 80004604: fc0e84e3 beqz t4,800045cc <__gdtoa+0x436> - 80004608: fff64683 lbu a3,-1(a2) - 8000460c: 03900593 li a1,57 - 80004610: a031 j 8000461c <__gdtoa+0x486> - 80004612: 1af70de3 beq a4,a5,80004fcc <__gdtoa+0xe36> - 80004616: fff7c683 lbu a3,-1(a5) # ffffffffffff7fff <_stack_top+0xffffffff7fef7fff> - 8000461a: 863e mv a2,a5 - 8000461c: fff60793 addi a5,a2,-1 - 80004620: feb689e3 beq a3,a1,80004612 <__gdtoa+0x47c> - 80004624: 0685 addi a3,a3,1 - 80004626: 00d78023 sb a3,0(a5) - 8000462a: 0015081b addiw a6,a0,1 - 8000462e: 02000b93 li s7,32 - 80004632: 85a2 mv a1,s0 - 80004634: 8552 mv a0,s4 - 80004636: ec3a sd a4,24(sp) - 80004638: e842 sd a6,16(sp) - 8000463a: e432 sd a2,8(sp) - 8000463c: 6d0010ef jal 80005d0c <_Bfree> - 80004640: 6622 ld a2,8(sp) - 80004642: 6842 ld a6,16(sp) - 80004644: 6762 ld a4,24(sp) - 80004646: 00060023 sb zero,0(a2) - 8000464a: 010ca023 sw a6,0(s9) - 8000464e: 00098463 beqz s3,80004656 <__gdtoa+0x4c0> - 80004652: 00c9b023 sd a2,0(s3) - 80004656: 6682 ld a3,0(sp) - 80004658: 429c lw a5,0(a3) - 8000465a: 00fbe7b3 or a5,s7,a5 - 8000465e: c29c sw a5,0(a3) - 80004660: 74ae ld s1,232(sp) - 80004662: b345 j 80004402 <__gdtoa+0x26c> - 80004664: 01e88f3b addw t5,a7,t5 - 80004668: e8c6 sd a7,80(sp) - 8000466a: e482 sd zero,72(sp) - 8000466c: b539 j 8000447a <__gdtoa+0x2e4> - 8000466e: 4705 li a4,1 - 80004670: 9f11 subw a4,a4,a2 - 80004672: e83a sd a4,16(sp) - 80004674: 4f01 li t5,0 - 80004676: de08cae3 bltz a7,8000446a <__gdtoa+0x2d4> - 8000467a: b7ed j 80004664 <__gdtoa+0x4ce> - 8000467c: 38fd addiw a7,a7,-1 - 8000467e: f082 sd zero,96(sp) - 80004680: b3c5 j 80004460 <__gdtoa+0x2ca> - 80004682: 1c0e1be3 bnez t3,80005058 <__gdtoa+0xec2> - 80004686: 00005617 auipc a2,0x5 - 8000468a: 49a63787 fld fa5,1178(a2) # 80009b20 <__clz_tab+0x140> - 8000468e: 00005617 auipc a2,0x5 - 80004692: 49a63707 fld fa4,1178(a2) # 80009b28 <__clz_tab+0x148> - 80004696: fcc005b7 lui a1,0xfcc00 - 8000469a: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 - 8000469e: e2078653 fmv.x.d a2,fa5 - 800046a2: 02061e93 slli t4,a2,0x20 - 800046a6: 9201 srli a2,a2,0x20 - 800046a8: 9e2d addw a2,a2,a1 - 800046aa: 020ede93 srli t4,t4,0x20 - 800046ae: 1602 slli a2,a2,0x20 - 800046b0: 00ceeeb3 or t4,t4,a2 - 800046b4: 00005617 auipc a2,0x5 - 800046b8: 48c63787 fld fa5,1164(a2) # 80009b40 <__clz_tab+0x160> - 800046bc: 0af6f6d3 fsub.d fa3,fa3,fa5 - 800046c0: f20e87d3 fmv.d.x fa5,t4 - 800046c4: a2d79653 flt.d a2,fa5,fa3 - 800046c8: 0c061fe3 bnez a2,80004fa6 <__gdtoa+0xe10> - 800046cc: 22f797d3 fneg.d fa5,fa5 - 800046d0: a2f69653 flt.d a2,fa3,fa5 - 800046d4: 4a061b63 bnez a2,80004b8a <__gdtoa+0x9f4> - 800046d8: 4e81 li t4,0 - 800046da: ffffc593 not a1,t6 - 800046de: 01f5d59b srliw a1,a1,0x1f - 800046e2: 00f8a613 slti a2,a7,15 - 800046e6: 8e6d and a2,a2,a1 - 800046e8: c279 beqz a2,800047ae <__gdtoa+0x618> - 800046ea: 00389693 slli a3,a7,0x3 - 800046ee: 00005797 auipc a5,0x5 - 800046f2: f9a78793 addi a5,a5,-102 # 80009688 <__mprec_tens> - 800046f6: 97b6 add a5,a5,a3 - 800046f8: 2398 fld fa4,0(a5) - 800046fa: 01fb569b srliw a3,s6,0x1f - 800046fe: 001e2793 slti a5,t3,1 - 80004702: 8ff5 and a5,a5,a3 - 80004704: 00170293 addi t0,a4,1 - 80004708: 40078063 beqz a5,80004b08 <__gdtoa+0x972> - 8000470c: 460e1f63 bnez t3,80004b8a <__gdtoa+0x9f4> - 80004710: 00005797 auipc a5,0x5 - 80004714: 4307b787 fld fa5,1072(a5) # 80009b40 <__clz_tab+0x160> - 80004718: 12f77753 fmul.d fa4,fa4,fa5 - 8000471c: f20807d3 fmv.d.x fa5,a6 - 80004720: a2e787d3 fle.d a5,fa5,fa4 - 80004724: 46079363 bnez a5,80004b8a <__gdtoa+0x9f4> - 80004728: 03100793 li a5,49 - 8000472c: 00170613 addi a2,a4,1 - 80004730: 00f70023 sb a5,0(a4) - 80004734: 4581 li a1,0 - 80004736: 8552 mv a0,s4 - 80004738: ec46 sd a7,24(sp) - 8000473a: e83a sd a4,16(sp) - 8000473c: e432 sd a2,8(sp) - 8000473e: 5ce010ef jal 80005d0c <_Bfree> - 80004742: 68e2 ld a7,24(sp) - 80004744: 6622 ld a2,8(sp) - 80004746: 6742 ld a4,16(sp) - 80004748: 0028881b addiw a6,a7,2 - 8000474c: 02000b93 li s7,32 - 80004750: b5cd j 80004632 <__gdtoa+0x49c> - 80004752: 3fd5051b addiw a0,a0,1021 - 80004756: 7f853493 sltiu s1,a0,2040 - 8000475a: 4a81 li s5,0 - 8000475c: 00005717 auipc a4,0x5 - 80004760: 3b473707 fld fa4,948(a4) # 80009b10 <__clz_tab+0x130> - 80004764: d20687d3 fcvt.d.w fa5,a3 - 80004768: 577d li a4,-1 - 8000476a: f8ba sd a4,112(sp) - 8000476c: 12e7f7d3 fmul.d fa5,fa5,fa4 - 80004770: 8e3a mv t3,a4 - 80004772: 4705 li a4,1 - 80004774: f4ba sd a4,104(sp) - 80004776: 4b01 li s6,0 - 80004778: c20795d3 fcvt.w.d a1,fa5,rtz - 8000477c: 258d addiw a1,a1,3 # fffffffffcc00003 <_stack_top+0xffffffff7cb00003> - 8000477e: 872e mv a4,a1 - 80004780: bb25 j 800044b8 <__gdtoa+0x322> - 80004782: d2088753 fcvt.d.w fa4,a7 - 80004786: a2f72753 feq.d a4,fa4,fa5 - 8000478a: ba071fe3 bnez a4,80004348 <__gdtoa+0x1b2> - 8000478e: 38fd addiw a7,a7,-1 - 80004790: be65 j 80004348 <__gdtoa+0x1b2> - 80004792: 4705 li a4,1 - 80004794: 4481 li s1,0 - 80004796: f4ba sd a4,104(sp) - 80004798: 000b059b sext.w a1,s6 - 8000479c: 01604363 bgtz s6,800047a2 <__gdtoa+0x60c> - 800047a0: 4585 li a1,1 - 800047a2: 872e mv a4,a1 - 800047a4: f8ae sd a1,112(sp) - 800047a6: 8e2e mv t3,a1 - 800047a8: 8b2e mv s6,a1 - 800047aa: b339 j 800044b8 <__gdtoa+0x322> - 800047ac: 4e81 li t4,0 - 800047ae: 7626 ld a2,104(sp) - 800047b0: 30060363 beqz a2,80004ab6 <__gdtoa+0x920> - 800047b4: 9e9d subw a3,a3,a5 - 800047b6: 004da603 lw a2,4(s11) - 800047ba: 0016859b addiw a1,a3,1 - 800047be: c72e sw a1,140(sp) - 800047c0: 40df86bb subw a3,t6,a3 - 800047c4: 50c6dd63 bge a3,a2,80004cde <__gdtoa+0xb48> - 800047c8: ffda869b addiw a3,s5,-3 - 800047cc: 9af5 andi a3,a3,-3 - 800047ce: 44068c63 beqz a3,80004c26 <__gdtoa+0xa90> - 800047d2: 40cf86bb subw a3,t6,a2 - 800047d6: 4605 li a2,1 - 800047d8: 2685 addiw a3,a3,1 - 800047da: 01562633 slt a2,a2,s5 - 800047de: 01c02533 sgtz a0,t3 - 800047e2: 00de25b3 slt a1,t3,a3 - 800047e6: 8e69 and a2,a2,a0 - 800047e8: c736 sw a3,140(sp) - 800047ea: 8e6d and a2,a2,a1 - 800047ec: 240611e3 bnez a2,8000522e <__gdtoa+0x1098> - 800047f0: 6642 ld a2,16(sp) - 800047f2: 64a6 ld s1,72(sp) - 800047f4: 01e68f3b addw t5,a3,t5 - 800047f8: 9eb1 addw a3,a3,a2 - 800047fa: ec36 sd a3,24(sp) - 800047fc: 4585 li a1,1 - 800047fe: 8552 mv a0,s4 - 80004800: ecba sd a4,88(sp) - 80004802: e0fa sd t5,64(sp) - 80004804: fc3e sd a5,56(sp) - 80004806: f876 sd t4,48(sp) - 80004808: f446 sd a7,40(sp) - 8000480a: f072 sd t3,32(sp) - 8000480c: 726010ef jal 80005f32 <__i2b> - 80004810: e42a sd a0,8(sp) - 80004812: 3e050563 beqz a0,80004bfc <__gdtoa+0xa66> - 80004816: 67c2 ld a5,16(sp) - 80004818: 6f06 ld t5,64(sp) - 8000481a: 7e02 ld t3,32(sp) - 8000481c: 00f036b3 snez a3,a5 - 80004820: 01e02633 sgtz a2,t5 - 80004824: 8ef1 and a3,a3,a2 - 80004826: 78a2 ld a7,40(sp) - 80004828: 7ec2 ld t4,48(sp) - 8000482a: 77e2 ld a5,56(sp) - 8000482c: 6766 ld a4,88(sp) - 8000482e: ce99 beqz a3,8000484c <__gdtoa+0x6b6> - 80004830: 6642 ld a2,16(sp) - 80004832: 86b2 mv a3,a2 - 80004834: 00cf5363 bge t5,a2,8000483a <__gdtoa+0x6a4> - 80004838: 86fa mv a3,t5 - 8000483a: 6662 ld a2,24(sp) - 8000483c: c736 sw a3,140(sp) - 8000483e: 40df0f3b subw t5,t5,a3 - 80004842: 9e15 subw a2,a2,a3 - 80004844: ec32 sd a2,24(sp) - 80004846: 6642 ld a2,16(sp) - 80004848: 9e15 subw a2,a2,a3 - 8000484a: e832 sd a2,16(sp) - 8000484c: 66a6 ld a3,72(sp) - 8000484e: c69d beqz a3,8000487c <__gdtoa+0x6e6> - 80004850: 62049963 bnez s1,80004e82 <__gdtoa+0xcec> - 80004854: 6626 ld a2,72(sp) - 80004856: 85a2 mv a1,s0 - 80004858: 8552 mv a0,s4 - 8000485a: ecba sd a4,88(sp) - 8000485c: e0fa sd t5,64(sp) - 8000485e: fc3e sd a5,56(sp) - 80004860: f876 sd t4,48(sp) - 80004862: f446 sd a7,40(sp) - 80004864: f072 sd t3,32(sp) - 80004866: 119010ef jal 8000617e <__pow5mult> - 8000486a: 7e02 ld t3,32(sp) - 8000486c: 78a2 ld a7,40(sp) - 8000486e: 7ec2 ld t4,48(sp) - 80004870: 77e2 ld a5,56(sp) - 80004872: 6f06 ld t5,64(sp) - 80004874: 6766 ld a4,88(sp) - 80004876: 842a mv s0,a0 - 80004878: 38050263 beqz a0,80004bfc <__gdtoa+0xa66> - 8000487c: 4585 li a1,1 - 8000487e: 8552 mv a0,s4 - 80004880: e4ba sd a4,72(sp) - 80004882: e0fa sd t5,64(sp) - 80004884: fc3e sd a5,56(sp) - 80004886: f876 sd t4,48(sp) - 80004888: f446 sd a7,40(sp) - 8000488a: f072 sd t3,32(sp) - 8000488c: 6a6010ef jal 80005f32 <__i2b> - 80004890: 882a mv a6,a0 - 80004892: 36050563 beqz a0,80004bfc <__gdtoa+0xa66> - 80004896: 66c6 ld a3,80(sp) - 80004898: 7e02 ld t3,32(sp) - 8000489a: 78a2 ld a7,40(sp) - 8000489c: 7ec2 ld t4,48(sp) - 8000489e: 77e2 ld a5,56(sp) - 800048a0: 6f06 ld t5,64(sp) - 800048a2: 6726 ld a4,72(sp) - 800048a4: 3a069263 bnez a3,80004c48 <__gdtoa+0xab2> - 800048a8: 17fd addi a5,a5,-1 - 800048aa: 0017b693 seqz a3,a5 - 800048ae: 002aa793 slti a5,s5,2 - 800048b2: 8ff5 and a5,a5,a3 - 800048b4: 1c079463 bnez a5,80004a7c <__gdtoa+0x8e6> - 800048b8: 457d li a0,31 - 800048ba: 66e2 ld a3,24(sp) - 800048bc: 41e507bb subw a5,a0,t5 - 800048c0: 37f1 addiw a5,a5,-4 - 800048c2: 8bfd andi a5,a5,31 - 800048c4: 00d7863b addw a2,a5,a3 - 800048c8: c73e sw a5,140(sp) - 800048ca: 86be mv a3,a5 - 800048cc: 2ec04163 bgtz a2,80004bae <__gdtoa+0xa18> - 800048d0: 00df063b addw a2,t5,a3 - 800048d4: 30c04363 bgtz a2,80004bda <__gdtoa+0xa44> - 800048d8: 7686 ld a3,96(sp) - 800048da: 40069c63 bnez a3,80004cf2 <__gdtoa+0xb5c> - 800048de: 4609 li a2,2 - 800048e0: 01562633 slt a2,a2,s5 - 800048e4: 001e2693 slti a3,t3,1 - 800048e8: 8ef1 and a3,a3,a2 - 800048ea: 4e069763 bnez a3,80004dd8 <__gdtoa+0xc42> - 800048ee: 76a6 ld a3,104(sp) - 800048f0: 46068163 beqz a3,80004d52 <__gdtoa+0xbbc> - 800048f4: 66c2 ld a3,16(sp) - 800048f6: 00d7863b addw a2,a5,a3 - 800048fa: 68c04363 bgtz a2,80004f80 <__gdtoa+0xdea> - 800048fe: 67c6 ld a5,80(sp) - 80004900: 6b22 ld s6,8(sp) - 80004902: 70079563 bnez a5,8000500c <__gdtoa+0xe76> - 80004906: ffee8793 addi a5,t4,-2 - 8000490a: 00f037b3 snez a5,a5 - 8000490e: f43e sd a5,40(sp) - 80004910: f1ca sd s2,224(sp) - 80004912: 4785 li a5,1 - 80004914: f872 sd t3,48(sp) - 80004916: e4c6 sd a7,72(sp) - 80004918: f042 sd a6,32(sp) - 8000491a: 8d3a mv s10,a4 - 8000491c: fc76 sd t4,56(sp) - 8000491e: e8ba sd a4,80(sp) - 80004920: a059 j 800049a6 <__gdtoa+0x810> - 80004922: 8552 mv a0,s4 - 80004924: ec1a sd t1,24(sp) - 80004926: 3e6010ef jal 80005d0c <_Bfree> - 8000492a: 6362 ld t1,24(sp) - 8000492c: 4785 li a5,1 - 8000492e: 6742 ld a4,16(sp) - 80004930: 7e074363 bltz a4,80005116 <__gdtoa+0xf80> - 80004934: 01576733 or a4,a4,s5 - 80004938: 2701 sext.w a4,a4 - 8000493a: e711 bnez a4,80004946 <__gdtoa+0x7b0> - 8000493c: 000c2703 lw a4,0(s8) - 80004940: 8b05 andi a4,a4,1 - 80004942: 7c070a63 beqz a4,80005116 <__gdtoa+0xf80> - 80004946: 7722 ld a4,40(sp) - 80004948: 00f027b3 sgtz a5,a5 - 8000494c: 8f7d and a4,a4,a5 - 8000494e: 001d0793 addi a5,s10,1 - 80004952: 893e mv s2,a5 - 80004954: 04071fe3 bnez a4,800051b2 <__gdtoa+0x101c> - 80004958: ffb78fa3 sb s11,-1(a5) - 8000495c: 473a lw a4,140(sp) - 8000495e: 76c2 ld a3,48(sp) - 80004960: 04d702e3 beq a4,a3,800051a4 <__gdtoa+0x100e> - 80004964: 85a2 mv a1,s0 - 80004966: 4681 li a3,0 - 80004968: 4629 li a2,10 - 8000496a: 8552 mv a0,s4 - 8000496c: 3b2010ef jal 80005d1e <__multadd> - 80004970: 842a mv s0,a0 - 80004972: a80505e3 beqz a0,800043fc <__gdtoa+0x266> - 80004976: 67a2 ld a5,8(sp) - 80004978: 65a2 ld a1,8(sp) - 8000497a: 4681 li a3,0 - 8000497c: 4629 li a2,10 - 8000497e: 8552 mv a0,s4 - 80004980: 23678063 beq a5,s6,80004ba0 <__gdtoa+0xa0a> - 80004984: 39a010ef jal 80005d1e <__multadd> - 80004988: e42a sd a0,8(sp) - 8000498a: a60509e3 beqz a0,800043fc <__gdtoa+0x266> - 8000498e: 85da mv a1,s6 - 80004990: 4681 li a3,0 - 80004992: 4629 li a2,10 - 80004994: 8552 mv a0,s4 - 80004996: 388010ef jal 80005d1e <__multadd> - 8000499a: 8b2a mv s6,a0 - 8000499c: a60500e3 beqz a0,800043fc <__gdtoa+0x266> - 800049a0: 47ba lw a5,140(sp) - 800049a2: 8d4a mv s10,s2 - 800049a4: 2785 addiw a5,a5,1 - 800049a6: 7482 ld s1,32(sp) - 800049a8: 8522 mv a0,s0 - 800049aa: c73e sw a5,140(sp) - 800049ac: 85a6 mv a1,s1 - 800049ae: 237000ef jal 800053e4 <__quorem_D2A> - 800049b2: 65a2 ld a1,8(sp) - 800049b4: 892a mv s2,a0 - 800049b6: 8522 mv a0,s0 - 800049b8: 1c5010ef jal 8000637c <__mcmp> - 800049bc: e82a sd a0,16(sp) - 800049be: 85a6 mv a1,s1 - 800049c0: 865a mv a2,s6 - 800049c2: 8552 mv a0,s4 - 800049c4: 1ef010ef jal 800063b2 <__mdiff> - 800049c8: 85aa mv a1,a0 - 800049ca: a20509e3 beqz a0,800043fc <__gdtoa+0x266> - 800049ce: 491c lw a5,16(a0) - 800049d0: 0309031b addiw t1,s2,48 - 800049d4: 8d9a mv s11,t1 - 800049d6: f7b1 bnez a5,80004922 <__gdtoa+0x78c> - 800049d8: ec2a sd a0,24(sp) - 800049da: 8522 mv a0,s0 - 800049dc: e09a sd t1,64(sp) - 800049de: 19f010ef jal 8000637c <__mcmp> - 800049e2: 65e2 ld a1,24(sp) - 800049e4: 84aa mv s1,a0 - 800049e6: 8552 mv a0,s4 - 800049e8: 324010ef jal 80005d0c <_Bfree> - 800049ec: 0154e7b3 or a5,s1,s5 - 800049f0: 2781 sext.w a5,a5 - 800049f2: 6306 ld t1,64(sp) - 800049f4: 58079463 bnez a5,80004f7c <__gdtoa+0xde6> - 800049f8: 000c2703 lw a4,0(s8) - 800049fc: 76e2 ld a3,56(sp) - 800049fe: 8b05 andi a4,a4,1 - 80004a00: 8f55 or a4,a4,a3 - 80004a02: f715 bnez a4,8000492e <__gdtoa+0x798> - 80004a04: 03900793 li a5,57 - 80004a08: 68a6 ld a7,72(sp) - 80004a0a: 7802 ld a6,32(sp) - 80004a0c: 6746 ld a4,80(sp) - 80004a0e: 6542 ld a0,16(sp) - 80004a10: 86ea mv a3,s10 - 80004a12: 52f30b63 beq t1,a5,80004f48 <__gdtoa+0xdb2> - 80004a16: 0ca059e3 blez a0,800052e8 <__gdtoa+0x1152> - 80004a1a: 0319031b addiw t1,s2,49 - 80004a1e: 02000b93 li s7,32 - 80004a22: 6e22 ld t3,8(sp) - 80004a24: 00668023 sb t1,0(a3) - 80004a28: 00168613 addi a2,a3,1 - 80004a2c: e45a sd s6,8(sp) - 80004a2e: 85c2 mv a1,a6 - 80004a30: 8552 mv a0,s4 - 80004a32: f43a sd a4,40(sp) - 80004a34: f032 sd a2,32(sp) - 80004a36: ec72 sd t3,24(sp) - 80004a38: e846 sd a7,16(sp) - 80004a3a: 2d2010ef jal 80005d0c <_Bfree> - 80004a3e: 67a2 ld a5,8(sp) - 80004a40: 68c2 ld a7,16(sp) - 80004a42: 6e62 ld t3,24(sp) - 80004a44: 7602 ld a2,32(sp) - 80004a46: 7722 ld a4,40(sp) - 80004a48: 08078be3 beqz a5,800052de <__gdtoa+0x1148> - 80004a4c: 67a2 ld a5,8(sp) - 80004a4e: 40fe06b3 sub a3,t3,a5 - 80004a52: 00d036b3 snez a3,a3 - 80004a56: 01c037b3 snez a5,t3 - 80004a5a: 8ff5 and a5,a5,a3 - 80004a5c: 26079563 bnez a5,80004cc6 <__gdtoa+0xb30> - 80004a60: 790e ld s2,224(sp) - 80004a62: 65a2 ld a1,8(sp) - 80004a64: 8552 mv a0,s4 - 80004a66: f03a sd a4,32(sp) - 80004a68: ec32 sd a2,24(sp) - 80004a6a: e846 sd a7,16(sp) - 80004a6c: 2a0010ef jal 80005d0c <_Bfree> - 80004a70: 68c2 ld a7,16(sp) - 80004a72: 6662 ld a2,24(sp) - 80004a74: 7702 ld a4,32(sp) - 80004a76: 0018881b addiw a6,a7,1 - 80004a7a: be65 j 80004632 <__gdtoa+0x49c> - 80004a7c: 004da783 lw a5,4(s11) - 80004a80: 2785 addiw a5,a5,1 - 80004a82: e3a7dbe3 bge a5,s10,800048b8 <__gdtoa+0x722> - 80004a86: 67e2 ld a5,24(sp) - 80004a88: 2f05 addiw t5,t5,1 - 80004a8a: 2785 addiw a5,a5,1 - 80004a8c: ec3e sd a5,24(sp) - 80004a8e: 4785 li a5,1 - 80004a90: e8be sd a5,80(sp) - 80004a92: b51d j 800048b8 <__gdtoa+0x722> - 80004a94: 3fd5051b addiw a0,a0,1021 - 80004a98: 4611 li a2,4 - 80004a9a: 7f853493 sltiu s1,a0,2040 - 80004a9e: 3aca8a63 beq s5,a2,80004e52 <__gdtoa+0xcbc> - 80004aa2: 38ea8d63 beq s5,a4,80004e3c <__gdtoa+0xca6> - 80004aa6: 4709 li a4,2 - 80004aa8: 3aea8363 beq s5,a4,80004e4e <__gdtoa+0xcb8> - 80004aac: 470d li a4,3 - 80004aae: f482 sd zero,104(sp) - 80004ab0: 9eea89e3 beq s5,a4,800044a2 <__gdtoa+0x30c> - 80004ab4: b165 j 8000475c <__gdtoa+0x5c6> - 80004ab6: 65c2 ld a1,16(sp) - 80004ab8: 01e03633 snez a2,t5 - 80004abc: 00b036b3 snez a3,a1 - 80004ac0: 8ef1 and a3,a3,a2 - 80004ac2: 14069163 bnez a3,80004c04 <__gdtoa+0xa6e> - 80004ac6: 66a6 ld a3,72(sp) - 80004ac8: ec2e sd a1,24(sp) - 80004aca: 14068c63 beqz a3,80004c22 <__gdtoa+0xa8c> - 80004ace: 6626 ld a2,72(sp) - 80004ad0: 85a2 mv a1,s0 - 80004ad2: 8552 mv a0,s4 - 80004ad4: ecba sd a4,88(sp) - 80004ad6: e0fa sd t5,64(sp) - 80004ad8: fc3e sd a5,56(sp) - 80004ada: f876 sd t4,48(sp) - 80004adc: f446 sd a7,40(sp) - 80004ade: f072 sd t3,32(sp) - 80004ae0: 69e010ef jal 8000617e <__pow5mult> - 80004ae4: 842a mv s0,a0 - 80004ae6: 10050b63 beqz a0,80004bfc <__gdtoa+0xa66> - 80004aea: 67e2 ld a5,24(sp) - 80004aec: 6766 ld a4,88(sp) - 80004aee: 6f06 ld t5,64(sp) - 80004af0: e83e sd a5,16(sp) - 80004af2: 7ec2 ld t4,48(sp) - 80004af4: 77e2 ld a5,56(sp) - 80004af6: 78a2 ld a7,40(sp) - 80004af8: 7e02 ld t3,32(sp) - 80004afa: e402 sd zero,8(sp) - 80004afc: b341 j 8000487c <__gdtoa+0x6e6> - 80004afe: 4e81 li t4,0 - 80004b00: ca0fcae3 bltz t6,800047b4 <__gdtoa+0x61e> - 80004b04: 2198 fld fa4,0(a1) - 80004b06: 4e81 li t4,0 - 80004b08: f20806d3 fmv.d.x fa3,a6 - 80004b0c: 1ae6f7d3 fdiv.d fa5,fa3,fa4 - 80004b10: 4785 li a5,1 - 80004b12: c73e sw a5,140(sp) - 80004b14: f2000653 fmv.d.x fa2,zero - 80004b18: 8616 mv a2,t0 - 80004b1a: 0018881b addiw a6,a7,1 - 80004b1e: c20797d3 fcvt.w.d a5,fa5,rtz - 80004b22: d20787d3 fcvt.d.w fa5,a5 - 80004b26: 0307869b addiw a3,a5,48 - 80004b2a: 00d70023 sb a3,0(a4) - 80004b2e: 6ae7f7cb fnmsub.d fa5,fa5,fa4,fa3 - 80004b32: a2c7a6d3 feq.d a3,fa5,fa2 - 80004b36: ae069ee3 bnez a3,80004632 <__gdtoa+0x49c> - 80004b3a: 00005697 auipc a3,0x5 - 80004b3e: ff66b587 fld fa1,-10(a3) # 80009b30 <__clz_tab+0x150> - 80004b42: a02d j 80004b6c <__gdtoa+0x9d6> - 80004b44: 12b7f7d3 fmul.d fa5,fa5,fa1 - 80004b48: c72e sw a1,140(sp) - 80004b4a: 0605 addi a2,a2,1 - 80004b4c: 1ae7f6d3 fdiv.d fa3,fa5,fa4 - 80004b50: c20697d3 fcvt.w.d a5,fa3,rtz - 80004b54: d20786d3 fcvt.d.w fa3,a5 - 80004b58: 0307869b addiw a3,a5,48 - 80004b5c: fed60fa3 sb a3,-1(a2) - 80004b60: 7ae6f7cb fnmsub.d fa5,fa3,fa4,fa5 - 80004b64: a2c7a6d3 feq.d a3,fa5,fa2 - 80004b68: ac0695e3 bnez a3,80004632 <__gdtoa+0x49c> - 80004b6c: 46ba lw a3,140(sp) - 80004b6e: 0016859b addiw a1,a3,1 - 80004b72: fdc699e3 bne a3,t3,80004b44 <__gdtoa+0x9ae> - 80004b76: 460e8063 beqz t4,80004fd6 <__gdtoa+0xe40> - 80004b7a: 4785 li a5,1 - 80004b7c: 4bc1 li s7,16 - 80004b7e: aafe9ae3 bne t4,a5,80004632 <__gdtoa+0x49c> - 80004b82: fff64683 lbu a3,-1(a2) - 80004b86: 8546 mv a0,a7 - 80004b88: b451 j 8000460c <__gdtoa+0x476> - 80004b8a: 4581 li a1,0 - 80004b8c: 8552 mv a0,s4 - 80004b8e: e43a sd a4,8(sp) - 80004b90: 17c010ef jal 80005d0c <_Bfree> - 80004b94: 6722 ld a4,8(sp) - 80004b96: 4160083b negw a6,s6 - 80004b9a: 4bc1 li s7,16 - 80004b9c: 863a mv a2,a4 - 80004b9e: bc51 j 80004632 <__gdtoa+0x49c> - 80004ba0: 17e010ef jal 80005d1e <__multadd> - 80004ba4: e42a sd a0,8(sp) - 80004ba6: 84050be3 beqz a0,800043fc <__gdtoa+0x266> - 80004baa: 8b2a mv s6,a0 - 80004bac: bbd5 j 800049a0 <__gdtoa+0x80a> - 80004bae: 85a2 mv a1,s0 - 80004bb0: 8552 mv a0,s4 - 80004bb2: e4ba sd a4,72(sp) - 80004bb4: e0fa sd t5,64(sp) - 80004bb6: fc76 sd t4,56(sp) - 80004bb8: f842 sd a6,48(sp) - 80004bba: f446 sd a7,40(sp) - 80004bbc: f03e sd a5,32(sp) - 80004bbe: ec72 sd t3,24(sp) - 80004bc0: 6ac010ef jal 8000626c <__lshift> - 80004bc4: 842a mv s0,a0 - 80004bc6: c91d beqz a0,80004bfc <__gdtoa+0xa66> - 80004bc8: 46ba lw a3,140(sp) - 80004bca: 6726 ld a4,72(sp) - 80004bcc: 6f06 ld t5,64(sp) - 80004bce: 7ee2 ld t4,56(sp) - 80004bd0: 7842 ld a6,48(sp) - 80004bd2: 78a2 ld a7,40(sp) - 80004bd4: 7782 ld a5,32(sp) - 80004bd6: 6e62 ld t3,24(sp) - 80004bd8: b9e5 j 800048d0 <__gdtoa+0x73a> - 80004bda: 85c2 mv a1,a6 - 80004bdc: 8552 mv a0,s4 - 80004bde: fc3a sd a4,56(sp) - 80004be0: f876 sd t4,48(sp) - 80004be2: f446 sd a7,40(sp) - 80004be4: f03e sd a5,32(sp) - 80004be6: ec72 sd t3,24(sp) - 80004be8: 684010ef jal 8000626c <__lshift> - 80004bec: 6e62 ld t3,24(sp) - 80004bee: 7782 ld a5,32(sp) - 80004bf0: 78a2 ld a7,40(sp) - 80004bf2: 7ec2 ld t4,48(sp) - 80004bf4: 7762 ld a4,56(sp) - 80004bf6: 882a mv a6,a0 - 80004bf8: ce0510e3 bnez a0,800048d8 <__gdtoa+0x742> - 80004bfc: 4701 li a4,0 - 80004bfe: 74ae ld s1,232(sp) - 80004c00: 803ff06f j 80004402 <__gdtoa+0x26c> - 80004c04: 6642 ld a2,16(sp) - 80004c06: 86b2 mv a3,a2 - 80004c08: 00cf5363 bge t5,a2,80004c0e <__gdtoa+0xa78> - 80004c0c: 86fa mv a3,t5 - 80004c0e: 6642 ld a2,16(sp) - 80004c10: c736 sw a3,140(sp) - 80004c12: 40df0f3b subw t5,t5,a3 - 80004c16: 9e15 subw a2,a2,a3 - 80004c18: 66a6 ld a3,72(sp) - 80004c1a: ec32 sd a2,24(sp) - 80004c1c: ea0699e3 bnez a3,80004ace <__gdtoa+0x938> - 80004c20: e832 sd a2,16(sp) - 80004c22: e402 sd zero,8(sp) - 80004c24: b9a1 j 8000487c <__gdtoa+0x6e6> - 80004c26: 65a6 ld a1,72(sp) - 80004c28: fffe069b addiw a3,t3,-1 - 80004c2c: 8636 mv a2,a3 - 80004c2e: 22d5ca63 blt a1,a3,80004e62 <__gdtoa+0xccc> - 80004c32: 40d584bb subw s1,a1,a3 - 80004c36: 640e5d63 bgez t3,80005290 <__gdtoa+0x10fa> - 80004c3a: 66c2 ld a3,16(sp) - 80004c3c: c702 sw zero,140(sp) - 80004c3e: ec36 sd a3,24(sp) - 80004c40: 41c686bb subw a3,a3,t3 - 80004c44: e836 sd a3,16(sp) - 80004c46: be5d j 800047fc <__gdtoa+0x666> - 80004c48: 85aa mv a1,a0 - 80004c4a: 8636 mv a2,a3 - 80004c4c: 8552 mv a0,s4 - 80004c4e: 530010ef jal 8000617e <__pow5mult> - 80004c52: 882a mv a6,a0 - 80004c54: d545 beqz a0,80004bfc <__gdtoa+0xa66> - 80004c56: 77e2 ld a5,56(sp) - 80004c58: 7e02 ld t3,32(sp) - 80004c5a: 78a2 ld a7,40(sp) - 80004c5c: 17fd addi a5,a5,-1 - 80004c5e: 0017b693 seqz a3,a5 - 80004c62: 002aa793 slti a5,s5,2 - 80004c66: 8ff5 and a5,a5,a3 - 80004c68: 7ec2 ld t4,48(sp) - 80004c6a: 6f06 ld t5,64(sp) - 80004c6c: 6726 ld a4,72(sp) - 80004c6e: e79d bnez a5,80004c9c <__gdtoa+0xb06> - 80004c70: e882 sd zero,80(sp) - 80004c72: 01482783 lw a5,20(a6) - 80004c76: e4ba sd a4,72(sp) - 80004c78: e0fa sd t5,64(sp) - 80004c7a: 37fd addiw a5,a5,-1 - 80004c7c: 078a slli a5,a5,0x2 - 80004c7e: 97c2 add a5,a5,a6 - 80004c80: 4f88 lw a0,24(a5) - 80004c82: fc76 sd t4,56(sp) - 80004c84: f846 sd a7,48(sp) - 80004c86: f472 sd t3,40(sp) - 80004c88: f042 sd a6,32(sp) - 80004c8a: 184010ef jal 80005e0e <__hi0bits> - 80004c8e: 6726 ld a4,72(sp) - 80004c90: 6f06 ld t5,64(sp) - 80004c92: 7ee2 ld t4,56(sp) - 80004c94: 78c2 ld a7,48(sp) - 80004c96: 7e22 ld t3,40(sp) - 80004c98: 7802 ld a6,32(sp) - 80004c9a: b105 j 800048ba <__gdtoa+0x724> - 80004c9c: 004da783 lw a5,4(s11) - 80004ca0: 2785 addiw a5,a5,1 - 80004ca2: fda7d7e3 bge a5,s10,80004c70 <__gdtoa+0xada> - 80004ca6: 67e2 ld a5,24(sp) - 80004ca8: 2f05 addiw t5,t5,1 - 80004caa: 2785 addiw a5,a5,1 - 80004cac: ec3e sd a5,24(sp) - 80004cae: 4785 li a5,1 - 80004cb0: e8be sd a5,80(sp) - 80004cb2: b7c1 j 80004c72 <__gdtoa+0xadc> - 80004cb4: 4705 li a4,1 - 80004cb6: 9f11 subw a4,a4,a2 - 80004cb8: e83a sd a4,16(sp) - 80004cba: f082 sd zero,96(sp) - 80004cbc: e8c6 sd a7,80(sp) - 80004cbe: 8f46 mv t5,a7 - 80004cc0: e482 sd zero,72(sp) - 80004cc2: fb8ff06f j 8000447a <__gdtoa+0x2e4> - 80004cc6: 85f2 mv a1,t3 - 80004cc8: 8552 mv a0,s4 - 80004cca: f03a sd a4,32(sp) - 80004ccc: ec32 sd a2,24(sp) - 80004cce: e846 sd a7,16(sp) - 80004cd0: 03c010ef jal 80005d0c <_Bfree> - 80004cd4: 7702 ld a4,32(sp) - 80004cd6: 6662 ld a2,24(sp) - 80004cd8: 68c2 ld a7,16(sp) - 80004cda: 790e ld s2,224(sp) - 80004cdc: b359 j 80004a62 <__gdtoa+0x8cc> - 80004cde: 4685 li a3,1 - 80004ce0: f556c3e3 blt a3,s5,80004c26 <__gdtoa+0xa90> - 80004ce4: 66c2 ld a3,16(sp) - 80004ce6: 64a6 ld s1,72(sp) - 80004ce8: 01e58f3b addw t5,a1,t5 - 80004cec: 9ead addw a3,a3,a1 - 80004cee: ec36 sd a3,24(sp) - 80004cf0: b631 j 800047fc <__gdtoa+0x666> - 80004cf2: 85c2 mv a1,a6 - 80004cf4: 8522 mv a0,s0 - 80004cf6: e0ba sd a4,64(sp) - 80004cf8: fc76 sd t4,56(sp) - 80004cfa: f846 sd a7,48(sp) - 80004cfc: f43e sd a5,40(sp) - 80004cfe: f072 sd t3,32(sp) - 80004d00: ec42 sd a6,24(sp) - 80004d02: 67a010ef jal 8000637c <__mcmp> - 80004d06: 6862 ld a6,24(sp) - 80004d08: 7e02 ld t3,32(sp) - 80004d0a: 77a2 ld a5,40(sp) - 80004d0c: 78c2 ld a7,48(sp) - 80004d0e: 7ee2 ld t4,56(sp) - 80004d10: 6706 ld a4,64(sp) - 80004d12: bc0556e3 bgez a0,800048de <__gdtoa+0x748> - 80004d16: 85a2 mv a1,s0 - 80004d18: 4681 li a3,0 - 80004d1a: 4629 li a2,10 + 800043fc: 408005b3 neg a1,s0 + 80004400: 854a mv a0,s2 + 80004402: 7a9020ef jal 800073aa <_sbrk_r> + 80004406: 57fd li a5,-1 + 80004408: 02f50863 beq a0,a5,80004438 <_malloc_trim_r+0xa0> + 8000440c: 0109b703 ld a4,16(s3) + 80004410: 6701b783 ld a5,1648(gp) # 8000b378 <__malloc_current_mallinfo> + 80004414: 8c81 sub s1,s1,s0 + 80004416: 0014e493 ori s1,s1,1 + 8000441a: e704 sd s1,8(a4) + 8000441c: 854a mv a0,s2 + 8000441e: 8f81 sub a5,a5,s0 + 80004420: 66f1b823 sd a5,1648(gp) # 8000b378 <__malloc_current_mallinfo> + 80004424: 75f010ef jal 80006382 <__malloc_unlock> + 80004428: 70a2 ld ra,40(sp) + 8000442a: 7402 ld s0,32(sp) + 8000442c: 64e2 ld s1,24(sp) + 8000442e: 6942 ld s2,16(sp) + 80004430: 69a2 ld s3,8(sp) + 80004432: 4505 li a0,1 + 80004434: 6145 addi sp,sp,48 + 80004436: 8082 ret + 80004438: 4581 li a1,0 + 8000443a: 854a mv a0,s2 + 8000443c: 76f020ef jal 800073aa <_sbrk_r> + 80004440: 0109b703 ld a4,16(s3) + 80004444: 46fd li a3,31 + 80004446: 40e507b3 sub a5,a0,a4 + 8000444a: f8f6dee3 bge a3,a5,800043e6 <_malloc_trim_r+0x4e> + 8000444e: 8101b683 ld a3,-2032(gp) # 8000a518 <__malloc_sbrk_base> + 80004452: 0017e793 ori a5,a5,1 + 80004456: e71c sd a5,8(a4) + 80004458: 8d15 sub a0,a0,a3 + 8000445a: 66a1b823 sd a0,1648(gp) # 8000b378 <__malloc_current_mallinfo> + 8000445e: b761 j 800043e6 <_malloc_trim_r+0x4e> + +0000000080004460 <_free_r>: + 80004460: c5e5 beqz a1,80004548 <_free_r+0xe8> + 80004462: 1101 addi sp,sp,-32 + 80004464: e822 sd s0,16(sp) + 80004466: e42e sd a1,8(sp) + 80004468: 842a mv s0,a0 + 8000446a: ec06 sd ra,24(sp) + 8000446c: 715010ef jal 80006380 <__malloc_lock> + 80004470: 65a2 ld a1,8(sp) + 80004472: 00006897 auipc a7,0x6 + 80004476: 22688893 addi a7,a7,550 # 8000a698 <__malloc_av_> + 8000447a: 0108b803 ld a6,16(a7) + 8000447e: ff85b503 ld a0,-8(a1) # 1ffeff8 <__dtim_size+0x1efeff8> + 80004482: ff058713 addi a4,a1,-16 + 80004486: ffe57793 andi a5,a0,-2 + 8000448a: 00f70633 add a2,a4,a5 + 8000448e: 6614 ld a3,8(a2) + 80004490: 00157313 andi t1,a0,1 + 80004494: 9af1 andi a3,a3,-4 + 80004496: 12c80663 beq a6,a2,800045c2 <_free_r+0x162> + 8000449a: e614 sd a3,8(a2) + 8000449c: 00d60833 add a6,a2,a3 + 800044a0: 00883803 ld a6,8(a6) + 800044a4: 00187813 andi a6,a6,1 + 800044a8: 06031b63 bnez t1,8000451e <_free_r+0xbe> + 800044ac: ff05b303 ld t1,-16(a1) + 800044b0: 00006517 auipc a0,0x6 + 800044b4: 1f850513 addi a0,a0,504 # 8000a6a8 <__malloc_av_+0x10> + 800044b8: 40670733 sub a4,a4,t1 + 800044bc: 6b0c ld a1,16(a4) + 800044be: 979a add a5,a5,t1 + 800044c0: 0ea58463 beq a1,a0,800045a8 <_free_r+0x148> + 800044c4: 01873303 ld t1,24(a4) # 1018 + 800044c8: 0065bc23 sd t1,24(a1) + 800044cc: 00b33823 sd a1,16(t1) + 800044d0: 12080363 beqz a6,800045f6 <_free_r+0x196> + 800044d4: 0017e693 ori a3,a5,1 + 800044d8: e714 sd a3,8(a4) + 800044da: e21c sd a5,0(a2) + 800044dc: 1ff00693 li a3,511 + 800044e0: 06f6ee63 bltu a3,a5,8000455c <_free_r+0xfc> + 800044e4: 838d srli a5,a5,0x3 + 800044e6: 00179693 slli a3,a5,0x1 + 800044ea: 2689 addiw a3,a3,2 + 800044ec: 068e slli a3,a3,0x3 + 800044ee: 0088b503 ld a0,8(a7) + 800044f2: 96c6 add a3,a3,a7 + 800044f4: 628c ld a1,0(a3) + 800044f6: 4027d61b sraiw a2,a5,0x2 + 800044fa: 4785 li a5,1 + 800044fc: 00c797b3 sll a5,a5,a2 + 80004500: 8fc9 or a5,a5,a0 + 80004502: ff068613 addi a2,a3,-16 + 80004506: eb0c sd a1,16(a4) + 80004508: ef10 sd a2,24(a4) + 8000450a: 00f8b423 sd a5,8(a7) + 8000450e: e298 sd a4,0(a3) + 80004510: ed98 sd a4,24(a1) + 80004512: 8522 mv a0,s0 + 80004514: 6442 ld s0,16(sp) + 80004516: 60e2 ld ra,24(sp) + 80004518: 6105 addi sp,sp,32 + 8000451a: 6690106f j 80006382 <__malloc_unlock> + 8000451e: 02081663 bnez a6,8000454a <_free_r+0xea> + 80004522: 97b6 add a5,a5,a3 + 80004524: 00006517 auipc a0,0x6 + 80004528: 18450513 addi a0,a0,388 # 8000a6a8 <__malloc_av_+0x10> + 8000452c: 6a14 ld a3,16(a2) + 8000452e: 0017e813 ori a6,a5,1 + 80004532: 00f705b3 add a1,a4,a5 + 80004536: 10a68063 beq a3,a0,80004636 <_free_r+0x1d6> + 8000453a: 6e10 ld a2,24(a2) + 8000453c: ee90 sd a2,24(a3) + 8000453e: ea14 sd a3,16(a2) + 80004540: 01073423 sd a6,8(a4) + 80004544: e19c sd a5,0(a1) + 80004546: bf59 j 800044dc <_free_r+0x7c> + 80004548: 8082 ret + 8000454a: 00156513 ori a0,a0,1 + 8000454e: fea5bc23 sd a0,-8(a1) + 80004552: e21c sd a5,0(a2) + 80004554: 1ff00693 li a3,511 + 80004558: f8f6f6e3 bgeu a3,a5,800044e4 <_free_r+0x84> + 8000455c: 0097d693 srli a3,a5,0x9 + 80004560: 4611 li a2,4 + 80004562: 08d66c63 bltu a2,a3,800045fa <_free_r+0x19a> + 80004566: 0067d693 srli a3,a5,0x6 + 8000456a: 00169593 slli a1,a3,0x1 + 8000456e: 0725859b addiw a1,a1,114 + 80004572: 058e slli a1,a1,0x3 + 80004574: 0386861b addiw a2,a3,56 + 80004578: 95c6 add a1,a1,a7 + 8000457a: 6194 ld a3,0(a1) + 8000457c: 15c1 addi a1,a1,-16 + 8000457e: 00d59663 bne a1,a3,8000458a <_free_r+0x12a> + 80004582: a0e1 j 8000464a <_free_r+0x1ea> + 80004584: 6a94 ld a3,16(a3) + 80004586: 00d58663 beq a1,a3,80004592 <_free_r+0x132> + 8000458a: 6690 ld a2,8(a3) + 8000458c: 9a71 andi a2,a2,-4 + 8000458e: fec7ebe3 bltu a5,a2,80004584 <_free_r+0x124> + 80004592: 6e8c ld a1,24(a3) + 80004594: ef0c sd a1,24(a4) + 80004596: eb14 sd a3,16(a4) + 80004598: 8522 mv a0,s0 + 8000459a: 6442 ld s0,16(sp) + 8000459c: 60e2 ld ra,24(sp) + 8000459e: e998 sd a4,16(a1) + 800045a0: ee98 sd a4,24(a3) + 800045a2: 6105 addi sp,sp,32 + 800045a4: 5df0106f j 80006382 <__malloc_unlock> + 800045a8: 06081a63 bnez a6,8000461c <_free_r+0x1bc> + 800045ac: 6e0c ld a1,24(a2) + 800045ae: 6a10 ld a2,16(a2) + 800045b0: 96be add a3,a3,a5 + 800045b2: 0016e793 ori a5,a3,1 + 800045b6: ee0c sd a1,24(a2) + 800045b8: e990 sd a2,16(a1) + 800045ba: e71c sd a5,8(a4) + 800045bc: 9736 add a4,a4,a3 + 800045be: e314 sd a3,0(a4) + 800045c0: bf89 j 80004512 <_free_r+0xb2> + 800045c2: 96be add a3,a3,a5 + 800045c4: 00031a63 bnez t1,800045d8 <_free_r+0x178> + 800045c8: ff05b783 ld a5,-16(a1) + 800045cc: 8f1d sub a4,a4,a5 + 800045ce: 6b10 ld a2,16(a4) + 800045d0: 96be add a3,a3,a5 + 800045d2: 6f1c ld a5,24(a4) + 800045d4: ee1c sd a5,24(a2) + 800045d6: eb90 sd a2,16(a5) + 800045d8: 0016e613 ori a2,a3,1 + 800045dc: 8181b783 ld a5,-2024(gp) # 8000a520 <__malloc_trim_threshold> + 800045e0: e710 sd a2,8(a4) + 800045e2: 00e8b823 sd a4,16(a7) + 800045e6: f2f6e6e3 bltu a3,a5,80004512 <_free_r+0xb2> + 800045ea: 3a01b583 ld a1,928(gp) # 8000b0a8 <__malloc_top_pad> + 800045ee: 8522 mv a0,s0 + 800045f0: da9ff0ef jal 80004398 <_malloc_trim_r> + 800045f4: bf39 j 80004512 <_free_r+0xb2> + 800045f6: 97b6 add a5,a5,a3 + 800045f8: bf15 j 8000452c <_free_r+0xcc> + 800045fa: 4651 li a2,20 + 800045fc: 02d67563 bgeu a2,a3,80004626 <_free_r+0x1c6> + 80004600: 05400613 li a2,84 + 80004604: 04d66e63 bltu a2,a3,80004660 <_free_r+0x200> + 80004608: 00c7d693 srli a3,a5,0xc + 8000460c: 00169593 slli a1,a3,0x1 + 80004610: 0de5859b addiw a1,a1,222 + 80004614: 058e slli a1,a1,0x3 + 80004616: 06e6861b addiw a2,a3,110 + 8000461a: bfb9 j 80004578 <_free_r+0x118> + 8000461c: 0017e693 ori a3,a5,1 + 80004620: e714 sd a3,8(a4) + 80004622: e21c sd a5,0(a2) + 80004624: b5fd j 80004512 <_free_r+0xb2> + 80004626: 00169593 slli a1,a3,0x1 + 8000462a: 0b85859b addiw a1,a1,184 + 8000462e: 058e slli a1,a1,0x3 + 80004630: 05b6861b addiw a2,a3,91 + 80004634: b791 j 80004578 <_free_r+0x118> + 80004636: 02e8b423 sd a4,40(a7) + 8000463a: 02e8b023 sd a4,32(a7) + 8000463e: ef08 sd a0,24(a4) + 80004640: eb08 sd a0,16(a4) + 80004642: 01073423 sd a6,8(a4) + 80004646: e19c sd a5,0(a1) + 80004648: b5e9 j 80004512 <_free_r+0xb2> + 8000464a: 0088b503 ld a0,8(a7) + 8000464e: 4026561b sraiw a2,a2,0x2 + 80004652: 4785 li a5,1 + 80004654: 00c797b3 sll a5,a5,a2 + 80004658: 8fc9 or a5,a5,a0 + 8000465a: 00f8b423 sd a5,8(a7) + 8000465e: bf1d j 80004594 <_free_r+0x134> + 80004660: 15400613 li a2,340 + 80004664: 00d66c63 bltu a2,a3,8000467c <_free_r+0x21c> + 80004668: 00f7d693 srli a3,a5,0xf + 8000466c: 00169593 slli a1,a3,0x1 + 80004670: 0f05859b addiw a1,a1,240 + 80004674: 058e slli a1,a1,0x3 + 80004676: 0776861b addiw a2,a3,119 + 8000467a: bdfd j 80004578 <_free_r+0x118> + 8000467c: 55400513 li a0,1364 + 80004680: 7f000593 li a1,2032 + 80004684: 07e00613 li a2,126 + 80004688: eed568e3 bltu a0,a3,80004578 <_free_r+0x118> + 8000468c: 0127d693 srli a3,a5,0x12 + 80004690: 00169593 slli a1,a3,0x1 + 80004694: 0fa5859b addiw a1,a1,250 + 80004698: 058e slli a1,a1,0x3 + 8000469a: 07c6861b addiw a2,a3,124 + 8000469e: bde9 j 80004578 <_free_r+0x118> + +00000000800046a0 <_ldtoa_r>: + 800046a0: 00006317 auipc t1,0x6 + 800046a4: 95030313 addi t1,t1,-1712 # 80009ff0 + 800046a8: 00033f03 ld t5,0(t1) + 800046ac: 00833e83 ld t4,8(t1) + 800046b0: 00006317 auipc t1,0x6 + 800046b4: 95032303 lw t1,-1712(t1) # 8000a000 + 800046b8: 05053e03 ld t3,80(a0) + 800046bc: 7171 addi sp,sp,-176 + 800046be: ed26 sd s1,152(sp) + 800046c0: e94a sd s2,144(sp) + 800046c2: e54e sd s3,136(sp) + 800046c4: e152 sd s4,128(sp) + 800046c6: fcd6 sd s5,120(sp) + 800046c8: f0e2 sd s8,96(sp) + 800046ca: ece6 sd s9,88(sp) + 800046cc: e8ea sd s10,80(sp) + 800046ce: f506 sd ra,168(sp) + 800046d0: f122 sd s0,160(sp) + 800046d2: f8da sd s6,112(sp) + 800046d4: f4de sd s7,104(sp) + 800046d6: fc7a sd t5,56(sp) + 800046d8: e0f6 sd t4,64(sp) + 800046da: c49a sw t1,72(sp) + 800046dc: 89aa mv s3,a0 + 800046de: 892e mv s2,a1 + 800046e0: 84b2 mv s1,a2 + 800046e2: 8c36 mv s8,a3 + 800046e4: 8cba mv s9,a4 + 800046e6: 8a3e mv s4,a5 + 800046e8: 8ac2 mv s5,a6 + 800046ea: 8d46 mv s10,a7 + 800046ec: 000e0763 beqz t3,800046fa <_ldtoa_r+0x5a> + 800046f0: 85f2 mv a1,t3 + 800046f2: 3ca010ef jal 80005abc <__freedtoa> + 800046f6: 0409b823 sd zero,80(s3) + 800046fa: 4716 lw a4,68(sp) + 800046fc: 0004a793 slti a5,s1,0 + 80004700: 00149413 slli s0,s1,0x1 + 80004704: 4017569b sraiw a3,a4,0x1 + 80004708: 8ff5 and a5,a5,a3 + 8000470a: 8f3d xor a4,a4,a5 + 8000470c: c2ba sw a4,68(sp) + 8000470e: 0004a713 slti a4,s1,0 + 80004712: 00eaa023 sw a4,0(s5) + 80004716: 00149713 slli a4,s1,0x1 + 8000471a: 8005 srli s0,s0,0x1 + 8000471c: 03175b13 srli s6,a4,0x31 + 80004720: 77f1 lui a5,0xffffc + 80004722: 01049713 slli a4,s1,0x10 + 80004726: f917879b addiw a5,a5,-111 # ffffffffffffbf91 <_stack_top+0xffffffff7fefbf91> + 8000472a: 03075a93 srli s5,a4,0x30 + 8000472e: 86a2 mv a3,s0 + 80004730: 85a2 mv a1,s0 + 80004732: 864a mv a2,s2 + 80004734: 854a mv a0,s2 + 80004736: f44a sd s2,40(sp) + 80004738: d826 sw s1,48(sp) + 8000473a: 00fb0bbb addw s7,s6,a5 + 8000473e: da56 sw s5,52(sp) + 80004740: 579040ef jal 800094b8 <__unordtf2> + 80004744: ed5d bnez a0,80004802 <_ldtoa_r+0x162> + 80004746: 00006797 auipc a5,0x6 + 8000474a: 86a78793 addi a5,a5,-1942 # 80009fb0 + 8000474e: 6390 ld a2,0(a5) + 80004750: 6794 ld a3,8(a5) + 80004752: 854a mv a0,s2 + 80004754: 85a2 mv a1,s0 + 80004756: ec32 sd a2,24(sp) + 80004758: e836 sd a3,16(sp) + 8000475a: 55f040ef jal 800094b8 <__unordtf2> + 8000475e: ed31 bnez a0,800047ba <_ldtoa_r+0x11a> + 80004760: 6662 ld a2,24(sp) + 80004762: 66c2 ld a3,16(sp) + 80004764: 854a mv a0,s2 + 80004766: 85a2 mv a1,s0 + 80004768: 691030ef jal 800085f8 <__letf2> + 8000476c: 04a05763 blez a0,800047ba <_ldtoa_r+0x11a> + 80004770: 478d li a5,3 + 80004772: d23e sw a5,36(sp) + 80004774: 87e2 mv a5,s8 + 80004776: 1058 addi a4,sp,36 + 80004778: e06a sd s10,0(sp) + 8000477a: 8866 mv a6,s9 + 8000477c: 865e mv a2,s7 + 8000477e: 854e mv a0,s3 + 80004780: 88d2 mv a7,s4 + 80004782: 1034 addi a3,sp,40 + 80004784: 182c addi a1,sp,56 + 80004786: 0f8000ef jal 8000487e <__gdtoa> + 8000478a: 000a2703 lw a4,0(s4) + 8000478e: 77e1 lui a5,0xffff8 + 80004790: 00f71763 bne a4,a5,8000479e <_ldtoa_r+0xfe> + 80004794: 800007b7 lui a5,0x80000 + 80004798: 17fd addi a5,a5,-1 # ffffffff7fffffff <_stack_top+0xfffffffeffefffff> + 8000479a: 00fa2023 sw a5,0(s4) + 8000479e: 70aa ld ra,168(sp) + 800047a0: 740a ld s0,160(sp) + 800047a2: 64ea ld s1,152(sp) + 800047a4: 694a ld s2,144(sp) + 800047a6: 69aa ld s3,136(sp) + 800047a8: 6a0a ld s4,128(sp) + 800047aa: 7ae6 ld s5,120(sp) + 800047ac: 7b46 ld s6,112(sp) + 800047ae: 7ba6 ld s7,104(sp) + 800047b0: 7c06 ld s8,96(sp) + 800047b2: 6ce6 ld s9,88(sp) + 800047b4: 6d46 ld s10,80(sp) + 800047b6: 614d addi sp,sp,176 + 800047b8: 8082 ret + 800047ba: 00006797 auipc a5,0x6 + 800047be: 80678793 addi a5,a5,-2042 # 80009fc0 + 800047c2: 6390 ld a2,0(a5) + 800047c4: 6794 ld a3,8(a5) + 800047c6: 85a2 mv a1,s0 + 800047c8: 854a mv a0,s2 + 800047ca: 579030ef jal 80008542 <__getf2> + 800047ce: 00054963 bltz a0,800047e0 <_ldtoa_r+0x140> + 800047d2: 67c1 lui a5,0x10 + 800047d4: 0157e7b3 or a5,a5,s5 + 800047d8: 4705 li a4,1 + 800047da: da3e sw a5,52(sp) + 800047dc: d23a sw a4,36(sp) + 800047de: bf59 j 80004774 <_ldtoa_r+0xd4> + 800047e0: 854a mv a0,s2 + 800047e2: 85a6 mv a1,s1 + 800047e4: 4601 li a2,0 + 800047e6: 4681 li a3,0 + 800047e8: 4c1030ef jal 800084a8 <__eqtf2> + 800047ec: e119 bnez a0,800047f2 <_ldtoa_r+0x152> + 800047ee: d202 sw zero,36(sp) + 800047f0: b751 j 80004774 <_ldtoa_r+0xd4> + 800047f2: 77f1 lui a5,0xffffc + 800047f4: f927879b addiw a5,a5,-110 # ffffffffffffbf92 <_stack_top+0xffffffff7fefbf92> + 800047f8: 4709 li a4,2 + 800047fa: 00fb0bbb addw s7,s6,a5 + 800047fe: d23a sw a4,36(sp) + 80004800: bf95 j 80004774 <_ldtoa_r+0xd4> + 80004802: 4791 li a5,4 + 80004804: d23e sw a5,36(sp) + 80004806: b7bd j 80004774 <_ldtoa_r+0xd4> + +0000000080004808 <_ldcheck>: + 80004808: 7179 addi sp,sp,-48 + 8000480a: f022 sd s0,32(sp) + 8000480c: 6500 ld s0,8(a0) + 8000480e: e84a sd s2,16(sp) + 80004810: 00053903 ld s2,0(a0) + 80004814: 0406 slli s0,s0,0x1 + 80004816: 8005 srli s0,s0,0x1 + 80004818: 86a2 mv a3,s0 + 8000481a: 85a2 mv a1,s0 + 8000481c: 864a mv a2,s2 + 8000481e: 854a mv a0,s2 + 80004820: f406 sd ra,40(sp) + 80004822: 497040ef jal 800094b8 <__unordtf2> + 80004826: e531 bnez a0,80004872 <_ldcheck+0x6a> + 80004828: 00005797 auipc a5,0x5 + 8000482c: 78878793 addi a5,a5,1928 # 80009fb0 + 80004830: 6390 ld a2,0(a5) + 80004832: 6794 ld a3,8(a5) + 80004834: 854a mv a0,s2 + 80004836: 85a2 mv a1,s0 + 80004838: ec26 sd s1,24(sp) + 8000483a: e432 sd a2,8(sp) + 8000483c: e036 sd a3,0(sp) + 8000483e: 4485 li s1,1 + 80004840: 479040ef jal 800094b8 <__unordtf2> + 80004844: cd09 beqz a0,8000485e <_ldcheck+0x56> + 80004846: 70a2 ld ra,40(sp) + 80004848: 7402 ld s0,32(sp) + 8000484a: 0014c513 xori a0,s1,1 + 8000484e: 0ff57513 zext.b a0,a0 + 80004852: 64e2 ld s1,24(sp) + 80004854: 6942 ld s2,16(sp) + 80004856: 0015151b slliw a0,a0,0x1 + 8000485a: 6145 addi sp,sp,48 + 8000485c: 8082 ret + 8000485e: 6622 ld a2,8(sp) + 80004860: 6682 ld a3,0(sp) + 80004862: 854a mv a0,s2 + 80004864: 85a2 mv a1,s0 + 80004866: 593030ef jal 800085f8 <__letf2> + 8000486a: fca05ee3 blez a0,80004846 <_ldcheck+0x3e> + 8000486e: 4481 li s1,0 + 80004870: bfd9 j 80004846 <_ldcheck+0x3e> + 80004872: 70a2 ld ra,40(sp) + 80004874: 7402 ld s0,32(sp) + 80004876: 6942 ld s2,16(sp) + 80004878: 4505 li a0,1 + 8000487a: 6145 addi sp,sp,48 + 8000487c: 8082 ret + +000000008000487e <__gdtoa>: + 8000487e: 00072303 lw t1,0(a4) + 80004882: 7111 addi sp,sp,-256 + 80004884: f9a2 sd s0,240(sp) + 80004886: 6412 ld s0,256(sp) + 80004888: edce sd s3,216(sp) + 8000488a: fcf37e13 andi t3,t1,-49 + 8000488e: fd86 sd ra,248(sp) + 80004890: 01c72023 sw t3,0(a4) + 80004894: 4e8d li t4,3 + 80004896: 00f37e13 andi t3,t1,15 + 8000489a: 89a2 mv s3,s0 + 8000489c: 27de0563 beq t3,t4,80004b06 <__gdtoa+0x288> + 800048a0: fd5e sd s7,184(sp) + 800048a2: 00c37413 andi s0,t1,12 + 800048a6: 8ba2 mv s7,s0 + 800048a8: 1c041c63 bnez s0,80004a80 <__gdtoa+0x202> + 800048ac: e9d2 sd s4,208(sp) + 800048ae: f962 sd s8,176(sp) + 800048b0: f566 sd s9,168(sp) + 800048b2: f16a sd s10,160(sp) + 800048b4: ed6e sd s11,152(sp) + 800048b6: e03a sd a4,0(sp) + 800048b8: 8a2a mv s4,a0 + 800048ba: 8cc6 mv s9,a7 + 800048bc: 8c36 mv s8,a3 + 800048be: 8d32 mv s10,a2 + 800048c0: 8dae mv s11,a1 + 800048c2: 1e0e0963 beqz t3,80004ab4 <__gdtoa+0x236> + 800048c6: 4194 lw a3,0(a1) + 800048c8: e5d6 sd s5,200(sp) + 800048ca: e1da sd s6,192(sp) + 800048cc: 8abe mv s5,a5 + 800048ce: 02000793 li a5,32 + 800048d2: 8b42 mv s6,a6 + 800048d4: 4581 li a1,0 + 800048d6: 00d7d763 bge a5,a3,800048e4 <__gdtoa+0x66> + 800048da: 0017979b slliw a5,a5,0x1 + 800048de: 2585 addiw a1,a1,1 + 800048e0: fed7cde3 blt a5,a3,800048da <__gdtoa+0x5c> + 800048e4: 8552 mv a0,s4 + 800048e6: e836 sd a3,16(sp) + 800048e8: e41a sd t1,8(sp) + 800048ea: 29b010ef jal 80006384 <_Balloc> + 800048ee: 842a mv s0,a0 + 800048f0: 4701 li a4,0 + 800048f2: 1e050c63 beqz a0,80004aea <__gdtoa+0x26c> + 800048f6: 66c2 ld a3,16(sp) + 800048f8: 6322 ld t1,8(sp) + 800048fa: 87e2 mv a5,s8 + 800048fc: fff6871b addiw a4,a3,-1 + 80004900: 4057571b sraiw a4,a4,0x5 + 80004904: 070a slli a4,a4,0x2 + 80004906: 00ec0533 add a0,s8,a4 + 8000490a: 01840613 addi a2,s0,24 + 8000490e: 438c lw a1,0(a5) + 80004910: 0791 addi a5,a5,4 + 80004912: 0611 addi a2,a2,4 + 80004914: feb62e23 sw a1,-4(a2) + 80004918: fef57be3 bgeu a0,a5,8000490e <__gdtoa+0x90> + 8000491c: 001c0793 addi a5,s8,1 + 80004920: 0505 addi a0,a0,1 + 80004922: 00f53533 sltu a0,a0,a5 + 80004926: 157d addi a0,a0,-1 + 80004928: 8f69 and a4,a4,a0 + 8000492a: 0711 addi a4,a4,4 + 8000492c: 40275793 srai a5,a4,0x2 + 80004930: 9722 add a4,a4,s0 + 80004932: a021 j 8000493a <__gdtoa+0xbc> + 80004934: 1771 addi a4,a4,-4 + 80004936: 1e078763 beqz a5,80004b24 <__gdtoa+0x2a6> + 8000493a: 4b50 lw a2,20(a4) + 8000493c: 85be mv a1,a5 + 8000493e: 37fd addiw a5,a5,-1 + 80004940: da75 beqz a2,80004934 <__gdtoa+0xb6> + 80004942: 078a slli a5,a5,0x2 + 80004944: 97a2 add a5,a5,s0 + 80004946: 4f88 lw a0,24(a5) + 80004948: c84c sw a1,20(s0) + 8000494a: ec1a sd t1,24(sp) + 8000494c: e836 sd a3,16(sp) + 8000494e: e42e sd a1,8(sp) + 80004950: 3a7010ef jal 800064f6 <__hi0bits> + 80004954: 65a2 ld a1,8(sp) + 80004956: 6362 ld t1,24(sp) + 80004958: 66c2 ld a3,16(sp) + 8000495a: 0055959b slliw a1,a1,0x5 + 8000495e: 40a587bb subw a5,a1,a0 + 80004962: 8522 mv a0,s0 + 80004964: ec3e sd a5,24(sp) + 80004966: e836 sd a3,16(sp) + 80004968: e41a sd t1,8(sp) + 8000496a: 380010ef jal 80005cea <__trailz_D2A> + 8000496e: c72a sw a0,140(sp) + 80004970: 6322 ld t1,8(sp) + 80004972: 66c2 ld a3,16(sp) + 80004974: 67e2 ld a5,24(sp) + 80004976: 8fea mv t6,s10 + 80004978: 1a051963 bnez a0,80004b2a <__gdtoa+0x2ac> + 8000497c: 4858 lw a4,20(s0) + 8000497e: 12070563 beqz a4,80004aa8 <__gdtoa+0x22a> + 80004982: 016c addi a1,sp,140 + 80004984: 8522 mv a0,s0 + 80004986: f03e sd a5,32(sp) + 80004988: ec36 sd a3,24(sp) + 8000498a: e87e sd t6,16(sp) + 8000498c: e41a sd t1,8(sp) + 8000498e: f5a6 sd s1,232(sp) + 80004990: 2b8020ef jal 80006c48 <__b2d> + 80004994: e2050753 fmv.x.d a4,fa0 + 80004998: 3ff005b7 lui a1,0x3ff00 + 8000499c: 00006797 auipc a5,0x6 + 800049a0: b047b707 fld fa4,-1276(a5) # 8000a4a0 <__clz_tab+0x130> + 800049a4: 00c71613 slli a2,a4,0xc + 800049a8: 02071813 slli a6,a4,0x20 + 800049ac: 02c65713 srli a4,a2,0x2c + 800049b0: 00b76633 or a2,a4,a1 + 800049b4: 02061713 slli a4,a2,0x20 + 800049b8: 02085813 srli a6,a6,0x20 + 800049bc: 00e86833 or a6,a6,a4 + 800049c0: f20807d3 fmv.d.x fa5,a6 + 800049c4: 00006797 auipc a5,0x6 + 800049c8: ae47b587 fld fa1,-1308(a5) # 8000a4a8 <__clz_tab+0x138> + 800049cc: 00006797 auipc a5,0x6 + 800049d0: ae47b607 fld fa2,-1308(a5) # 8000a4b0 <__clz_tab+0x140> + 800049d4: 0ae7f753 fsub.d fa4,fa5,fa4 + 800049d8: 6fc2 ld t6,16(sp) + 800049da: 7782 ld a5,32(sp) + 800049dc: 85b2 mv a1,a2 + 800049de: 00006717 auipc a4,0x6 + 800049e2: ada73687 fld fa3,-1318(a4) # 8000a4b8 <__clz_tab+0x148> + 800049e6: 00ff853b addw a0,t6,a5 + 800049ea: fff5061b addiw a2,a0,-1 + 800049ee: 62b77743 fmadd.d fa4,fa4,fa1,fa2 + 800049f2: d20607d3 fcvt.d.w fa5,a2 + 800049f6: 6322 ld t1,8(sp) + 800049f8: 66e2 ld a3,24(sp) + 800049fa: 8732 mv a4,a2 + 800049fc: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 + 80004a00: 00065463 bgez a2,80004a08 <__gdtoa+0x18a> + 80004a04: 4705 li a4,1 + 80004a06: 9f09 subw a4,a4,a0 + 80004a08: bcb7071b addiw a4,a4,-1077 + 80004a0c: 00e05a63 blez a4,80004a20 <__gdtoa+0x1a2> + 80004a10: d20706d3 fcvt.d.w fa3,a4 + 80004a14: 00006717 auipc a4,0x6 + 80004a18: aac73707 fld fa4,-1364(a4) # 8000a4c0 <__clz_tab+0x150> + 80004a1c: 7ae6f7c3 fmadd.d fa5,fa3,fa4,fa5 + 80004a20: f2000753 fmv.d.x fa4,zero + 80004a24: c20798d3 fcvt.w.d a7,fa5,rtz + 80004a28: a2e79753 flt.d a4,fa5,fa4 + 80004a2c: 42071f63 bnez a4,80004e6a <__gdtoa+0x5ec> + 80004a30: 0146171b slliw a4,a2,0x14 + 80004a34: 1802 slli a6,a6,0x20 + 80004a36: 9f2d addw a4,a4,a1 + 80004a38: 1702 slli a4,a4,0x20 + 80004a3a: 02085813 srli a6,a6,0x20 + 80004a3e: 40c7863b subw a2,a5,a2 + 80004a42: 00e86833 or a6,a6,a4 + 80004a46: fff60f1b addiw t5,a2,-1 + 80004a4a: 4759 li a4,22 + 80004a4c: 8e7a mv t3,t5 + 80004a4e: 0f176b63 bltu a4,a7,80004b44 <__gdtoa+0x2c6> + 80004a52: 00005597 auipc a1,0x5 + 80004a56: 5c658593 addi a1,a1,1478 # 8000a018 <__mprec_tens> + 80004a5a: 00389713 slli a4,a7,0x3 + 80004a5e: 972e add a4,a4,a1 + 80004a60: 231c fld fa5,0(a4) + 80004a62: f2080753 fmv.d.x fa4,a6 + 80004a66: a2f71753 flt.d a4,fa4,fa5 + 80004a6a: 2e071d63 bnez a4,80004d64 <__gdtoa+0x4e6> + 80004a6e: 12c057e3 blez a2,8000539c <__gdtoa+0xb1e> + 80004a72: 01e88f3b addw t5,a7,t5 + 80004a76: f082 sd zero,96(sp) + 80004a78: e8c6 sd a7,80(sp) + 80004a7a: e482 sd zero,72(sp) + 80004a7c: e802 sd zero,16(sp) + 80004a7e: a0d5 j 80004b62 <__gdtoa+0x2e4> + 80004a80: 4791 li a5,4 + 80004a82: 4701 li a4,0 + 80004a84: 04fe1963 bne t3,a5,80004ad6 <__gdtoa+0x258> + 80004a88: 744e ld s0,240(sp) + 80004a8a: 7bea ld s7,184(sp) + 80004a8c: 70ee ld ra,248(sp) + 80004a8e: 77e1 lui a5,0xffff8 + 80004a90: 864e mv a2,s3 + 80004a92: 69ee ld s3,216(sp) + 80004a94: 00f8a023 sw a5,0(a7) + 80004a98: 86f6 mv a3,t4 + 80004a9a: 00005597 auipc a1,0x5 + 80004a9e: 1fe58593 addi a1,a1,510 # 80009c98 <__clzdi2+0x5d6> + 80004aa2: 6111 addi sp,sp,256 + 80004aa4: 7a70006f j 80005a4a <__nrv_alloc_D2A> + 80004aa8: 85a2 mv a1,s0 + 80004aaa: 8552 mv a0,s4 + 80004aac: 149010ef jal 800063f4 <_Bfree> + 80004ab0: 6aae ld s5,200(sp) + 80004ab2: 6b0e ld s6,192(sp) + 80004ab4: 4685 li a3,1 + 80004ab6: 8552 mv a0,s4 + 80004ab8: 00dca023 sw a3,0(s9) + 80004abc: 864e mv a2,s3 + 80004abe: 00005597 auipc a1,0x5 + 80004ac2: 1c258593 addi a1,a1,450 # 80009c80 <__clzdi2+0x5be> + 80004ac6: 785000ef jal 80005a4a <__nrv_alloc_D2A> + 80004aca: 6a4e ld s4,208(sp) + 80004acc: 7c4a ld s8,176(sp) + 80004ace: 7caa ld s9,168(sp) + 80004ad0: 7d0a ld s10,160(sp) + 80004ad2: 6dea ld s11,152(sp) + 80004ad4: 872a mv a4,a0 + 80004ad6: 70ee ld ra,248(sp) + 80004ad8: 744e ld s0,240(sp) + 80004ada: 7bea ld s7,184(sp) + 80004adc: 69ee ld s3,216(sp) + 80004ade: 853a mv a0,a4 + 80004ae0: 6111 addi sp,sp,256 + 80004ae2: 8082 ret + 80004ae4: 74ae ld s1,232(sp) + 80004ae6: 790e ld s2,224(sp) + 80004ae8: 4701 li a4,0 + 80004aea: 70ee ld ra,248(sp) + 80004aec: 744e ld s0,240(sp) + 80004aee: 6a4e ld s4,208(sp) + 80004af0: 6aae ld s5,200(sp) + 80004af2: 6b0e ld s6,192(sp) + 80004af4: 7c4a ld s8,176(sp) + 80004af6: 7caa ld s9,168(sp) + 80004af8: 7d0a ld s10,160(sp) + 80004afa: 6dea ld s11,152(sp) + 80004afc: 7bea ld s7,184(sp) + 80004afe: 69ee ld s3,216(sp) + 80004b00: 853a mv a0,a4 + 80004b02: 6111 addi sp,sp,256 + 80004b04: 8082 ret + 80004b06: 8622 mv a2,s0 + 80004b08: 744e ld s0,240(sp) + 80004b0a: 70ee ld ra,248(sp) + 80004b0c: 69ee ld s3,216(sp) + 80004b0e: 77e1 lui a5,0xffff8 + 80004b10: 00f8a023 sw a5,0(a7) + 80004b14: 46a1 li a3,8 + 80004b16: 00005597 auipc a1,0x5 + 80004b1a: 17258593 addi a1,a1,370 # 80009c88 <__clzdi2+0x5c6> + 80004b1e: 6111 addi sp,sp,256 + 80004b20: 72b0006f j 80005a4a <__nrv_alloc_D2A> + 80004b24: 00042a23 sw zero,20(s0) + 80004b28: bd2d j 80004962 <__gdtoa+0xe4> + 80004b2a: 85aa mv a1,a0 + 80004b2c: 8522 mv a0,s0 + 80004b2e: 11a010ef jal 80005c48 <__rshift_D2A> + 80004b32: 4fba lw t6,140(sp) + 80004b34: 67e2 ld a5,24(sp) + 80004b36: 66c2 ld a3,16(sp) + 80004b38: 6322 ld t1,8(sp) + 80004b3a: 41f787bb subw a5,a5,t6 + 80004b3e: 01af8fbb addw t6,t6,s10 + 80004b42: bd2d j 8000497c <__gdtoa+0xfe> + 80004b44: 4705 li a4,1 + 80004b46: f0ba sd a4,96(sp) + 80004b48: e802 sd zero,16(sp) + 80004b4a: 200e4663 bltz t3,80004d56 <__gdtoa+0x4d8> + 80004b4e: 1e08df63 bgez a7,80004d4c <__gdtoa+0x4ce> + 80004b52: 6742 ld a4,16(sp) + 80004b54: e882 sd zero,80(sp) + 80004b56: 4117073b subw a4,a4,a7 + 80004b5a: e83a sd a4,16(sp) + 80004b5c: 4110073b negw a4,a7 + 80004b60: e4ba sd a4,72(sp) + 80004b62: 4725 li a4,9 + 80004b64: 2d576b63 bltu a4,s5,80004e3a <__gdtoa+0x5bc> + 80004b68: 4715 li a4,5 + 80004b6a: 61575963 bge a4,s5,8000517c <__gdtoa+0x8fe> + 80004b6e: ffca859b addiw a1,s5,-4 + 80004b72: 4611 li a2,4 + 80004b74: 8aae mv s5,a1 + 80004b76: 30c58263 beq a1,a2,80004e7a <__gdtoa+0x5fc> + 80004b7a: 1ae589e3 beq a1,a4,8000552c <__gdtoa+0xcae> + 80004b7e: 4709 li a4,2 + 80004b80: f482 sd zero,104(sp) + 80004b82: 4481 li s1,0 + 80004b84: 2ee58e63 beq a1,a4,80004e80 <__gdtoa+0x602> + 80004b88: 4a8d li s5,3 + 80004b8a: 011b073b addw a4,s6,a7 + 80004b8e: f8ba sd a4,112(sp) + 80004b90: 00170e1b addiw t3,a4,1 + 80004b94: 4705 li a4,1 + 80004b96: 85ba mv a1,a4 + 80004b98: 01c05463 blez t3,80004ba0 <__gdtoa+0x322> + 80004b9c: 8772 mv a4,t3 + 80004b9e: 85f2 mv a1,t3 + 80004ba0: 8552 mv a0,s4 + 80004ba2: c73a sw a4,140(sp) + 80004ba4: e0c2 sd a6,64(sp) + 80004ba6: fc7a sd t5,56(sp) + 80004ba8: f83e sd a5,48(sp) + 80004baa: f436 sd a3,40(sp) + 80004bac: f046 sd a7,32(sp) + 80004bae: ec7e sd t6,24(sp) + 80004bb0: e472 sd t3,8(sp) + 80004bb2: ec9a sd t1,88(sp) + 80004bb4: 653000ef jal 80005a06 <__rv_alloc_D2A> + 80004bb8: 872a mv a4,a0 + 80004bba: 18050763 beqz a0,80004d48 <__gdtoa+0x4ca> + 80004bbe: 00cdae83 lw t4,12(s11) + 80004bc2: 6e22 ld t3,8(sp) + 80004bc4: 6fe2 ld t6,24(sp) + 80004bc6: 3efd addiw t4,t4,-1 + 80004bc8: 7882 ld a7,32(sp) + 80004bca: 76a2 ld a3,40(sp) + 80004bcc: 77c2 ld a5,48(sp) + 80004bce: 7f62 ld t5,56(sp) + 80004bd0: 6806 ld a6,64(sp) + 80004bd2: 000e8d63 beqz t4,80004bec <__gdtoa+0x36e> + 80004bd6: 6366 ld t1,88(sp) + 80004bd8: 000ed363 bgez t4,80004bde <__gdtoa+0x360> + 80004bdc: 4e89 li t4,2 + 80004bde: 10037313 andi t1,t1,256 + 80004be2: 1e030063 beqz t1,80004dc2 <__gdtoa+0x544> + 80004be6: 460d li a2,3 + 80004be8: 41d60ebb subw t4,a2,t4 + 80004bec: 00fe3613 sltiu a2,t3,15 + 80004bf0: 8e65 and a2,a2,s1 + 80004bf2: 1c060863 beqz a2,80004dc2 <__gdtoa+0x544> + 80004bf6: 011ee633 or a2,t4,a7 + 80004bfa: 2601 sext.w a2,a2 + 80004bfc: 1c061363 bnez a2,80004dc2 <__gdtoa+0x544> + 80004c00: 7606 ld a2,96(sp) + 80004c02: c702 sw zero,140(sp) + 80004c04: f20806d3 fmv.d.x fa3,a6 + 80004c08: ca09 beqz a2,80004c1a <__gdtoa+0x39c> + 80004c0a: 00006617 auipc a2,0x6 + 80004c0e: 8c663587 fld fa1,-1850(a2) # 8000a4d0 <__clz_tab+0x160> + 80004c12: a2b69653 flt.d a2,fa3,fa1 + 80004c16: 14061a63 bnez a2,80004d6a <__gdtoa+0x4ec> + 80004c1a: 00006617 auipc a2,0x6 + 80004c1e: 8be63787 fld fa5,-1858(a2) # 8000a4d8 <__clz_tab+0x168> + 80004c22: 00006617 auipc a2,0x6 + 80004c26: 8be63707 fld fa4,-1858(a2) # 8000a4e0 <__clz_tab+0x170> + 80004c2a: fcc005b7 lui a1,0xfcc00 + 80004c2e: 72f6f7c3 fmadd.d fa5,fa3,fa5,fa4 + 80004c32: e2078653 fmv.x.d a2,fa5 + 80004c36: 02061e93 slli t4,a2,0x20 + 80004c3a: 9201 srli a2,a2,0x20 + 80004c3c: 9e2d addw a2,a2,a1 + 80004c3e: 020ede93 srli t4,t4,0x20 + 80004c42: 1602 slli a2,a2,0x20 + 80004c44: 00ceeeb3 or t4,t4,a2 + 80004c48: 140e0a63 beqz t3,80004d9c <__gdtoa+0x51e> + 80004c4c: 22d687d3 fmv.d fa5,fa3 + 80004c50: 4501 li a0,0 + 80004c52: 8372 mv t1,t3 + 80004c54: fff3061b addiw a2,t1,-1 + 80004c58: 060e slli a2,a2,0x3 + 80004c5a: 00005597 auipc a1,0x5 + 80004c5e: 3be58593 addi a1,a1,958 # 8000a018 <__mprec_tens> + 80004c62: 962e add a2,a2,a1 + 80004c64: 2210 fld fa2,0(a2) + 80004c66: 7626 ld a2,104(sp) + 80004c68: 14060be3 beqz a2,800055be <__gdtoa+0xd40> + 80004c6c: 00006617 auipc a2,0x6 + 80004c70: 89463707 fld fa4,-1900(a2) # 8000a500 <__clz_tab+0x190> + 80004c74: c2079653 fcvt.w.d a2,fa5,rtz + 80004c78: 00170293 addi t0,a4,1 + 80004c7c: 1ac77753 fdiv.d fa4,fa4,fa2 + 80004c80: d20606d3 fcvt.d.w fa3,a2 + 80004c84: 0306061b addiw a2,a2,48 + 80004c88: 00c70023 sb a2,0(a4) + 80004c8c: 0ad7f7d3 fsub.d fa5,fa5,fa3 + 80004c90: f20e86d3 fmv.d.x fa3,t4 + 80004c94: 8616 mv a2,t0 + 80004c96: 0ad77753 fsub.d fa4,fa4,fa3 + 80004c9a: a2e79ed3 flt.d t4,fa5,fa4 + 80004c9e: 340e94e3 bnez t4,800057e6 <__gdtoa+0xf68> + 80004ca2: 00006497 auipc s1,0x6 + 80004ca6: 82e4b587 fld fa1,-2002(s1) # 8000a4d0 <__clz_tab+0x160> + 80004caa: 00006497 auipc s1,0x6 + 80004cae: 83e4b607 fld fa2,-1986(s1) # 8000a4e8 <__clz_tab+0x178> + 80004cb2: a80d j 80004ce4 <__gdtoa+0x466> + 80004cb4: 4eba lw t4,140(sp) + 80004cb6: 0605 addi a2,a2,1 + 80004cb8: 2e85 addiw t4,t4,1 + 80004cba: c776 sw t4,140(sp) + 80004cbc: 526ed563 bge t4,t1,800051e6 <__gdtoa+0x968> + 80004cc0: 12c7f7d3 fmul.d fa5,fa5,fa2 + 80004cc4: 12c77753 fmul.d fa4,fa4,fa2 + 80004cc8: c2079ed3 fcvt.w.d t4,fa5,rtz + 80004ccc: d20e86d3 fcvt.d.w fa3,t4 + 80004cd0: 030e8e9b addiw t4,t4,48 + 80004cd4: ffd60fa3 sb t4,-1(a2) + 80004cd8: 0ad7f7d3 fsub.d fa5,fa5,fa3 + 80004cdc: a2e79ed3 flt.d t4,fa5,fa4 + 80004ce0: 300e93e3 bnez t4,800057e6 <__gdtoa+0xf68> + 80004ce4: 0af5f6d3 fsub.d fa3,fa1,fa5 + 80004ce8: a2e69ed3 flt.d t4,fa3,fa4 + 80004cec: fc0e84e3 beqz t4,80004cb4 <__gdtoa+0x436> + 80004cf0: fff64683 lbu a3,-1(a2) + 80004cf4: 03900593 li a1,57 + 80004cf8: a031 j 80004d04 <__gdtoa+0x486> + 80004cfa: 1af70de3 beq a4,a5,800056b4 <__gdtoa+0xe36> + 80004cfe: fff7c683 lbu a3,-1(a5) # ffffffffffff7fff <_stack_top+0xffffffff7fef7fff> + 80004d02: 863e mv a2,a5 + 80004d04: fff60793 addi a5,a2,-1 + 80004d08: feb689e3 beq a3,a1,80004cfa <__gdtoa+0x47c> + 80004d0c: 0685 addi a3,a3,1 + 80004d0e: 00d78023 sb a3,0(a5) + 80004d12: 0015081b addiw a6,a0,1 + 80004d16: 02000b93 li s7,32 + 80004d1a: 85a2 mv a1,s0 80004d1c: 8552 mv a0,s4 - 80004d1e: fc3a sd a4,56(sp) - 80004d20: f876 sd t4,48(sp) - 80004d22: f442 sd a6,40(sp) - 80004d24: f046 sd a7,32(sp) - 80004d26: ec3e sd a5,24(sp) - 80004d28: 7f7000ef jal 80005d1e <__multadd> - 80004d2c: 842a mv s0,a0 - 80004d2e: ec0507e3 beqz a0,80004bfc <__gdtoa+0xa66> - 80004d32: 7882 ld a7,32(sp) - 80004d34: 76a6 ld a3,104(sp) - 80004d36: 7822 ld a6,40(sp) - 80004d38: 7ec2 ld t4,48(sp) - 80004d3a: 7762 ld a4,56(sp) - 80004d3c: 38fd addiw a7,a7,-1 - 80004d3e: 52069263 bnez a3,80005262 <__gdtoa+0x10cc> - 80004d42: 7e46 ld t3,112(sp) - 80004d44: 4689 li a3,2 - 80004d46: 0156a6b3 slt a3,a3,s5 - 80004d4a: 001e2793 slti a5,t3,1 - 80004d4e: 8ff5 and a5,a5,a3 - 80004d50: e3d9 bnez a5,80004dd6 <__gdtoa+0xc40> - 80004d52: f1ca sd s2,224(sp) - 80004d54: 4685 li a3,1 - 80004d56: 8af2 mv s5,t3 - 80004d58: 8b46 mv s6,a7 - 80004d5a: 8942 mv s2,a6 - 80004d5c: 84ba mv s1,a4 - 80004d5e: 8bf6 mv s7,t4 - 80004d60: 8c3a mv s8,a4 - 80004d62: a811 j 80004d76 <__gdtoa+0xbe0> - 80004d64: 85a2 mv a1,s0 - 80004d66: 8552 mv a0,s4 - 80004d68: 7b7000ef jal 80005d1e <__multadd> - 80004d6c: 842a mv s0,a0 - 80004d6e: e8050763 beqz a0,800043fc <__gdtoa+0x266> - 80004d72: 46ba lw a3,140(sp) - 80004d74: 2685 addiw a3,a3,1 - 80004d76: 85ca mv a1,s2 - 80004d78: 8522 mv a0,s0 - 80004d7a: c736 sw a3,140(sp) - 80004d7c: 668000ef jal 800053e4 <__quorem_D2A> - 80004d80: 00148793 addi a5,s1,1 - 80004d84: 0305031b addiw t1,a0,48 - 80004d88: fe678fa3 sb t1,-1(a5) - 80004d8c: 84be mv s1,a5 - 80004d8e: 47ba lw a5,140(sp) - 80004d90: 4681 li a3,0 - 80004d92: 4629 li a2,10 - 80004d94: fd57c8e3 blt a5,s5,80004d64 <__gdtoa+0xbce> - 80004d98: 88da mv a7,s6 - 80004d9a: 884a mv a6,s2 - 80004d9c: 87a6 mv a5,s1 - 80004d9e: 8ede mv t4,s7 - 80004da0: 8762 mv a4,s8 - 80004da2: 4e01 li t3,0 - 80004da4: 300e8063 beqz t4,800050a4 <__gdtoa+0xf0e> - 80004da8: 4689 li a3,2 - 80004daa: 32de8b63 beq t4,a3,800050e0 <__gdtoa+0xf4a> - 80004dae: 4850 lw a2,20(s0) - 80004db0: 4685 li a3,1 - 80004db2: 1ac6c463 blt a3,a2,80004f5a <__gdtoa+0xdc4> - 80004db6: 4c14 lw a3,24(s0) - 80004db8: 1a069163 bnez a3,80004f5a <__gdtoa+0xdc4> - 80004dbc: 00d036b3 snez a3,a3 - 80004dc0: 00469b9b slliw s7,a3,0x4 - 80004dc4: 03000593 li a1,48 - 80004dc8: 863e mv a2,a5 - 80004dca: fff7c683 lbu a3,-1(a5) - 80004dce: 17fd addi a5,a5,-1 - 80004dd0: feb68ce3 beq a3,a1,80004dc8 <__gdtoa+0xc32> - 80004dd4: b9a9 j 80004a2e <__gdtoa+0x898> - 80004dd6: 7e46 ld t3,112(sp) - 80004dd8: 85c2 mv a1,a6 - 80004dda: 4681 li a3,0 - 80004ddc: 4615 li a2,5 - 80004dde: 8552 mv a0,s4 - 80004de0: ec3a sd a4,24(sp) - 80004de2: f046 sd a7,32(sp) - 80004de4: e872 sd t3,16(sp) - 80004de6: 739000ef jal 80005d1e <__multadd> - 80004dea: 85aa mv a1,a0 - 80004dec: e00508e3 beqz a0,80004bfc <__gdtoa+0xa66> - 80004df0: 6e42 ld t3,16(sp) - 80004df2: 6762 ld a4,24(sp) - 80004df4: 060e1263 bnez t3,80004e58 <__gdtoa+0xcc2> - 80004df8: e82a sd a0,16(sp) - 80004dfa: 8522 mv a0,s0 - 80004dfc: 580010ef jal 8000637c <__mcmp> - 80004e00: 65c2 ld a1,16(sp) - 80004e02: 6762 ld a4,24(sp) - 80004e04: 7882 ld a7,32(sp) - 80004e06: 04a05963 blez a0,80004e58 <__gdtoa+0xcc2> - 80004e0a: 03100793 li a5,49 - 80004e0e: 00f70023 sb a5,0(a4) - 80004e12: 2885 addiw a7,a7,1 + 80004d1e: ec3a sd a4,24(sp) + 80004d20: e842 sd a6,16(sp) + 80004d22: e432 sd a2,8(sp) + 80004d24: 6d0010ef jal 800063f4 <_Bfree> + 80004d28: 6622 ld a2,8(sp) + 80004d2a: 6842 ld a6,16(sp) + 80004d2c: 6762 ld a4,24(sp) + 80004d2e: 00060023 sb zero,0(a2) + 80004d32: 010ca023 sw a6,0(s9) + 80004d36: 00098463 beqz s3,80004d3e <__gdtoa+0x4c0> + 80004d3a: 00c9b023 sd a2,0(s3) + 80004d3e: 6682 ld a3,0(sp) + 80004d40: 429c lw a5,0(a3) + 80004d42: 00fbe7b3 or a5,s7,a5 + 80004d46: c29c sw a5,0(a3) + 80004d48: 74ae ld s1,232(sp) + 80004d4a: b345 j 80004aea <__gdtoa+0x26c> + 80004d4c: 01e88f3b addw t5,a7,t5 + 80004d50: e8c6 sd a7,80(sp) + 80004d52: e482 sd zero,72(sp) + 80004d54: b539 j 80004b62 <__gdtoa+0x2e4> + 80004d56: 4705 li a4,1 + 80004d58: 9f11 subw a4,a4,a2 + 80004d5a: e83a sd a4,16(sp) + 80004d5c: 4f01 li t5,0 + 80004d5e: de08cae3 bltz a7,80004b52 <__gdtoa+0x2d4> + 80004d62: b7ed j 80004d4c <__gdtoa+0x4ce> + 80004d64: 38fd addiw a7,a7,-1 + 80004d66: f082 sd zero,96(sp) + 80004d68: b3c5 j 80004b48 <__gdtoa+0x2ca> + 80004d6a: 1c0e1be3 bnez t3,80005740 <__gdtoa+0xec2> + 80004d6e: 00005617 auipc a2,0x5 + 80004d72: 76a63787 fld fa5,1898(a2) # 8000a4d8 <__clz_tab+0x168> + 80004d76: 00005617 auipc a2,0x5 + 80004d7a: 76a63707 fld fa4,1898(a2) # 8000a4e0 <__clz_tab+0x170> + 80004d7e: fcc005b7 lui a1,0xfcc00 + 80004d82: 72d7f7c3 fmadd.d fa5,fa5,fa3,fa4 + 80004d86: e2078653 fmv.x.d a2,fa5 + 80004d8a: 02061e93 slli t4,a2,0x20 + 80004d8e: 9201 srli a2,a2,0x20 + 80004d90: 9e2d addw a2,a2,a1 + 80004d92: 020ede93 srli t4,t4,0x20 + 80004d96: 1602 slli a2,a2,0x20 + 80004d98: 00ceeeb3 or t4,t4,a2 + 80004d9c: 00005617 auipc a2,0x5 + 80004da0: 75c63787 fld fa5,1884(a2) # 8000a4f8 <__clz_tab+0x188> + 80004da4: 0af6f6d3 fsub.d fa3,fa3,fa5 + 80004da8: f20e87d3 fmv.d.x fa5,t4 + 80004dac: a2d79653 flt.d a2,fa5,fa3 + 80004db0: 0c061fe3 bnez a2,8000568e <__gdtoa+0xe10> + 80004db4: 22f797d3 fneg.d fa5,fa5 + 80004db8: a2f69653 flt.d a2,fa3,fa5 + 80004dbc: 4a061b63 bnez a2,80005272 <__gdtoa+0x9f4> + 80004dc0: 4e81 li t4,0 + 80004dc2: ffffc593 not a1,t6 + 80004dc6: 01f5d59b srliw a1,a1,0x1f + 80004dca: 00f8a613 slti a2,a7,15 + 80004dce: 8e6d and a2,a2,a1 + 80004dd0: c279 beqz a2,80004e96 <__gdtoa+0x618> + 80004dd2: 00389693 slli a3,a7,0x3 + 80004dd6: 00005797 auipc a5,0x5 + 80004dda: 24278793 addi a5,a5,578 # 8000a018 <__mprec_tens> + 80004dde: 97b6 add a5,a5,a3 + 80004de0: 2398 fld fa4,0(a5) + 80004de2: 01fb569b srliw a3,s6,0x1f + 80004de6: 001e2793 slti a5,t3,1 + 80004dea: 8ff5 and a5,a5,a3 + 80004dec: 00170293 addi t0,a4,1 + 80004df0: 40078063 beqz a5,800051f0 <__gdtoa+0x972> + 80004df4: 460e1f63 bnez t3,80005272 <__gdtoa+0x9f4> + 80004df8: 00005797 auipc a5,0x5 + 80004dfc: 7007b787 fld fa5,1792(a5) # 8000a4f8 <__clz_tab+0x188> + 80004e00: 12f77753 fmul.d fa4,fa4,fa5 + 80004e04: f20807d3 fmv.d.x fa5,a6 + 80004e08: a2e787d3 fle.d a5,fa5,fa4 + 80004e0c: 46079363 bnez a5,80005272 <__gdtoa+0x9f4> + 80004e10: 03100793 li a5,49 80004e14: 00170613 addi a2,a4,1 - 80004e18: 02000b93 li s7,32 - 80004e1c: 8552 mv a0,s4 - 80004e1e: f03a sd a4,32(sp) - 80004e20: ec32 sd a2,24(sp) - 80004e22: e846 sd a7,16(sp) - 80004e24: 6e9000ef jal 80005d0c <_Bfree> - 80004e28: 68c2 ld a7,16(sp) - 80004e2a: 67a2 ld a5,8(sp) - 80004e2c: 6662 ld a2,24(sp) - 80004e2e: 7702 ld a4,32(sp) - 80004e30: 0018881b addiw a6,a7,1 - 80004e34: c20797e3 bnez a5,80004a62 <__gdtoa+0x8cc> - 80004e38: ffaff06f j 80004632 <__gdtoa+0x49c> - 80004e3c: 4705 li a4,1 - 80004e3e: f4ba sd a4,104(sp) - 80004e40: e62ff06f j 800044a2 <__gdtoa+0x30c> - 80004e44: 4705 li a4,1 - 80004e46: 4481 li s1,0 - 80004e48: f4ba sd a4,104(sp) - 80004e4a: e58ff06f j 800044a2 <__gdtoa+0x30c> - 80004e4e: f482 sd zero,104(sp) - 80004e50: b2a1 j 80004798 <__gdtoa+0x602> - 80004e52: 4705 li a4,1 - 80004e54: f4ba sd a4,104(sp) - 80004e56: b289 j 80004798 <__gdtoa+0x602> - 80004e58: fffb4893 not a7,s6 - 80004e5c: 863a mv a2,a4 - 80004e5e: 4bc1 li s7,16 - 80004e60: bf75 j 80004e1c <__gdtoa+0xc86> - 80004e62: 66a6 ld a3,72(sp) - 80004e64: 65c6 ld a1,80(sp) - 80004e66: c772 sw t3,140(sp) - 80004e68: 40d606bb subw a3,a2,a3 - 80004e6c: 9ead addw a3,a3,a1 - 80004e6e: e8b6 sd a3,80(sp) - 80004e70: 66c2 ld a3,16(sp) - 80004e72: 01ee0f3b addw t5,t3,t5 - 80004e76: e4b2 sd a2,72(sp) - 80004e78: 01c686bb addw a3,a3,t3 - 80004e7c: ec36 sd a3,24(sp) - 80004e7e: 4481 li s1,0 - 80004e80: bab5 j 800047fc <__gdtoa+0x666> - 80004e82: 65a2 ld a1,8(sp) - 80004e84: 8626 mv a2,s1 - 80004e86: 8552 mv a0,s4 - 80004e88: f1ca sd s2,224(sp) - 80004e8a: ecba sd a4,88(sp) - 80004e8c: e0fa sd t5,64(sp) - 80004e8e: fc3e sd a5,56(sp) - 80004e90: f876 sd t4,48(sp) - 80004e92: f446 sd a7,40(sp) - 80004e94: f072 sd t3,32(sp) - 80004e96: 2e8010ef jal 8000617e <__pow5mult> - 80004e9a: e42a sd a0,8(sp) - 80004e9c: d6050063 beqz a0,800043fc <__gdtoa+0x266> - 80004ea0: 85aa mv a1,a0 - 80004ea2: 8622 mv a2,s0 - 80004ea4: 8552 mv a0,s4 - 80004ea6: 108010ef jal 80005fae <__multiply> - 80004eaa: d4050963 beqz a0,800043fc <__gdtoa+0x266> - 80004eae: 85a2 mv a1,s0 - 80004eb0: fcaa sd a0,120(sp) - 80004eb2: 8552 mv a0,s4 - 80004eb4: 659000ef jal 80005d0c <_Bfree> - 80004eb8: 67a6 ld a5,72(sp) - 80004eba: 7466 ld s0,120(sp) - 80004ebc: 7e02 ld t3,32(sp) - 80004ebe: 9f85 subw a5,a5,s1 - 80004ec0: e4be sd a5,72(sp) - 80004ec2: 86be mv a3,a5 - 80004ec4: 78a2 ld a7,40(sp) - 80004ec6: 7ec2 ld t4,48(sp) - 80004ec8: 77e2 ld a5,56(sp) - 80004eca: 6f06 ld t5,64(sp) - 80004ecc: 6766 ld a4,88(sp) - 80004ece: 790e ld s2,224(sp) - 80004ed0: 9a0686e3 beqz a3,8000487c <__gdtoa+0x6e6> - 80004ed4: b241 j 80004854 <__gdtoa+0x6be> - 80004ed6: f20e8753 fmv.d.x fa4,t4 - 80004eda: 863a mv a2,a4 - 80004edc: 4805 li a6,1 - 80004ede: 12e675d3 fmul.d fa1,fa2,fa4 - 80004ee2: 00005697 auipc a3,0x5 - 80004ee6: c4e6b707 fld fa4,-946(a3) # 80009b30 <__clz_tab+0x150> - 80004eea: a021 j 80004ef2 <__gdtoa+0xd5c> - 80004eec: 12e7f7d3 fmul.d fa5,fa5,fa4 - 80004ef0: 2805 addiw a6,a6,1 - 80004ef2: c742 sw a6,140(sp) - 80004ef4: c2079853 fcvt.w.d a6,fa5,rtz - 80004ef8: 0605 addi a2,a2,1 - 80004efa: 0308069b addiw a3,a6,48 - 80004efe: 0ff6f693 zext.b a3,a3 - 80004f02: 00080663 beqz a6,80004f0e <__gdtoa+0xd78> - 80004f06: d2080653 fcvt.d.w fa2,a6 - 80004f0a: 0ac7f7d3 fsub.d fa5,fa5,fa2 - 80004f0e: fed60fa3 sb a3,-1(a2) - 80004f12: 483a lw a6,140(sp) - 80004f14: fc681ce3 bne a6,t1,80004eec <__gdtoa+0xd56> - 80004f18: 00005497 auipc s1,0x5 - 80004f1c: c304b707 fld fa4,-976(s1) # 80009b48 <__clz_tab+0x168> - 80004f20: 02e5f653 fadd.d fa2,fa1,fa4 - 80004f24: a2f61853 flt.d a6,fa2,fa5 - 80004f28: ee081263 bnez a6,8000460c <__gdtoa+0x476> - 80004f2c: 0ab77753 fsub.d fa4,fa4,fa1 - 80004f30: a2e796d3 flt.d a3,fa5,fa4 - 80004f34: 24069e63 bnez a3,80005190 <__gdtoa+0xffa> - 80004f38: 4e81 li t4,0 - 80004f3a: b60fcee3 bltz t6,80004ab6 <__gdtoa+0x920> - 80004f3e: 2198 fld fa4,0(a1) - 80004f40: 4e81 li t4,0 - 80004f42: 00170293 addi t0,a4,1 - 80004f46: b6d9 j 80004b0c <__gdtoa+0x976> - 80004f48: 00168613 addi a2,a3,1 - 80004f4c: 03900593 li a1,57 - 80004f50: 6e22 ld t3,8(sp) - 80004f52: 87b2 mv a5,a2 - 80004f54: e45a sd s6,8(sp) - 80004f56: 00b68023 sb a1,0(a3) - 80004f5a: 03900593 li a1,57 - 80004f5e: a019 j 80004f64 <__gdtoa+0xdce> - 80004f60: 18f70763 beq a4,a5,800050ee <__gdtoa+0xf58> - 80004f64: fff7c683 lbu a3,-1(a5) - 80004f68: 863e mv a2,a5 - 80004f6a: 17fd addi a5,a5,-1 - 80004f6c: feb68ae3 beq a3,a1,80004f60 <__gdtoa+0xdca> - 80004f70: 2685 addiw a3,a3,1 - 80004f72: 00d78023 sb a3,0(a5) - 80004f76: 02000b93 li s7,32 - 80004f7a: bc55 j 80004a2e <__gdtoa+0x898> - 80004f7c: 87a6 mv a5,s1 - 80004f7e: ba45 j 8000492e <__gdtoa+0x798> - 80004f80: 65a2 ld a1,8(sp) - 80004f82: 8552 mv a0,s4 - 80004f84: f83a sd a4,48(sp) - 80004f86: f476 sd t4,40(sp) - 80004f88: f042 sd a6,32(sp) - 80004f8a: ec46 sd a7,24(sp) - 80004f8c: e872 sd t3,16(sp) - 80004f8e: 2de010ef jal 8000626c <__lshift> - 80004f92: e42a sd a0,8(sp) - 80004f94: 6e42 ld t3,16(sp) - 80004f96: 68e2 ld a7,24(sp) - 80004f98: 7802 ld a6,32(sp) - 80004f9a: 7ea2 ld t4,40(sp) - 80004f9c: 7742 ld a4,48(sp) - 80004f9e: 960510e3 bnez a0,800048fe <__gdtoa+0x768> - 80004fa2: 4701 li a4,0 - 80004fa4: b9a9 j 80004bfe <__gdtoa+0xa68> - 80004fa6: 03100793 li a5,49 - 80004faa: 00170613 addi a2,a4,1 - 80004fae: 00f70023 sb a5,0(a4) - 80004fb2: 4581 li a1,0 - 80004fb4: 8552 mv a0,s4 - 80004fb6: e83a sd a4,16(sp) - 80004fb8: e432 sd a2,8(sp) - 80004fba: 553000ef jal 80005d0c <_Bfree> - 80004fbe: 6622 ld a2,8(sp) - 80004fc0: 6742 ld a4,16(sp) - 80004fc2: 4809 li a6,2 - 80004fc4: 02000b93 li s7,32 - 80004fc8: e6aff06f j 80004632 <__gdtoa+0x49c> - 80004fcc: 2505 addiw a0,a0,1 - 80004fce: 03100693 li a3,49 - 80004fd2: e54ff06f j 80004626 <__gdtoa+0x490> - 80004fd6: 02f7f7d3 fadd.d fa5,fa5,fa5 - 80004fda: fff64683 lbu a3,-1(a2) - 80004fde: a2f715d3 flt.d a1,fa4,fa5 - 80004fe2: edd5 bnez a1,8000509e <__gdtoa+0xf08> - 80004fe4: a2e7a5d3 feq.d a1,fa5,fa4 - 80004fe8: c199 beqz a1,80004fee <__gdtoa+0xe58> - 80004fea: 8b85 andi a5,a5,1 - 80004fec: ebcd bnez a5,8000509e <__gdtoa+0xf08> - 80004fee: 87b2 mv a5,a2 - 80004ff0: 8546 mv a0,a7 - 80004ff2: 4bc1 li s7,16 - 80004ff4: 03000593 li a1,48 - 80004ff8: fff7c683 lbu a3,-1(a5) - 80004ffc: 863e mv a2,a5 - 80004ffe: 17fd addi a5,a5,-1 - 80005000: feb68ce3 beq a3,a1,80004ff8 <__gdtoa+0xe62> - 80005004: 0015081b addiw a6,a0,1 - 80005008: e2aff06f j 80004632 <__gdtoa+0x49c> - 8000500c: 008b2583 lw a1,8(s6) - 80005010: 8552 mv a0,s4 - 80005012: fc3a sd a4,56(sp) - 80005014: f876 sd t4,48(sp) - 80005016: f442 sd a6,40(sp) - 80005018: f046 sd a7,32(sp) - 8000501a: ec72 sd t3,24(sp) - 8000501c: 481000ef jal 80005c9c <_Balloc> - 80005020: 87aa mv a5,a0 - 80005022: bc050de3 beqz a0,80004bfc <__gdtoa+0xa66> - 80005026: 014b2603 lw a2,20(s6) - 8000502a: 010b0593 addi a1,s6,16 - 8000502e: 0541 addi a0,a0,16 - 80005030: 0609 addi a2,a2,2 - 80005032: 060a slli a2,a2,0x2 - 80005034: e83e sd a5,16(sp) - 80005036: 859fe0ef jal 8000388e - 8000503a: 65c2 ld a1,16(sp) - 8000503c: 8552 mv a0,s4 - 8000503e: 4605 li a2,1 - 80005040: 22c010ef jal 8000626c <__lshift> - 80005044: 6e62 ld t3,24(sp) - 80005046: 7882 ld a7,32(sp) - 80005048: 7822 ld a6,40(sp) - 8000504a: 7ec2 ld t4,48(sp) - 8000504c: 7762 ld a4,56(sp) - 8000504e: 8b2a mv s6,a0 - 80005050: 8a051be3 bnez a0,80004906 <__gdtoa+0x770> - 80005054: 4701 li a4,0 - 80005056: b665 j 80004bfe <__gdtoa+0xa68> - 80005058: 7346 ld t1,112(sp) - 8000505a: 1e605b63 blez t1,80005250 <__gdtoa+0x10ba> - 8000505e: 00005617 auipc a2,0x5 - 80005062: ad263787 fld fa5,-1326(a2) # 80009b30 <__clz_tab+0x150> - 80005066: 00005617 auipc a2,0x5 - 8000506a: ad263707 fld fa4,-1326(a2) # 80009b38 <__clz_tab+0x158> - 8000506e: 00005617 auipc a2,0x5 - 80005072: aba63607 fld fa2,-1350(a2) # 80009b28 <__clz_tab+0x148> - 80005076: 12f6f7d3 fmul.d fa5,fa3,fa5 - 8000507a: fcc005b7 lui a1,0xfcc00 - 8000507e: 557d li a0,-1 - 80005080: 62e7f743 fmadd.d fa4,fa5,fa4,fa2 - 80005084: e2070653 fmv.x.d a2,fa4 - 80005088: 02061e93 slli t4,a2,0x20 - 8000508c: 9201 srli a2,a2,0x20 - 8000508e: 9e2d addw a2,a2,a1 - 80005090: 020ede93 srli t4,t4,0x20 - 80005094: 1602 slli a2,a2,0x20 - 80005096: 00ceeeb3 or t4,t4,a2 - 8000509a: cd2ff06f j 8000456c <__gdtoa+0x3d6> - 8000509e: 8546 mv a0,a7 - 800050a0: d6cff06f j 8000460c <__gdtoa+0x476> - 800050a4: 85a2 mv a1,s0 - 800050a6: 4605 li a2,1 - 800050a8: 8552 mv a0,s4 - 800050aa: fc3a sd a4,56(sp) - 800050ac: f83e sd a5,48(sp) - 800050ae: e842 sd a6,16(sp) - 800050b0: f472 sd t3,40(sp) - 800050b2: f046 sd a7,32(sp) - 800050b4: ec1a sd t1,24(sp) - 800050b6: 1b6010ef jal 8000626c <__lshift> - 800050ba: 842a mv s0,a0 - 800050bc: b4050063 beqz a0,800043fc <__gdtoa+0x266> - 800050c0: 65c2 ld a1,16(sp) - 800050c2: 2ba010ef jal 8000637c <__mcmp> - 800050c6: 6842 ld a6,16(sp) - 800050c8: 7882 ld a7,32(sp) - 800050ca: 7e22 ld t3,40(sp) - 800050cc: 77c2 ld a5,48(sp) - 800050ce: 7762 ld a4,56(sp) - 800050d0: e8a045e3 bgtz a0,80004f5a <__gdtoa+0xdc4> - 800050d4: e511 bnez a0,800050e0 <__gdtoa+0xf4a> - 800050d6: 6362 ld t1,24(sp) - 800050d8: 00137313 andi t1,t1,1 - 800050dc: e6031fe3 bnez t1,80004f5a <__gdtoa+0xdc4> - 800050e0: 4850 lw a2,20(s0) - 800050e2: 4685 li a3,1 - 800050e4: 4bc1 li s7,16 - 800050e6: ccc6cfe3 blt a3,a2,80004dc4 <__gdtoa+0xc2e> - 800050ea: 4c14 lw a3,24(s0) - 800050ec: b9c1 j 80004dbc <__gdtoa+0xc26> - 800050ee: 03100793 li a5,49 - 800050f2: 2885 addiw a7,a7,1 - 800050f4: 00f70023 sb a5,0(a4) - 800050f8: 02000b93 li s7,32 - 800050fc: ba0d j 80004a2e <__gdtoa+0x898> - 800050fe: f2000753 fmv.d.x fa4,zero - 80005102: 0015081b addiw a6,a0,1 - 80005106: a2e7a7d3 feq.d a5,fa5,fa4 - 8000510a: 0017b793 seqz a5,a5 - 8000510e: 00479b9b slliw s7,a5,0x4 - 80005112: d20ff06f j 80004632 <__gdtoa+0x49c> - 80005116: 7ee2 ld t4,56(sp) - 80005118: 68a6 ld a7,72(sp) - 8000511a: 7802 ld a6,32(sp) - 8000511c: 6746 ld a4,80(sp) - 8000511e: 86ea mv a3,s10 - 80005120: 0a0e8c63 beqz t4,800051d8 <__gdtoa+0x1042> - 80005124: 484c lw a1,20(s0) - 80005126: 4605 li a2,1 - 80005128: 16b65d63 bge a2,a1,800052a2 <__gdtoa+0x110c> - 8000512c: 4789 li a5,2 - 8000512e: 18fe8163 beq t4,a5,800052b0 <__gdtoa+0x111a> - 80005132: 8aa2 mv s5,s0 - 80005134: 8c46 mv s8,a7 - 80005136: 8bc2 mv s7,a6 - 80005138: 8436 mv s0,a3 - 8000513a: 8d3a mv s10,a4 - 8000513c: a821 j 80005154 <__gdtoa+0xfbe> - 8000513e: 3e1000ef jal 80005d1e <__multadd> - 80005142: 85de mv a1,s7 - 80005144: 8aaa mv s5,a0 - 80005146: 0405 addi s0,s0,1 - 80005148: aa050a63 beqz a0,800043fc <__gdtoa+0x266> - 8000514c: 298000ef jal 800053e4 <__quorem_D2A> - 80005150: 0305031b addiw t1,a0,48 - 80005154: 85da mv a1,s6 - 80005156: 855e mv a0,s7 - 80005158: e81a sd t1,16(sp) - 8000515a: 222010ef jal 8000637c <__mcmp> - 8000515e: 6342 ld t1,16(sp) - 80005160: 4681 li a3,0 - 80005162: 4629 li a2,10 - 80005164: 14a05f63 blez a0,800052c2 <__gdtoa+0x112c> - 80005168: 85da mv a1,s6 - 8000516a: 00640023 sb t1,0(s0) - 8000516e: 8552 mv a0,s4 - 80005170: 3af000ef jal 80005d1e <__multadd> - 80005174: 87aa mv a5,a0 - 80005176: 84da mv s1,s6 - 80005178: 4681 li a3,0 - 8000517a: 8b2a mv s6,a0 - 8000517c: 4629 li a2,10 - 8000517e: 85d6 mv a1,s5 - 80005180: 8552 mv a0,s4 - 80005182: a6078d63 beqz a5,800043fc <__gdtoa+0x266> - 80005186: 67a2 ld a5,8(sp) - 80005188: fa979be3 bne a5,s1,8000513e <__gdtoa+0xfa8> - 8000518c: e45a sd s6,8(sp) - 8000518e: bf45 j 8000513e <__gdtoa+0xfa8> - 80005190: f2000753 fmv.d.x fa4,zero - 80005194: 87b2 mv a5,a2 - 80005196: a2e7a6d3 feq.d a3,fa5,fa4 - 8000519a: 0016b693 seqz a3,a3 - 8000519e: 00469b9b slliw s7,a3,0x4 - 800051a2: bd89 j 80004ff4 <__gdtoa+0xe5e> - 800051a4: 6e22 ld t3,8(sp) - 800051a6: 68a6 ld a7,72(sp) - 800051a8: 7802 ld a6,32(sp) - 800051aa: 7ee2 ld t4,56(sp) - 800051ac: 6746 ld a4,80(sp) - 800051ae: e45a sd s6,8(sp) - 800051b0: bed5 j 80004da4 <__gdtoa+0xc0e> - 800051b2: 863e mv a2,a5 - 800051b4: 03900793 li a5,57 - 800051b8: 68a6 ld a7,72(sp) - 800051ba: 7802 ld a6,32(sp) - 800051bc: 6746 ld a4,80(sp) - 800051be: 86ea mv a3,s10 - 800051c0: d8fd86e3 beq s11,a5,80004f4c <__gdtoa+0xdb6> - 800051c4: 001d879b addiw a5,s11,1 - 800051c8: 6e22 ld t3,8(sp) - 800051ca: 00fd0023 sb a5,0(s10) - 800051ce: e45a sd s6,8(sp) - 800051d0: 02000b93 li s7,32 - 800051d4: 85bff06f j 80004a2e <__gdtoa+0x898> - 800051d8: 04f05063 blez a5,80005218 <__gdtoa+0x1082> - 800051dc: 85a2 mv a1,s0 - 800051de: 4605 li a2,1 - 800051e0: 8552 mv a0,s4 - 800051e2: f83a sd a4,48(sp) - 800051e4: f436 sd a3,40(sp) - 800051e6: e842 sd a6,16(sp) - 800051e8: f046 sd a7,32(sp) - 800051ea: ec1a sd t1,24(sp) - 800051ec: 080010ef jal 8000626c <__lshift> - 800051f0: 842a mv s0,a0 - 800051f2: a0050563 beqz a0,800043fc <__gdtoa+0x266> - 800051f6: 65c2 ld a1,16(sp) - 800051f8: 184010ef jal 8000637c <__mcmp> - 800051fc: 6842 ld a6,16(sp) - 800051fe: 7882 ld a7,32(sp) - 80005200: 76a2 ld a3,40(sp) - 80005202: 7742 ld a4,48(sp) - 80005204: 0aa05963 blez a0,800052b6 <__gdtoa+0x1120> - 80005208: 03900793 li a5,57 - 8000520c: d2fd8ee3 beq s11,a5,80004f48 <__gdtoa+0xdb2> - 80005210: 0319031b addiw t1,s2,49 - 80005214: 02000e93 li t4,32 - 80005218: 4850 lw a2,20(s0) - 8000521a: 4785 li a5,1 - 8000521c: 4bc1 li s7,16 - 8000521e: 80c7c2e3 blt a5,a2,80004a22 <__gdtoa+0x88c> - 80005222: 4c1c lw a5,24(s0) - 80005224: fe079f63 bnez a5,80004a22 <__gdtoa+0x88c> - 80005228: 8bf6 mv s7,t4 - 8000522a: ff8ff06f j 80004a22 <__gdtoa+0x88c> - 8000522e: 65a6 ld a1,72(sp) - 80005230: fffe069b addiw a3,t3,-1 - 80005234: 8636 mv a2,a3 - 80005236: c2d5c6e3 blt a1,a3,80004e62 <__gdtoa+0xccc> - 8000523a: 40d584bb subw s1,a1,a3 - 8000523e: 66c2 ld a3,16(sp) - 80005240: 01ee0f3b addw t5,t3,t5 - 80005244: c772 sw t3,140(sp) - 80005246: 01c686bb addw a3,a3,t3 - 8000524a: ec36 sd a3,24(sp) - 8000524c: db0ff06f j 800047fc <__gdtoa+0x666> - 80005250: d40fce63 bltz t6,800047ac <__gdtoa+0x616> - 80005254: 00004597 auipc a1,0x4 - 80005258: 43458593 addi a1,a1,1076 # 80009688 <__mprec_tens> - 8000525c: 00170293 addi t0,a4,1 - 80005260: b055 j 80004b04 <__gdtoa+0x96e> - 80005262: 65a2 ld a1,8(sp) - 80005264: 4681 li a3,0 - 80005266: 4629 li a2,10 - 80005268: 8552 mv a0,s4 - 8000526a: f046 sd a7,32(sp) - 8000526c: 2b3000ef jal 80005d1e <__multadd> - 80005270: e42a sd a0,8(sp) - 80005272: 980505e3 beqz a0,80004bfc <__gdtoa+0xa66> - 80005276: 76c6 ld a3,112(sp) - 80005278: 67e2 ld a5,24(sp) - 8000527a: 7882 ld a7,32(sp) - 8000527c: 7822 ld a6,40(sp) - 8000527e: 7ec2 ld t4,48(sp) - 80005280: 7762 ld a4,56(sp) - 80005282: 7e46 ld t3,112(sp) - 80005284: e6d04863 bgtz a3,800048f4 <__gdtoa+0x75e> - 80005288: 4689 li a3,2 - 8000528a: e756d563 bge a3,s5,800048f4 <__gdtoa+0x75e> - 8000528e: b6a9 j 80004dd8 <__gdtoa+0xc42> - 80005290: 66c2 ld a3,16(sp) - 80005292: c772 sw t3,140(sp) - 80005294: 01ee0f3b addw t5,t3,t5 - 80005298: 01c686bb addw a3,a3,t3 - 8000529c: ec36 sd a3,24(sp) - 8000529e: d5eff06f j 800047fc <__gdtoa+0x666> - 800052a2: 4c10 lw a2,24(s0) - 800052a4: e80614e3 bnez a2,8000512c <__gdtoa+0xf96> - 800052a8: f2f04ae3 bgtz a5,800051dc <__gdtoa+0x1046> - 800052ac: f76ff06f j 80004a22 <__gdtoa+0x88c> - 800052b0: 4bc1 li s7,16 - 800052b2: f70ff06f j 80004a22 <__gdtoa+0x88c> - 800052b6: 6362 ld t1,24(sp) - 800052b8: fd31 bnez a0,80005214 <__gdtoa+0x107e> - 800052ba: 001df793 andi a5,s11,1 - 800052be: f7a9 bnez a5,80005208 <__gdtoa+0x1072> - 800052c0: bf91 j 80005214 <__gdtoa+0x107e> - 800052c2: 03900793 li a5,57 - 800052c6: 86a2 mv a3,s0 - 800052c8: 88e2 mv a7,s8 - 800052ca: 885e mv a6,s7 - 800052cc: 8456 mv s0,s5 - 800052ce: 876a mv a4,s10 - 800052d0: c6f30ce3 beq t1,a5,80004f48 <__gdtoa+0xdb2> - 800052d4: 2305 addiw t1,t1,1 - 800052d6: 02000b93 li s7,32 - 800052da: f48ff06f j 80004a22 <__gdtoa+0x88c> - 800052de: 790e ld s2,224(sp) - 800052e0: 0018881b addiw a6,a7,1 - 800052e4: b4eff06f j 80004632 <__gdtoa+0x49c> - 800052e8: 4850 lw a2,20(s0) - 800052ea: 4785 li a5,1 - 800052ec: 4bc1 li s7,16 - 800052ee: f2c7ca63 blt a5,a2,80004a22 <__gdtoa+0x88c> - 800052f2: 4c1c lw a5,24(s0) - 800052f4: 00f037b3 snez a5,a5 - 800052f8: 00479b9b slliw s7,a5,0x4 - 800052fc: f26ff06f j 80004a22 <__gdtoa+0x88c> + 80004e18: 00f70023 sb a5,0(a4) + 80004e1c: 4581 li a1,0 + 80004e1e: 8552 mv a0,s4 + 80004e20: ec46 sd a7,24(sp) + 80004e22: e83a sd a4,16(sp) + 80004e24: e432 sd a2,8(sp) + 80004e26: 5ce010ef jal 800063f4 <_Bfree> + 80004e2a: 68e2 ld a7,24(sp) + 80004e2c: 6622 ld a2,8(sp) + 80004e2e: 6742 ld a4,16(sp) + 80004e30: 0028881b addiw a6,a7,2 + 80004e34: 02000b93 li s7,32 + 80004e38: b5cd j 80004d1a <__gdtoa+0x49c> + 80004e3a: 3fd5051b addiw a0,a0,1021 + 80004e3e: 7f853493 sltiu s1,a0,2040 + 80004e42: 4a81 li s5,0 + 80004e44: 00005717 auipc a4,0x5 + 80004e48: 68473707 fld fa4,1668(a4) # 8000a4c8 <__clz_tab+0x158> + 80004e4c: d20687d3 fcvt.d.w fa5,a3 + 80004e50: 577d li a4,-1 + 80004e52: f8ba sd a4,112(sp) + 80004e54: 12e7f7d3 fmul.d fa5,fa5,fa4 + 80004e58: 8e3a mv t3,a4 + 80004e5a: 4705 li a4,1 + 80004e5c: f4ba sd a4,104(sp) + 80004e5e: 4b01 li s6,0 + 80004e60: c20795d3 fcvt.w.d a1,fa5,rtz + 80004e64: 258d addiw a1,a1,3 # fffffffffcc00003 <_stack_top+0xffffffff7cb00003> + 80004e66: 872e mv a4,a1 + 80004e68: bb25 j 80004ba0 <__gdtoa+0x322> + 80004e6a: d2088753 fcvt.d.w fa4,a7 + 80004e6e: a2f72753 feq.d a4,fa4,fa5 + 80004e72: ba071fe3 bnez a4,80004a30 <__gdtoa+0x1b2> + 80004e76: 38fd addiw a7,a7,-1 + 80004e78: be65 j 80004a30 <__gdtoa+0x1b2> + 80004e7a: 4705 li a4,1 + 80004e7c: 4481 li s1,0 + 80004e7e: f4ba sd a4,104(sp) + 80004e80: 000b059b sext.w a1,s6 + 80004e84: 01604363 bgtz s6,80004e8a <__gdtoa+0x60c> + 80004e88: 4585 li a1,1 + 80004e8a: 872e mv a4,a1 + 80004e8c: f8ae sd a1,112(sp) + 80004e8e: 8e2e mv t3,a1 + 80004e90: 8b2e mv s6,a1 + 80004e92: b339 j 80004ba0 <__gdtoa+0x322> + 80004e94: 4e81 li t4,0 + 80004e96: 7626 ld a2,104(sp) + 80004e98: 30060363 beqz a2,8000519e <__gdtoa+0x920> + 80004e9c: 9e9d subw a3,a3,a5 + 80004e9e: 004da603 lw a2,4(s11) + 80004ea2: 0016859b addiw a1,a3,1 + 80004ea6: c72e sw a1,140(sp) + 80004ea8: 40df86bb subw a3,t6,a3 + 80004eac: 50c6dd63 bge a3,a2,800053c6 <__gdtoa+0xb48> + 80004eb0: ffda869b addiw a3,s5,-3 + 80004eb4: 9af5 andi a3,a3,-3 + 80004eb6: 44068c63 beqz a3,8000530e <__gdtoa+0xa90> + 80004eba: 40cf86bb subw a3,t6,a2 + 80004ebe: 4605 li a2,1 + 80004ec0: 2685 addiw a3,a3,1 + 80004ec2: 01562633 slt a2,a2,s5 + 80004ec6: 01c02533 sgtz a0,t3 + 80004eca: 00de25b3 slt a1,t3,a3 + 80004ece: 8e69 and a2,a2,a0 + 80004ed0: c736 sw a3,140(sp) + 80004ed2: 8e6d and a2,a2,a1 + 80004ed4: 240611e3 bnez a2,80005916 <__gdtoa+0x1098> + 80004ed8: 6642 ld a2,16(sp) + 80004eda: 64a6 ld s1,72(sp) + 80004edc: 01e68f3b addw t5,a3,t5 + 80004ee0: 9eb1 addw a3,a3,a2 + 80004ee2: ec36 sd a3,24(sp) + 80004ee4: 4585 li a1,1 + 80004ee6: 8552 mv a0,s4 + 80004ee8: ecba sd a4,88(sp) + 80004eea: e0fa sd t5,64(sp) + 80004eec: fc3e sd a5,56(sp) + 80004eee: f876 sd t4,48(sp) + 80004ef0: f446 sd a7,40(sp) + 80004ef2: f072 sd t3,32(sp) + 80004ef4: 726010ef jal 8000661a <__i2b> + 80004ef8: e42a sd a0,8(sp) + 80004efa: 3e050563 beqz a0,800052e4 <__gdtoa+0xa66> + 80004efe: 67c2 ld a5,16(sp) + 80004f00: 6f06 ld t5,64(sp) + 80004f02: 7e02 ld t3,32(sp) + 80004f04: 00f036b3 snez a3,a5 + 80004f08: 01e02633 sgtz a2,t5 + 80004f0c: 8ef1 and a3,a3,a2 + 80004f0e: 78a2 ld a7,40(sp) + 80004f10: 7ec2 ld t4,48(sp) + 80004f12: 77e2 ld a5,56(sp) + 80004f14: 6766 ld a4,88(sp) + 80004f16: ce99 beqz a3,80004f34 <__gdtoa+0x6b6> + 80004f18: 6642 ld a2,16(sp) + 80004f1a: 86b2 mv a3,a2 + 80004f1c: 00cf5363 bge t5,a2,80004f22 <__gdtoa+0x6a4> + 80004f20: 86fa mv a3,t5 + 80004f22: 6662 ld a2,24(sp) + 80004f24: c736 sw a3,140(sp) + 80004f26: 40df0f3b subw t5,t5,a3 + 80004f2a: 9e15 subw a2,a2,a3 + 80004f2c: ec32 sd a2,24(sp) + 80004f2e: 6642 ld a2,16(sp) + 80004f30: 9e15 subw a2,a2,a3 + 80004f32: e832 sd a2,16(sp) + 80004f34: 66a6 ld a3,72(sp) + 80004f36: c69d beqz a3,80004f64 <__gdtoa+0x6e6> + 80004f38: 62049963 bnez s1,8000556a <__gdtoa+0xcec> + 80004f3c: 6626 ld a2,72(sp) + 80004f3e: 85a2 mv a1,s0 + 80004f40: 8552 mv a0,s4 + 80004f42: ecba sd a4,88(sp) + 80004f44: e0fa sd t5,64(sp) + 80004f46: fc3e sd a5,56(sp) + 80004f48: f876 sd t4,48(sp) + 80004f4a: f446 sd a7,40(sp) + 80004f4c: f072 sd t3,32(sp) + 80004f4e: 119010ef jal 80006866 <__pow5mult> + 80004f52: 7e02 ld t3,32(sp) + 80004f54: 78a2 ld a7,40(sp) + 80004f56: 7ec2 ld t4,48(sp) + 80004f58: 77e2 ld a5,56(sp) + 80004f5a: 6f06 ld t5,64(sp) + 80004f5c: 6766 ld a4,88(sp) + 80004f5e: 842a mv s0,a0 + 80004f60: 38050263 beqz a0,800052e4 <__gdtoa+0xa66> + 80004f64: 4585 li a1,1 + 80004f66: 8552 mv a0,s4 + 80004f68: e4ba sd a4,72(sp) + 80004f6a: e0fa sd t5,64(sp) + 80004f6c: fc3e sd a5,56(sp) + 80004f6e: f876 sd t4,48(sp) + 80004f70: f446 sd a7,40(sp) + 80004f72: f072 sd t3,32(sp) + 80004f74: 6a6010ef jal 8000661a <__i2b> + 80004f78: 882a mv a6,a0 + 80004f7a: 36050563 beqz a0,800052e4 <__gdtoa+0xa66> + 80004f7e: 66c6 ld a3,80(sp) + 80004f80: 7e02 ld t3,32(sp) + 80004f82: 78a2 ld a7,40(sp) + 80004f84: 7ec2 ld t4,48(sp) + 80004f86: 77e2 ld a5,56(sp) + 80004f88: 6f06 ld t5,64(sp) + 80004f8a: 6726 ld a4,72(sp) + 80004f8c: 3a069263 bnez a3,80005330 <__gdtoa+0xab2> + 80004f90: 17fd addi a5,a5,-1 + 80004f92: 0017b693 seqz a3,a5 + 80004f96: 002aa793 slti a5,s5,2 + 80004f9a: 8ff5 and a5,a5,a3 + 80004f9c: 1c079463 bnez a5,80005164 <__gdtoa+0x8e6> + 80004fa0: 457d li a0,31 + 80004fa2: 66e2 ld a3,24(sp) + 80004fa4: 41e507bb subw a5,a0,t5 + 80004fa8: 37f1 addiw a5,a5,-4 + 80004faa: 8bfd andi a5,a5,31 + 80004fac: 00d7863b addw a2,a5,a3 + 80004fb0: c73e sw a5,140(sp) + 80004fb2: 86be mv a3,a5 + 80004fb4: 2ec04163 bgtz a2,80005296 <__gdtoa+0xa18> + 80004fb8: 00df063b addw a2,t5,a3 + 80004fbc: 30c04363 bgtz a2,800052c2 <__gdtoa+0xa44> + 80004fc0: 7686 ld a3,96(sp) + 80004fc2: 40069c63 bnez a3,800053da <__gdtoa+0xb5c> + 80004fc6: 4609 li a2,2 + 80004fc8: 01562633 slt a2,a2,s5 + 80004fcc: 001e2693 slti a3,t3,1 + 80004fd0: 8ef1 and a3,a3,a2 + 80004fd2: 4e069763 bnez a3,800054c0 <__gdtoa+0xc42> + 80004fd6: 76a6 ld a3,104(sp) + 80004fd8: 46068163 beqz a3,8000543a <__gdtoa+0xbbc> + 80004fdc: 66c2 ld a3,16(sp) + 80004fde: 00d7863b addw a2,a5,a3 + 80004fe2: 68c04363 bgtz a2,80005668 <__gdtoa+0xdea> + 80004fe6: 67c6 ld a5,80(sp) + 80004fe8: 6b22 ld s6,8(sp) + 80004fea: 70079563 bnez a5,800056f4 <__gdtoa+0xe76> + 80004fee: ffee8793 addi a5,t4,-2 + 80004ff2: 00f037b3 snez a5,a5 + 80004ff6: f43e sd a5,40(sp) + 80004ff8: f1ca sd s2,224(sp) + 80004ffa: 4785 li a5,1 + 80004ffc: f872 sd t3,48(sp) + 80004ffe: e4c6 sd a7,72(sp) + 80005000: f042 sd a6,32(sp) + 80005002: 8d3a mv s10,a4 + 80005004: fc76 sd t4,56(sp) + 80005006: e8ba sd a4,80(sp) + 80005008: a059 j 8000508e <__gdtoa+0x810> + 8000500a: 8552 mv a0,s4 + 8000500c: ec1a sd t1,24(sp) + 8000500e: 3e6010ef jal 800063f4 <_Bfree> + 80005012: 6362 ld t1,24(sp) + 80005014: 4785 li a5,1 + 80005016: 6742 ld a4,16(sp) + 80005018: 7e074363 bltz a4,800057fe <__gdtoa+0xf80> + 8000501c: 01576733 or a4,a4,s5 + 80005020: 2701 sext.w a4,a4 + 80005022: e711 bnez a4,8000502e <__gdtoa+0x7b0> + 80005024: 000c2703 lw a4,0(s8) + 80005028: 8b05 andi a4,a4,1 + 8000502a: 7c070a63 beqz a4,800057fe <__gdtoa+0xf80> + 8000502e: 7722 ld a4,40(sp) + 80005030: 00f027b3 sgtz a5,a5 + 80005034: 8f7d and a4,a4,a5 + 80005036: 001d0793 addi a5,s10,1 + 8000503a: 893e mv s2,a5 + 8000503c: 04071fe3 bnez a4,8000589a <__gdtoa+0x101c> + 80005040: ffb78fa3 sb s11,-1(a5) + 80005044: 473a lw a4,140(sp) + 80005046: 76c2 ld a3,48(sp) + 80005048: 04d702e3 beq a4,a3,8000588c <__gdtoa+0x100e> + 8000504c: 85a2 mv a1,s0 + 8000504e: 4681 li a3,0 + 80005050: 4629 li a2,10 + 80005052: 8552 mv a0,s4 + 80005054: 3b2010ef jal 80006406 <__multadd> + 80005058: 842a mv s0,a0 + 8000505a: a80505e3 beqz a0,80004ae4 <__gdtoa+0x266> + 8000505e: 67a2 ld a5,8(sp) + 80005060: 65a2 ld a1,8(sp) + 80005062: 4681 li a3,0 + 80005064: 4629 li a2,10 + 80005066: 8552 mv a0,s4 + 80005068: 23678063 beq a5,s6,80005288 <__gdtoa+0xa0a> + 8000506c: 39a010ef jal 80006406 <__multadd> + 80005070: e42a sd a0,8(sp) + 80005072: a60509e3 beqz a0,80004ae4 <__gdtoa+0x266> + 80005076: 85da mv a1,s6 + 80005078: 4681 li a3,0 + 8000507a: 4629 li a2,10 + 8000507c: 8552 mv a0,s4 + 8000507e: 388010ef jal 80006406 <__multadd> + 80005082: 8b2a mv s6,a0 + 80005084: a60500e3 beqz a0,80004ae4 <__gdtoa+0x266> + 80005088: 47ba lw a5,140(sp) + 8000508a: 8d4a mv s10,s2 + 8000508c: 2785 addiw a5,a5,1 + 8000508e: 7482 ld s1,32(sp) + 80005090: 8522 mv a0,s0 + 80005092: c73e sw a5,140(sp) + 80005094: 85a6 mv a1,s1 + 80005096: 237000ef jal 80005acc <__quorem_D2A> + 8000509a: 65a2 ld a1,8(sp) + 8000509c: 892a mv s2,a0 + 8000509e: 8522 mv a0,s0 + 800050a0: 1c5010ef jal 80006a64 <__mcmp> + 800050a4: e82a sd a0,16(sp) + 800050a6: 85a6 mv a1,s1 + 800050a8: 865a mv a2,s6 + 800050aa: 8552 mv a0,s4 + 800050ac: 1ef010ef jal 80006a9a <__mdiff> + 800050b0: 85aa mv a1,a0 + 800050b2: a20509e3 beqz a0,80004ae4 <__gdtoa+0x266> + 800050b6: 491c lw a5,16(a0) + 800050b8: 0309031b addiw t1,s2,48 + 800050bc: 8d9a mv s11,t1 + 800050be: f7b1 bnez a5,8000500a <__gdtoa+0x78c> + 800050c0: ec2a sd a0,24(sp) + 800050c2: 8522 mv a0,s0 + 800050c4: e09a sd t1,64(sp) + 800050c6: 19f010ef jal 80006a64 <__mcmp> + 800050ca: 65e2 ld a1,24(sp) + 800050cc: 84aa mv s1,a0 + 800050ce: 8552 mv a0,s4 + 800050d0: 324010ef jal 800063f4 <_Bfree> + 800050d4: 0154e7b3 or a5,s1,s5 + 800050d8: 2781 sext.w a5,a5 + 800050da: 6306 ld t1,64(sp) + 800050dc: 58079463 bnez a5,80005664 <__gdtoa+0xde6> + 800050e0: 000c2703 lw a4,0(s8) + 800050e4: 76e2 ld a3,56(sp) + 800050e6: 8b05 andi a4,a4,1 + 800050e8: 8f55 or a4,a4,a3 + 800050ea: f715 bnez a4,80005016 <__gdtoa+0x798> + 800050ec: 03900793 li a5,57 + 800050f0: 68a6 ld a7,72(sp) + 800050f2: 7802 ld a6,32(sp) + 800050f4: 6746 ld a4,80(sp) + 800050f6: 6542 ld a0,16(sp) + 800050f8: 86ea mv a3,s10 + 800050fa: 52f30b63 beq t1,a5,80005630 <__gdtoa+0xdb2> + 800050fe: 0ca059e3 blez a0,800059d0 <__gdtoa+0x1152> + 80005102: 0319031b addiw t1,s2,49 + 80005106: 02000b93 li s7,32 + 8000510a: 6e22 ld t3,8(sp) + 8000510c: 00668023 sb t1,0(a3) + 80005110: 00168613 addi a2,a3,1 + 80005114: e45a sd s6,8(sp) + 80005116: 85c2 mv a1,a6 + 80005118: 8552 mv a0,s4 + 8000511a: f43a sd a4,40(sp) + 8000511c: f032 sd a2,32(sp) + 8000511e: ec72 sd t3,24(sp) + 80005120: e846 sd a7,16(sp) + 80005122: 2d2010ef jal 800063f4 <_Bfree> + 80005126: 67a2 ld a5,8(sp) + 80005128: 68c2 ld a7,16(sp) + 8000512a: 6e62 ld t3,24(sp) + 8000512c: 7602 ld a2,32(sp) + 8000512e: 7722 ld a4,40(sp) + 80005130: 08078be3 beqz a5,800059c6 <__gdtoa+0x1148> + 80005134: 67a2 ld a5,8(sp) + 80005136: 40fe06b3 sub a3,t3,a5 + 8000513a: 00d036b3 snez a3,a3 + 8000513e: 01c037b3 snez a5,t3 + 80005142: 8ff5 and a5,a5,a3 + 80005144: 26079563 bnez a5,800053ae <__gdtoa+0xb30> + 80005148: 790e ld s2,224(sp) + 8000514a: 65a2 ld a1,8(sp) + 8000514c: 8552 mv a0,s4 + 8000514e: f03a sd a4,32(sp) + 80005150: ec32 sd a2,24(sp) + 80005152: e846 sd a7,16(sp) + 80005154: 2a0010ef jal 800063f4 <_Bfree> + 80005158: 68c2 ld a7,16(sp) + 8000515a: 6662 ld a2,24(sp) + 8000515c: 7702 ld a4,32(sp) + 8000515e: 0018881b addiw a6,a7,1 + 80005162: be65 j 80004d1a <__gdtoa+0x49c> + 80005164: 004da783 lw a5,4(s11) + 80005168: 2785 addiw a5,a5,1 + 8000516a: e3a7dbe3 bge a5,s10,80004fa0 <__gdtoa+0x722> + 8000516e: 67e2 ld a5,24(sp) + 80005170: 2f05 addiw t5,t5,1 + 80005172: 2785 addiw a5,a5,1 + 80005174: ec3e sd a5,24(sp) + 80005176: 4785 li a5,1 + 80005178: e8be sd a5,80(sp) + 8000517a: b51d j 80004fa0 <__gdtoa+0x722> + 8000517c: 3fd5051b addiw a0,a0,1021 + 80005180: 4611 li a2,4 + 80005182: 7f853493 sltiu s1,a0,2040 + 80005186: 3aca8a63 beq s5,a2,8000553a <__gdtoa+0xcbc> + 8000518a: 38ea8d63 beq s5,a4,80005524 <__gdtoa+0xca6> + 8000518e: 4709 li a4,2 + 80005190: 3aea8363 beq s5,a4,80005536 <__gdtoa+0xcb8> + 80005194: 470d li a4,3 + 80005196: f482 sd zero,104(sp) + 80005198: 9eea89e3 beq s5,a4,80004b8a <__gdtoa+0x30c> + 8000519c: b165 j 80004e44 <__gdtoa+0x5c6> + 8000519e: 65c2 ld a1,16(sp) + 800051a0: 01e03633 snez a2,t5 + 800051a4: 00b036b3 snez a3,a1 + 800051a8: 8ef1 and a3,a3,a2 + 800051aa: 14069163 bnez a3,800052ec <__gdtoa+0xa6e> + 800051ae: 66a6 ld a3,72(sp) + 800051b0: ec2e sd a1,24(sp) + 800051b2: 14068c63 beqz a3,8000530a <__gdtoa+0xa8c> + 800051b6: 6626 ld a2,72(sp) + 800051b8: 85a2 mv a1,s0 + 800051ba: 8552 mv a0,s4 + 800051bc: ecba sd a4,88(sp) + 800051be: e0fa sd t5,64(sp) + 800051c0: fc3e sd a5,56(sp) + 800051c2: f876 sd t4,48(sp) + 800051c4: f446 sd a7,40(sp) + 800051c6: f072 sd t3,32(sp) + 800051c8: 69e010ef jal 80006866 <__pow5mult> + 800051cc: 842a mv s0,a0 + 800051ce: 10050b63 beqz a0,800052e4 <__gdtoa+0xa66> + 800051d2: 67e2 ld a5,24(sp) + 800051d4: 6766 ld a4,88(sp) + 800051d6: 6f06 ld t5,64(sp) + 800051d8: e83e sd a5,16(sp) + 800051da: 7ec2 ld t4,48(sp) + 800051dc: 77e2 ld a5,56(sp) + 800051de: 78a2 ld a7,40(sp) + 800051e0: 7e02 ld t3,32(sp) + 800051e2: e402 sd zero,8(sp) + 800051e4: b341 j 80004f64 <__gdtoa+0x6e6> + 800051e6: 4e81 li t4,0 + 800051e8: ca0fcae3 bltz t6,80004e9c <__gdtoa+0x61e> + 800051ec: 2198 fld fa4,0(a1) + 800051ee: 4e81 li t4,0 + 800051f0: f20806d3 fmv.d.x fa3,a6 + 800051f4: 1ae6f7d3 fdiv.d fa5,fa3,fa4 + 800051f8: 4785 li a5,1 + 800051fa: c73e sw a5,140(sp) + 800051fc: f2000653 fmv.d.x fa2,zero + 80005200: 8616 mv a2,t0 + 80005202: 0018881b addiw a6,a7,1 + 80005206: c20797d3 fcvt.w.d a5,fa5,rtz + 8000520a: d20787d3 fcvt.d.w fa5,a5 + 8000520e: 0307869b addiw a3,a5,48 + 80005212: 00d70023 sb a3,0(a4) + 80005216: 6ae7f7cb fnmsub.d fa5,fa5,fa4,fa3 + 8000521a: a2c7a6d3 feq.d a3,fa5,fa2 + 8000521e: ae069ee3 bnez a3,80004d1a <__gdtoa+0x49c> + 80005222: 00005697 auipc a3,0x5 + 80005226: 2c66b587 fld fa1,710(a3) # 8000a4e8 <__clz_tab+0x178> + 8000522a: a02d j 80005254 <__gdtoa+0x9d6> + 8000522c: 12b7f7d3 fmul.d fa5,fa5,fa1 + 80005230: c72e sw a1,140(sp) + 80005232: 0605 addi a2,a2,1 + 80005234: 1ae7f6d3 fdiv.d fa3,fa5,fa4 + 80005238: c20697d3 fcvt.w.d a5,fa3,rtz + 8000523c: d20786d3 fcvt.d.w fa3,a5 + 80005240: 0307869b addiw a3,a5,48 + 80005244: fed60fa3 sb a3,-1(a2) + 80005248: 7ae6f7cb fnmsub.d fa5,fa3,fa4,fa5 + 8000524c: a2c7a6d3 feq.d a3,fa5,fa2 + 80005250: ac0695e3 bnez a3,80004d1a <__gdtoa+0x49c> + 80005254: 46ba lw a3,140(sp) + 80005256: 0016859b addiw a1,a3,1 + 8000525a: fdc699e3 bne a3,t3,8000522c <__gdtoa+0x9ae> + 8000525e: 460e8063 beqz t4,800056be <__gdtoa+0xe40> + 80005262: 4785 li a5,1 + 80005264: 4bc1 li s7,16 + 80005266: aafe9ae3 bne t4,a5,80004d1a <__gdtoa+0x49c> + 8000526a: fff64683 lbu a3,-1(a2) + 8000526e: 8546 mv a0,a7 + 80005270: b451 j 80004cf4 <__gdtoa+0x476> + 80005272: 4581 li a1,0 + 80005274: 8552 mv a0,s4 + 80005276: e43a sd a4,8(sp) + 80005278: 17c010ef jal 800063f4 <_Bfree> + 8000527c: 6722 ld a4,8(sp) + 8000527e: 4160083b negw a6,s6 + 80005282: 4bc1 li s7,16 + 80005284: 863a mv a2,a4 + 80005286: bc51 j 80004d1a <__gdtoa+0x49c> + 80005288: 17e010ef jal 80006406 <__multadd> + 8000528c: e42a sd a0,8(sp) + 8000528e: 84050be3 beqz a0,80004ae4 <__gdtoa+0x266> + 80005292: 8b2a mv s6,a0 + 80005294: bbd5 j 80005088 <__gdtoa+0x80a> + 80005296: 85a2 mv a1,s0 + 80005298: 8552 mv a0,s4 + 8000529a: e4ba sd a4,72(sp) + 8000529c: e0fa sd t5,64(sp) + 8000529e: fc76 sd t4,56(sp) + 800052a0: f842 sd a6,48(sp) + 800052a2: f446 sd a7,40(sp) + 800052a4: f03e sd a5,32(sp) + 800052a6: ec72 sd t3,24(sp) + 800052a8: 6ac010ef jal 80006954 <__lshift> + 800052ac: 842a mv s0,a0 + 800052ae: c91d beqz a0,800052e4 <__gdtoa+0xa66> + 800052b0: 46ba lw a3,140(sp) + 800052b2: 6726 ld a4,72(sp) + 800052b4: 6f06 ld t5,64(sp) + 800052b6: 7ee2 ld t4,56(sp) + 800052b8: 7842 ld a6,48(sp) + 800052ba: 78a2 ld a7,40(sp) + 800052bc: 7782 ld a5,32(sp) + 800052be: 6e62 ld t3,24(sp) + 800052c0: b9e5 j 80004fb8 <__gdtoa+0x73a> + 800052c2: 85c2 mv a1,a6 + 800052c4: 8552 mv a0,s4 + 800052c6: fc3a sd a4,56(sp) + 800052c8: f876 sd t4,48(sp) + 800052ca: f446 sd a7,40(sp) + 800052cc: f03e sd a5,32(sp) + 800052ce: ec72 sd t3,24(sp) + 800052d0: 684010ef jal 80006954 <__lshift> + 800052d4: 6e62 ld t3,24(sp) + 800052d6: 7782 ld a5,32(sp) + 800052d8: 78a2 ld a7,40(sp) + 800052da: 7ec2 ld t4,48(sp) + 800052dc: 7762 ld a4,56(sp) + 800052de: 882a mv a6,a0 + 800052e0: ce0510e3 bnez a0,80004fc0 <__gdtoa+0x742> + 800052e4: 4701 li a4,0 + 800052e6: 74ae ld s1,232(sp) + 800052e8: 803ff06f j 80004aea <__gdtoa+0x26c> + 800052ec: 6642 ld a2,16(sp) + 800052ee: 86b2 mv a3,a2 + 800052f0: 00cf5363 bge t5,a2,800052f6 <__gdtoa+0xa78> + 800052f4: 86fa mv a3,t5 + 800052f6: 6642 ld a2,16(sp) + 800052f8: c736 sw a3,140(sp) + 800052fa: 40df0f3b subw t5,t5,a3 + 800052fe: 9e15 subw a2,a2,a3 + 80005300: 66a6 ld a3,72(sp) + 80005302: ec32 sd a2,24(sp) + 80005304: ea0699e3 bnez a3,800051b6 <__gdtoa+0x938> + 80005308: e832 sd a2,16(sp) + 8000530a: e402 sd zero,8(sp) + 8000530c: b9a1 j 80004f64 <__gdtoa+0x6e6> + 8000530e: 65a6 ld a1,72(sp) + 80005310: fffe069b addiw a3,t3,-1 + 80005314: 8636 mv a2,a3 + 80005316: 22d5ca63 blt a1,a3,8000554a <__gdtoa+0xccc> + 8000531a: 40d584bb subw s1,a1,a3 + 8000531e: 640e5d63 bgez t3,80005978 <__gdtoa+0x10fa> + 80005322: 66c2 ld a3,16(sp) + 80005324: c702 sw zero,140(sp) + 80005326: ec36 sd a3,24(sp) + 80005328: 41c686bb subw a3,a3,t3 + 8000532c: e836 sd a3,16(sp) + 8000532e: be5d j 80004ee4 <__gdtoa+0x666> + 80005330: 85aa mv a1,a0 + 80005332: 8636 mv a2,a3 + 80005334: 8552 mv a0,s4 + 80005336: 530010ef jal 80006866 <__pow5mult> + 8000533a: 882a mv a6,a0 + 8000533c: d545 beqz a0,800052e4 <__gdtoa+0xa66> + 8000533e: 77e2 ld a5,56(sp) + 80005340: 7e02 ld t3,32(sp) + 80005342: 78a2 ld a7,40(sp) + 80005344: 17fd addi a5,a5,-1 + 80005346: 0017b693 seqz a3,a5 + 8000534a: 002aa793 slti a5,s5,2 + 8000534e: 8ff5 and a5,a5,a3 + 80005350: 7ec2 ld t4,48(sp) + 80005352: 6f06 ld t5,64(sp) + 80005354: 6726 ld a4,72(sp) + 80005356: e79d bnez a5,80005384 <__gdtoa+0xb06> + 80005358: e882 sd zero,80(sp) + 8000535a: 01482783 lw a5,20(a6) + 8000535e: e4ba sd a4,72(sp) + 80005360: e0fa sd t5,64(sp) + 80005362: 37fd addiw a5,a5,-1 + 80005364: 078a slli a5,a5,0x2 + 80005366: 97c2 add a5,a5,a6 + 80005368: 4f88 lw a0,24(a5) + 8000536a: fc76 sd t4,56(sp) + 8000536c: f846 sd a7,48(sp) + 8000536e: f472 sd t3,40(sp) + 80005370: f042 sd a6,32(sp) + 80005372: 184010ef jal 800064f6 <__hi0bits> + 80005376: 6726 ld a4,72(sp) + 80005378: 6f06 ld t5,64(sp) + 8000537a: 7ee2 ld t4,56(sp) + 8000537c: 78c2 ld a7,48(sp) + 8000537e: 7e22 ld t3,40(sp) + 80005380: 7802 ld a6,32(sp) + 80005382: b105 j 80004fa2 <__gdtoa+0x724> + 80005384: 004da783 lw a5,4(s11) + 80005388: 2785 addiw a5,a5,1 + 8000538a: fda7d7e3 bge a5,s10,80005358 <__gdtoa+0xada> + 8000538e: 67e2 ld a5,24(sp) + 80005390: 2f05 addiw t5,t5,1 + 80005392: 2785 addiw a5,a5,1 + 80005394: ec3e sd a5,24(sp) + 80005396: 4785 li a5,1 + 80005398: e8be sd a5,80(sp) + 8000539a: b7c1 j 8000535a <__gdtoa+0xadc> + 8000539c: 4705 li a4,1 + 8000539e: 9f11 subw a4,a4,a2 + 800053a0: e83a sd a4,16(sp) + 800053a2: f082 sd zero,96(sp) + 800053a4: e8c6 sd a7,80(sp) + 800053a6: 8f46 mv t5,a7 + 800053a8: e482 sd zero,72(sp) + 800053aa: fb8ff06f j 80004b62 <__gdtoa+0x2e4> + 800053ae: 85f2 mv a1,t3 + 800053b0: 8552 mv a0,s4 + 800053b2: f03a sd a4,32(sp) + 800053b4: ec32 sd a2,24(sp) + 800053b6: e846 sd a7,16(sp) + 800053b8: 03c010ef jal 800063f4 <_Bfree> + 800053bc: 7702 ld a4,32(sp) + 800053be: 6662 ld a2,24(sp) + 800053c0: 68c2 ld a7,16(sp) + 800053c2: 790e ld s2,224(sp) + 800053c4: b359 j 8000514a <__gdtoa+0x8cc> + 800053c6: 4685 li a3,1 + 800053c8: f556c3e3 blt a3,s5,8000530e <__gdtoa+0xa90> + 800053cc: 66c2 ld a3,16(sp) + 800053ce: 64a6 ld s1,72(sp) + 800053d0: 01e58f3b addw t5,a1,t5 + 800053d4: 9ead addw a3,a3,a1 + 800053d6: ec36 sd a3,24(sp) + 800053d8: b631 j 80004ee4 <__gdtoa+0x666> + 800053da: 85c2 mv a1,a6 + 800053dc: 8522 mv a0,s0 + 800053de: e0ba sd a4,64(sp) + 800053e0: fc76 sd t4,56(sp) + 800053e2: f846 sd a7,48(sp) + 800053e4: f43e sd a5,40(sp) + 800053e6: f072 sd t3,32(sp) + 800053e8: ec42 sd a6,24(sp) + 800053ea: 67a010ef jal 80006a64 <__mcmp> + 800053ee: 6862 ld a6,24(sp) + 800053f0: 7e02 ld t3,32(sp) + 800053f2: 77a2 ld a5,40(sp) + 800053f4: 78c2 ld a7,48(sp) + 800053f6: 7ee2 ld t4,56(sp) + 800053f8: 6706 ld a4,64(sp) + 800053fa: bc0556e3 bgez a0,80004fc6 <__gdtoa+0x748> + 800053fe: 85a2 mv a1,s0 + 80005400: 4681 li a3,0 + 80005402: 4629 li a2,10 + 80005404: 8552 mv a0,s4 + 80005406: fc3a sd a4,56(sp) + 80005408: f876 sd t4,48(sp) + 8000540a: f442 sd a6,40(sp) + 8000540c: f046 sd a7,32(sp) + 8000540e: ec3e sd a5,24(sp) + 80005410: 7f7000ef jal 80006406 <__multadd> + 80005414: 842a mv s0,a0 + 80005416: ec0507e3 beqz a0,800052e4 <__gdtoa+0xa66> + 8000541a: 7882 ld a7,32(sp) + 8000541c: 76a6 ld a3,104(sp) + 8000541e: 7822 ld a6,40(sp) + 80005420: 7ec2 ld t4,48(sp) + 80005422: 7762 ld a4,56(sp) + 80005424: 38fd addiw a7,a7,-1 + 80005426: 52069263 bnez a3,8000594a <__gdtoa+0x10cc> + 8000542a: 7e46 ld t3,112(sp) + 8000542c: 4689 li a3,2 + 8000542e: 0156a6b3 slt a3,a3,s5 + 80005432: 001e2793 slti a5,t3,1 + 80005436: 8ff5 and a5,a5,a3 + 80005438: e3d9 bnez a5,800054be <__gdtoa+0xc40> + 8000543a: f1ca sd s2,224(sp) + 8000543c: 4685 li a3,1 + 8000543e: 8af2 mv s5,t3 + 80005440: 8b46 mv s6,a7 + 80005442: 8942 mv s2,a6 + 80005444: 84ba mv s1,a4 + 80005446: 8bf6 mv s7,t4 + 80005448: 8c3a mv s8,a4 + 8000544a: a811 j 8000545e <__gdtoa+0xbe0> + 8000544c: 85a2 mv a1,s0 + 8000544e: 8552 mv a0,s4 + 80005450: 7b7000ef jal 80006406 <__multadd> + 80005454: 842a mv s0,a0 + 80005456: e8050763 beqz a0,80004ae4 <__gdtoa+0x266> + 8000545a: 46ba lw a3,140(sp) + 8000545c: 2685 addiw a3,a3,1 + 8000545e: 85ca mv a1,s2 + 80005460: 8522 mv a0,s0 + 80005462: c736 sw a3,140(sp) + 80005464: 668000ef jal 80005acc <__quorem_D2A> + 80005468: 00148793 addi a5,s1,1 + 8000546c: 0305031b addiw t1,a0,48 + 80005470: fe678fa3 sb t1,-1(a5) + 80005474: 84be mv s1,a5 + 80005476: 47ba lw a5,140(sp) + 80005478: 4681 li a3,0 + 8000547a: 4629 li a2,10 + 8000547c: fd57c8e3 blt a5,s5,8000544c <__gdtoa+0xbce> + 80005480: 88da mv a7,s6 + 80005482: 884a mv a6,s2 + 80005484: 87a6 mv a5,s1 + 80005486: 8ede mv t4,s7 + 80005488: 8762 mv a4,s8 + 8000548a: 4e01 li t3,0 + 8000548c: 300e8063 beqz t4,8000578c <__gdtoa+0xf0e> + 80005490: 4689 li a3,2 + 80005492: 32de8b63 beq t4,a3,800057c8 <__gdtoa+0xf4a> + 80005496: 4850 lw a2,20(s0) + 80005498: 4685 li a3,1 + 8000549a: 1ac6c463 blt a3,a2,80005642 <__gdtoa+0xdc4> + 8000549e: 4c14 lw a3,24(s0) + 800054a0: 1a069163 bnez a3,80005642 <__gdtoa+0xdc4> + 800054a4: 00d036b3 snez a3,a3 + 800054a8: 00469b9b slliw s7,a3,0x4 + 800054ac: 03000593 li a1,48 + 800054b0: 863e mv a2,a5 + 800054b2: fff7c683 lbu a3,-1(a5) + 800054b6: 17fd addi a5,a5,-1 + 800054b8: feb68ce3 beq a3,a1,800054b0 <__gdtoa+0xc32> + 800054bc: b9a9 j 80005116 <__gdtoa+0x898> + 800054be: 7e46 ld t3,112(sp) + 800054c0: 85c2 mv a1,a6 + 800054c2: 4681 li a3,0 + 800054c4: 4615 li a2,5 + 800054c6: 8552 mv a0,s4 + 800054c8: ec3a sd a4,24(sp) + 800054ca: f046 sd a7,32(sp) + 800054cc: e872 sd t3,16(sp) + 800054ce: 739000ef jal 80006406 <__multadd> + 800054d2: 85aa mv a1,a0 + 800054d4: e00508e3 beqz a0,800052e4 <__gdtoa+0xa66> + 800054d8: 6e42 ld t3,16(sp) + 800054da: 6762 ld a4,24(sp) + 800054dc: 060e1263 bnez t3,80005540 <__gdtoa+0xcc2> + 800054e0: e82a sd a0,16(sp) + 800054e2: 8522 mv a0,s0 + 800054e4: 580010ef jal 80006a64 <__mcmp> + 800054e8: 65c2 ld a1,16(sp) + 800054ea: 6762 ld a4,24(sp) + 800054ec: 7882 ld a7,32(sp) + 800054ee: 04a05963 blez a0,80005540 <__gdtoa+0xcc2> + 800054f2: 03100793 li a5,49 + 800054f6: 00f70023 sb a5,0(a4) + 800054fa: 2885 addiw a7,a7,1 + 800054fc: 00170613 addi a2,a4,1 + 80005500: 02000b93 li s7,32 + 80005504: 8552 mv a0,s4 + 80005506: f03a sd a4,32(sp) + 80005508: ec32 sd a2,24(sp) + 8000550a: e846 sd a7,16(sp) + 8000550c: 6e9000ef jal 800063f4 <_Bfree> + 80005510: 68c2 ld a7,16(sp) + 80005512: 67a2 ld a5,8(sp) + 80005514: 6662 ld a2,24(sp) + 80005516: 7702 ld a4,32(sp) + 80005518: 0018881b addiw a6,a7,1 + 8000551c: c20797e3 bnez a5,8000514a <__gdtoa+0x8cc> + 80005520: ffaff06f j 80004d1a <__gdtoa+0x49c> + 80005524: 4705 li a4,1 + 80005526: f4ba sd a4,104(sp) + 80005528: e62ff06f j 80004b8a <__gdtoa+0x30c> + 8000552c: 4705 li a4,1 + 8000552e: 4481 li s1,0 + 80005530: f4ba sd a4,104(sp) + 80005532: e58ff06f j 80004b8a <__gdtoa+0x30c> + 80005536: f482 sd zero,104(sp) + 80005538: b2a1 j 80004e80 <__gdtoa+0x602> + 8000553a: 4705 li a4,1 + 8000553c: f4ba sd a4,104(sp) + 8000553e: b289 j 80004e80 <__gdtoa+0x602> + 80005540: fffb4893 not a7,s6 + 80005544: 863a mv a2,a4 + 80005546: 4bc1 li s7,16 + 80005548: bf75 j 80005504 <__gdtoa+0xc86> + 8000554a: 66a6 ld a3,72(sp) + 8000554c: 65c6 ld a1,80(sp) + 8000554e: c772 sw t3,140(sp) + 80005550: 40d606bb subw a3,a2,a3 + 80005554: 9ead addw a3,a3,a1 + 80005556: e8b6 sd a3,80(sp) + 80005558: 66c2 ld a3,16(sp) + 8000555a: 01ee0f3b addw t5,t3,t5 + 8000555e: e4b2 sd a2,72(sp) + 80005560: 01c686bb addw a3,a3,t3 + 80005564: ec36 sd a3,24(sp) + 80005566: 4481 li s1,0 + 80005568: bab5 j 80004ee4 <__gdtoa+0x666> + 8000556a: 65a2 ld a1,8(sp) + 8000556c: 8626 mv a2,s1 + 8000556e: 8552 mv a0,s4 + 80005570: f1ca sd s2,224(sp) + 80005572: ecba sd a4,88(sp) + 80005574: e0fa sd t5,64(sp) + 80005576: fc3e sd a5,56(sp) + 80005578: f876 sd t4,48(sp) + 8000557a: f446 sd a7,40(sp) + 8000557c: f072 sd t3,32(sp) + 8000557e: 2e8010ef jal 80006866 <__pow5mult> + 80005582: e42a sd a0,8(sp) + 80005584: d6050063 beqz a0,80004ae4 <__gdtoa+0x266> + 80005588: 85aa mv a1,a0 + 8000558a: 8622 mv a2,s0 + 8000558c: 8552 mv a0,s4 + 8000558e: 108010ef jal 80006696 <__multiply> + 80005592: d4050963 beqz a0,80004ae4 <__gdtoa+0x266> + 80005596: 85a2 mv a1,s0 + 80005598: fcaa sd a0,120(sp) + 8000559a: 8552 mv a0,s4 + 8000559c: 659000ef jal 800063f4 <_Bfree> + 800055a0: 67a6 ld a5,72(sp) + 800055a2: 7466 ld s0,120(sp) + 800055a4: 7e02 ld t3,32(sp) + 800055a6: 9f85 subw a5,a5,s1 + 800055a8: e4be sd a5,72(sp) + 800055aa: 86be mv a3,a5 + 800055ac: 78a2 ld a7,40(sp) + 800055ae: 7ec2 ld t4,48(sp) + 800055b0: 77e2 ld a5,56(sp) + 800055b2: 6f06 ld t5,64(sp) + 800055b4: 6766 ld a4,88(sp) + 800055b6: 790e ld s2,224(sp) + 800055b8: 9a0686e3 beqz a3,80004f64 <__gdtoa+0x6e6> + 800055bc: b241 j 80004f3c <__gdtoa+0x6be> + 800055be: f20e8753 fmv.d.x fa4,t4 + 800055c2: 863a mv a2,a4 + 800055c4: 4805 li a6,1 + 800055c6: 12e675d3 fmul.d fa1,fa2,fa4 + 800055ca: 00005697 auipc a3,0x5 + 800055ce: f1e6b707 fld fa4,-226(a3) # 8000a4e8 <__clz_tab+0x178> + 800055d2: a021 j 800055da <__gdtoa+0xd5c> + 800055d4: 12e7f7d3 fmul.d fa5,fa5,fa4 + 800055d8: 2805 addiw a6,a6,1 + 800055da: c742 sw a6,140(sp) + 800055dc: c2079853 fcvt.w.d a6,fa5,rtz + 800055e0: 0605 addi a2,a2,1 + 800055e2: 0308069b addiw a3,a6,48 + 800055e6: 0ff6f693 zext.b a3,a3 + 800055ea: 00080663 beqz a6,800055f6 <__gdtoa+0xd78> + 800055ee: d2080653 fcvt.d.w fa2,a6 + 800055f2: 0ac7f7d3 fsub.d fa5,fa5,fa2 + 800055f6: fed60fa3 sb a3,-1(a2) + 800055fa: 483a lw a6,140(sp) + 800055fc: fc681ce3 bne a6,t1,800055d4 <__gdtoa+0xd56> + 80005600: 00005497 auipc s1,0x5 + 80005604: f004b707 fld fa4,-256(s1) # 8000a500 <__clz_tab+0x190> + 80005608: 02e5f653 fadd.d fa2,fa1,fa4 + 8000560c: a2f61853 flt.d a6,fa2,fa5 + 80005610: ee081263 bnez a6,80004cf4 <__gdtoa+0x476> + 80005614: 0ab77753 fsub.d fa4,fa4,fa1 + 80005618: a2e796d3 flt.d a3,fa5,fa4 + 8000561c: 24069e63 bnez a3,80005878 <__gdtoa+0xffa> + 80005620: 4e81 li t4,0 + 80005622: b60fcee3 bltz t6,8000519e <__gdtoa+0x920> + 80005626: 2198 fld fa4,0(a1) + 80005628: 4e81 li t4,0 + 8000562a: 00170293 addi t0,a4,1 + 8000562e: b6d9 j 800051f4 <__gdtoa+0x976> + 80005630: 00168613 addi a2,a3,1 + 80005634: 03900593 li a1,57 + 80005638: 6e22 ld t3,8(sp) + 8000563a: 87b2 mv a5,a2 + 8000563c: e45a sd s6,8(sp) + 8000563e: 00b68023 sb a1,0(a3) + 80005642: 03900593 li a1,57 + 80005646: a019 j 8000564c <__gdtoa+0xdce> + 80005648: 18f70763 beq a4,a5,800057d6 <__gdtoa+0xf58> + 8000564c: fff7c683 lbu a3,-1(a5) + 80005650: 863e mv a2,a5 + 80005652: 17fd addi a5,a5,-1 + 80005654: feb68ae3 beq a3,a1,80005648 <__gdtoa+0xdca> + 80005658: 2685 addiw a3,a3,1 + 8000565a: 00d78023 sb a3,0(a5) + 8000565e: 02000b93 li s7,32 + 80005662: bc55 j 80005116 <__gdtoa+0x898> + 80005664: 87a6 mv a5,s1 + 80005666: ba45 j 80005016 <__gdtoa+0x798> + 80005668: 65a2 ld a1,8(sp) + 8000566a: 8552 mv a0,s4 + 8000566c: f83a sd a4,48(sp) + 8000566e: f476 sd t4,40(sp) + 80005670: f042 sd a6,32(sp) + 80005672: ec46 sd a7,24(sp) + 80005674: e872 sd t3,16(sp) + 80005676: 2de010ef jal 80006954 <__lshift> + 8000567a: e42a sd a0,8(sp) + 8000567c: 6e42 ld t3,16(sp) + 8000567e: 68e2 ld a7,24(sp) + 80005680: 7802 ld a6,32(sp) + 80005682: 7ea2 ld t4,40(sp) + 80005684: 7742 ld a4,48(sp) + 80005686: 960510e3 bnez a0,80004fe6 <__gdtoa+0x768> + 8000568a: 4701 li a4,0 + 8000568c: b9a9 j 800052e6 <__gdtoa+0xa68> + 8000568e: 03100793 li a5,49 + 80005692: 00170613 addi a2,a4,1 + 80005696: 00f70023 sb a5,0(a4) + 8000569a: 4581 li a1,0 + 8000569c: 8552 mv a0,s4 + 8000569e: e83a sd a4,16(sp) + 800056a0: e432 sd a2,8(sp) + 800056a2: 553000ef jal 800063f4 <_Bfree> + 800056a6: 6622 ld a2,8(sp) + 800056a8: 6742 ld a4,16(sp) + 800056aa: 4809 li a6,2 + 800056ac: 02000b93 li s7,32 + 800056b0: e6aff06f j 80004d1a <__gdtoa+0x49c> + 800056b4: 2505 addiw a0,a0,1 + 800056b6: 03100693 li a3,49 + 800056ba: e54ff06f j 80004d0e <__gdtoa+0x490> + 800056be: 02f7f7d3 fadd.d fa5,fa5,fa5 + 800056c2: fff64683 lbu a3,-1(a2) + 800056c6: a2f715d3 flt.d a1,fa4,fa5 + 800056ca: edd5 bnez a1,80005786 <__gdtoa+0xf08> + 800056cc: a2e7a5d3 feq.d a1,fa5,fa4 + 800056d0: c199 beqz a1,800056d6 <__gdtoa+0xe58> + 800056d2: 8b85 andi a5,a5,1 + 800056d4: ebcd bnez a5,80005786 <__gdtoa+0xf08> + 800056d6: 87b2 mv a5,a2 + 800056d8: 8546 mv a0,a7 + 800056da: 4bc1 li s7,16 + 800056dc: 03000593 li a1,48 + 800056e0: fff7c683 lbu a3,-1(a5) + 800056e4: 863e mv a2,a5 + 800056e6: 17fd addi a5,a5,-1 + 800056e8: feb68ce3 beq a3,a1,800056e0 <__gdtoa+0xe62> + 800056ec: 0015081b addiw a6,a0,1 + 800056f0: e2aff06f j 80004d1a <__gdtoa+0x49c> + 800056f4: 008b2583 lw a1,8(s6) + 800056f8: 8552 mv a0,s4 + 800056fa: fc3a sd a4,56(sp) + 800056fc: f876 sd t4,48(sp) + 800056fe: f442 sd a6,40(sp) + 80005700: f046 sd a7,32(sp) + 80005702: ec72 sd t3,24(sp) + 80005704: 481000ef jal 80006384 <_Balloc> + 80005708: 87aa mv a5,a0 + 8000570a: bc050de3 beqz a0,800052e4 <__gdtoa+0xa66> + 8000570e: 014b2603 lw a2,20(s6) + 80005712: 010b0593 addi a1,s6,16 + 80005716: 0541 addi a0,a0,16 + 80005718: 0609 addi a2,a2,2 + 8000571a: 060a slli a2,a2,0x2 + 8000571c: e83e sd a5,16(sp) + 8000571e: 859fe0ef jal 80003f76 + 80005722: 65c2 ld a1,16(sp) + 80005724: 8552 mv a0,s4 + 80005726: 4605 li a2,1 + 80005728: 22c010ef jal 80006954 <__lshift> + 8000572c: 6e62 ld t3,24(sp) + 8000572e: 7882 ld a7,32(sp) + 80005730: 7822 ld a6,40(sp) + 80005732: 7ec2 ld t4,48(sp) + 80005734: 7762 ld a4,56(sp) + 80005736: 8b2a mv s6,a0 + 80005738: 8a051be3 bnez a0,80004fee <__gdtoa+0x770> + 8000573c: 4701 li a4,0 + 8000573e: b665 j 800052e6 <__gdtoa+0xa68> + 80005740: 7346 ld t1,112(sp) + 80005742: 1e605b63 blez t1,80005938 <__gdtoa+0x10ba> + 80005746: 00005617 auipc a2,0x5 + 8000574a: da263787 fld fa5,-606(a2) # 8000a4e8 <__clz_tab+0x178> + 8000574e: 00005617 auipc a2,0x5 + 80005752: da263707 fld fa4,-606(a2) # 8000a4f0 <__clz_tab+0x180> + 80005756: 00005617 auipc a2,0x5 + 8000575a: d8a63607 fld fa2,-630(a2) # 8000a4e0 <__clz_tab+0x170> + 8000575e: 12f6f7d3 fmul.d fa5,fa3,fa5 + 80005762: fcc005b7 lui a1,0xfcc00 + 80005766: 557d li a0,-1 + 80005768: 62e7f743 fmadd.d fa4,fa5,fa4,fa2 + 8000576c: e2070653 fmv.x.d a2,fa4 + 80005770: 02061e93 slli t4,a2,0x20 + 80005774: 9201 srli a2,a2,0x20 + 80005776: 9e2d addw a2,a2,a1 + 80005778: 020ede93 srli t4,t4,0x20 + 8000577c: 1602 slli a2,a2,0x20 + 8000577e: 00ceeeb3 or t4,t4,a2 + 80005782: cd2ff06f j 80004c54 <__gdtoa+0x3d6> + 80005786: 8546 mv a0,a7 + 80005788: d6cff06f j 80004cf4 <__gdtoa+0x476> + 8000578c: 85a2 mv a1,s0 + 8000578e: 4605 li a2,1 + 80005790: 8552 mv a0,s4 + 80005792: fc3a sd a4,56(sp) + 80005794: f83e sd a5,48(sp) + 80005796: e842 sd a6,16(sp) + 80005798: f472 sd t3,40(sp) + 8000579a: f046 sd a7,32(sp) + 8000579c: ec1a sd t1,24(sp) + 8000579e: 1b6010ef jal 80006954 <__lshift> + 800057a2: 842a mv s0,a0 + 800057a4: b4050063 beqz a0,80004ae4 <__gdtoa+0x266> + 800057a8: 65c2 ld a1,16(sp) + 800057aa: 2ba010ef jal 80006a64 <__mcmp> + 800057ae: 6842 ld a6,16(sp) + 800057b0: 7882 ld a7,32(sp) + 800057b2: 7e22 ld t3,40(sp) + 800057b4: 77c2 ld a5,48(sp) + 800057b6: 7762 ld a4,56(sp) + 800057b8: e8a045e3 bgtz a0,80005642 <__gdtoa+0xdc4> + 800057bc: e511 bnez a0,800057c8 <__gdtoa+0xf4a> + 800057be: 6362 ld t1,24(sp) + 800057c0: 00137313 andi t1,t1,1 + 800057c4: e6031fe3 bnez t1,80005642 <__gdtoa+0xdc4> + 800057c8: 4850 lw a2,20(s0) + 800057ca: 4685 li a3,1 + 800057cc: 4bc1 li s7,16 + 800057ce: ccc6cfe3 blt a3,a2,800054ac <__gdtoa+0xc2e> + 800057d2: 4c14 lw a3,24(s0) + 800057d4: b9c1 j 800054a4 <__gdtoa+0xc26> + 800057d6: 03100793 li a5,49 + 800057da: 2885 addiw a7,a7,1 + 800057dc: 00f70023 sb a5,0(a4) + 800057e0: 02000b93 li s7,32 + 800057e4: ba0d j 80005116 <__gdtoa+0x898> + 800057e6: f2000753 fmv.d.x fa4,zero + 800057ea: 0015081b addiw a6,a0,1 + 800057ee: a2e7a7d3 feq.d a5,fa5,fa4 + 800057f2: 0017b793 seqz a5,a5 + 800057f6: 00479b9b slliw s7,a5,0x4 + 800057fa: d20ff06f j 80004d1a <__gdtoa+0x49c> + 800057fe: 7ee2 ld t4,56(sp) + 80005800: 68a6 ld a7,72(sp) + 80005802: 7802 ld a6,32(sp) + 80005804: 6746 ld a4,80(sp) + 80005806: 86ea mv a3,s10 + 80005808: 0a0e8c63 beqz t4,800058c0 <__gdtoa+0x1042> + 8000580c: 484c lw a1,20(s0) + 8000580e: 4605 li a2,1 + 80005810: 16b65d63 bge a2,a1,8000598a <__gdtoa+0x110c> + 80005814: 4789 li a5,2 + 80005816: 18fe8163 beq t4,a5,80005998 <__gdtoa+0x111a> + 8000581a: 8aa2 mv s5,s0 + 8000581c: 8c46 mv s8,a7 + 8000581e: 8bc2 mv s7,a6 + 80005820: 8436 mv s0,a3 + 80005822: 8d3a mv s10,a4 + 80005824: a821 j 8000583c <__gdtoa+0xfbe> + 80005826: 3e1000ef jal 80006406 <__multadd> + 8000582a: 85de mv a1,s7 + 8000582c: 8aaa mv s5,a0 + 8000582e: 0405 addi s0,s0,1 + 80005830: aa050a63 beqz a0,80004ae4 <__gdtoa+0x266> + 80005834: 298000ef jal 80005acc <__quorem_D2A> + 80005838: 0305031b addiw t1,a0,48 + 8000583c: 85da mv a1,s6 + 8000583e: 855e mv a0,s7 + 80005840: e81a sd t1,16(sp) + 80005842: 222010ef jal 80006a64 <__mcmp> + 80005846: 6342 ld t1,16(sp) + 80005848: 4681 li a3,0 + 8000584a: 4629 li a2,10 + 8000584c: 14a05f63 blez a0,800059aa <__gdtoa+0x112c> + 80005850: 85da mv a1,s6 + 80005852: 00640023 sb t1,0(s0) + 80005856: 8552 mv a0,s4 + 80005858: 3af000ef jal 80006406 <__multadd> + 8000585c: 87aa mv a5,a0 + 8000585e: 84da mv s1,s6 + 80005860: 4681 li a3,0 + 80005862: 8b2a mv s6,a0 + 80005864: 4629 li a2,10 + 80005866: 85d6 mv a1,s5 + 80005868: 8552 mv a0,s4 + 8000586a: a6078d63 beqz a5,80004ae4 <__gdtoa+0x266> + 8000586e: 67a2 ld a5,8(sp) + 80005870: fa979be3 bne a5,s1,80005826 <__gdtoa+0xfa8> + 80005874: e45a sd s6,8(sp) + 80005876: bf45 j 80005826 <__gdtoa+0xfa8> + 80005878: f2000753 fmv.d.x fa4,zero + 8000587c: 87b2 mv a5,a2 + 8000587e: a2e7a6d3 feq.d a3,fa5,fa4 + 80005882: 0016b693 seqz a3,a3 + 80005886: 00469b9b slliw s7,a3,0x4 + 8000588a: bd89 j 800056dc <__gdtoa+0xe5e> + 8000588c: 6e22 ld t3,8(sp) + 8000588e: 68a6 ld a7,72(sp) + 80005890: 7802 ld a6,32(sp) + 80005892: 7ee2 ld t4,56(sp) + 80005894: 6746 ld a4,80(sp) + 80005896: e45a sd s6,8(sp) + 80005898: bed5 j 8000548c <__gdtoa+0xc0e> + 8000589a: 863e mv a2,a5 + 8000589c: 03900793 li a5,57 + 800058a0: 68a6 ld a7,72(sp) + 800058a2: 7802 ld a6,32(sp) + 800058a4: 6746 ld a4,80(sp) + 800058a6: 86ea mv a3,s10 + 800058a8: d8fd86e3 beq s11,a5,80005634 <__gdtoa+0xdb6> + 800058ac: 001d879b addiw a5,s11,1 + 800058b0: 6e22 ld t3,8(sp) + 800058b2: 00fd0023 sb a5,0(s10) + 800058b6: e45a sd s6,8(sp) + 800058b8: 02000b93 li s7,32 + 800058bc: 85bff06f j 80005116 <__gdtoa+0x898> + 800058c0: 04f05063 blez a5,80005900 <__gdtoa+0x1082> + 800058c4: 85a2 mv a1,s0 + 800058c6: 4605 li a2,1 + 800058c8: 8552 mv a0,s4 + 800058ca: f83a sd a4,48(sp) + 800058cc: f436 sd a3,40(sp) + 800058ce: e842 sd a6,16(sp) + 800058d0: f046 sd a7,32(sp) + 800058d2: ec1a sd t1,24(sp) + 800058d4: 080010ef jal 80006954 <__lshift> + 800058d8: 842a mv s0,a0 + 800058da: a0050563 beqz a0,80004ae4 <__gdtoa+0x266> + 800058de: 65c2 ld a1,16(sp) + 800058e0: 184010ef jal 80006a64 <__mcmp> + 800058e4: 6842 ld a6,16(sp) + 800058e6: 7882 ld a7,32(sp) + 800058e8: 76a2 ld a3,40(sp) + 800058ea: 7742 ld a4,48(sp) + 800058ec: 0aa05963 blez a0,8000599e <__gdtoa+0x1120> + 800058f0: 03900793 li a5,57 + 800058f4: d2fd8ee3 beq s11,a5,80005630 <__gdtoa+0xdb2> + 800058f8: 0319031b addiw t1,s2,49 + 800058fc: 02000e93 li t4,32 + 80005900: 4850 lw a2,20(s0) + 80005902: 4785 li a5,1 + 80005904: 4bc1 li s7,16 + 80005906: 80c7c2e3 blt a5,a2,8000510a <__gdtoa+0x88c> + 8000590a: 4c1c lw a5,24(s0) + 8000590c: fe079f63 bnez a5,8000510a <__gdtoa+0x88c> + 80005910: 8bf6 mv s7,t4 + 80005912: ff8ff06f j 8000510a <__gdtoa+0x88c> + 80005916: 65a6 ld a1,72(sp) + 80005918: fffe069b addiw a3,t3,-1 + 8000591c: 8636 mv a2,a3 + 8000591e: c2d5c6e3 blt a1,a3,8000554a <__gdtoa+0xccc> + 80005922: 40d584bb subw s1,a1,a3 + 80005926: 66c2 ld a3,16(sp) + 80005928: 01ee0f3b addw t5,t3,t5 + 8000592c: c772 sw t3,140(sp) + 8000592e: 01c686bb addw a3,a3,t3 + 80005932: ec36 sd a3,24(sp) + 80005934: db0ff06f j 80004ee4 <__gdtoa+0x666> + 80005938: d40fce63 bltz t6,80004e94 <__gdtoa+0x616> + 8000593c: 00004597 auipc a1,0x4 + 80005940: 6dc58593 addi a1,a1,1756 # 8000a018 <__mprec_tens> + 80005944: 00170293 addi t0,a4,1 + 80005948: b055 j 800051ec <__gdtoa+0x96e> + 8000594a: 65a2 ld a1,8(sp) + 8000594c: 4681 li a3,0 + 8000594e: 4629 li a2,10 + 80005950: 8552 mv a0,s4 + 80005952: f046 sd a7,32(sp) + 80005954: 2b3000ef jal 80006406 <__multadd> + 80005958: e42a sd a0,8(sp) + 8000595a: 980505e3 beqz a0,800052e4 <__gdtoa+0xa66> + 8000595e: 76c6 ld a3,112(sp) + 80005960: 67e2 ld a5,24(sp) + 80005962: 7882 ld a7,32(sp) + 80005964: 7822 ld a6,40(sp) + 80005966: 7ec2 ld t4,48(sp) + 80005968: 7762 ld a4,56(sp) + 8000596a: 7e46 ld t3,112(sp) + 8000596c: e6d04863 bgtz a3,80004fdc <__gdtoa+0x75e> + 80005970: 4689 li a3,2 + 80005972: e756d563 bge a3,s5,80004fdc <__gdtoa+0x75e> + 80005976: b6a9 j 800054c0 <__gdtoa+0xc42> + 80005978: 66c2 ld a3,16(sp) + 8000597a: c772 sw t3,140(sp) + 8000597c: 01ee0f3b addw t5,t3,t5 + 80005980: 01c686bb addw a3,a3,t3 + 80005984: ec36 sd a3,24(sp) + 80005986: d5eff06f j 80004ee4 <__gdtoa+0x666> + 8000598a: 4c10 lw a2,24(s0) + 8000598c: e80614e3 bnez a2,80005814 <__gdtoa+0xf96> + 80005990: f2f04ae3 bgtz a5,800058c4 <__gdtoa+0x1046> + 80005994: f76ff06f j 8000510a <__gdtoa+0x88c> + 80005998: 4bc1 li s7,16 + 8000599a: f70ff06f j 8000510a <__gdtoa+0x88c> + 8000599e: 6362 ld t1,24(sp) + 800059a0: fd31 bnez a0,800058fc <__gdtoa+0x107e> + 800059a2: 001df793 andi a5,s11,1 + 800059a6: f7a9 bnez a5,800058f0 <__gdtoa+0x1072> + 800059a8: bf91 j 800058fc <__gdtoa+0x107e> + 800059aa: 03900793 li a5,57 + 800059ae: 86a2 mv a3,s0 + 800059b0: 88e2 mv a7,s8 + 800059b2: 885e mv a6,s7 + 800059b4: 8456 mv s0,s5 + 800059b6: 876a mv a4,s10 + 800059b8: c6f30ce3 beq t1,a5,80005630 <__gdtoa+0xdb2> + 800059bc: 2305 addiw t1,t1,1 + 800059be: 02000b93 li s7,32 + 800059c2: f48ff06f j 8000510a <__gdtoa+0x88c> + 800059c6: 790e ld s2,224(sp) + 800059c8: 0018881b addiw a6,a7,1 + 800059cc: b4eff06f j 80004d1a <__gdtoa+0x49c> + 800059d0: 4850 lw a2,20(s0) + 800059d2: 4785 li a5,1 + 800059d4: 4bc1 li s7,16 + 800059d6: f2c7ca63 blt a5,a2,8000510a <__gdtoa+0x88c> + 800059da: 4c1c lw a5,24(s0) + 800059dc: 00f037b3 snez a5,a5 + 800059e0: 00479b9b slliw s7,a5,0x4 + 800059e4: f26ff06f j 8000510a <__gdtoa+0x88c> -0000000080005300 <__rv_alloc_D2A.part.0>: - 80005300: 1141 addi sp,sp,-16 - 80005302: 00004697 auipc a3,0x4 - 80005306: 00e68693 addi a3,a3,14 # 80009310 <__clzdi2+0x336> - 8000530a: 4601 li a2,0 - 8000530c: 03900593 li a1,57 - 80005310: 00004517 auipc a0,0x4 - 80005314: 01850513 addi a0,a0,24 # 80009328 <__clzdi2+0x34e> - 80005318: e406 sd ra,8(sp) - 8000531a: 1d9010ef jal 80006cf2 <__assert_func> +00000000800059e8 <__rv_alloc_D2A.part.0>: + 800059e8: 1141 addi sp,sp,-16 + 800059ea: 00004697 auipc a3,0x4 + 800059ee: 2b668693 addi a3,a3,694 # 80009ca0 <__clzdi2+0x5de> + 800059f2: 4601 li a2,0 + 800059f4: 03900593 li a1,57 + 800059f8: 00004517 auipc a0,0x4 + 800059fc: 2c050513 addi a0,a0,704 # 80009cb8 <__clzdi2+0x5f6> + 80005a00: e406 sd ra,8(sp) + 80005a02: 1d9010ef jal 800073da <__assert_func> -000000008000531e <__rv_alloc_D2A>: - 8000531e: 1141 addi sp,sp,-16 - 80005320: e022 sd s0,0(sp) - 80005322: e406 sd ra,8(sp) - 80005324: 46fd li a3,31 - 80005326: 842a mv s0,a0 - 80005328: 4705 li a4,1 - 8000532a: 4791 li a5,4 - 8000532c: 02b6f563 bgeu a3,a1,80005356 <__rv_alloc_D2A+0x38> - 80005330: 0017979b slliw a5,a5,0x1 - 80005334: 01c78693 addi a3,a5,28 - 80005338: 863a mv a2,a4 - 8000533a: 2705 addiw a4,a4,1 - 8000533c: fed5fae3 bgeu a1,a3,80005330 <__rv_alloc_D2A+0x12> - 80005340: 85b2 mv a1,a2 - 80005342: cc30 sw a2,88(s0) - 80005344: 8522 mv a0,s0 - 80005346: 157000ef jal 80005c9c <_Balloc> - 8000534a: c911 beqz a0,8000535e <__rv_alloc_D2A+0x40> - 8000534c: 60a2 ld ra,8(sp) - 8000534e: e828 sd a0,80(s0) - 80005350: 6402 ld s0,0(sp) - 80005352: 0141 addi sp,sp,16 - 80005354: 8082 ret - 80005356: 04052c23 sw zero,88(a0) - 8000535a: 4581 li a1,0 - 8000535c: b7e5 j 80005344 <__rv_alloc_D2A+0x26> - 8000535e: fa3ff0ef jal 80005300 <__rv_alloc_D2A.part.0> +0000000080005a06 <__rv_alloc_D2A>: + 80005a06: 1141 addi sp,sp,-16 + 80005a08: e022 sd s0,0(sp) + 80005a0a: e406 sd ra,8(sp) + 80005a0c: 46fd li a3,31 + 80005a0e: 842a mv s0,a0 + 80005a10: 4705 li a4,1 + 80005a12: 4791 li a5,4 + 80005a14: 02b6f563 bgeu a3,a1,80005a3e <__rv_alloc_D2A+0x38> + 80005a18: 0017979b slliw a5,a5,0x1 + 80005a1c: 01c78693 addi a3,a5,28 + 80005a20: 863a mv a2,a4 + 80005a22: 2705 addiw a4,a4,1 + 80005a24: fed5fae3 bgeu a1,a3,80005a18 <__rv_alloc_D2A+0x12> + 80005a28: 85b2 mv a1,a2 + 80005a2a: cc30 sw a2,88(s0) + 80005a2c: 8522 mv a0,s0 + 80005a2e: 157000ef jal 80006384 <_Balloc> + 80005a32: c911 beqz a0,80005a46 <__rv_alloc_D2A+0x40> + 80005a34: 60a2 ld ra,8(sp) + 80005a36: e828 sd a0,80(s0) + 80005a38: 6402 ld s0,0(sp) + 80005a3a: 0141 addi sp,sp,16 + 80005a3c: 8082 ret + 80005a3e: 04052c23 sw zero,88(a0) + 80005a42: 4581 li a1,0 + 80005a44: b7e5 j 80005a2c <__rv_alloc_D2A+0x26> + 80005a46: fa3ff0ef jal 800059e8 <__rv_alloc_D2A.part.0> -0000000080005362 <__nrv_alloc_D2A>: - 80005362: 7179 addi sp,sp,-48 - 80005364: f022 sd s0,32(sp) - 80005366: ec26 sd s1,24(sp) - 80005368: f406 sd ra,40(sp) - 8000536a: 487d li a6,31 - 8000536c: 84aa mv s1,a0 - 8000536e: 842e mv s0,a1 - 80005370: 4705 li a4,1 - 80005372: 4791 li a5,4 - 80005374: 04d87863 bgeu a6,a3,800053c4 <__nrv_alloc_D2A+0x62> - 80005378: 0017979b slliw a5,a5,0x1 - 8000537c: 01c78513 addi a0,a5,28 - 80005380: 85ba mv a1,a4 - 80005382: 2705 addiw a4,a4,1 - 80005384: fea6fae3 bgeu a3,a0,80005378 <__nrv_alloc_D2A+0x16> - 80005388: ccac sw a1,88(s1) - 8000538a: 8526 mv a0,s1 - 8000538c: e432 sd a2,8(sp) - 8000538e: 10f000ef jal 80005c9c <_Balloc> - 80005392: 6622 ld a2,8(sp) - 80005394: cd15 beqz a0,800053d0 <__nrv_alloc_D2A+0x6e> - 80005396: e8a8 sd a0,80(s1) - 80005398: 00044783 lbu a5,0(s0) - 8000539c: 00f50023 sb a5,0(a0) - 800053a0: c795 beqz a5,800053cc <__nrv_alloc_D2A+0x6a> - 800053a2: 00140593 addi a1,s0,1 - 800053a6: 87aa mv a5,a0 - 800053a8: 0005c703 lbu a4,0(a1) - 800053ac: 0585 addi a1,a1,1 - 800053ae: 0785 addi a5,a5,1 - 800053b0: 00e78023 sb a4,0(a5) - 800053b4: fb75 bnez a4,800053a8 <__nrv_alloc_D2A+0x46> - 800053b6: c211 beqz a2,800053ba <__nrv_alloc_D2A+0x58> - 800053b8: e21c sd a5,0(a2) - 800053ba: 70a2 ld ra,40(sp) - 800053bc: 7402 ld s0,32(sp) - 800053be: 64e2 ld s1,24(sp) - 800053c0: 6145 addi sp,sp,48 - 800053c2: 8082 ret - 800053c4: 04052c23 sw zero,88(a0) - 800053c8: 4581 li a1,0 - 800053ca: b7c1 j 8000538a <__nrv_alloc_D2A+0x28> - 800053cc: 87aa mv a5,a0 - 800053ce: b7e5 j 800053b6 <__nrv_alloc_D2A+0x54> - 800053d0: f31ff0ef jal 80005300 <__rv_alloc_D2A.part.0> +0000000080005a4a <__nrv_alloc_D2A>: + 80005a4a: 7179 addi sp,sp,-48 + 80005a4c: f022 sd s0,32(sp) + 80005a4e: ec26 sd s1,24(sp) + 80005a50: f406 sd ra,40(sp) + 80005a52: 487d li a6,31 + 80005a54: 84aa mv s1,a0 + 80005a56: 842e mv s0,a1 + 80005a58: 4705 li a4,1 + 80005a5a: 4791 li a5,4 + 80005a5c: 04d87863 bgeu a6,a3,80005aac <__nrv_alloc_D2A+0x62> + 80005a60: 0017979b slliw a5,a5,0x1 + 80005a64: 01c78513 addi a0,a5,28 + 80005a68: 85ba mv a1,a4 + 80005a6a: 2705 addiw a4,a4,1 + 80005a6c: fea6fae3 bgeu a3,a0,80005a60 <__nrv_alloc_D2A+0x16> + 80005a70: ccac sw a1,88(s1) + 80005a72: 8526 mv a0,s1 + 80005a74: e432 sd a2,8(sp) + 80005a76: 10f000ef jal 80006384 <_Balloc> + 80005a7a: 6622 ld a2,8(sp) + 80005a7c: cd15 beqz a0,80005ab8 <__nrv_alloc_D2A+0x6e> + 80005a7e: e8a8 sd a0,80(s1) + 80005a80: 00044783 lbu a5,0(s0) + 80005a84: 00f50023 sb a5,0(a0) + 80005a88: c795 beqz a5,80005ab4 <__nrv_alloc_D2A+0x6a> + 80005a8a: 00140593 addi a1,s0,1 + 80005a8e: 87aa mv a5,a0 + 80005a90: 0005c703 lbu a4,0(a1) + 80005a94: 0585 addi a1,a1,1 + 80005a96: 0785 addi a5,a5,1 + 80005a98: 00e78023 sb a4,0(a5) + 80005a9c: fb75 bnez a4,80005a90 <__nrv_alloc_D2A+0x46> + 80005a9e: c211 beqz a2,80005aa2 <__nrv_alloc_D2A+0x58> + 80005aa0: e21c sd a5,0(a2) + 80005aa2: 70a2 ld ra,40(sp) + 80005aa4: 7402 ld s0,32(sp) + 80005aa6: 64e2 ld s1,24(sp) + 80005aa8: 6145 addi sp,sp,48 + 80005aaa: 8082 ret + 80005aac: 04052c23 sw zero,88(a0) + 80005ab0: 4581 li a1,0 + 80005ab2: b7c1 j 80005a72 <__nrv_alloc_D2A+0x28> + 80005ab4: 87aa mv a5,a0 + 80005ab6: b7e5 j 80005a9e <__nrv_alloc_D2A+0x54> + 80005ab8: f31ff0ef jal 800059e8 <__rv_alloc_D2A.part.0> -00000000800053d4 <__freedtoa>: - 800053d4: 4d38 lw a4,88(a0) - 800053d6: 4785 li a5,1 - 800053d8: 00e797bb sllw a5,a5,a4 - 800053dc: c5dc sw a5,12(a1) - 800053de: c598 sw a4,8(a1) - 800053e0: 12d0006f j 80005d0c <_Bfree> +0000000080005abc <__freedtoa>: + 80005abc: 4d38 lw a4,88(a0) + 80005abe: 4785 li a5,1 + 80005ac0: 00e797bb sllw a5,a5,a4 + 80005ac4: c5dc sw a5,12(a1) + 80005ac6: c598 sw a4,8(a1) + 80005ac8: 12d0006f j 800063f4 <_Bfree> -00000000800053e4 <__quorem_D2A>: - 800053e4: 0145a803 lw a6,20(a1) - 800053e8: 495c lw a5,20(a0) - 800053ea: 1707c763 blt a5,a6,80005558 <__quorem_D2A+0x174> - 800053ee: 387d addiw a6,a6,-1 - 800053f0: 00281393 slli t2,a6,0x2 - 800053f4: 01858613 addi a2,a1,24 - 800053f8: 007608b3 add a7,a2,t2 - 800053fc: 01850313 addi t1,a0,24 - 80005400: 0008a783 lw a5,0(a7) - 80005404: 939a add t2,t2,t1 - 80005406: 0003a703 lw a4,0(t2) - 8000540a: 2785 addiw a5,a5,1 - 8000540c: 715d addi sp,sp,-80 - 8000540e: 02f752bb divuw t0,a4,a5 - 80005412: e486 sd ra,72(sp) - 80005414: e0a2 sd s0,64(sp) - 80005416: 8e16 mv t3,t0 - 80005418: 0af76063 bltu a4,a5,800054b8 <__quorem_D2A+0xd4> - 8000541c: fc26 sd s1,56(sp) - 8000541e: 8fb2 mv t6,a2 - 80005420: 8f1a mv t5,t1 - 80005422: 4481 li s1,0 - 80005424: 4401 li s0,0 - 80005426: 000fa703 lw a4,0(t6) - 8000542a: 000f2683 lw a3,0(t5) - 8000542e: 0f11 addi t5,t5,4 - 80005430: 03071793 slli a5,a4,0x30 - 80005434: 93c1 srli a5,a5,0x30 - 80005436: 025787bb mulw a5,a5,t0 - 8000543a: 0107571b srliw a4,a4,0x10 - 8000543e: 0f91 addi t6,t6,4 - 80005440: 02570ebb mulw t4,a4,t0 - 80005444: 03069713 slli a4,a3,0x30 - 80005448: 9341 srli a4,a4,0x30 - 8000544a: 9fa5 addw a5,a5,s1 - 8000544c: 03079493 slli s1,a5,0x30 - 80005450: 90c1 srli s1,s1,0x30 - 80005452: 9f05 subw a4,a4,s1 - 80005454: 0107d79b srliw a5,a5,0x10 - 80005458: 9f01 subw a4,a4,s0 - 8000545a: 02f71493 slli s1,a4,0x2f - 8000545e: 01d787bb addw a5,a5,t4 - 80005462: 03079413 slli s0,a5,0x30 - 80005466: 9041 srli s0,s0,0x30 - 80005468: 03f4de93 srli t4,s1,0x3f - 8000546c: 9ea2 add t4,t4,s0 - 8000546e: 0106d69b srliw a3,a3,0x10 - 80005472: 41d686bb subw a3,a3,t4 - 80005476: 1742 slli a4,a4,0x30 - 80005478: 01069e9b slliw t4,a3,0x10 - 8000547c: 9341 srli a4,a4,0x30 - 8000547e: 00eee733 or a4,t4,a4 - 80005482: 0106d69b srliw a3,a3,0x10 - 80005486: feef2e23 sw a4,-4(t5) - 8000548a: 0107d49b srliw s1,a5,0x10 - 8000548e: 0016f413 andi s0,a3,1 - 80005492: f9f8fae3 bgeu a7,t6,80005426 <__quorem_D2A+0x42> - 80005496: 0003a783 lw a5,0(t2) - 8000549a: e3e9 bnez a5,8000555c <__quorem_D2A+0x178> - 8000549c: 13f1 addi t2,t2,-4 - 8000549e: 00736663 bltu t1,t2,800054aa <__quorem_D2A+0xc6> - 800054a2: a801 j 800054b2 <__quorem_D2A+0xce> - 800054a4: 387d addiw a6,a6,-1 - 800054a6: 00737663 bgeu t1,t2,800054b2 <__quorem_D2A+0xce> - 800054aa: 0003a783 lw a5,0(t2) - 800054ae: 13f1 addi t2,t2,-4 - 800054b0: dbf5 beqz a5,800054a4 <__quorem_D2A+0xc0> - 800054b2: 74e2 ld s1,56(sp) - 800054b4: 01052a23 sw a6,20(a0) - 800054b8: e072 sd t3,0(sp) - 800054ba: f416 sd t0,40(sp) - 800054bc: f01a sd t1,32(sp) - 800054be: ec46 sd a7,24(sp) - 800054c0: e832 sd a2,16(sp) - 800054c2: e442 sd a6,8(sp) - 800054c4: 842a mv s0,a0 - 800054c6: 6b7000ef jal 8000637c <__mcmp> - 800054ca: 6e02 ld t3,0(sp) - 800054cc: 08054163 bltz a0,8000554e <__quorem_D2A+0x16a> - 800054d0: 72a2 ld t0,40(sp) - 800054d2: 7302 ld t1,32(sp) - 800054d4: 68e2 ld a7,24(sp) - 800054d6: 6642 ld a2,16(sp) - 800054d8: 6822 ld a6,8(sp) - 800054da: 00128e1b addiw t3,t0,1 - 800054de: 859a mv a1,t1 - 800054e0: 4501 li a0,0 - 800054e2: 419c lw a5,0(a1) - 800054e4: 4214 lw a3,0(a2) - 800054e6: 0591 addi a1,a1,4 - 800054e8: 03079713 slli a4,a5,0x30 - 800054ec: 03069e93 slli t4,a3,0x30 - 800054f0: 030ede93 srli t4,t4,0x30 - 800054f4: 9341 srli a4,a4,0x30 - 800054f6: 41d7073b subw a4,a4,t4 - 800054fa: 9f09 subw a4,a4,a0 - 800054fc: 02f71e93 slli t4,a4,0x2f - 80005500: 03fed513 srli a0,t4,0x3f - 80005504: 0106d69b srliw a3,a3,0x10 - 80005508: 96aa add a3,a3,a0 - 8000550a: 0107d79b srliw a5,a5,0x10 - 8000550e: 9f95 subw a5,a5,a3 - 80005510: 1742 slli a4,a4,0x30 - 80005512: 0107969b slliw a3,a5,0x10 - 80005516: 9341 srli a4,a4,0x30 - 80005518: 8f55 or a4,a4,a3 - 8000551a: 0611 addi a2,a2,4 - 8000551c: 0107d79b srliw a5,a5,0x10 - 80005520: fee5ae23 sw a4,-4(a1) - 80005524: 0017f513 andi a0,a5,1 - 80005528: fac8fde3 bgeu a7,a2,800054e2 <__quorem_D2A+0xfe> - 8000552c: 00281793 slli a5,a6,0x2 - 80005530: 979a add a5,a5,t1 - 80005532: 4398 lw a4,0(a5) - 80005534: ef09 bnez a4,8000554e <__quorem_D2A+0x16a> - 80005536: 17f1 addi a5,a5,-4 - 80005538: 00f36663 bltu t1,a5,80005544 <__quorem_D2A+0x160> - 8000553c: a039 j 8000554a <__quorem_D2A+0x166> - 8000553e: 387d addiw a6,a6,-1 - 80005540: 00f37563 bgeu t1,a5,8000554a <__quorem_D2A+0x166> - 80005544: 4398 lw a4,0(a5) - 80005546: 17f1 addi a5,a5,-4 - 80005548: db7d beqz a4,8000553e <__quorem_D2A+0x15a> - 8000554a: 01042a23 sw a6,20(s0) - 8000554e: 60a6 ld ra,72(sp) - 80005550: 6406 ld s0,64(sp) - 80005552: 8572 mv a0,t3 - 80005554: 6161 addi sp,sp,80 - 80005556: 8082 ret - 80005558: 4501 li a0,0 - 8000555a: 8082 ret - 8000555c: 74e2 ld s1,56(sp) - 8000555e: bfa9 j 800054b8 <__quorem_D2A+0xd4> +0000000080005acc <__quorem_D2A>: + 80005acc: 0145a803 lw a6,20(a1) + 80005ad0: 495c lw a5,20(a0) + 80005ad2: 1707c763 blt a5,a6,80005c40 <__quorem_D2A+0x174> + 80005ad6: 387d addiw a6,a6,-1 + 80005ad8: 00281393 slli t2,a6,0x2 + 80005adc: 01858613 addi a2,a1,24 + 80005ae0: 007608b3 add a7,a2,t2 + 80005ae4: 01850313 addi t1,a0,24 + 80005ae8: 0008a783 lw a5,0(a7) + 80005aec: 939a add t2,t2,t1 + 80005aee: 0003a703 lw a4,0(t2) + 80005af2: 2785 addiw a5,a5,1 + 80005af4: 715d addi sp,sp,-80 + 80005af6: 02f752bb divuw t0,a4,a5 + 80005afa: e486 sd ra,72(sp) + 80005afc: e0a2 sd s0,64(sp) + 80005afe: 8e16 mv t3,t0 + 80005b00: 0af76063 bltu a4,a5,80005ba0 <__quorem_D2A+0xd4> + 80005b04: fc26 sd s1,56(sp) + 80005b06: 8fb2 mv t6,a2 + 80005b08: 8f1a mv t5,t1 + 80005b0a: 4481 li s1,0 + 80005b0c: 4401 li s0,0 + 80005b0e: 000fa703 lw a4,0(t6) + 80005b12: 000f2683 lw a3,0(t5) + 80005b16: 0f11 addi t5,t5,4 + 80005b18: 03071793 slli a5,a4,0x30 + 80005b1c: 93c1 srli a5,a5,0x30 + 80005b1e: 025787bb mulw a5,a5,t0 + 80005b22: 0107571b srliw a4,a4,0x10 + 80005b26: 0f91 addi t6,t6,4 + 80005b28: 02570ebb mulw t4,a4,t0 + 80005b2c: 03069713 slli a4,a3,0x30 + 80005b30: 9341 srli a4,a4,0x30 + 80005b32: 9fa5 addw a5,a5,s1 + 80005b34: 03079493 slli s1,a5,0x30 + 80005b38: 90c1 srli s1,s1,0x30 + 80005b3a: 9f05 subw a4,a4,s1 + 80005b3c: 0107d79b srliw a5,a5,0x10 + 80005b40: 9f01 subw a4,a4,s0 + 80005b42: 02f71493 slli s1,a4,0x2f + 80005b46: 01d787bb addw a5,a5,t4 + 80005b4a: 03079413 slli s0,a5,0x30 + 80005b4e: 9041 srli s0,s0,0x30 + 80005b50: 03f4de93 srli t4,s1,0x3f + 80005b54: 9ea2 add t4,t4,s0 + 80005b56: 0106d69b srliw a3,a3,0x10 + 80005b5a: 41d686bb subw a3,a3,t4 + 80005b5e: 1742 slli a4,a4,0x30 + 80005b60: 01069e9b slliw t4,a3,0x10 + 80005b64: 9341 srli a4,a4,0x30 + 80005b66: 00eee733 or a4,t4,a4 + 80005b6a: 0106d69b srliw a3,a3,0x10 + 80005b6e: feef2e23 sw a4,-4(t5) + 80005b72: 0107d49b srliw s1,a5,0x10 + 80005b76: 0016f413 andi s0,a3,1 + 80005b7a: f9f8fae3 bgeu a7,t6,80005b0e <__quorem_D2A+0x42> + 80005b7e: 0003a783 lw a5,0(t2) + 80005b82: e3e9 bnez a5,80005c44 <__quorem_D2A+0x178> + 80005b84: 13f1 addi t2,t2,-4 + 80005b86: 00736663 bltu t1,t2,80005b92 <__quorem_D2A+0xc6> + 80005b8a: a801 j 80005b9a <__quorem_D2A+0xce> + 80005b8c: 387d addiw a6,a6,-1 + 80005b8e: 00737663 bgeu t1,t2,80005b9a <__quorem_D2A+0xce> + 80005b92: 0003a783 lw a5,0(t2) + 80005b96: 13f1 addi t2,t2,-4 + 80005b98: dbf5 beqz a5,80005b8c <__quorem_D2A+0xc0> + 80005b9a: 74e2 ld s1,56(sp) + 80005b9c: 01052a23 sw a6,20(a0) + 80005ba0: e072 sd t3,0(sp) + 80005ba2: f416 sd t0,40(sp) + 80005ba4: f01a sd t1,32(sp) + 80005ba6: ec46 sd a7,24(sp) + 80005ba8: e832 sd a2,16(sp) + 80005baa: e442 sd a6,8(sp) + 80005bac: 842a mv s0,a0 + 80005bae: 6b7000ef jal 80006a64 <__mcmp> + 80005bb2: 6e02 ld t3,0(sp) + 80005bb4: 08054163 bltz a0,80005c36 <__quorem_D2A+0x16a> + 80005bb8: 72a2 ld t0,40(sp) + 80005bba: 7302 ld t1,32(sp) + 80005bbc: 68e2 ld a7,24(sp) + 80005bbe: 6642 ld a2,16(sp) + 80005bc0: 6822 ld a6,8(sp) + 80005bc2: 00128e1b addiw t3,t0,1 + 80005bc6: 859a mv a1,t1 + 80005bc8: 4501 li a0,0 + 80005bca: 419c lw a5,0(a1) + 80005bcc: 4214 lw a3,0(a2) + 80005bce: 0591 addi a1,a1,4 + 80005bd0: 03079713 slli a4,a5,0x30 + 80005bd4: 03069e93 slli t4,a3,0x30 + 80005bd8: 030ede93 srli t4,t4,0x30 + 80005bdc: 9341 srli a4,a4,0x30 + 80005bde: 41d7073b subw a4,a4,t4 + 80005be2: 9f09 subw a4,a4,a0 + 80005be4: 02f71e93 slli t4,a4,0x2f + 80005be8: 03fed513 srli a0,t4,0x3f + 80005bec: 0106d69b srliw a3,a3,0x10 + 80005bf0: 96aa add a3,a3,a0 + 80005bf2: 0107d79b srliw a5,a5,0x10 + 80005bf6: 9f95 subw a5,a5,a3 + 80005bf8: 1742 slli a4,a4,0x30 + 80005bfa: 0107969b slliw a3,a5,0x10 + 80005bfe: 9341 srli a4,a4,0x30 + 80005c00: 8f55 or a4,a4,a3 + 80005c02: 0611 addi a2,a2,4 + 80005c04: 0107d79b srliw a5,a5,0x10 + 80005c08: fee5ae23 sw a4,-4(a1) + 80005c0c: 0017f513 andi a0,a5,1 + 80005c10: fac8fde3 bgeu a7,a2,80005bca <__quorem_D2A+0xfe> + 80005c14: 00281793 slli a5,a6,0x2 + 80005c18: 979a add a5,a5,t1 + 80005c1a: 4398 lw a4,0(a5) + 80005c1c: ef09 bnez a4,80005c36 <__quorem_D2A+0x16a> + 80005c1e: 17f1 addi a5,a5,-4 + 80005c20: 00f36663 bltu t1,a5,80005c2c <__quorem_D2A+0x160> + 80005c24: a039 j 80005c32 <__quorem_D2A+0x166> + 80005c26: 387d addiw a6,a6,-1 + 80005c28: 00f37563 bgeu t1,a5,80005c32 <__quorem_D2A+0x166> + 80005c2c: 4398 lw a4,0(a5) + 80005c2e: 17f1 addi a5,a5,-4 + 80005c30: db7d beqz a4,80005c26 <__quorem_D2A+0x15a> + 80005c32: 01042a23 sw a6,20(s0) + 80005c36: 60a6 ld ra,72(sp) + 80005c38: 6406 ld s0,64(sp) + 80005c3a: 8572 mv a0,t3 + 80005c3c: 6161 addi sp,sp,80 + 80005c3e: 8082 ret + 80005c40: 4501 li a0,0 + 80005c42: 8082 ret + 80005c44: 74e2 ld s1,56(sp) + 80005c46: bfa9 j 80005ba0 <__quorem_D2A+0xd4> -0000000080005560 <__rshift_D2A>: - 80005560: 4954 lw a3,20(a0) - 80005562: 4055d31b sraiw t1,a1,0x5 - 80005566: 00d34763 blt t1,a3,80005574 <__rshift_D2A+0x14> - 8000556a: 00052a23 sw zero,20(a0) - 8000556e: 00052c23 sw zero,24(a0) - 80005572: 8082 ret - 80005574: 01850e13 addi t3,a0,24 - 80005578: 00269813 slli a6,a3,0x2 - 8000557c: 00231793 slli a5,t1,0x2 - 80005580: 89fd andi a1,a1,31 - 80005582: 9872 add a6,a6,t3 - 80005584: 97f2 add a5,a5,t3 - 80005586: c5a1 beqz a1,800055ce <__rshift_D2A+0x6e> - 80005588: 4390 lw a2,0(a5) - 8000558a: 0791 addi a5,a5,4 - 8000558c: 00b6563b srlw a2,a2,a1 - 80005590: 0707f463 bgeu a5,a6,800055f8 <__rshift_D2A+0x98> - 80005594: 02000e93 li t4,32 - 80005598: 40be8ebb subw t4,t4,a1 - 8000559c: 88f2 mv a7,t3 - 8000559e: 4398 lw a4,0(a5) - 800055a0: 0891 addi a7,a7,4 - 800055a2: 0791 addi a5,a5,4 - 800055a4: 01d7173b sllw a4,a4,t4 - 800055a8: 8f51 or a4,a4,a2 - 800055aa: fee8ae23 sw a4,-4(a7) - 800055ae: ffc7a603 lw a2,-4(a5) - 800055b2: 00b6563b srlw a2,a2,a1 - 800055b6: ff07e4e3 bltu a5,a6,8000559e <__rshift_D2A+0x3e> - 800055ba: 406687b3 sub a5,a3,t1 - 800055be: 078a slli a5,a5,0x2 - 800055c0: 97f2 add a5,a5,t3 - 800055c2: fec7ae23 sw a2,-4(a5) - 800055c6: 17f1 addi a5,a5,-4 - 800055c8: c20d beqz a2,800055ea <__rshift_D2A+0x8a> - 800055ca: 0791 addi a5,a5,4 - 800055cc: a839 j 800055ea <__rshift_D2A+0x8a> - 800055ce: 8772 mv a4,t3 - 800055d0: f907fde3 bgeu a5,a6,8000556a <__rshift_D2A+0xa> - 800055d4: 4390 lw a2,0(a5) - 800055d6: 0791 addi a5,a5,4 - 800055d8: 0711 addi a4,a4,4 - 800055da: fec72e23 sw a2,-4(a4) - 800055de: ff07ebe3 bltu a5,a6,800055d4 <__rshift_D2A+0x74> - 800055e2: 406687b3 sub a5,a3,t1 - 800055e6: 078a slli a5,a5,0x2 - 800055e8: 97f2 add a5,a5,t3 - 800055ea: 41c787b3 sub a5,a5,t3 - 800055ee: 8789 srai a5,a5,0x2 - 800055f0: 2781 sext.w a5,a5 - 800055f2: c95c sw a5,20(a0) - 800055f4: dfad beqz a5,8000556e <__rshift_D2A+0xe> - 800055f6: 8082 ret - 800055f8: cd10 sw a2,24(a0) - 800055fa: 87f2 mv a5,t3 - 800055fc: d63d beqz a2,8000556a <__rshift_D2A+0xa> - 800055fe: 0791 addi a5,a5,4 - 80005600: b7ed j 800055ea <__rshift_D2A+0x8a> +0000000080005c48 <__rshift_D2A>: + 80005c48: 4954 lw a3,20(a0) + 80005c4a: 4055d31b sraiw t1,a1,0x5 + 80005c4e: 00d34763 blt t1,a3,80005c5c <__rshift_D2A+0x14> + 80005c52: 00052a23 sw zero,20(a0) + 80005c56: 00052c23 sw zero,24(a0) + 80005c5a: 8082 ret + 80005c5c: 01850e13 addi t3,a0,24 + 80005c60: 00269813 slli a6,a3,0x2 + 80005c64: 00231793 slli a5,t1,0x2 + 80005c68: 89fd andi a1,a1,31 + 80005c6a: 9872 add a6,a6,t3 + 80005c6c: 97f2 add a5,a5,t3 + 80005c6e: c5a1 beqz a1,80005cb6 <__rshift_D2A+0x6e> + 80005c70: 4390 lw a2,0(a5) + 80005c72: 0791 addi a5,a5,4 + 80005c74: 00b6563b srlw a2,a2,a1 + 80005c78: 0707f463 bgeu a5,a6,80005ce0 <__rshift_D2A+0x98> + 80005c7c: 02000e93 li t4,32 + 80005c80: 40be8ebb subw t4,t4,a1 + 80005c84: 88f2 mv a7,t3 + 80005c86: 4398 lw a4,0(a5) + 80005c88: 0891 addi a7,a7,4 + 80005c8a: 0791 addi a5,a5,4 + 80005c8c: 01d7173b sllw a4,a4,t4 + 80005c90: 8f51 or a4,a4,a2 + 80005c92: fee8ae23 sw a4,-4(a7) + 80005c96: ffc7a603 lw a2,-4(a5) + 80005c9a: 00b6563b srlw a2,a2,a1 + 80005c9e: ff07e4e3 bltu a5,a6,80005c86 <__rshift_D2A+0x3e> + 80005ca2: 406687b3 sub a5,a3,t1 + 80005ca6: 078a slli a5,a5,0x2 + 80005ca8: 97f2 add a5,a5,t3 + 80005caa: fec7ae23 sw a2,-4(a5) + 80005cae: 17f1 addi a5,a5,-4 + 80005cb0: c20d beqz a2,80005cd2 <__rshift_D2A+0x8a> + 80005cb2: 0791 addi a5,a5,4 + 80005cb4: a839 j 80005cd2 <__rshift_D2A+0x8a> + 80005cb6: 8772 mv a4,t3 + 80005cb8: f907fde3 bgeu a5,a6,80005c52 <__rshift_D2A+0xa> + 80005cbc: 4390 lw a2,0(a5) + 80005cbe: 0791 addi a5,a5,4 + 80005cc0: 0711 addi a4,a4,4 + 80005cc2: fec72e23 sw a2,-4(a4) + 80005cc6: ff07ebe3 bltu a5,a6,80005cbc <__rshift_D2A+0x74> + 80005cca: 406687b3 sub a5,a3,t1 + 80005cce: 078a slli a5,a5,0x2 + 80005cd0: 97f2 add a5,a5,t3 + 80005cd2: 41c787b3 sub a5,a5,t3 + 80005cd6: 8789 srai a5,a5,0x2 + 80005cd8: 2781 sext.w a5,a5 + 80005cda: c95c sw a5,20(a0) + 80005cdc: dfad beqz a5,80005c56 <__rshift_D2A+0xe> + 80005cde: 8082 ret + 80005ce0: cd10 sw a2,24(a0) + 80005ce2: 87f2 mv a5,t3 + 80005ce4: d63d beqz a2,80005c52 <__rshift_D2A+0xa> + 80005ce6: 0791 addi a5,a5,4 + 80005ce8: b7ed j 80005cd2 <__rshift_D2A+0x8a> -0000000080005602 <__trailz_D2A>: - 80005602: 4954 lw a3,20(a0) - 80005604: 0561 addi a0,a0,24 - 80005606: 4781 li a5,0 - 80005608: 068a slli a3,a3,0x2 - 8000560a: 96aa add a3,a3,a0 - 8000560c: 00d56863 bltu a0,a3,8000561c <__trailz_D2A+0x1a> - 80005610: a03d j 8000563e <__trailz_D2A+0x3c> - 80005612: 0511 addi a0,a0,4 - 80005614: 0207879b addiw a5,a5,32 - 80005618: 02d57363 bgeu a0,a3,8000563e <__trailz_D2A+0x3c> - 8000561c: 4118 lw a4,0(a0) - 8000561e: db75 beqz a4,80005612 <__trailz_D2A+0x10> - 80005620: 00d57f63 bgeu a0,a3,8000563e <__trailz_D2A+0x3c> - 80005624: 7179 addi sp,sp,-48 - 80005626: 0868 addi a0,sp,28 - 80005628: f406 sd ra,40(sp) - 8000562a: e43e sd a5,8(sp) - 8000562c: ce3a sw a4,28(sp) - 8000562e: 049000ef jal 80005e76 <__lo0bits> - 80005632: 67a2 ld a5,8(sp) - 80005634: 70a2 ld ra,40(sp) - 80005636: 9fa9 addw a5,a5,a0 - 80005638: 853e mv a0,a5 - 8000563a: 6145 addi sp,sp,48 - 8000563c: 8082 ret - 8000563e: 853e mv a0,a5 - 80005640: 8082 ret +0000000080005cea <__trailz_D2A>: + 80005cea: 4954 lw a3,20(a0) + 80005cec: 0561 addi a0,a0,24 + 80005cee: 4781 li a5,0 + 80005cf0: 068a slli a3,a3,0x2 + 80005cf2: 96aa add a3,a3,a0 + 80005cf4: 00d56863 bltu a0,a3,80005d04 <__trailz_D2A+0x1a> + 80005cf8: a03d j 80005d26 <__trailz_D2A+0x3c> + 80005cfa: 0511 addi a0,a0,4 + 80005cfc: 0207879b addiw a5,a5,32 + 80005d00: 02d57363 bgeu a0,a3,80005d26 <__trailz_D2A+0x3c> + 80005d04: 4118 lw a4,0(a0) + 80005d06: db75 beqz a4,80005cfa <__trailz_D2A+0x10> + 80005d08: 00d57f63 bgeu a0,a3,80005d26 <__trailz_D2A+0x3c> + 80005d0c: 7179 addi sp,sp,-48 + 80005d0e: 0868 addi a0,sp,28 + 80005d10: f406 sd ra,40(sp) + 80005d12: e43e sd a5,8(sp) + 80005d14: ce3a sw a4,28(sp) + 80005d16: 049000ef jal 8000655e <__lo0bits> + 80005d1a: 67a2 ld a5,8(sp) + 80005d1c: 70a2 ld ra,40(sp) + 80005d1e: 9fa9 addw a5,a5,a0 + 80005d20: 853e mv a0,a5 + 80005d22: 6145 addi sp,sp,48 + 80005d24: 8082 ret + 80005d26: 853e mv a0,a5 + 80005d28: 8082 ret -0000000080005642 <_malloc_r>: - 80005642: 711d addi sp,sp,-96 - 80005644: e8a2 sd s0,80(sp) - 80005646: ec86 sd ra,88(sp) - 80005648: 01758793 addi a5,a1,23 - 8000564c: 02e00713 li a4,46 - 80005650: 842a mv s0,a0 - 80005652: 04f76d63 bltu a4,a5,800056ac <_malloc_r+0x6a> - 80005656: 02000693 li a3,32 - 8000565a: 18b6ed63 bltu a3,a1,800057f4 <_malloc_r+0x1b2> - 8000565e: 63a000ef jal 80005c98 <__malloc_lock> - 80005662: 02000693 li a3,32 - 80005666: 05000713 li a4,80 - 8000566a: 4811 li a6,4 - 8000566c: 00004897 auipc a7,0x4 - 80005670: 67488893 addi a7,a7,1652 # 80009ce0 <__malloc_av_> - 80005674: 9746 add a4,a4,a7 - 80005676: 671c ld a5,8(a4) - 80005678: ff070613 addi a2,a4,-16 - 8000567c: 34c78463 beq a5,a2,800059c4 <_malloc_r+0x382> - 80005680: 6798 ld a4,8(a5) - 80005682: 6f90 ld a2,24(a5) - 80005684: 6b8c ld a1,16(a5) - 80005686: 9b71 andi a4,a4,-4 - 80005688: 973e add a4,a4,a5 - 8000568a: 6714 ld a3,8(a4) - 8000568c: ed90 sd a2,24(a1) - 8000568e: e43e sd a5,8(sp) - 80005690: ea0c sd a1,16(a2) - 80005692: 0016e693 ori a3,a3,1 - 80005696: 8522 mv a0,s0 - 80005698: e714 sd a3,8(a4) - 8000569a: 600000ef jal 80005c9a <__malloc_unlock> - 8000569e: 67a2 ld a5,8(sp) - 800056a0: 60e6 ld ra,88(sp) - 800056a2: 6446 ld s0,80(sp) - 800056a4: 01078513 addi a0,a5,16 - 800056a8: 6125 addi sp,sp,96 - 800056aa: 8082 ret - 800056ac: ff07f693 andi a3,a5,-16 - 800056b0: 00b6b5b3 sltu a1,a3,a1 - 800056b4: 83fd srli a5,a5,0x1f - 800056b6: 8fcd or a5,a5,a1 - 800056b8: 12079e63 bnez a5,800057f4 <_malloc_r+0x1b2> - 800056bc: e436 sd a3,8(sp) - 800056be: 5da000ef jal 80005c98 <__malloc_lock> - 800056c2: 66a2 ld a3,8(sp) - 800056c4: 1f700793 li a5,503 - 800056c8: 5cd7f163 bgeu a5,a3,80005c8a <_malloc_r+0x648> - 800056cc: 0096d813 srli a6,a3,0x9 - 800056d0: 4791 li a5,4 - 800056d2: 1307f863 bgeu a5,a6,80005802 <_malloc_r+0x1c0> - 800056d6: 47d1 li a5,20 - 800056d8: 3307ed63 bltu a5,a6,80005a12 <_malloc_r+0x3d0> - 800056dc: 05c80e1b addiw t3,a6,92 - 800056e0: 001e151b slliw a0,t3,0x1 - 800056e4: 05b8081b addiw a6,a6,91 - 800056e8: 050e slli a0,a0,0x3 - 800056ea: 00004897 auipc a7,0x4 - 800056ee: 5f688893 addi a7,a7,1526 # 80009ce0 <__malloc_av_> - 800056f2: 9546 add a0,a0,a7 - 800056f4: 651c ld a5,8(a0) - 800056f6: 1541 addi a0,a0,-16 - 800056f8: 2af50163 beq a0,a5,8000599a <_malloc_r+0x358> - 800056fc: 437d li t1,31 - 800056fe: a039 j 8000570c <_malloc_r+0xca> - 80005700: 6f8c ld a1,24(a5) - 80005702: 28065e63 bgez a2,8000599e <_malloc_r+0x35c> - 80005706: 28b50a63 beq a0,a1,8000599a <_malloc_r+0x358> - 8000570a: 87ae mv a5,a1 - 8000570c: 6798 ld a4,8(a5) - 8000570e: 9b71 andi a4,a4,-4 - 80005710: 40d70633 sub a2,a4,a3 - 80005714: fec356e3 bge t1,a2,80005700 <_malloc_r+0xbe> - 80005718: 0208b783 ld a5,32(a7) - 8000571c: 00004e97 auipc t4,0x4 - 80005720: 5d4e8e93 addi t4,t4,1492 # 80009cf0 <__malloc_av_+0x10> - 80005724: 27d78863 beq a5,t4,80005994 <_malloc_r+0x352> - 80005728: 6788 ld a0,8(a5) - 8000572a: 467d li a2,31 - 8000572c: 9971 andi a0,a0,-4 - 8000572e: 40d50733 sub a4,a0,a3 - 80005732: 36e64563 blt a2,a4,80005a9c <_malloc_r+0x45a> - 80005736: 03d8b423 sd t4,40(a7) - 8000573a: 03d8b023 sd t4,32(a7) - 8000573e: 34075163 bgez a4,80005a80 <_malloc_r+0x43e> - 80005742: 1ff00713 li a4,511 - 80005746: 0088b303 ld t1,8(a7) - 8000574a: 28a76263 bltu a4,a0,800059ce <_malloc_r+0x38c> - 8000574e: 810d srli a0,a0,0x3 - 80005750: 00151713 slli a4,a0,0x1 - 80005754: 2709 addiw a4,a4,2 - 80005756: 070e slli a4,a4,0x3 - 80005758: 9746 add a4,a4,a7 - 8000575a: 630c ld a1,0(a4) - 8000575c: 4025551b sraiw a0,a0,0x2 - 80005760: 4605 li a2,1 - 80005762: 00a61633 sll a2,a2,a0 - 80005766: 00c36333 or t1,t1,a2 - 8000576a: ff070613 addi a2,a4,-16 - 8000576e: eb8c sd a1,16(a5) - 80005770: ef90 sd a2,24(a5) - 80005772: 0068b423 sd t1,8(a7) - 80005776: e31c sd a5,0(a4) - 80005778: ed9c sd a5,24(a1) - 8000577a: 4028579b sraiw a5,a6,0x2 - 8000577e: 4505 li a0,1 - 80005780: 00f51533 sll a0,a0,a5 - 80005784: 08a36963 bltu t1,a0,80005816 <_malloc_r+0x1d4> - 80005788: 006577b3 and a5,a0,t1 - 8000578c: ef89 bnez a5,800057a6 <_malloc_r+0x164> - 8000578e: 0506 slli a0,a0,0x1 - 80005790: ffc87813 andi a6,a6,-4 - 80005794: 006577b3 and a5,a0,t1 - 80005798: 2811 addiw a6,a6,4 - 8000579a: e791 bnez a5,800057a6 <_malloc_r+0x164> - 8000579c: 0506 slli a0,a0,0x1 - 8000579e: 006577b3 and a5,a0,t1 - 800057a2: 2811 addiw a6,a6,4 - 800057a4: dfe5 beqz a5,8000579c <_malloc_r+0x15a> - 800057a6: 4e7d li t3,31 - 800057a8: 00181f13 slli t5,a6,0x1 - 800057ac: 2f09 addiw t5,t5,2 - 800057ae: 1f79 addi t5,t5,-2 - 800057b0: 0f0e slli t5,t5,0x3 - 800057b2: 9f46 add t5,t5,a7 - 800057b4: 837a mv t1,t5 - 800057b6: 01833703 ld a4,24(t1) - 800057ba: 8fc2 mv t6,a6 - 800057bc: 26e30d63 beq t1,a4,80005a36 <_malloc_r+0x3f4> - 800057c0: 6710 ld a2,8(a4) - 800057c2: 87ba mv a5,a4 - 800057c4: 6f18 ld a4,24(a4) - 800057c6: 9a71 andi a2,a2,-4 - 800057c8: 40d605b3 sub a1,a2,a3 - 800057cc: 26be4d63 blt t3,a1,80005a46 <_malloc_r+0x404> - 800057d0: fe05c6e3 bltz a1,800057bc <_malloc_r+0x17a> - 800057d4: 963e add a2,a2,a5 - 800057d6: 6614 ld a3,8(a2) - 800057d8: 6b8c ld a1,16(a5) - 800057da: 8522 mv a0,s0 - 800057dc: 0016e693 ori a3,a3,1 - 800057e0: e614 sd a3,8(a2) - 800057e2: ed98 sd a4,24(a1) - 800057e4: eb0c sd a1,16(a4) - 800057e6: e43e sd a5,8(sp) - 800057e8: 4b2000ef jal 80005c9a <__malloc_unlock> - 800057ec: 67a2 ld a5,8(sp) - 800057ee: 01078513 addi a0,a5,16 - 800057f2: a021 j 800057fa <_malloc_r+0x1b8> - 800057f4: 47b1 li a5,12 - 800057f6: c01c sw a5,0(s0) - 800057f8: 4501 li a0,0 - 800057fa: 60e6 ld ra,88(sp) - 800057fc: 6446 ld s0,80(sp) - 800057fe: 6125 addi sp,sp,96 - 80005800: 8082 ret - 80005802: 0066d813 srli a6,a3,0x6 - 80005806: 03980e1b addiw t3,a6,57 - 8000580a: 001e151b slliw a0,t3,0x1 - 8000580e: 0388081b addiw a6,a6,56 - 80005812: 050e slli a0,a0,0x3 - 80005814: bdd9 j 800056ea <_malloc_r+0xa8> - 80005816: 0108b783 ld a5,16(a7) - 8000581a: 6790 ld a2,8(a5) - 8000581c: 9a71 andi a2,a2,-4 - 8000581e: 40d60733 sub a4,a2,a3 - 80005822: 02072513 slti a0,a4,32 - 80005826: 00d635b3 sltu a1,a2,a3 - 8000582a: 8dc9 or a1,a1,a0 - 8000582c: 14058063 beqz a1,8000596c <_malloc_r+0x32a> - 80005830: 3801b803 ld a6,896(gp) # 8000a6d0 <__malloc_top_pad> - 80005834: 8101b583 ld a1,-2032(gp) # 80009b60 <__malloc_sbrk_base> - 80005838: 577d li a4,-1 - 8000583a: 9836 add a6,a6,a3 - 8000583c: 30e58e63 beq a1,a4,80005b58 <_malloc_r+0x516> - 80005840: 6705 lui a4,0x1 - 80005842: 077d addi a4,a4,31 # 101f - 80005844: 983a add a6,a6,a4 - 80005846: 777d lui a4,0xfffff - 80005848: 00e87833 and a6,a6,a4 - 8000584c: 85c2 mv a1,a6 - 8000584e: 8522 mv a0,s0 - 80005850: e846 sd a7,16(sp) - 80005852: e436 sd a3,8(sp) - 80005854: f43e sd a5,40(sp) - 80005856: f032 sd a2,32(sp) - 80005858: ec42 sd a6,24(sp) - 8000585a: 468010ef jal 80006cc2 <_sbrk_r> - 8000585e: 577d li a4,-1 - 80005860: 66a2 ld a3,8(sp) - 80005862: 68c2 ld a7,16(sp) - 80005864: 832a mv t1,a0 - 80005866: 0ee50663 beq a0,a4,80005952 <_malloc_r+0x310> - 8000586a: 7602 ld a2,32(sp) - 8000586c: 77a2 ld a5,40(sp) - 8000586e: 6862 ld a6,24(sp) - 80005870: 81018f13 addi t5,gp,-2032 # 80009b60 <__malloc_sbrk_base> - 80005874: 00c785b3 add a1,a5,a2 - 80005878: 26b56663 bltu a0,a1,80005ae4 <_malloc_r+0x4a2> - 8000587c: 59818e13 addi t3,gp,1432 # 8000a8e8 <__malloc_current_mallinfo> - 80005880: 000e3703 ld a4,0(t3) - 80005884: 9742 add a4,a4,a6 - 80005886: 00ee3023 sd a4,0(t3) - 8000588a: 36a58363 beq a1,a0,80005bf0 <_malloc_r+0x5ae> - 8000588e: 000f3e83 ld t4,0(t5) - 80005892: 557d li a0,-1 - 80005894: 36ae8a63 beq t4,a0,80005c08 <_malloc_r+0x5c6> - 80005898: 40b305b3 sub a1,t1,a1 - 8000589c: 972e add a4,a4,a1 - 8000589e: 00ee3023 sd a4,0(t3) - 800058a2: 00f37e93 andi t4,t1,15 - 800058a6: 2c0e8663 beqz t4,80005b72 <_malloc_r+0x530> - 800058aa: ff037313 andi t1,t1,-16 - 800058ae: 6705 lui a4,0x1 - 800058b0: 0341 addi t1,t1,16 - 800058b2: 0741 addi a4,a4,16 # 1010 - 800058b4: 981a add a6,a6,t1 - 800058b6: 41d70733 sub a4,a4,t4 - 800058ba: 41070733 sub a4,a4,a6 - 800058be: 1752 slli a4,a4,0x34 - 800058c0: 03475593 srli a1,a4,0x34 - 800058c4: 8522 mv a0,s0 - 800058c6: e0f2 sd t3,64(sp) - 800058c8: fc46 sd a7,56(sp) - 800058ca: f836 sd a3,48(sp) - 800058cc: f43e sd a5,40(sp) - 800058ce: f032 sd a2,32(sp) - 800058d0: ec1a sd t1,24(sp) - 800058d2: e876 sd t4,16(sp) - 800058d4: e442 sd a6,8(sp) - 800058d6: e4ae sd a1,72(sp) - 800058d8: 3ea010ef jal 80006cc2 <_sbrk_r> - 800058dc: 577d li a4,-1 - 800058de: 6822 ld a6,8(sp) - 800058e0: 6ec2 ld t4,16(sp) - 800058e2: 6362 ld t1,24(sp) - 800058e4: 7602 ld a2,32(sp) - 800058e6: 77a2 ld a5,40(sp) - 800058e8: 76c2 ld a3,48(sp) - 800058ea: 78e2 ld a7,56(sp) - 800058ec: 6e06 ld t3,64(sp) - 800058ee: 34e50563 beq a0,a4,80005c38 <_malloc_r+0x5f6> - 800058f2: 65a6 ld a1,72(sp) - 800058f4: 40650533 sub a0,a0,t1 - 800058f8: 00b50833 add a6,a0,a1 - 800058fc: 000e3703 ld a4,0(t3) - 80005900: 0068b823 sd t1,16(a7) - 80005904: 00186813 ori a6,a6,1 - 80005908: 972e add a4,a4,a1 - 8000590a: 01033423 sd a6,8(t1) - 8000590e: 00ee3023 sd a4,0(t3) - 80005912: 03178463 beq a5,a7,8000593a <_malloc_r+0x2f8> - 80005916: 457d li a0,31 - 80005918: 22c57963 bgeu a0,a2,80005b4a <_malloc_r+0x508> - 8000591c: 678c ld a1,8(a5) - 8000591e: 1621 addi a2,a2,-24 - 80005920: 9a41 andi a2,a2,-16 - 80005922: 8985 andi a1,a1,1 - 80005924: 8dd1 or a1,a1,a2 - 80005926: e78c sd a1,8(a5) - 80005928: 4825 li a6,9 - 8000592a: 00c785b3 add a1,a5,a2 - 8000592e: 0105b423 sd a6,8(a1) - 80005932: 0105b823 sd a6,16(a1) - 80005936: 30c56763 bltu a0,a2,80005c44 <_malloc_r+0x602> - 8000593a: 3781b783 ld a5,888(gp) # 8000a6c8 <__malloc_max_sbrked_mem> - 8000593e: 00e7f463 bgeu a5,a4,80005946 <_malloc_r+0x304> - 80005942: 36e1bc23 sd a4,888(gp) # 8000a6c8 <__malloc_max_sbrked_mem> - 80005946: 3701b783 ld a5,880(gp) # 8000a6c0 <__malloc_max_total_mem> - 8000594a: 00e7f463 bgeu a5,a4,80005952 <_malloc_r+0x310> - 8000594e: 36e1b823 sd a4,880(gp) # 8000a6c0 <__malloc_max_total_mem> - 80005952: 0108b783 ld a5,16(a7) - 80005956: 6790 ld a2,8(a5) - 80005958: 9a71 andi a2,a2,-4 - 8000595a: 40d60733 sub a4,a2,a3 - 8000595e: 02072593 slti a1,a4,32 - 80005962: 00d63633 sltu a2,a2,a3 - 80005966: 8e4d or a2,a2,a1 - 80005968: 1e061463 bnez a2,80005b50 <_malloc_r+0x50e> - 8000596c: 0016e613 ori a2,a3,1 - 80005970: e790 sd a2,8(a5) - 80005972: 96be add a3,a3,a5 - 80005974: e43e sd a5,8(sp) - 80005976: 00176713 ori a4,a4,1 - 8000597a: 00d8b823 sd a3,16(a7) - 8000597e: 8522 mv a0,s0 - 80005980: e698 sd a4,8(a3) - 80005982: 318000ef jal 80005c9a <__malloc_unlock> - 80005986: 67a2 ld a5,8(sp) - 80005988: 60e6 ld ra,88(sp) - 8000598a: 6446 ld s0,80(sp) - 8000598c: 01078513 addi a0,a5,16 - 80005990: 6125 addi sp,sp,96 - 80005992: 8082 ret - 80005994: 0088b303 ld t1,8(a7) - 80005998: b3cd j 8000577a <_malloc_r+0x138> - 8000599a: 8872 mv a6,t3 - 8000599c: bbb5 j 80005718 <_malloc_r+0xd6> - 8000599e: 6b90 ld a2,16(a5) - 800059a0: 973e add a4,a4,a5 - 800059a2: 6714 ld a3,8(a4) - 800059a4: ee0c sd a1,24(a2) - 800059a6: e43e sd a5,8(sp) - 800059a8: 0016e693 ori a3,a3,1 - 800059ac: e990 sd a2,16(a1) - 800059ae: 8522 mv a0,s0 - 800059b0: e714 sd a3,8(a4) - 800059b2: 2e8000ef jal 80005c9a <__malloc_unlock> - 800059b6: 67a2 ld a5,8(sp) - 800059b8: 60e6 ld ra,88(sp) - 800059ba: 6446 ld s0,80(sp) - 800059bc: 01078513 addi a0,a5,16 - 800059c0: 6125 addi sp,sp,96 - 800059c2: 8082 ret - 800059c4: 6f1c ld a5,24(a4) - 800059c6: 2809 addiw a6,a6,2 - 800059c8: d4f708e3 beq a4,a5,80005718 <_malloc_r+0xd6> - 800059cc: b955 j 80005680 <_malloc_r+0x3e> - 800059ce: 00955713 srli a4,a0,0x9 - 800059d2: 4611 li a2,4 - 800059d4: 0ee67e63 bgeu a2,a4,80005ad0 <_malloc_r+0x48e> - 800059d8: 4651 li a2,20 - 800059da: 1ce66f63 bltu a2,a4,80005bb8 <_malloc_r+0x576> - 800059de: 00171593 slli a1,a4,0x1 - 800059e2: 0b85859b addiw a1,a1,184 - 800059e6: 058e slli a1,a1,0x3 - 800059e8: 05b7061b addiw a2,a4,91 - 800059ec: 95c6 add a1,a1,a7 - 800059ee: 6198 ld a4,0(a1) - 800059f0: 15c1 addi a1,a1,-16 - 800059f2: 00e59663 bne a1,a4,800059fe <_malloc_r+0x3bc> - 800059f6: a2a5 j 80005b5e <_malloc_r+0x51c> - 800059f8: 6b18 ld a4,16(a4) - 800059fa: 00e58663 beq a1,a4,80005a06 <_malloc_r+0x3c4> - 800059fe: 6710 ld a2,8(a4) - 80005a00: 9a71 andi a2,a2,-4 - 80005a02: fec56be3 bltu a0,a2,800059f8 <_malloc_r+0x3b6> - 80005a06: 6f0c ld a1,24(a4) - 80005a08: ef8c sd a1,24(a5) - 80005a0a: eb98 sd a4,16(a5) - 80005a0c: e99c sd a5,16(a1) - 80005a0e: ef1c sd a5,24(a4) - 80005a10: b3ad j 8000577a <_malloc_r+0x138> - 80005a12: 05400793 li a5,84 - 80005a16: 0f07f163 bgeu a5,a6,80005af8 <_malloc_r+0x4b6> - 80005a1a: 15400793 li a5,340 - 80005a1e: 1b07eb63 bltu a5,a6,80005bd4 <_malloc_r+0x592> - 80005a22: 00f6d813 srli a6,a3,0xf - 80005a26: 07880e1b addiw t3,a6,120 - 80005a2a: 001e151b slliw a0,t3,0x1 - 80005a2e: 0778081b addiw a6,a6,119 - 80005a32: 050e slli a0,a0,0x3 - 80005a34: b95d j 800056ea <_malloc_r+0xa8> - 80005a36: 2f85 addiw t6,t6,1 - 80005a38: 003ff793 andi a5,t6,3 - 80005a3c: 0341 addi t1,t1,16 - 80005a3e: cfe1 beqz a5,80005b16 <_malloc_r+0x4d4> - 80005a40: 01833703 ld a4,24(t1) - 80005a44: bba5 j 800057bc <_malloc_r+0x17a> - 80005a46: 6b88 ld a0,16(a5) - 80005a48: 0016e813 ori a6,a3,1 - 80005a4c: 0107b423 sd a6,8(a5) - 80005a50: ed18 sd a4,24(a0) - 80005a52: eb08 sd a0,16(a4) - 80005a54: 96be add a3,a3,a5 - 80005a56: 02d8b423 sd a3,40(a7) - 80005a5a: 02d8b023 sd a3,32(a7) - 80005a5e: 0015e713 ori a4,a1,1 - 80005a62: 963e add a2,a2,a5 - 80005a64: 01d6bc23 sd t4,24(a3) - 80005a68: 01d6b823 sd t4,16(a3) - 80005a6c: e698 sd a4,8(a3) - 80005a6e: 8522 mv a0,s0 - 80005a70: e20c sd a1,0(a2) - 80005a72: e43e sd a5,8(sp) - 80005a74: 226000ef jal 80005c9a <__malloc_unlock> - 80005a78: 67a2 ld a5,8(sp) - 80005a7a: 01078513 addi a0,a5,16 - 80005a7e: bbb5 j 800057fa <_malloc_r+0x1b8> - 80005a80: 00a786b3 add a3,a5,a0 - 80005a84: 6698 ld a4,8(a3) - 80005a86: e43e sd a5,8(sp) - 80005a88: 8522 mv a0,s0 - 80005a8a: 00176713 ori a4,a4,1 - 80005a8e: e698 sd a4,8(a3) - 80005a90: 20a000ef jal 80005c9a <__malloc_unlock> - 80005a94: 67a2 ld a5,8(sp) - 80005a96: 01078513 addi a0,a5,16 - 80005a9a: b385 j 800057fa <_malloc_r+0x1b8> - 80005a9c: 0016e613 ori a2,a3,1 - 80005aa0: e790 sd a2,8(a5) - 80005aa2: 96be add a3,a3,a5 - 80005aa4: 02d8b423 sd a3,40(a7) - 80005aa8: 02d8b023 sd a3,32(a7) - 80005aac: 00176593 ori a1,a4,1 - 80005ab0: 00a78633 add a2,a5,a0 - 80005ab4: 01d6bc23 sd t4,24(a3) - 80005ab8: 01d6b823 sd t4,16(a3) - 80005abc: e68c sd a1,8(a3) - 80005abe: 8522 mv a0,s0 - 80005ac0: e218 sd a4,0(a2) - 80005ac2: e43e sd a5,8(sp) - 80005ac4: 1d6000ef jal 80005c9a <__malloc_unlock> - 80005ac8: 67a2 ld a5,8(sp) - 80005aca: 01078513 addi a0,a5,16 - 80005ace: b335 j 800057fa <_malloc_r+0x1b8> - 80005ad0: 00655713 srli a4,a0,0x6 - 80005ad4: 00171593 slli a1,a4,0x1 - 80005ad8: 0725859b addiw a1,a1,114 - 80005adc: 058e slli a1,a1,0x3 - 80005ade: 0387061b addiw a2,a4,56 - 80005ae2: b729 j 800059ec <_malloc_r+0x3aa> - 80005ae4: e71797e3 bne a5,a7,80005952 <_malloc_r+0x310> - 80005ae8: 59818e13 addi t3,gp,1432 # 8000a8e8 <__malloc_current_mallinfo> - 80005aec: 000e3703 ld a4,0(t3) - 80005af0: 9742 add a4,a4,a6 - 80005af2: 00ee3023 sd a4,0(t3) - 80005af6: bb61 j 8000588e <_malloc_r+0x24c> - 80005af8: 00c6d813 srli a6,a3,0xc - 80005afc: 06f80e1b addiw t3,a6,111 - 80005b00: 001e151b slliw a0,t3,0x1 - 80005b04: 06e8081b addiw a6,a6,110 - 80005b08: 050e slli a0,a0,0x3 - 80005b0a: b6c5 j 800056ea <_malloc_r+0xa8> - 80005b0c: 010f3783 ld a5,16(t5) - 80005b10: 387d addiw a6,a6,-1 - 80005b12: 17e79963 bne a5,t5,80005c84 <_malloc_r+0x642> - 80005b16: 00387793 andi a5,a6,3 - 80005b1a: 1f41 addi t5,t5,-16 - 80005b1c: fbe5 bnez a5,80005b0c <_malloc_r+0x4ca> - 80005b1e: 0088b703 ld a4,8(a7) - 80005b22: fff54793 not a5,a0 - 80005b26: 8ff9 and a5,a5,a4 - 80005b28: 00f8b423 sd a5,8(a7) - 80005b2c: 0506 slli a0,a0,0x1 - 80005b2e: cea7e4e3 bltu a5,a0,80005816 <_malloc_r+0x1d4> - 80005b32: ce0502e3 beqz a0,80005816 <_malloc_r+0x1d4> - 80005b36: 00f57733 and a4,a0,a5 - 80005b3a: e711 bnez a4,80005b46 <_malloc_r+0x504> - 80005b3c: 0506 slli a0,a0,0x1 - 80005b3e: 00f57733 and a4,a0,a5 - 80005b42: 2f91 addiw t6,t6,4 - 80005b44: df65 beqz a4,80005b3c <_malloc_r+0x4fa> - 80005b46: 887e mv a6,t6 - 80005b48: b185 j 800057a8 <_malloc_r+0x166> - 80005b4a: 4785 li a5,1 - 80005b4c: 00f33423 sd a5,8(t1) - 80005b50: 8522 mv a0,s0 - 80005b52: 148000ef jal 80005c9a <__malloc_unlock> - 80005b56: b14d j 800057f8 <_malloc_r+0x1b6> - 80005b58: 02080813 addi a6,a6,32 - 80005b5c: b9c5 j 8000584c <_malloc_r+0x20a> - 80005b5e: 4026561b sraiw a2,a2,0x2 - 80005b62: 4505 li a0,1 - 80005b64: 00c51633 sll a2,a0,a2 - 80005b68: 00c36333 or t1,t1,a2 - 80005b6c: 0068b423 sd t1,8(a7) - 80005b70: bd61 j 80005a08 <_malloc_r+0x3c6> - 80005b72: 01030733 add a4,t1,a6 - 80005b76: 40e00733 neg a4,a4 - 80005b7a: 1752 slli a4,a4,0x34 - 80005b7c: 03475593 srli a1,a4,0x34 - 80005b80: 8522 mv a0,s0 - 80005b82: fc72 sd t3,56(sp) - 80005b84: f846 sd a7,48(sp) - 80005b86: f436 sd a3,40(sp) - 80005b88: f03e sd a5,32(sp) - 80005b8a: ec32 sd a2,24(sp) - 80005b8c: e842 sd a6,16(sp) - 80005b8e: e41a sd t1,8(sp) - 80005b90: e0ae sd a1,64(sp) - 80005b92: 130010ef jal 80006cc2 <_sbrk_r> - 80005b96: 577d li a4,-1 - 80005b98: 6322 ld t1,8(sp) - 80005b9a: 6842 ld a6,16(sp) - 80005b9c: 6662 ld a2,24(sp) - 80005b9e: 7782 ld a5,32(sp) - 80005ba0: 76a2 ld a3,40(sp) - 80005ba2: 78c2 ld a7,48(sp) - 80005ba4: 7e62 ld t3,56(sp) - 80005ba6: 4581 li a1,0 - 80005ba8: d4e50ae3 beq a0,a4,800058fc <_malloc_r+0x2ba> - 80005bac: 6586 ld a1,64(sp) - 80005bae: 40650533 sub a0,a0,t1 - 80005bb2: 00b50833 add a6,a0,a1 - 80005bb6: b399 j 800058fc <_malloc_r+0x2ba> - 80005bb8: 05400613 li a2,84 - 80005bbc: 04e66963 bltu a2,a4,80005c0e <_malloc_r+0x5cc> - 80005bc0: 00c55713 srli a4,a0,0xc - 80005bc4: 00171593 slli a1,a4,0x1 - 80005bc8: 0de5859b addiw a1,a1,222 - 80005bcc: 058e slli a1,a1,0x3 - 80005bce: 06e7061b addiw a2,a4,110 - 80005bd2: bd29 j 800059ec <_malloc_r+0x3aa> - 80005bd4: 55400793 li a5,1364 - 80005bd8: 0507e963 bltu a5,a6,80005c2a <_malloc_r+0x5e8> - 80005bdc: 0126d813 srli a6,a3,0x12 - 80005be0: 07d80e1b addiw t3,a6,125 - 80005be4: 001e151b slliw a0,t3,0x1 - 80005be8: 07c8081b addiw a6,a6,124 - 80005bec: 050e slli a0,a0,0x3 - 80005bee: bcf5 j 800056ea <_malloc_r+0xa8> - 80005bf0: 03459513 slli a0,a1,0x34 - 80005bf4: c8051de3 bnez a0,8000588e <_malloc_r+0x24c> - 80005bf8: 0108b583 ld a1,16(a7) - 80005bfc: 010607b3 add a5,a2,a6 - 80005c00: 0017e793 ori a5,a5,1 - 80005c04: e59c sd a5,8(a1) - 80005c06: bb15 j 8000593a <_malloc_r+0x2f8> - 80005c08: 006f3023 sd t1,0(t5) - 80005c0c: b959 j 800058a2 <_malloc_r+0x260> - 80005c0e: 15400613 li a2,340 - 80005c12: 04e66763 bltu a2,a4,80005c60 <_malloc_r+0x61e> - 80005c16: 00f55713 srli a4,a0,0xf - 80005c1a: 00171593 slli a1,a4,0x1 - 80005c1e: 0f05859b addiw a1,a1,240 - 80005c22: 058e slli a1,a1,0x3 - 80005c24: 0777061b addiw a2,a4,119 - 80005c28: b3d1 j 800059ec <_malloc_r+0x3aa> - 80005c2a: 7f000513 li a0,2032 - 80005c2e: 07f00e13 li t3,127 - 80005c32: 07e00813 li a6,126 - 80005c36: bc55 j 800056ea <_malloc_r+0xa8> - 80005c38: 1ec1 addi t4,t4,-16 - 80005c3a: 9876 add a6,a6,t4 - 80005c3c: 40680833 sub a6,a6,t1 - 80005c40: 4581 li a1,0 - 80005c42: b96d j 800058fc <_malloc_r+0x2ba> - 80005c44: 01078593 addi a1,a5,16 - 80005c48: 8522 mv a0,s0 - 80005c4a: ec72 sd t3,24(sp) - 80005c4c: e846 sd a7,16(sp) - 80005c4e: e436 sd a3,8(sp) - 80005c50: 928fe0ef jal 80003d78 <_free_r> - 80005c54: 6e62 ld t3,24(sp) - 80005c56: 68c2 ld a7,16(sp) - 80005c58: 66a2 ld a3,8(sp) - 80005c5a: 000e3703 ld a4,0(t3) - 80005c5e: b9f1 j 8000593a <_malloc_r+0x2f8> - 80005c60: 55400e13 li t3,1364 - 80005c64: 7f000593 li a1,2032 - 80005c68: 07e00613 li a2,126 - 80005c6c: d8ee60e3 bltu t3,a4,800059ec <_malloc_r+0x3aa> - 80005c70: 01255713 srli a4,a0,0x12 - 80005c74: 00171593 slli a1,a4,0x1 - 80005c78: 0fa5859b addiw a1,a1,250 - 80005c7c: 058e slli a1,a1,0x3 - 80005c7e: 07c7061b addiw a2,a4,124 - 80005c82: b3ad j 800059ec <_malloc_r+0x3aa> - 80005c84: 0088b783 ld a5,8(a7) - 80005c88: b555 j 80005b2c <_malloc_r+0x4ea> - 80005c8a: 0036d813 srli a6,a3,0x3 - 80005c8e: 00181713 slli a4,a6,0x1 - 80005c92: 2709 addiw a4,a4,2 - 80005c94: 070e slli a4,a4,0x3 - 80005c96: bad9 j 8000566c <_malloc_r+0x2a> +0000000080005d2a <_malloc_r>: + 80005d2a: 711d addi sp,sp,-96 + 80005d2c: e8a2 sd s0,80(sp) + 80005d2e: ec86 sd ra,88(sp) + 80005d30: 01758793 addi a5,a1,23 + 80005d34: 02e00713 li a4,46 + 80005d38: 842a mv s0,a0 + 80005d3a: 04f76d63 bltu a4,a5,80005d94 <_malloc_r+0x6a> + 80005d3e: 02000693 li a3,32 + 80005d42: 18b6ed63 bltu a3,a1,80005edc <_malloc_r+0x1b2> + 80005d46: 63a000ef jal 80006380 <__malloc_lock> + 80005d4a: 02000693 li a3,32 + 80005d4e: 05000713 li a4,80 + 80005d52: 4811 li a6,4 + 80005d54: 00005897 auipc a7,0x5 + 80005d58: 94488893 addi a7,a7,-1724 # 8000a698 <__malloc_av_> + 80005d5c: 9746 add a4,a4,a7 + 80005d5e: 671c ld a5,8(a4) + 80005d60: ff070613 addi a2,a4,-16 + 80005d64: 34c78463 beq a5,a2,800060ac <_malloc_r+0x382> + 80005d68: 6798 ld a4,8(a5) + 80005d6a: 6f90 ld a2,24(a5) + 80005d6c: 6b8c ld a1,16(a5) + 80005d6e: 9b71 andi a4,a4,-4 + 80005d70: 973e add a4,a4,a5 + 80005d72: 6714 ld a3,8(a4) + 80005d74: ed90 sd a2,24(a1) + 80005d76: e43e sd a5,8(sp) + 80005d78: ea0c sd a1,16(a2) + 80005d7a: 0016e693 ori a3,a3,1 + 80005d7e: 8522 mv a0,s0 + 80005d80: e714 sd a3,8(a4) + 80005d82: 600000ef jal 80006382 <__malloc_unlock> + 80005d86: 67a2 ld a5,8(sp) + 80005d88: 60e6 ld ra,88(sp) + 80005d8a: 6446 ld s0,80(sp) + 80005d8c: 01078513 addi a0,a5,16 + 80005d90: 6125 addi sp,sp,96 + 80005d92: 8082 ret + 80005d94: ff07f693 andi a3,a5,-16 + 80005d98: 00b6b5b3 sltu a1,a3,a1 + 80005d9c: 83fd srli a5,a5,0x1f + 80005d9e: 8fcd or a5,a5,a1 + 80005da0: 12079e63 bnez a5,80005edc <_malloc_r+0x1b2> + 80005da4: e436 sd a3,8(sp) + 80005da6: 5da000ef jal 80006380 <__malloc_lock> + 80005daa: 66a2 ld a3,8(sp) + 80005dac: 1f700793 li a5,503 + 80005db0: 5cd7f163 bgeu a5,a3,80006372 <_malloc_r+0x648> + 80005db4: 0096d813 srli a6,a3,0x9 + 80005db8: 4791 li a5,4 + 80005dba: 1307f863 bgeu a5,a6,80005eea <_malloc_r+0x1c0> + 80005dbe: 47d1 li a5,20 + 80005dc0: 3307ed63 bltu a5,a6,800060fa <_malloc_r+0x3d0> + 80005dc4: 05c80e1b addiw t3,a6,92 + 80005dc8: 001e151b slliw a0,t3,0x1 + 80005dcc: 05b8081b addiw a6,a6,91 + 80005dd0: 050e slli a0,a0,0x3 + 80005dd2: 00005897 auipc a7,0x5 + 80005dd6: 8c688893 addi a7,a7,-1850 # 8000a698 <__malloc_av_> + 80005dda: 9546 add a0,a0,a7 + 80005ddc: 651c ld a5,8(a0) + 80005dde: 1541 addi a0,a0,-16 + 80005de0: 2af50163 beq a0,a5,80006082 <_malloc_r+0x358> + 80005de4: 437d li t1,31 + 80005de6: a039 j 80005df4 <_malloc_r+0xca> + 80005de8: 6f8c ld a1,24(a5) + 80005dea: 28065e63 bgez a2,80006086 <_malloc_r+0x35c> + 80005dee: 28b50a63 beq a0,a1,80006082 <_malloc_r+0x358> + 80005df2: 87ae mv a5,a1 + 80005df4: 6798 ld a4,8(a5) + 80005df6: 9b71 andi a4,a4,-4 + 80005df8: 40d70633 sub a2,a4,a3 + 80005dfc: fec356e3 bge t1,a2,80005de8 <_malloc_r+0xbe> + 80005e00: 0208b783 ld a5,32(a7) + 80005e04: 00005e97 auipc t4,0x5 + 80005e08: 8a4e8e93 addi t4,t4,-1884 # 8000a6a8 <__malloc_av_+0x10> + 80005e0c: 27d78863 beq a5,t4,8000607c <_malloc_r+0x352> + 80005e10: 6788 ld a0,8(a5) + 80005e12: 467d li a2,31 + 80005e14: 9971 andi a0,a0,-4 + 80005e16: 40d50733 sub a4,a0,a3 + 80005e1a: 36e64563 blt a2,a4,80006184 <_malloc_r+0x45a> + 80005e1e: 03d8b423 sd t4,40(a7) + 80005e22: 03d8b023 sd t4,32(a7) + 80005e26: 34075163 bgez a4,80006168 <_malloc_r+0x43e> + 80005e2a: 1ff00713 li a4,511 + 80005e2e: 0088b303 ld t1,8(a7) + 80005e32: 28a76263 bltu a4,a0,800060b6 <_malloc_r+0x38c> + 80005e36: 810d srli a0,a0,0x3 + 80005e38: 00151713 slli a4,a0,0x1 + 80005e3c: 2709 addiw a4,a4,2 + 80005e3e: 070e slli a4,a4,0x3 + 80005e40: 9746 add a4,a4,a7 + 80005e42: 630c ld a1,0(a4) + 80005e44: 4025551b sraiw a0,a0,0x2 + 80005e48: 4605 li a2,1 + 80005e4a: 00a61633 sll a2,a2,a0 + 80005e4e: 00c36333 or t1,t1,a2 + 80005e52: ff070613 addi a2,a4,-16 + 80005e56: eb8c sd a1,16(a5) + 80005e58: ef90 sd a2,24(a5) + 80005e5a: 0068b423 sd t1,8(a7) + 80005e5e: e31c sd a5,0(a4) + 80005e60: ed9c sd a5,24(a1) + 80005e62: 4028579b sraiw a5,a6,0x2 + 80005e66: 4505 li a0,1 + 80005e68: 00f51533 sll a0,a0,a5 + 80005e6c: 08a36963 bltu t1,a0,80005efe <_malloc_r+0x1d4> + 80005e70: 006577b3 and a5,a0,t1 + 80005e74: ef89 bnez a5,80005e8e <_malloc_r+0x164> + 80005e76: 0506 slli a0,a0,0x1 + 80005e78: ffc87813 andi a6,a6,-4 + 80005e7c: 006577b3 and a5,a0,t1 + 80005e80: 2811 addiw a6,a6,4 + 80005e82: e791 bnez a5,80005e8e <_malloc_r+0x164> + 80005e84: 0506 slli a0,a0,0x1 + 80005e86: 006577b3 and a5,a0,t1 + 80005e8a: 2811 addiw a6,a6,4 + 80005e8c: dfe5 beqz a5,80005e84 <_malloc_r+0x15a> + 80005e8e: 4e7d li t3,31 + 80005e90: 00181f13 slli t5,a6,0x1 + 80005e94: 2f09 addiw t5,t5,2 + 80005e96: 1f79 addi t5,t5,-2 + 80005e98: 0f0e slli t5,t5,0x3 + 80005e9a: 9f46 add t5,t5,a7 + 80005e9c: 837a mv t1,t5 + 80005e9e: 01833703 ld a4,24(t1) + 80005ea2: 8fc2 mv t6,a6 + 80005ea4: 26e30d63 beq t1,a4,8000611e <_malloc_r+0x3f4> + 80005ea8: 6710 ld a2,8(a4) + 80005eaa: 87ba mv a5,a4 + 80005eac: 6f18 ld a4,24(a4) + 80005eae: 9a71 andi a2,a2,-4 + 80005eb0: 40d605b3 sub a1,a2,a3 + 80005eb4: 26be4d63 blt t3,a1,8000612e <_malloc_r+0x404> + 80005eb8: fe05c6e3 bltz a1,80005ea4 <_malloc_r+0x17a> + 80005ebc: 963e add a2,a2,a5 + 80005ebe: 6614 ld a3,8(a2) + 80005ec0: 6b8c ld a1,16(a5) + 80005ec2: 8522 mv a0,s0 + 80005ec4: 0016e693 ori a3,a3,1 + 80005ec8: e614 sd a3,8(a2) + 80005eca: ed98 sd a4,24(a1) + 80005ecc: eb0c sd a1,16(a4) + 80005ece: e43e sd a5,8(sp) + 80005ed0: 4b2000ef jal 80006382 <__malloc_unlock> + 80005ed4: 67a2 ld a5,8(sp) + 80005ed6: 01078513 addi a0,a5,16 + 80005eda: a021 j 80005ee2 <_malloc_r+0x1b8> + 80005edc: 47b1 li a5,12 + 80005ede: c01c sw a5,0(s0) + 80005ee0: 4501 li a0,0 + 80005ee2: 60e6 ld ra,88(sp) + 80005ee4: 6446 ld s0,80(sp) + 80005ee6: 6125 addi sp,sp,96 + 80005ee8: 8082 ret + 80005eea: 0066d813 srli a6,a3,0x6 + 80005eee: 03980e1b addiw t3,a6,57 + 80005ef2: 001e151b slliw a0,t3,0x1 + 80005ef6: 0388081b addiw a6,a6,56 + 80005efa: 050e slli a0,a0,0x3 + 80005efc: bdd9 j 80005dd2 <_malloc_r+0xa8> + 80005efe: 0108b783 ld a5,16(a7) + 80005f02: 6790 ld a2,8(a5) + 80005f04: 9a71 andi a2,a2,-4 + 80005f06: 40d60733 sub a4,a2,a3 + 80005f0a: 02072513 slti a0,a4,32 + 80005f0e: 00d635b3 sltu a1,a2,a3 + 80005f12: 8dc9 or a1,a1,a0 + 80005f14: 14058063 beqz a1,80006054 <_malloc_r+0x32a> + 80005f18: 3a01b803 ld a6,928(gp) # 8000b0a8 <__malloc_top_pad> + 80005f1c: 8101b583 ld a1,-2032(gp) # 8000a518 <__malloc_sbrk_base> + 80005f20: 577d li a4,-1 + 80005f22: 9836 add a6,a6,a3 + 80005f24: 30e58e63 beq a1,a4,80006240 <_malloc_r+0x516> + 80005f28: 6705 lui a4,0x1 + 80005f2a: 077d addi a4,a4,31 # 101f + 80005f2c: 983a add a6,a6,a4 + 80005f2e: 777d lui a4,0xfffff + 80005f30: 00e87833 and a6,a6,a4 + 80005f34: 85c2 mv a1,a6 + 80005f36: 8522 mv a0,s0 + 80005f38: e846 sd a7,16(sp) + 80005f3a: e436 sd a3,8(sp) + 80005f3c: f43e sd a5,40(sp) + 80005f3e: f032 sd a2,32(sp) + 80005f40: ec42 sd a6,24(sp) + 80005f42: 468010ef jal 800073aa <_sbrk_r> + 80005f46: 577d li a4,-1 + 80005f48: 66a2 ld a3,8(sp) + 80005f4a: 68c2 ld a7,16(sp) + 80005f4c: 832a mv t1,a0 + 80005f4e: 0ee50663 beq a0,a4,8000603a <_malloc_r+0x310> + 80005f52: 7602 ld a2,32(sp) + 80005f54: 77a2 ld a5,40(sp) + 80005f56: 6862 ld a6,24(sp) + 80005f58: 81018f13 addi t5,gp,-2032 # 8000a518 <__malloc_sbrk_base> + 80005f5c: 00c785b3 add a1,a5,a2 + 80005f60: 26b56663 bltu a0,a1,800061cc <_malloc_r+0x4a2> + 80005f64: 67018e13 addi t3,gp,1648 # 8000b378 <__malloc_current_mallinfo> + 80005f68: 000e3703 ld a4,0(t3) + 80005f6c: 9742 add a4,a4,a6 + 80005f6e: 00ee3023 sd a4,0(t3) + 80005f72: 36a58363 beq a1,a0,800062d8 <_malloc_r+0x5ae> + 80005f76: 000f3e83 ld t4,0(t5) + 80005f7a: 557d li a0,-1 + 80005f7c: 36ae8a63 beq t4,a0,800062f0 <_malloc_r+0x5c6> + 80005f80: 40b305b3 sub a1,t1,a1 + 80005f84: 972e add a4,a4,a1 + 80005f86: 00ee3023 sd a4,0(t3) + 80005f8a: 00f37e93 andi t4,t1,15 + 80005f8e: 2c0e8663 beqz t4,8000625a <_malloc_r+0x530> + 80005f92: ff037313 andi t1,t1,-16 + 80005f96: 6705 lui a4,0x1 + 80005f98: 0341 addi t1,t1,16 + 80005f9a: 0741 addi a4,a4,16 # 1010 + 80005f9c: 981a add a6,a6,t1 + 80005f9e: 41d70733 sub a4,a4,t4 + 80005fa2: 41070733 sub a4,a4,a6 + 80005fa6: 1752 slli a4,a4,0x34 + 80005fa8: 03475593 srli a1,a4,0x34 + 80005fac: 8522 mv a0,s0 + 80005fae: e0f2 sd t3,64(sp) + 80005fb0: fc46 sd a7,56(sp) + 80005fb2: f836 sd a3,48(sp) + 80005fb4: f43e sd a5,40(sp) + 80005fb6: f032 sd a2,32(sp) + 80005fb8: ec1a sd t1,24(sp) + 80005fba: e876 sd t4,16(sp) + 80005fbc: e442 sd a6,8(sp) + 80005fbe: e4ae sd a1,72(sp) + 80005fc0: 3ea010ef jal 800073aa <_sbrk_r> + 80005fc4: 577d li a4,-1 + 80005fc6: 6822 ld a6,8(sp) + 80005fc8: 6ec2 ld t4,16(sp) + 80005fca: 6362 ld t1,24(sp) + 80005fcc: 7602 ld a2,32(sp) + 80005fce: 77a2 ld a5,40(sp) + 80005fd0: 76c2 ld a3,48(sp) + 80005fd2: 78e2 ld a7,56(sp) + 80005fd4: 6e06 ld t3,64(sp) + 80005fd6: 34e50563 beq a0,a4,80006320 <_malloc_r+0x5f6> + 80005fda: 65a6 ld a1,72(sp) + 80005fdc: 40650533 sub a0,a0,t1 + 80005fe0: 00b50833 add a6,a0,a1 + 80005fe4: 000e3703 ld a4,0(t3) + 80005fe8: 0068b823 sd t1,16(a7) + 80005fec: 00186813 ori a6,a6,1 + 80005ff0: 972e add a4,a4,a1 + 80005ff2: 01033423 sd a6,8(t1) + 80005ff6: 00ee3023 sd a4,0(t3) + 80005ffa: 03178463 beq a5,a7,80006022 <_malloc_r+0x2f8> + 80005ffe: 457d li a0,31 + 80006000: 22c57963 bgeu a0,a2,80006232 <_malloc_r+0x508> + 80006004: 678c ld a1,8(a5) + 80006006: 1621 addi a2,a2,-24 + 80006008: 9a41 andi a2,a2,-16 + 8000600a: 8985 andi a1,a1,1 + 8000600c: 8dd1 or a1,a1,a2 + 8000600e: e78c sd a1,8(a5) + 80006010: 4825 li a6,9 + 80006012: 00c785b3 add a1,a5,a2 + 80006016: 0105b423 sd a6,8(a1) + 8000601a: 0105b823 sd a6,16(a1) + 8000601e: 30c56763 bltu a0,a2,8000632c <_malloc_r+0x602> + 80006022: 3981b783 ld a5,920(gp) # 8000b0a0 <__malloc_max_sbrked_mem> + 80006026: 00e7f463 bgeu a5,a4,8000602e <_malloc_r+0x304> + 8000602a: 38e1bc23 sd a4,920(gp) # 8000b0a0 <__malloc_max_sbrked_mem> + 8000602e: 3901b783 ld a5,912(gp) # 8000b098 <__malloc_max_total_mem> + 80006032: 00e7f463 bgeu a5,a4,8000603a <_malloc_r+0x310> + 80006036: 38e1b823 sd a4,912(gp) # 8000b098 <__malloc_max_total_mem> + 8000603a: 0108b783 ld a5,16(a7) + 8000603e: 6790 ld a2,8(a5) + 80006040: 9a71 andi a2,a2,-4 + 80006042: 40d60733 sub a4,a2,a3 + 80006046: 02072593 slti a1,a4,32 + 8000604a: 00d63633 sltu a2,a2,a3 + 8000604e: 8e4d or a2,a2,a1 + 80006050: 1e061463 bnez a2,80006238 <_malloc_r+0x50e> + 80006054: 0016e613 ori a2,a3,1 + 80006058: e790 sd a2,8(a5) + 8000605a: 96be add a3,a3,a5 + 8000605c: e43e sd a5,8(sp) + 8000605e: 00176713 ori a4,a4,1 + 80006062: 00d8b823 sd a3,16(a7) + 80006066: 8522 mv a0,s0 + 80006068: e698 sd a4,8(a3) + 8000606a: 318000ef jal 80006382 <__malloc_unlock> + 8000606e: 67a2 ld a5,8(sp) + 80006070: 60e6 ld ra,88(sp) + 80006072: 6446 ld s0,80(sp) + 80006074: 01078513 addi a0,a5,16 + 80006078: 6125 addi sp,sp,96 + 8000607a: 8082 ret + 8000607c: 0088b303 ld t1,8(a7) + 80006080: b3cd j 80005e62 <_malloc_r+0x138> + 80006082: 8872 mv a6,t3 + 80006084: bbb5 j 80005e00 <_malloc_r+0xd6> + 80006086: 6b90 ld a2,16(a5) + 80006088: 973e add a4,a4,a5 + 8000608a: 6714 ld a3,8(a4) + 8000608c: ee0c sd a1,24(a2) + 8000608e: e43e sd a5,8(sp) + 80006090: 0016e693 ori a3,a3,1 + 80006094: e990 sd a2,16(a1) + 80006096: 8522 mv a0,s0 + 80006098: e714 sd a3,8(a4) + 8000609a: 2e8000ef jal 80006382 <__malloc_unlock> + 8000609e: 67a2 ld a5,8(sp) + 800060a0: 60e6 ld ra,88(sp) + 800060a2: 6446 ld s0,80(sp) + 800060a4: 01078513 addi a0,a5,16 + 800060a8: 6125 addi sp,sp,96 + 800060aa: 8082 ret + 800060ac: 6f1c ld a5,24(a4) + 800060ae: 2809 addiw a6,a6,2 + 800060b0: d4f708e3 beq a4,a5,80005e00 <_malloc_r+0xd6> + 800060b4: b955 j 80005d68 <_malloc_r+0x3e> + 800060b6: 00955713 srli a4,a0,0x9 + 800060ba: 4611 li a2,4 + 800060bc: 0ee67e63 bgeu a2,a4,800061b8 <_malloc_r+0x48e> + 800060c0: 4651 li a2,20 + 800060c2: 1ce66f63 bltu a2,a4,800062a0 <_malloc_r+0x576> + 800060c6: 00171593 slli a1,a4,0x1 + 800060ca: 0b85859b addiw a1,a1,184 + 800060ce: 058e slli a1,a1,0x3 + 800060d0: 05b7061b addiw a2,a4,91 + 800060d4: 95c6 add a1,a1,a7 + 800060d6: 6198 ld a4,0(a1) + 800060d8: 15c1 addi a1,a1,-16 + 800060da: 00e59663 bne a1,a4,800060e6 <_malloc_r+0x3bc> + 800060de: a2a5 j 80006246 <_malloc_r+0x51c> + 800060e0: 6b18 ld a4,16(a4) + 800060e2: 00e58663 beq a1,a4,800060ee <_malloc_r+0x3c4> + 800060e6: 6710 ld a2,8(a4) + 800060e8: 9a71 andi a2,a2,-4 + 800060ea: fec56be3 bltu a0,a2,800060e0 <_malloc_r+0x3b6> + 800060ee: 6f0c ld a1,24(a4) + 800060f0: ef8c sd a1,24(a5) + 800060f2: eb98 sd a4,16(a5) + 800060f4: e99c sd a5,16(a1) + 800060f6: ef1c sd a5,24(a4) + 800060f8: b3ad j 80005e62 <_malloc_r+0x138> + 800060fa: 05400793 li a5,84 + 800060fe: 0f07f163 bgeu a5,a6,800061e0 <_malloc_r+0x4b6> + 80006102: 15400793 li a5,340 + 80006106: 1b07eb63 bltu a5,a6,800062bc <_malloc_r+0x592> + 8000610a: 00f6d813 srli a6,a3,0xf + 8000610e: 07880e1b addiw t3,a6,120 + 80006112: 001e151b slliw a0,t3,0x1 + 80006116: 0778081b addiw a6,a6,119 + 8000611a: 050e slli a0,a0,0x3 + 8000611c: b95d j 80005dd2 <_malloc_r+0xa8> + 8000611e: 2f85 addiw t6,t6,1 + 80006120: 003ff793 andi a5,t6,3 + 80006124: 0341 addi t1,t1,16 + 80006126: cfe1 beqz a5,800061fe <_malloc_r+0x4d4> + 80006128: 01833703 ld a4,24(t1) + 8000612c: bba5 j 80005ea4 <_malloc_r+0x17a> + 8000612e: 6b88 ld a0,16(a5) + 80006130: 0016e813 ori a6,a3,1 + 80006134: 0107b423 sd a6,8(a5) + 80006138: ed18 sd a4,24(a0) + 8000613a: eb08 sd a0,16(a4) + 8000613c: 96be add a3,a3,a5 + 8000613e: 02d8b423 sd a3,40(a7) + 80006142: 02d8b023 sd a3,32(a7) + 80006146: 0015e713 ori a4,a1,1 + 8000614a: 963e add a2,a2,a5 + 8000614c: 01d6bc23 sd t4,24(a3) + 80006150: 01d6b823 sd t4,16(a3) + 80006154: e698 sd a4,8(a3) + 80006156: 8522 mv a0,s0 + 80006158: e20c sd a1,0(a2) + 8000615a: e43e sd a5,8(sp) + 8000615c: 226000ef jal 80006382 <__malloc_unlock> + 80006160: 67a2 ld a5,8(sp) + 80006162: 01078513 addi a0,a5,16 + 80006166: bbb5 j 80005ee2 <_malloc_r+0x1b8> + 80006168: 00a786b3 add a3,a5,a0 + 8000616c: 6698 ld a4,8(a3) + 8000616e: e43e sd a5,8(sp) + 80006170: 8522 mv a0,s0 + 80006172: 00176713 ori a4,a4,1 + 80006176: e698 sd a4,8(a3) + 80006178: 20a000ef jal 80006382 <__malloc_unlock> + 8000617c: 67a2 ld a5,8(sp) + 8000617e: 01078513 addi a0,a5,16 + 80006182: b385 j 80005ee2 <_malloc_r+0x1b8> + 80006184: 0016e613 ori a2,a3,1 + 80006188: e790 sd a2,8(a5) + 8000618a: 96be add a3,a3,a5 + 8000618c: 02d8b423 sd a3,40(a7) + 80006190: 02d8b023 sd a3,32(a7) + 80006194: 00176593 ori a1,a4,1 + 80006198: 00a78633 add a2,a5,a0 + 8000619c: 01d6bc23 sd t4,24(a3) + 800061a0: 01d6b823 sd t4,16(a3) + 800061a4: e68c sd a1,8(a3) + 800061a6: 8522 mv a0,s0 + 800061a8: e218 sd a4,0(a2) + 800061aa: e43e sd a5,8(sp) + 800061ac: 1d6000ef jal 80006382 <__malloc_unlock> + 800061b0: 67a2 ld a5,8(sp) + 800061b2: 01078513 addi a0,a5,16 + 800061b6: b335 j 80005ee2 <_malloc_r+0x1b8> + 800061b8: 00655713 srli a4,a0,0x6 + 800061bc: 00171593 slli a1,a4,0x1 + 800061c0: 0725859b addiw a1,a1,114 + 800061c4: 058e slli a1,a1,0x3 + 800061c6: 0387061b addiw a2,a4,56 + 800061ca: b729 j 800060d4 <_malloc_r+0x3aa> + 800061cc: e71797e3 bne a5,a7,8000603a <_malloc_r+0x310> + 800061d0: 67018e13 addi t3,gp,1648 # 8000b378 <__malloc_current_mallinfo> + 800061d4: 000e3703 ld a4,0(t3) + 800061d8: 9742 add a4,a4,a6 + 800061da: 00ee3023 sd a4,0(t3) + 800061de: bb61 j 80005f76 <_malloc_r+0x24c> + 800061e0: 00c6d813 srli a6,a3,0xc + 800061e4: 06f80e1b addiw t3,a6,111 + 800061e8: 001e151b slliw a0,t3,0x1 + 800061ec: 06e8081b addiw a6,a6,110 + 800061f0: 050e slli a0,a0,0x3 + 800061f2: b6c5 j 80005dd2 <_malloc_r+0xa8> + 800061f4: 010f3783 ld a5,16(t5) + 800061f8: 387d addiw a6,a6,-1 + 800061fa: 17e79963 bne a5,t5,8000636c <_malloc_r+0x642> + 800061fe: 00387793 andi a5,a6,3 + 80006202: 1f41 addi t5,t5,-16 + 80006204: fbe5 bnez a5,800061f4 <_malloc_r+0x4ca> + 80006206: 0088b703 ld a4,8(a7) + 8000620a: fff54793 not a5,a0 + 8000620e: 8ff9 and a5,a5,a4 + 80006210: 00f8b423 sd a5,8(a7) + 80006214: 0506 slli a0,a0,0x1 + 80006216: cea7e4e3 bltu a5,a0,80005efe <_malloc_r+0x1d4> + 8000621a: ce0502e3 beqz a0,80005efe <_malloc_r+0x1d4> + 8000621e: 00f57733 and a4,a0,a5 + 80006222: e711 bnez a4,8000622e <_malloc_r+0x504> + 80006224: 0506 slli a0,a0,0x1 + 80006226: 00f57733 and a4,a0,a5 + 8000622a: 2f91 addiw t6,t6,4 + 8000622c: df65 beqz a4,80006224 <_malloc_r+0x4fa> + 8000622e: 887e mv a6,t6 + 80006230: b185 j 80005e90 <_malloc_r+0x166> + 80006232: 4785 li a5,1 + 80006234: 00f33423 sd a5,8(t1) + 80006238: 8522 mv a0,s0 + 8000623a: 148000ef jal 80006382 <__malloc_unlock> + 8000623e: b14d j 80005ee0 <_malloc_r+0x1b6> + 80006240: 02080813 addi a6,a6,32 + 80006244: b9c5 j 80005f34 <_malloc_r+0x20a> + 80006246: 4026561b sraiw a2,a2,0x2 + 8000624a: 4505 li a0,1 + 8000624c: 00c51633 sll a2,a0,a2 + 80006250: 00c36333 or t1,t1,a2 + 80006254: 0068b423 sd t1,8(a7) + 80006258: bd61 j 800060f0 <_malloc_r+0x3c6> + 8000625a: 01030733 add a4,t1,a6 + 8000625e: 40e00733 neg a4,a4 + 80006262: 1752 slli a4,a4,0x34 + 80006264: 03475593 srli a1,a4,0x34 + 80006268: 8522 mv a0,s0 + 8000626a: fc72 sd t3,56(sp) + 8000626c: f846 sd a7,48(sp) + 8000626e: f436 sd a3,40(sp) + 80006270: f03e sd a5,32(sp) + 80006272: ec32 sd a2,24(sp) + 80006274: e842 sd a6,16(sp) + 80006276: e41a sd t1,8(sp) + 80006278: e0ae sd a1,64(sp) + 8000627a: 130010ef jal 800073aa <_sbrk_r> + 8000627e: 577d li a4,-1 + 80006280: 6322 ld t1,8(sp) + 80006282: 6842 ld a6,16(sp) + 80006284: 6662 ld a2,24(sp) + 80006286: 7782 ld a5,32(sp) + 80006288: 76a2 ld a3,40(sp) + 8000628a: 78c2 ld a7,48(sp) + 8000628c: 7e62 ld t3,56(sp) + 8000628e: 4581 li a1,0 + 80006290: d4e50ae3 beq a0,a4,80005fe4 <_malloc_r+0x2ba> + 80006294: 6586 ld a1,64(sp) + 80006296: 40650533 sub a0,a0,t1 + 8000629a: 00b50833 add a6,a0,a1 + 8000629e: b399 j 80005fe4 <_malloc_r+0x2ba> + 800062a0: 05400613 li a2,84 + 800062a4: 04e66963 bltu a2,a4,800062f6 <_malloc_r+0x5cc> + 800062a8: 00c55713 srli a4,a0,0xc + 800062ac: 00171593 slli a1,a4,0x1 + 800062b0: 0de5859b addiw a1,a1,222 + 800062b4: 058e slli a1,a1,0x3 + 800062b6: 06e7061b addiw a2,a4,110 + 800062ba: bd29 j 800060d4 <_malloc_r+0x3aa> + 800062bc: 55400793 li a5,1364 + 800062c0: 0507e963 bltu a5,a6,80006312 <_malloc_r+0x5e8> + 800062c4: 0126d813 srli a6,a3,0x12 + 800062c8: 07d80e1b addiw t3,a6,125 + 800062cc: 001e151b slliw a0,t3,0x1 + 800062d0: 07c8081b addiw a6,a6,124 + 800062d4: 050e slli a0,a0,0x3 + 800062d6: bcf5 j 80005dd2 <_malloc_r+0xa8> + 800062d8: 03459513 slli a0,a1,0x34 + 800062dc: c8051de3 bnez a0,80005f76 <_malloc_r+0x24c> + 800062e0: 0108b583 ld a1,16(a7) + 800062e4: 010607b3 add a5,a2,a6 + 800062e8: 0017e793 ori a5,a5,1 + 800062ec: e59c sd a5,8(a1) + 800062ee: bb15 j 80006022 <_malloc_r+0x2f8> + 800062f0: 006f3023 sd t1,0(t5) + 800062f4: b959 j 80005f8a <_malloc_r+0x260> + 800062f6: 15400613 li a2,340 + 800062fa: 04e66763 bltu a2,a4,80006348 <_malloc_r+0x61e> + 800062fe: 00f55713 srli a4,a0,0xf + 80006302: 00171593 slli a1,a4,0x1 + 80006306: 0f05859b addiw a1,a1,240 + 8000630a: 058e slli a1,a1,0x3 + 8000630c: 0777061b addiw a2,a4,119 + 80006310: b3d1 j 800060d4 <_malloc_r+0x3aa> + 80006312: 7f000513 li a0,2032 + 80006316: 07f00e13 li t3,127 + 8000631a: 07e00813 li a6,126 + 8000631e: bc55 j 80005dd2 <_malloc_r+0xa8> + 80006320: 1ec1 addi t4,t4,-16 + 80006322: 9876 add a6,a6,t4 + 80006324: 40680833 sub a6,a6,t1 + 80006328: 4581 li a1,0 + 8000632a: b96d j 80005fe4 <_malloc_r+0x2ba> + 8000632c: 01078593 addi a1,a5,16 + 80006330: 8522 mv a0,s0 + 80006332: ec72 sd t3,24(sp) + 80006334: e846 sd a7,16(sp) + 80006336: e436 sd a3,8(sp) + 80006338: 928fe0ef jal 80004460 <_free_r> + 8000633c: 6e62 ld t3,24(sp) + 8000633e: 68c2 ld a7,16(sp) + 80006340: 66a2 ld a3,8(sp) + 80006342: 000e3703 ld a4,0(t3) + 80006346: b9f1 j 80006022 <_malloc_r+0x2f8> + 80006348: 55400e13 li t3,1364 + 8000634c: 7f000593 li a1,2032 + 80006350: 07e00613 li a2,126 + 80006354: d8ee60e3 bltu t3,a4,800060d4 <_malloc_r+0x3aa> + 80006358: 01255713 srli a4,a0,0x12 + 8000635c: 00171593 slli a1,a4,0x1 + 80006360: 0fa5859b addiw a1,a1,250 + 80006364: 058e slli a1,a1,0x3 + 80006366: 07c7061b addiw a2,a4,124 + 8000636a: b3ad j 800060d4 <_malloc_r+0x3aa> + 8000636c: 0088b783 ld a5,8(a7) + 80006370: b555 j 80006214 <_malloc_r+0x4ea> + 80006372: 0036d813 srli a6,a3,0x3 + 80006376: 00181713 slli a4,a6,0x1 + 8000637a: 2709 addiw a4,a4,2 + 8000637c: 070e slli a4,a4,0x3 + 8000637e: bad9 j 80005d54 <_malloc_r+0x2a> -0000000080005c98 <__malloc_lock>: - 80005c98: 8082 ret +0000000080006380 <__malloc_lock>: + 80006380: 8082 ret -0000000080005c9a <__malloc_unlock>: - 80005c9a: 8082 ret +0000000080006382 <__malloc_unlock>: + 80006382: 8082 ret -0000000080005c9c <_Balloc>: - 80005c9c: 753c ld a5,104(a0) - 80005c9e: 1101 addi sp,sp,-32 - 80005ca0: ec06 sd ra,24(sp) - 80005ca2: 86aa mv a3,a0 - 80005ca4: 882e mv a6,a1 - 80005ca6: cf91 beqz a5,80005cc2 <_Balloc+0x26> - 80005ca8: 00381713 slli a4,a6,0x3 - 80005cac: 973e add a4,a4,a5 - 80005cae: 631c ld a5,0(a4) - 80005cb0: cb95 beqz a5,80005ce4 <_Balloc+0x48> - 80005cb2: 6394 ld a3,0(a5) - 80005cb4: e314 sd a3,0(a4) - 80005cb6: 0007b823 sd zero,16(a5) - 80005cba: 60e2 ld ra,24(sp) - 80005cbc: 853e mv a0,a5 - 80005cbe: 6105 addi sp,sp,32 - 80005cc0: 8082 ret - 80005cc2: e42e sd a1,8(sp) - 80005cc4: 04100613 li a2,65 - 80005cc8: 45a1 li a1,8 - 80005cca: e02a sd a0,0(sp) - 80005ccc: 066010ef jal 80006d32 <_calloc_r> - 80005cd0: 6682 ld a3,0(sp) - 80005cd2: 6822 ld a6,8(sp) - 80005cd4: 87aa mv a5,a0 - 80005cd6: f6a8 sd a0,104(a3) - 80005cd8: d16d beqz a0,80005cba <_Balloc+0x1e> - 80005cda: 00381713 slli a4,a6,0x3 - 80005cde: 973e add a4,a4,a5 - 80005ce0: 631c ld a5,0(a4) - 80005ce2: fbe1 bnez a5,80005cb2 <_Balloc+0x16> - 80005ce4: 4705 li a4,1 - 80005ce6: 0107173b sllw a4,a4,a6 - 80005cea: 00770613 addi a2,a4,7 - 80005cee: 8536 mv a0,a3 - 80005cf0: 060a slli a2,a2,0x2 - 80005cf2: 4585 li a1,1 - 80005cf4: e442 sd a6,8(sp) - 80005cf6: e03a sd a4,0(sp) - 80005cf8: 03a010ef jal 80006d32 <_calloc_r> - 80005cfc: 87aa mv a5,a0 - 80005cfe: dd55 beqz a0,80005cba <_Balloc+0x1e> - 80005d00: 6822 ld a6,8(sp) - 80005d02: 6702 ld a4,0(sp) - 80005d04: 01052423 sw a6,8(a0) - 80005d08: c558 sw a4,12(a0) - 80005d0a: b775 j 80005cb6 <_Balloc+0x1a> +0000000080006384 <_Balloc>: + 80006384: 753c ld a5,104(a0) + 80006386: 1101 addi sp,sp,-32 + 80006388: ec06 sd ra,24(sp) + 8000638a: 86aa mv a3,a0 + 8000638c: 882e mv a6,a1 + 8000638e: cf91 beqz a5,800063aa <_Balloc+0x26> + 80006390: 00381713 slli a4,a6,0x3 + 80006394: 973e add a4,a4,a5 + 80006396: 631c ld a5,0(a4) + 80006398: cb95 beqz a5,800063cc <_Balloc+0x48> + 8000639a: 6394 ld a3,0(a5) + 8000639c: e314 sd a3,0(a4) + 8000639e: 0007b823 sd zero,16(a5) + 800063a2: 60e2 ld ra,24(sp) + 800063a4: 853e mv a0,a5 + 800063a6: 6105 addi sp,sp,32 + 800063a8: 8082 ret + 800063aa: e42e sd a1,8(sp) + 800063ac: 04100613 li a2,65 + 800063b0: 45a1 li a1,8 + 800063b2: e02a sd a0,0(sp) + 800063b4: 066010ef jal 8000741a <_calloc_r> + 800063b8: 6682 ld a3,0(sp) + 800063ba: 6822 ld a6,8(sp) + 800063bc: 87aa mv a5,a0 + 800063be: f6a8 sd a0,104(a3) + 800063c0: d16d beqz a0,800063a2 <_Balloc+0x1e> + 800063c2: 00381713 slli a4,a6,0x3 + 800063c6: 973e add a4,a4,a5 + 800063c8: 631c ld a5,0(a4) + 800063ca: fbe1 bnez a5,8000639a <_Balloc+0x16> + 800063cc: 4705 li a4,1 + 800063ce: 0107173b sllw a4,a4,a6 + 800063d2: 00770613 addi a2,a4,7 + 800063d6: 8536 mv a0,a3 + 800063d8: 060a slli a2,a2,0x2 + 800063da: 4585 li a1,1 + 800063dc: e442 sd a6,8(sp) + 800063de: e03a sd a4,0(sp) + 800063e0: 03a010ef jal 8000741a <_calloc_r> + 800063e4: 87aa mv a5,a0 + 800063e6: dd55 beqz a0,800063a2 <_Balloc+0x1e> + 800063e8: 6822 ld a6,8(sp) + 800063ea: 6702 ld a4,0(sp) + 800063ec: 01052423 sw a6,8(a0) + 800063f0: c558 sw a4,12(a0) + 800063f2: b775 j 8000639e <_Balloc+0x1a> -0000000080005d0c <_Bfree>: - 80005d0c: c981 beqz a1,80005d1c <_Bfree+0x10> - 80005d0e: 4598 lw a4,8(a1) - 80005d10: 753c ld a5,104(a0) - 80005d12: 070e slli a4,a4,0x3 - 80005d14: 97ba add a5,a5,a4 - 80005d16: 6398 ld a4,0(a5) - 80005d18: e198 sd a4,0(a1) - 80005d1a: e38c sd a1,0(a5) - 80005d1c: 8082 ret +00000000800063f4 <_Bfree>: + 800063f4: c981 beqz a1,80006404 <_Bfree+0x10> + 800063f6: 4598 lw a4,8(a1) + 800063f8: 753c ld a5,104(a0) + 800063fa: 070e slli a4,a4,0x3 + 800063fc: 97ba add a5,a5,a4 + 800063fe: 6398 ld a4,0(a5) + 80006400: e198 sd a4,0(a1) + 80006402: e38c sd a1,0(a5) + 80006404: 8082 ret -0000000080005d1e <__multadd>: - 80005d1e: 0145a303 lw t1,20(a1) - 80005d22: 8e2e mv t3,a1 - 80005d24: 8736 mv a4,a3 - 80005d26: 01858813 addi a6,a1,24 - 80005d2a: 4881 li a7,0 - 80005d2c: 00082783 lw a5,0(a6) - 80005d30: 0811 addi a6,a6,4 - 80005d32: 2885 addiw a7,a7,1 - 80005d34: 03079693 slli a3,a5,0x30 - 80005d38: 92c1 srli a3,a3,0x30 - 80005d3a: 02c686bb mulw a3,a3,a2 - 80005d3e: 0107d79b srliw a5,a5,0x10 - 80005d42: 02c787bb mulw a5,a5,a2 - 80005d46: 9eb9 addw a3,a3,a4 - 80005d48: 0106d71b srliw a4,a3,0x10 - 80005d4c: 16c2 slli a3,a3,0x30 - 80005d4e: 92c1 srli a3,a3,0x30 - 80005d50: 9fb9 addw a5,a5,a4 - 80005d52: 0107971b slliw a4,a5,0x10 - 80005d56: 9f35 addw a4,a4,a3 - 80005d58: fee82e23 sw a4,-4(a6) - 80005d5c: 0107d71b srliw a4,a5,0x10 - 80005d60: fc68c6e3 blt a7,t1,80005d2c <__multadd+0xe> - 80005d64: cf09 beqz a4,80005d7e <__multadd+0x60> - 80005d66: 00ce2783 lw a5,12(t3) - 80005d6a: 00f35c63 bge t1,a5,80005d82 <__multadd+0x64> - 80005d6e: 00231693 slli a3,t1,0x2 - 80005d72: 96f2 add a3,a3,t3 - 80005d74: ce98 sw a4,24(a3) - 80005d76: 0013079b addiw a5,t1,1 - 80005d7a: 00fe2a23 sw a5,20(t3) - 80005d7e: 8572 mv a0,t3 - 80005d80: 8082 ret - 80005d82: 008e2583 lw a1,8(t3) - 80005d86: 7179 addi sp,sp,-48 - 80005d88: f022 sd s0,32(sp) - 80005d8a: 2585 addiw a1,a1,1 - 80005d8c: e83a sd a4,16(sp) - 80005d8e: e41a sd t1,8(sp) - 80005d90: e072 sd t3,0(sp) - 80005d92: f406 sd ra,40(sp) - 80005d94: 842a mv s0,a0 - 80005d96: f07ff0ef jal 80005c9c <_Balloc> - 80005d9a: 6e02 ld t3,0(sp) - 80005d9c: 6322 ld t1,8(sp) - 80005d9e: 6742 ld a4,16(sp) - 80005da0: 86aa mv a3,a0 - 80005da2: c929 beqz a0,80005df4 <__multadd+0xd6> - 80005da4: 014e2603 lw a2,20(t3) - 80005da8: 010e0593 addi a1,t3,16 - 80005dac: 0541 addi a0,a0,16 - 80005dae: 0609 addi a2,a2,2 - 80005db0: 060a slli a2,a2,0x2 - 80005db2: ec3a sd a4,24(sp) - 80005db4: e81a sd t1,16(sp) - 80005db6: e472 sd t3,8(sp) - 80005db8: e036 sd a3,0(sp) - 80005dba: ad5fd0ef jal 8000388e - 80005dbe: 6e22 ld t3,8(sp) - 80005dc0: 743c ld a5,104(s0) - 80005dc2: 6342 ld t1,16(sp) - 80005dc4: 008e2603 lw a2,8(t3) - 80005dc8: 6762 ld a4,24(sp) - 80005dca: 00231693 slli a3,t1,0x2 - 80005dce: 060e slli a2,a2,0x3 - 80005dd0: 97b2 add a5,a5,a2 - 80005dd2: 6390 ld a2,0(a5) - 80005dd4: 70a2 ld ra,40(sp) - 80005dd6: 7402 ld s0,32(sp) - 80005dd8: 00ce3023 sd a2,0(t3) - 80005ddc: 01c7b023 sd t3,0(a5) - 80005de0: 6e02 ld t3,0(sp) - 80005de2: 0013079b addiw a5,t1,1 - 80005de6: 96f2 add a3,a3,t3 - 80005de8: ce98 sw a4,24(a3) - 80005dea: 00fe2a23 sw a5,20(t3) - 80005dee: 8572 mv a0,t3 - 80005df0: 6145 addi sp,sp,48 - 80005df2: 8082 ret - 80005df4: 00003697 auipc a3,0x3 - 80005df8: 51c68693 addi a3,a3,1308 # 80009310 <__clzdi2+0x336> - 80005dfc: 4601 li a2,0 - 80005dfe: 0ba00593 li a1,186 - 80005e02: 00003517 auipc a0,0x3 - 80005e06: 58e50513 addi a0,a0,1422 # 80009390 <__clzdi2+0x3b6> - 80005e0a: 6e9000ef jal 80006cf2 <__assert_func> +0000000080006406 <__multadd>: + 80006406: 0145a303 lw t1,20(a1) + 8000640a: 8e2e mv t3,a1 + 8000640c: 8736 mv a4,a3 + 8000640e: 01858813 addi a6,a1,24 + 80006412: 4881 li a7,0 + 80006414: 00082783 lw a5,0(a6) + 80006418: 0811 addi a6,a6,4 + 8000641a: 2885 addiw a7,a7,1 + 8000641c: 03079693 slli a3,a5,0x30 + 80006420: 92c1 srli a3,a3,0x30 + 80006422: 02c686bb mulw a3,a3,a2 + 80006426: 0107d79b srliw a5,a5,0x10 + 8000642a: 02c787bb mulw a5,a5,a2 + 8000642e: 9eb9 addw a3,a3,a4 + 80006430: 0106d71b srliw a4,a3,0x10 + 80006434: 16c2 slli a3,a3,0x30 + 80006436: 92c1 srli a3,a3,0x30 + 80006438: 9fb9 addw a5,a5,a4 + 8000643a: 0107971b slliw a4,a5,0x10 + 8000643e: 9f35 addw a4,a4,a3 + 80006440: fee82e23 sw a4,-4(a6) + 80006444: 0107d71b srliw a4,a5,0x10 + 80006448: fc68c6e3 blt a7,t1,80006414 <__multadd+0xe> + 8000644c: cf09 beqz a4,80006466 <__multadd+0x60> + 8000644e: 00ce2783 lw a5,12(t3) + 80006452: 00f35c63 bge t1,a5,8000646a <__multadd+0x64> + 80006456: 00231693 slli a3,t1,0x2 + 8000645a: 96f2 add a3,a3,t3 + 8000645c: ce98 sw a4,24(a3) + 8000645e: 0013079b addiw a5,t1,1 + 80006462: 00fe2a23 sw a5,20(t3) + 80006466: 8572 mv a0,t3 + 80006468: 8082 ret + 8000646a: 008e2583 lw a1,8(t3) + 8000646e: 7179 addi sp,sp,-48 + 80006470: f022 sd s0,32(sp) + 80006472: 2585 addiw a1,a1,1 + 80006474: e83a sd a4,16(sp) + 80006476: e41a sd t1,8(sp) + 80006478: e072 sd t3,0(sp) + 8000647a: f406 sd ra,40(sp) + 8000647c: 842a mv s0,a0 + 8000647e: f07ff0ef jal 80006384 <_Balloc> + 80006482: 6e02 ld t3,0(sp) + 80006484: 6322 ld t1,8(sp) + 80006486: 6742 ld a4,16(sp) + 80006488: 86aa mv a3,a0 + 8000648a: c929 beqz a0,800064dc <__multadd+0xd6> + 8000648c: 014e2603 lw a2,20(t3) + 80006490: 010e0593 addi a1,t3,16 + 80006494: 0541 addi a0,a0,16 + 80006496: 0609 addi a2,a2,2 + 80006498: 060a slli a2,a2,0x2 + 8000649a: ec3a sd a4,24(sp) + 8000649c: e81a sd t1,16(sp) + 8000649e: e472 sd t3,8(sp) + 800064a0: e036 sd a3,0(sp) + 800064a2: ad5fd0ef jal 80003f76 + 800064a6: 6e22 ld t3,8(sp) + 800064a8: 743c ld a5,104(s0) + 800064aa: 6342 ld t1,16(sp) + 800064ac: 008e2603 lw a2,8(t3) + 800064b0: 6762 ld a4,24(sp) + 800064b2: 00231693 slli a3,t1,0x2 + 800064b6: 060e slli a2,a2,0x3 + 800064b8: 97b2 add a5,a5,a2 + 800064ba: 6390 ld a2,0(a5) + 800064bc: 70a2 ld ra,40(sp) + 800064be: 7402 ld s0,32(sp) + 800064c0: 00ce3023 sd a2,0(t3) + 800064c4: 01c7b023 sd t3,0(a5) + 800064c8: 6e02 ld t3,0(sp) + 800064ca: 0013079b addiw a5,t1,1 + 800064ce: 96f2 add a3,a3,t3 + 800064d0: ce98 sw a4,24(a3) + 800064d2: 00fe2a23 sw a5,20(t3) + 800064d6: 8572 mv a0,t3 + 800064d8: 6145 addi sp,sp,48 + 800064da: 8082 ret + 800064dc: 00003697 auipc a3,0x3 + 800064e0: 7c468693 addi a3,a3,1988 # 80009ca0 <__clzdi2+0x5de> + 800064e4: 4601 li a2,0 + 800064e6: 0ba00593 li a1,186 + 800064ea: 00004517 auipc a0,0x4 + 800064ee: 83650513 addi a0,a0,-1994 # 80009d20 <__clzdi2+0x65e> + 800064f2: 6e9000ef jal 800073da <__assert_func> -0000000080005e0e <__hi0bits>: - 80005e0e: 87aa mv a5,a0 - 80005e10: 6741 lui a4,0x10 - 80005e12: 4501 li a0,0 - 80005e14: 00e7f563 bgeu a5,a4,80005e1e <__hi0bits+0x10> - 80005e18: 0107979b slliw a5,a5,0x10 - 80005e1c: 4541 li a0,16 - 80005e1e: 01000737 lui a4,0x1000 - 80005e22: 00e7f563 bgeu a5,a4,80005e2c <__hi0bits+0x1e> - 80005e26: 2521 addiw a0,a0,8 - 80005e28: 0087979b slliw a5,a5,0x8 - 80005e2c: 10000737 lui a4,0x10000 - 80005e30: 00e7ec63 bltu a5,a4,80005e48 <__hi0bits+0x3a> - 80005e34: 40000737 lui a4,0x40000 - 80005e38: 02e7f863 bgeu a5,a4,80005e68 <__hi0bits+0x5a> - 80005e3c: 02279713 slli a4,a5,0x22 - 80005e40: 02074963 bltz a4,80005e72 <__hi0bits+0x64> - 80005e44: 250d addiw a0,a0,3 - 80005e46: 8082 ret - 80005e48: 0047971b slliw a4,a5,0x4 - 80005e4c: 400006b7 lui a3,0x40000 - 80005e50: 2511 addiw a0,a0,4 - 80005e52: 00d77c63 bgeu a4,a3,80005e6a <__hi0bits+0x5c> - 80005e56: 0067979b slliw a5,a5,0x6 - 80005e5a: 0007cc63 bltz a5,80005e72 <__hi0bits+0x64> - 80005e5e: 8ff5 and a5,a5,a3 - 80005e60: f3f5 bnez a5,80005e44 <__hi0bits+0x36> - 80005e62: 02000513 li a0,32 - 80005e66: 8082 ret - 80005e68: 873e mv a4,a5 - 80005e6a: fe074ee3 bltz a4,80005e66 <__hi0bits+0x58> - 80005e6e: 2505 addiw a0,a0,1 - 80005e70: 8082 ret - 80005e72: 2509 addiw a0,a0,2 - 80005e74: 8082 ret +00000000800064f6 <__hi0bits>: + 800064f6: 87aa mv a5,a0 + 800064f8: 6741 lui a4,0x10 + 800064fa: 4501 li a0,0 + 800064fc: 00e7f563 bgeu a5,a4,80006506 <__hi0bits+0x10> + 80006500: 0107979b slliw a5,a5,0x10 + 80006504: 4541 li a0,16 + 80006506: 01000737 lui a4,0x1000 + 8000650a: 00e7f563 bgeu a5,a4,80006514 <__hi0bits+0x1e> + 8000650e: 2521 addiw a0,a0,8 + 80006510: 0087979b slliw a5,a5,0x8 + 80006514: 10000737 lui a4,0x10000 + 80006518: 00e7ec63 bltu a5,a4,80006530 <__hi0bits+0x3a> + 8000651c: 40000737 lui a4,0x40000 + 80006520: 02e7f863 bgeu a5,a4,80006550 <__hi0bits+0x5a> + 80006524: 02279713 slli a4,a5,0x22 + 80006528: 02074963 bltz a4,8000655a <__hi0bits+0x64> + 8000652c: 250d addiw a0,a0,3 + 8000652e: 8082 ret + 80006530: 0047971b slliw a4,a5,0x4 + 80006534: 400006b7 lui a3,0x40000 + 80006538: 2511 addiw a0,a0,4 + 8000653a: 00d77c63 bgeu a4,a3,80006552 <__hi0bits+0x5c> + 8000653e: 0067979b slliw a5,a5,0x6 + 80006542: 0007cc63 bltz a5,8000655a <__hi0bits+0x64> + 80006546: 8ff5 and a5,a5,a3 + 80006548: f3f5 bnez a5,8000652c <__hi0bits+0x36> + 8000654a: 02000513 li a0,32 + 8000654e: 8082 ret + 80006550: 873e mv a4,a5 + 80006552: fe074ee3 bltz a4,8000654e <__hi0bits+0x58> + 80006556: 2505 addiw a0,a0,1 + 80006558: 8082 ret + 8000655a: 2509 addiw a0,a0,2 + 8000655c: 8082 ret -0000000080005e76 <__lo0bits>: - 80005e76: 411c lw a5,0(a0) - 80005e78: 0077f713 andi a4,a5,7 - 80005e7c: 86be mv a3,a5 - 80005e7e: cf11 beqz a4,80005e9a <__lo0bits+0x24> - 80005e80: 0017f693 andi a3,a5,1 - 80005e84: 4701 li a4,0 - 80005e86: ea81 bnez a3,80005e96 <__lo0bits+0x20> - 80005e88: 0027f713 andi a4,a5,2 - 80005e8c: cf3d beqz a4,80005f0a <__lo0bits+0x94> - 80005e8e: 0017d79b srliw a5,a5,0x1 - 80005e92: c11c sw a5,0(a0) - 80005e94: 4705 li a4,1 - 80005e96: 853a mv a0,a4 - 80005e98: 8082 ret - 80005e9a: 03079713 slli a4,a5,0x30 - 80005e9e: 9341 srli a4,a4,0x30 - 80005ea0: eb0d bnez a4,80005ed2 <__lo0bits+0x5c> - 80005ea2: 0107d79b srliw a5,a5,0x10 - 80005ea6: 0ff7f693 zext.b a3,a5 - 80005eaa: 4741 li a4,16 - 80005eac: e681 bnez a3,80005eb4 <__lo0bits+0x3e> - 80005eae: 4761 li a4,24 - 80005eb0: 0087d79b srliw a5,a5,0x8 - 80005eb4: 00f7f693 andi a3,a5,15 - 80005eb8: c2a9 beqz a3,80005efa <__lo0bits+0x84> - 80005eba: 0037f693 andi a3,a5,3 - 80005ebe: c68d beqz a3,80005ee8 <__lo0bits+0x72> - 80005ec0: 0017f693 andi a3,a5,1 - 80005ec4: e681 bnez a3,80005ecc <__lo0bits+0x56> - 80005ec6: 2705 addiw a4,a4,1 # 40000001 <__dtim_size+0x3ff00001> - 80005ec8: 0017d79b srliw a5,a5,0x1 - 80005ecc: c11c sw a5,0(a0) - 80005ece: 853a mv a0,a4 - 80005ed0: 8082 ret - 80005ed2: 0ff7f713 zext.b a4,a5 - 80005ed6: c715 beqz a4,80005f02 <__lo0bits+0x8c> - 80005ed8: 8abd andi a3,a3,15 - 80005eda: ee95 bnez a3,80005f16 <__lo0bits+0xa0> - 80005edc: 4711 li a4,4 - 80005ede: 0047d79b srliw a5,a5,0x4 - 80005ee2: 0037f693 andi a3,a5,3 - 80005ee6: fee9 bnez a3,80005ec0 <__lo0bits+0x4a> - 80005ee8: 0027d69b srliw a3,a5,0x2 - 80005eec: 0016f613 andi a2,a3,1 - 80005ef0: ca05 beqz a2,80005f20 <__lo0bits+0xaa> - 80005ef2: 87b6 mv a5,a3 - 80005ef4: 2709 addiw a4,a4,2 - 80005ef6: c11c sw a5,0(a0) - 80005ef8: bfd9 j 80005ece <__lo0bits+0x58> - 80005efa: 2711 addiw a4,a4,4 - 80005efc: 0047d79b srliw a5,a5,0x4 - 80005f00: b7cd j 80005ee2 <__lo0bits+0x6c> - 80005f02: 4721 li a4,8 - 80005f04: 0087d79b srliw a5,a5,0x8 - 80005f08: b775 j 80005eb4 <__lo0bits+0x3e> - 80005f0a: 0027d79b srliw a5,a5,0x2 - 80005f0e: 4709 li a4,2 - 80005f10: c11c sw a5,0(a0) - 80005f12: 853a mv a0,a4 - 80005f14: 8082 ret - 80005f16: 0037d79b srliw a5,a5,0x3 - 80005f1a: 470d li a4,3 - 80005f1c: c11c sw a5,0(a0) - 80005f1e: bf45 j 80005ece <__lo0bits+0x58> - 80005f20: 0037d79b srliw a5,a5,0x3 - 80005f24: e781 bnez a5,80005f2c <__lo0bits+0xb6> - 80005f26: 02000713 li a4,32 - 80005f2a: b7b5 j 80005e96 <__lo0bits+0x20> - 80005f2c: 270d addiw a4,a4,3 - 80005f2e: c11c sw a5,0(a0) - 80005f30: bf79 j 80005ece <__lo0bits+0x58> +000000008000655e <__lo0bits>: + 8000655e: 411c lw a5,0(a0) + 80006560: 0077f713 andi a4,a5,7 + 80006564: 86be mv a3,a5 + 80006566: cf11 beqz a4,80006582 <__lo0bits+0x24> + 80006568: 0017f693 andi a3,a5,1 + 8000656c: 4701 li a4,0 + 8000656e: ea81 bnez a3,8000657e <__lo0bits+0x20> + 80006570: 0027f713 andi a4,a5,2 + 80006574: cf3d beqz a4,800065f2 <__lo0bits+0x94> + 80006576: 0017d79b srliw a5,a5,0x1 + 8000657a: c11c sw a5,0(a0) + 8000657c: 4705 li a4,1 + 8000657e: 853a mv a0,a4 + 80006580: 8082 ret + 80006582: 03079713 slli a4,a5,0x30 + 80006586: 9341 srli a4,a4,0x30 + 80006588: eb0d bnez a4,800065ba <__lo0bits+0x5c> + 8000658a: 0107d79b srliw a5,a5,0x10 + 8000658e: 0ff7f693 zext.b a3,a5 + 80006592: 4741 li a4,16 + 80006594: e681 bnez a3,8000659c <__lo0bits+0x3e> + 80006596: 4761 li a4,24 + 80006598: 0087d79b srliw a5,a5,0x8 + 8000659c: 00f7f693 andi a3,a5,15 + 800065a0: c2a9 beqz a3,800065e2 <__lo0bits+0x84> + 800065a2: 0037f693 andi a3,a5,3 + 800065a6: c68d beqz a3,800065d0 <__lo0bits+0x72> + 800065a8: 0017f693 andi a3,a5,1 + 800065ac: e681 bnez a3,800065b4 <__lo0bits+0x56> + 800065ae: 2705 addiw a4,a4,1 # 40000001 <__dtim_size+0x3ff00001> + 800065b0: 0017d79b srliw a5,a5,0x1 + 800065b4: c11c sw a5,0(a0) + 800065b6: 853a mv a0,a4 + 800065b8: 8082 ret + 800065ba: 0ff7f713 zext.b a4,a5 + 800065be: c715 beqz a4,800065ea <__lo0bits+0x8c> + 800065c0: 8abd andi a3,a3,15 + 800065c2: ee95 bnez a3,800065fe <__lo0bits+0xa0> + 800065c4: 4711 li a4,4 + 800065c6: 0047d79b srliw a5,a5,0x4 + 800065ca: 0037f693 andi a3,a5,3 + 800065ce: fee9 bnez a3,800065a8 <__lo0bits+0x4a> + 800065d0: 0027d69b srliw a3,a5,0x2 + 800065d4: 0016f613 andi a2,a3,1 + 800065d8: ca05 beqz a2,80006608 <__lo0bits+0xaa> + 800065da: 87b6 mv a5,a3 + 800065dc: 2709 addiw a4,a4,2 + 800065de: c11c sw a5,0(a0) + 800065e0: bfd9 j 800065b6 <__lo0bits+0x58> + 800065e2: 2711 addiw a4,a4,4 + 800065e4: 0047d79b srliw a5,a5,0x4 + 800065e8: b7cd j 800065ca <__lo0bits+0x6c> + 800065ea: 4721 li a4,8 + 800065ec: 0087d79b srliw a5,a5,0x8 + 800065f0: b775 j 8000659c <__lo0bits+0x3e> + 800065f2: 0027d79b srliw a5,a5,0x2 + 800065f6: 4709 li a4,2 + 800065f8: c11c sw a5,0(a0) + 800065fa: 853a mv a0,a4 + 800065fc: 8082 ret + 800065fe: 0037d79b srliw a5,a5,0x3 + 80006602: 470d li a4,3 + 80006604: c11c sw a5,0(a0) + 80006606: bf45 j 800065b6 <__lo0bits+0x58> + 80006608: 0037d79b srliw a5,a5,0x3 + 8000660c: e781 bnez a5,80006614 <__lo0bits+0xb6> + 8000660e: 02000713 li a4,32 + 80006612: b7b5 j 8000657e <__lo0bits+0x20> + 80006614: 270d addiw a4,a4,3 + 80006616: c11c sw a5,0(a0) + 80006618: bf79 j 800065b6 <__lo0bits+0x58> -0000000080005f32 <__i2b>: - 80005f32: 753c ld a5,104(a0) - 80005f34: 1101 addi sp,sp,-32 - 80005f36: ec06 sd ra,24(sp) - 80005f38: 872a mv a4,a0 - 80005f3a: 86ae mv a3,a1 - 80005f3c: cf81 beqz a5,80005f54 <__i2b+0x22> - 80005f3e: 6788 ld a0,8(a5) - 80005f40: c139 beqz a0,80005f86 <__i2b+0x54> - 80005f42: 6118 ld a4,0(a0) - 80005f44: 60e2 ld ra,24(sp) - 80005f46: e798 sd a4,8(a5) - 80005f48: 4785 li a5,1 - 80005f4a: 1782 slli a5,a5,0x20 - 80005f4c: cd14 sw a3,24(a0) - 80005f4e: e91c sd a5,16(a0) - 80005f50: 6105 addi sp,sp,32 - 80005f52: 8082 ret - 80005f54: e42e sd a1,8(sp) - 80005f56: 04100613 li a2,65 - 80005f5a: 45a1 li a1,8 - 80005f5c: e02a sd a0,0(sp) - 80005f5e: 5d5000ef jal 80006d32 <_calloc_r> - 80005f62: 6702 ld a4,0(sp) - 80005f64: 66a2 ld a3,8(sp) - 80005f66: 87aa mv a5,a0 - 80005f68: f728 sd a0,104(a4) - 80005f6a: f971 bnez a0,80005f3e <__i2b+0xc> - 80005f6c: 00003697 auipc a3,0x3 - 80005f70: 3a468693 addi a3,a3,932 # 80009310 <__clzdi2+0x336> - 80005f74: 4601 li a2,0 - 80005f76: 14500593 li a1,325 - 80005f7a: 00003517 auipc a0,0x3 - 80005f7e: 41650513 addi a0,a0,1046 # 80009390 <__clzdi2+0x3b6> - 80005f82: 571000ef jal 80006cf2 <__assert_func> - 80005f86: 853a mv a0,a4 - 80005f88: 02400613 li a2,36 - 80005f8c: 4585 li a1,1 - 80005f8e: e036 sd a3,0(sp) - 80005f90: 5a3000ef jal 80006d32 <_calloc_r> - 80005f94: dd61 beqz a0,80005f6c <__i2b+0x3a> - 80005f96: 4785 li a5,1 - 80005f98: 1786 slli a5,a5,0x21 - 80005f9a: 6682 ld a3,0(sp) - 80005f9c: 0785 addi a5,a5,1 - 80005f9e: 60e2 ld ra,24(sp) - 80005fa0: e51c sd a5,8(a0) - 80005fa2: 4785 li a5,1 - 80005fa4: 1782 slli a5,a5,0x20 - 80005fa6: cd14 sw a3,24(a0) - 80005fa8: e91c sd a5,16(a0) - 80005faa: 6105 addi sp,sp,32 - 80005fac: 8082 ret +000000008000661a <__i2b>: + 8000661a: 753c ld a5,104(a0) + 8000661c: 1101 addi sp,sp,-32 + 8000661e: ec06 sd ra,24(sp) + 80006620: 872a mv a4,a0 + 80006622: 86ae mv a3,a1 + 80006624: cf81 beqz a5,8000663c <__i2b+0x22> + 80006626: 6788 ld a0,8(a5) + 80006628: c139 beqz a0,8000666e <__i2b+0x54> + 8000662a: 6118 ld a4,0(a0) + 8000662c: 60e2 ld ra,24(sp) + 8000662e: e798 sd a4,8(a5) + 80006630: 4785 li a5,1 + 80006632: 1782 slli a5,a5,0x20 + 80006634: cd14 sw a3,24(a0) + 80006636: e91c sd a5,16(a0) + 80006638: 6105 addi sp,sp,32 + 8000663a: 8082 ret + 8000663c: e42e sd a1,8(sp) + 8000663e: 04100613 li a2,65 + 80006642: 45a1 li a1,8 + 80006644: e02a sd a0,0(sp) + 80006646: 5d5000ef jal 8000741a <_calloc_r> + 8000664a: 6702 ld a4,0(sp) + 8000664c: 66a2 ld a3,8(sp) + 8000664e: 87aa mv a5,a0 + 80006650: f728 sd a0,104(a4) + 80006652: f971 bnez a0,80006626 <__i2b+0xc> + 80006654: 00003697 auipc a3,0x3 + 80006658: 64c68693 addi a3,a3,1612 # 80009ca0 <__clzdi2+0x5de> + 8000665c: 4601 li a2,0 + 8000665e: 14500593 li a1,325 + 80006662: 00003517 auipc a0,0x3 + 80006666: 6be50513 addi a0,a0,1726 # 80009d20 <__clzdi2+0x65e> + 8000666a: 571000ef jal 800073da <__assert_func> + 8000666e: 853a mv a0,a4 + 80006670: 02400613 li a2,36 + 80006674: 4585 li a1,1 + 80006676: e036 sd a3,0(sp) + 80006678: 5a3000ef jal 8000741a <_calloc_r> + 8000667c: dd61 beqz a0,80006654 <__i2b+0x3a> + 8000667e: 4785 li a5,1 + 80006680: 1786 slli a5,a5,0x21 + 80006682: 6682 ld a3,0(sp) + 80006684: 0785 addi a5,a5,1 + 80006686: 60e2 ld ra,24(sp) + 80006688: e51c sd a5,8(a0) + 8000668a: 4785 li a5,1 + 8000668c: 1782 slli a5,a5,0x20 + 8000668e: cd14 sw a3,24(a0) + 80006690: e91c sd a5,16(a0) + 80006692: 6105 addi sp,sp,32 + 80006694: 8082 ret -0000000080005fae <__multiply>: - 80005fae: 7139 addi sp,sp,-64 - 80005fb0: ec4e sd s3,24(sp) - 80005fb2: e852 sd s4,16(sp) - 80005fb4: 0145a983 lw s3,20(a1) - 80005fb8: 01462a03 lw s4,20(a2) - 80005fbc: f04a sd s2,32(sp) - 80005fbe: e456 sd s5,8(sp) - 80005fc0: fc06 sd ra,56(sp) - 80005fc2: f822 sd s0,48(sp) - 80005fc4: f426 sd s1,40(sp) - 80005fc6: 8aae mv s5,a1 - 80005fc8: 8932 mv s2,a2 - 80005fca: 0149c763 blt s3,s4,80005fd8 <__multiply+0x2a> - 80005fce: 8752 mv a4,s4 - 80005fd0: 892e mv s2,a1 - 80005fd2: 8a4e mv s4,s3 - 80005fd4: 8ab2 mv s5,a2 - 80005fd6: 89ba mv s3,a4 - 80005fd8: 00c92783 lw a5,12(s2) - 80005fdc: 013a04bb addw s1,s4,s3 - 80005fe0: 00892583 lw a1,8(s2) - 80005fe4: 8426 mv s0,s1 - 80005fe6: 0097d363 bge a5,s1,80005fec <__multiply+0x3e> - 80005fea: 2585 addiw a1,a1,1 - 80005fec: cb1ff0ef jal 80005c9c <_Balloc> - 80005ff0: 16050a63 beqz a0,80006164 <__multiply+0x1b6> - 80005ff4: 01850893 addi a7,a0,24 - 80005ff8: 00249813 slli a6,s1,0x2 - 80005ffc: 9846 add a6,a6,a7 - 80005ffe: 0108f863 bgeu a7,a6,8000600e <__multiply+0x60> - 80006002: 87c6 mv a5,a7 - 80006004: 0007a023 sw zero,0(a5) - 80006008: 0791 addi a5,a5,4 - 8000600a: ff07ede3 bltu a5,a6,80006004 <__multiply+0x56> - 8000600e: 018a8593 addi a1,s5,24 - 80006012: 00299313 slli t1,s3,0x2 - 80006016: 932e add t1,t1,a1 - 80006018: 1265f363 bgeu a1,t1,8000613e <__multiply+0x190> - 8000601c: 002a1693 slli a3,s4,0x2 - 80006020: 01890e93 addi t4,s2,24 - 80006024: 96f6 add a3,a3,t4 - 80006026: 01990e13 addi t3,s2,25 - 8000602a: 01c6be33 sltu t3,a3,t3 - 8000602e: 41268633 sub a2,a3,s2 - 80006032: 001e4e13 xori t3,t3,1 - 80006036: 161d addi a2,a2,-25 - 80006038: a809 j 8000604a <__multiply+0x9c> - 8000603a: 0102d29b srliw t0,t0,0x10 - 8000603e: 08029863 bnez t0,800060ce <__multiply+0x120> - 80006042: 0591 addi a1,a1,4 - 80006044: 0891 addi a7,a7,4 - 80006046: 0e65fc63 bgeu a1,t1,8000613e <__multiply+0x190> - 8000604a: 0005a283 lw t0,0(a1) - 8000604e: 03029913 slli s2,t0,0x30 - 80006052: 03095913 srli s2,s2,0x30 - 80006056: fe0902e3 beqz s2,8000603a <__multiply+0x8c> - 8000605a: 83c6 mv t2,a7 - 8000605c: 82f6 mv t0,t4 - 8000605e: 4701 li a4,0 - 80006060: 0002af83 lw t6,0(t0) - 80006064: 0003af03 lw t5,0(t2) - 80006068: 0391 addi t2,t2,4 - 8000606a: 030f9793 slli a5,t6,0x30 - 8000606e: 93c1 srli a5,a5,0x30 - 80006070: 032787bb mulw a5,a5,s2 - 80006074: 010fdf9b srliw t6,t6,0x10 - 80006078: 030f1993 slli s3,t5,0x30 - 8000607c: 0309d993 srli s3,s3,0x30 - 80006080: 010f5f1b srliw t5,t5,0x10 - 80006084: 0291 addi t0,t0,4 - 80006086: 032f8fbb mulw t6,t6,s2 - 8000608a: 013787bb addw a5,a5,s3 - 8000608e: 9fb9 addw a5,a5,a4 - 80006090: 0107d71b srliw a4,a5,0x10 - 80006094: 17c2 slli a5,a5,0x30 - 80006096: 93c1 srli a5,a5,0x30 - 80006098: 01ff0f3b addw t5,t5,t6 - 8000609c: 01e7073b addw a4,a4,t5 - 800060a0: 01071f1b slliw t5,a4,0x10 - 800060a4: 00ff67b3 or a5,t5,a5 - 800060a8: fef3ae23 sw a5,-4(t2) - 800060ac: 0107571b srliw a4,a4,0x10 - 800060b0: fad2e8e3 bltu t0,a3,80006060 <__multiply+0xb2> - 800060b4: 4781 li a5,0 - 800060b6: 000e0463 beqz t3,800060be <__multiply+0x110> - 800060ba: ffc67793 andi a5,a2,-4 - 800060be: 97c6 add a5,a5,a7 - 800060c0: c3d8 sw a4,4(a5) - 800060c2: 0005a283 lw t0,0(a1) - 800060c6: 0102d29b srliw t0,t0,0x10 - 800060ca: f6028ce3 beqz t0,80006042 <__multiply+0x94> - 800060ce: 0008a783 lw a5,0(a7) - 800060d2: 83c6 mv t2,a7 - 800060d4: 8ff6 mv t6,t4 - 800060d6: 893e mv s2,a5 - 800060d8: 4981 li s3,0 - 800060da: 000fdf03 lhu t5,0(t6) - 800060de: 0109571b srliw a4,s2,0x10 - 800060e2: 17c2 slli a5,a5,0x30 - 800060e4: 025f0f3b mulw t5,t5,t0 - 800060e8: 93c1 srli a5,a5,0x30 - 800060ea: 0f91 addi t6,t6,4 - 800060ec: 0043a903 lw s2,4(t2) - 800060f0: 0391 addi t2,t2,4 - 800060f2: 03091a13 slli s4,s2,0x30 - 800060f6: 030a5a13 srli s4,s4,0x30 - 800060fa: 013f0f3b addw t5,t5,s3 - 800060fe: 01e7073b addw a4,a4,t5 - 80006102: 01071f1b slliw t5,a4,0x10 - 80006106: 00ff67b3 or a5,t5,a5 - 8000610a: fef3ae23 sw a5,-4(t2) - 8000610e: ffefd783 lhu a5,-2(t6) - 80006112: 0107571b srliw a4,a4,0x10 - 80006116: 025787bb mulw a5,a5,t0 - 8000611a: 014787bb addw a5,a5,s4 - 8000611e: 9fb9 addw a5,a5,a4 - 80006120: 0107d99b srliw s3,a5,0x10 - 80006124: fadfebe3 bltu t6,a3,800060da <__multiply+0x12c> - 80006128: 4701 li a4,0 - 8000612a: 000e0463 beqz t3,80006132 <__multiply+0x184> - 8000612e: ffc67713 andi a4,a2,-4 - 80006132: 9746 add a4,a4,a7 - 80006134: c35c sw a5,4(a4) - 80006136: 0591 addi a1,a1,4 - 80006138: 0891 addi a7,a7,4 - 8000613a: f065e8e3 bltu a1,t1,8000604a <__multiply+0x9c> - 8000613e: 00904563 bgtz s1,80006148 <__multiply+0x19a> - 80006142: a039 j 80006150 <__multiply+0x1a2> - 80006144: 347d addiw s0,s0,-1 - 80006146: c409 beqz s0,80006150 <__multiply+0x1a2> - 80006148: ffc82783 lw a5,-4(a6) - 8000614c: 1871 addi a6,a6,-4 - 8000614e: dbfd beqz a5,80006144 <__multiply+0x196> - 80006150: 70e2 ld ra,56(sp) - 80006152: c940 sw s0,20(a0) - 80006154: 7442 ld s0,48(sp) - 80006156: 74a2 ld s1,40(sp) - 80006158: 7902 ld s2,32(sp) - 8000615a: 69e2 ld s3,24(sp) - 8000615c: 6a42 ld s4,16(sp) - 8000615e: 6aa2 ld s5,8(sp) - 80006160: 6121 addi sp,sp,64 - 80006162: 8082 ret - 80006164: 00003697 auipc a3,0x3 - 80006168: 1ac68693 addi a3,a3,428 # 80009310 <__clzdi2+0x336> - 8000616c: 4601 li a2,0 - 8000616e: 16200593 li a1,354 - 80006172: 00003517 auipc a0,0x3 - 80006176: 21e50513 addi a0,a0,542 # 80009390 <__clzdi2+0x3b6> - 8000617a: 379000ef jal 80006cf2 <__assert_func> +0000000080006696 <__multiply>: + 80006696: 7139 addi sp,sp,-64 + 80006698: ec4e sd s3,24(sp) + 8000669a: e852 sd s4,16(sp) + 8000669c: 0145a983 lw s3,20(a1) + 800066a0: 01462a03 lw s4,20(a2) + 800066a4: f04a sd s2,32(sp) + 800066a6: e456 sd s5,8(sp) + 800066a8: fc06 sd ra,56(sp) + 800066aa: f822 sd s0,48(sp) + 800066ac: f426 sd s1,40(sp) + 800066ae: 8aae mv s5,a1 + 800066b0: 8932 mv s2,a2 + 800066b2: 0149c763 blt s3,s4,800066c0 <__multiply+0x2a> + 800066b6: 8752 mv a4,s4 + 800066b8: 892e mv s2,a1 + 800066ba: 8a4e mv s4,s3 + 800066bc: 8ab2 mv s5,a2 + 800066be: 89ba mv s3,a4 + 800066c0: 00c92783 lw a5,12(s2) + 800066c4: 013a04bb addw s1,s4,s3 + 800066c8: 00892583 lw a1,8(s2) + 800066cc: 8426 mv s0,s1 + 800066ce: 0097d363 bge a5,s1,800066d4 <__multiply+0x3e> + 800066d2: 2585 addiw a1,a1,1 + 800066d4: cb1ff0ef jal 80006384 <_Balloc> + 800066d8: 16050a63 beqz a0,8000684c <__multiply+0x1b6> + 800066dc: 01850893 addi a7,a0,24 + 800066e0: 00249813 slli a6,s1,0x2 + 800066e4: 9846 add a6,a6,a7 + 800066e6: 0108f863 bgeu a7,a6,800066f6 <__multiply+0x60> + 800066ea: 87c6 mv a5,a7 + 800066ec: 0007a023 sw zero,0(a5) + 800066f0: 0791 addi a5,a5,4 + 800066f2: ff07ede3 bltu a5,a6,800066ec <__multiply+0x56> + 800066f6: 018a8593 addi a1,s5,24 + 800066fa: 00299313 slli t1,s3,0x2 + 800066fe: 932e add t1,t1,a1 + 80006700: 1265f363 bgeu a1,t1,80006826 <__multiply+0x190> + 80006704: 002a1693 slli a3,s4,0x2 + 80006708: 01890e93 addi t4,s2,24 + 8000670c: 96f6 add a3,a3,t4 + 8000670e: 01990e13 addi t3,s2,25 + 80006712: 01c6be33 sltu t3,a3,t3 + 80006716: 41268633 sub a2,a3,s2 + 8000671a: 001e4e13 xori t3,t3,1 + 8000671e: 161d addi a2,a2,-25 + 80006720: a809 j 80006732 <__multiply+0x9c> + 80006722: 0102d29b srliw t0,t0,0x10 + 80006726: 08029863 bnez t0,800067b6 <__multiply+0x120> + 8000672a: 0591 addi a1,a1,4 + 8000672c: 0891 addi a7,a7,4 + 8000672e: 0e65fc63 bgeu a1,t1,80006826 <__multiply+0x190> + 80006732: 0005a283 lw t0,0(a1) + 80006736: 03029913 slli s2,t0,0x30 + 8000673a: 03095913 srli s2,s2,0x30 + 8000673e: fe0902e3 beqz s2,80006722 <__multiply+0x8c> + 80006742: 83c6 mv t2,a7 + 80006744: 82f6 mv t0,t4 + 80006746: 4701 li a4,0 + 80006748: 0002af83 lw t6,0(t0) + 8000674c: 0003af03 lw t5,0(t2) + 80006750: 0391 addi t2,t2,4 + 80006752: 030f9793 slli a5,t6,0x30 + 80006756: 93c1 srli a5,a5,0x30 + 80006758: 032787bb mulw a5,a5,s2 + 8000675c: 010fdf9b srliw t6,t6,0x10 + 80006760: 030f1993 slli s3,t5,0x30 + 80006764: 0309d993 srli s3,s3,0x30 + 80006768: 010f5f1b srliw t5,t5,0x10 + 8000676c: 0291 addi t0,t0,4 + 8000676e: 032f8fbb mulw t6,t6,s2 + 80006772: 013787bb addw a5,a5,s3 + 80006776: 9fb9 addw a5,a5,a4 + 80006778: 0107d71b srliw a4,a5,0x10 + 8000677c: 17c2 slli a5,a5,0x30 + 8000677e: 93c1 srli a5,a5,0x30 + 80006780: 01ff0f3b addw t5,t5,t6 + 80006784: 01e7073b addw a4,a4,t5 + 80006788: 01071f1b slliw t5,a4,0x10 + 8000678c: 00ff67b3 or a5,t5,a5 + 80006790: fef3ae23 sw a5,-4(t2) + 80006794: 0107571b srliw a4,a4,0x10 + 80006798: fad2e8e3 bltu t0,a3,80006748 <__multiply+0xb2> + 8000679c: 4781 li a5,0 + 8000679e: 000e0463 beqz t3,800067a6 <__multiply+0x110> + 800067a2: ffc67793 andi a5,a2,-4 + 800067a6: 97c6 add a5,a5,a7 + 800067a8: c3d8 sw a4,4(a5) + 800067aa: 0005a283 lw t0,0(a1) + 800067ae: 0102d29b srliw t0,t0,0x10 + 800067b2: f6028ce3 beqz t0,8000672a <__multiply+0x94> + 800067b6: 0008a783 lw a5,0(a7) + 800067ba: 83c6 mv t2,a7 + 800067bc: 8ff6 mv t6,t4 + 800067be: 893e mv s2,a5 + 800067c0: 4981 li s3,0 + 800067c2: 000fdf03 lhu t5,0(t6) + 800067c6: 0109571b srliw a4,s2,0x10 + 800067ca: 17c2 slli a5,a5,0x30 + 800067cc: 025f0f3b mulw t5,t5,t0 + 800067d0: 93c1 srli a5,a5,0x30 + 800067d2: 0f91 addi t6,t6,4 + 800067d4: 0043a903 lw s2,4(t2) + 800067d8: 0391 addi t2,t2,4 + 800067da: 03091a13 slli s4,s2,0x30 + 800067de: 030a5a13 srli s4,s4,0x30 + 800067e2: 013f0f3b addw t5,t5,s3 + 800067e6: 01e7073b addw a4,a4,t5 + 800067ea: 01071f1b slliw t5,a4,0x10 + 800067ee: 00ff67b3 or a5,t5,a5 + 800067f2: fef3ae23 sw a5,-4(t2) + 800067f6: ffefd783 lhu a5,-2(t6) + 800067fa: 0107571b srliw a4,a4,0x10 + 800067fe: 025787bb mulw a5,a5,t0 + 80006802: 014787bb addw a5,a5,s4 + 80006806: 9fb9 addw a5,a5,a4 + 80006808: 0107d99b srliw s3,a5,0x10 + 8000680c: fadfebe3 bltu t6,a3,800067c2 <__multiply+0x12c> + 80006810: 4701 li a4,0 + 80006812: 000e0463 beqz t3,8000681a <__multiply+0x184> + 80006816: ffc67713 andi a4,a2,-4 + 8000681a: 9746 add a4,a4,a7 + 8000681c: c35c sw a5,4(a4) + 8000681e: 0591 addi a1,a1,4 + 80006820: 0891 addi a7,a7,4 + 80006822: f065e8e3 bltu a1,t1,80006732 <__multiply+0x9c> + 80006826: 00904563 bgtz s1,80006830 <__multiply+0x19a> + 8000682a: a039 j 80006838 <__multiply+0x1a2> + 8000682c: 347d addiw s0,s0,-1 + 8000682e: c409 beqz s0,80006838 <__multiply+0x1a2> + 80006830: ffc82783 lw a5,-4(a6) + 80006834: 1871 addi a6,a6,-4 + 80006836: dbfd beqz a5,8000682c <__multiply+0x196> + 80006838: 70e2 ld ra,56(sp) + 8000683a: c940 sw s0,20(a0) + 8000683c: 7442 ld s0,48(sp) + 8000683e: 74a2 ld s1,40(sp) + 80006840: 7902 ld s2,32(sp) + 80006842: 69e2 ld s3,24(sp) + 80006844: 6a42 ld s4,16(sp) + 80006846: 6aa2 ld s5,8(sp) + 80006848: 6121 addi sp,sp,64 + 8000684a: 8082 ret + 8000684c: 00003697 auipc a3,0x3 + 80006850: 45468693 addi a3,a3,1108 # 80009ca0 <__clzdi2+0x5de> + 80006854: 4601 li a2,0 + 80006856: 16200593 li a1,354 + 8000685a: 00003517 auipc a0,0x3 + 8000685e: 4c650513 addi a0,a0,1222 # 80009d20 <__clzdi2+0x65e> + 80006862: 379000ef jal 800073da <__assert_func> -000000008000617e <__pow5mult>: - 8000617e: 7179 addi sp,sp,-48 - 80006180: f022 sd s0,32(sp) - 80006182: e84a sd s2,16(sp) - 80006184: e44e sd s3,8(sp) - 80006186: f406 sd ra,40(sp) - 80006188: 00367793 andi a5,a2,3 - 8000618c: 8432 mv s0,a2 - 8000618e: 89aa mv s3,a0 - 80006190: 892e mv s2,a1 - 80006192: e3d9 bnez a5,80006218 <__pow5mult+0x9a> - 80006194: 4024541b sraiw s0,s0,0x2 - 80006198: c82d beqz s0,8000620a <__pow5mult+0x8c> - 8000619a: ec26 sd s1,24(sp) - 8000619c: 0609b483 ld s1,96(s3) - 800061a0: c8c9 beqz s1,80006232 <__pow5mult+0xb4> - 800061a2: 00147793 andi a5,s0,1 - 800061a6: 4014541b sraiw s0,s0,0x1 - 800061aa: eb89 bnez a5,800061bc <__pow5mult+0x3e> - 800061ac: 6088 ld a0,0(s1) - 800061ae: cd0d beqz a0,800061e8 <__pow5mult+0x6a> - 800061b0: 84aa mv s1,a0 - 800061b2: 00147793 andi a5,s0,1 - 800061b6: 4014541b sraiw s0,s0,0x1 - 800061ba: dbed beqz a5,800061ac <__pow5mult+0x2e> - 800061bc: 8626 mv a2,s1 - 800061be: 85ca mv a1,s2 - 800061c0: 854e mv a0,s3 - 800061c2: dedff0ef jal 80005fae <__multiply> - 800061c6: 00090d63 beqz s2,800061e0 <__pow5mult+0x62> - 800061ca: 00892703 lw a4,8(s2) - 800061ce: 0689b783 ld a5,104(s3) - 800061d2: 070e slli a4,a4,0x3 - 800061d4: 97ba add a5,a5,a4 - 800061d6: 6398 ld a4,0(a5) - 800061d8: 00e93023 sd a4,0(s2) - 800061dc: 0127b023 sd s2,0(a5) - 800061e0: cc11 beqz s0,800061fc <__pow5mult+0x7e> - 800061e2: 892a mv s2,a0 - 800061e4: 6088 ld a0,0(s1) - 800061e6: f569 bnez a0,800061b0 <__pow5mult+0x32> - 800061e8: 8626 mv a2,s1 - 800061ea: 85a6 mv a1,s1 - 800061ec: 854e mv a0,s3 - 800061ee: dc1ff0ef jal 80005fae <__multiply> - 800061f2: e088 sd a0,0(s1) - 800061f4: 00053023 sd zero,0(a0) - 800061f8: 84aa mv s1,a0 - 800061fa: bf65 j 800061b2 <__pow5mult+0x34> - 800061fc: 70a2 ld ra,40(sp) - 800061fe: 7402 ld s0,32(sp) - 80006200: 64e2 ld s1,24(sp) - 80006202: 6942 ld s2,16(sp) - 80006204: 69a2 ld s3,8(sp) - 80006206: 6145 addi sp,sp,48 - 80006208: 8082 ret - 8000620a: 70a2 ld ra,40(sp) - 8000620c: 7402 ld s0,32(sp) - 8000620e: 69a2 ld s3,8(sp) - 80006210: 854a mv a0,s2 - 80006212: 6942 ld s2,16(sp) - 80006214: 6145 addi sp,sp,48 - 80006216: 8082 ret - 80006218: 37fd addiw a5,a5,-1 - 8000621a: 00003717 auipc a4,0x3 - 8000621e: 45e70713 addi a4,a4,1118 # 80009678 - 80006222: 078a slli a5,a5,0x2 - 80006224: 97ba add a5,a5,a4 - 80006226: 4390 lw a2,0(a5) - 80006228: 4681 li a3,0 - 8000622a: af5ff0ef jal 80005d1e <__multadd> - 8000622e: 892a mv s2,a0 - 80006230: b795 j 80006194 <__pow5mult+0x16> - 80006232: 4585 li a1,1 - 80006234: 854e mv a0,s3 - 80006236: a67ff0ef jal 80005c9c <_Balloc> - 8000623a: 84aa mv s1,a0 - 8000623c: c919 beqz a0,80006252 <__pow5mult+0xd4> - 8000623e: 27100713 li a4,625 - 80006242: 4785 li a5,1 - 80006244: cd18 sw a4,24(a0) - 80006246: c95c sw a5,20(a0) - 80006248: 06a9b023 sd a0,96(s3) - 8000624c: 00053023 sd zero,0(a0) - 80006250: bf89 j 800061a2 <__pow5mult+0x24> - 80006252: 00003697 auipc a3,0x3 - 80006256: 0be68693 addi a3,a3,190 # 80009310 <__clzdi2+0x336> - 8000625a: 4601 li a2,0 - 8000625c: 14500593 li a1,325 - 80006260: 00003517 auipc a0,0x3 - 80006264: 13050513 addi a0,a0,304 # 80009390 <__clzdi2+0x3b6> - 80006268: 28b000ef jal 80006cf2 <__assert_func> +0000000080006866 <__pow5mult>: + 80006866: 7179 addi sp,sp,-48 + 80006868: f022 sd s0,32(sp) + 8000686a: e84a sd s2,16(sp) + 8000686c: e44e sd s3,8(sp) + 8000686e: f406 sd ra,40(sp) + 80006870: 00367793 andi a5,a2,3 + 80006874: 8432 mv s0,a2 + 80006876: 89aa mv s3,a0 + 80006878: 892e mv s2,a1 + 8000687a: e3d9 bnez a5,80006900 <__pow5mult+0x9a> + 8000687c: 4024541b sraiw s0,s0,0x2 + 80006880: c82d beqz s0,800068f2 <__pow5mult+0x8c> + 80006882: ec26 sd s1,24(sp) + 80006884: 0609b483 ld s1,96(s3) + 80006888: c8c9 beqz s1,8000691a <__pow5mult+0xb4> + 8000688a: 00147793 andi a5,s0,1 + 8000688e: 4014541b sraiw s0,s0,0x1 + 80006892: eb89 bnez a5,800068a4 <__pow5mult+0x3e> + 80006894: 6088 ld a0,0(s1) + 80006896: cd0d beqz a0,800068d0 <__pow5mult+0x6a> + 80006898: 84aa mv s1,a0 + 8000689a: 00147793 andi a5,s0,1 + 8000689e: 4014541b sraiw s0,s0,0x1 + 800068a2: dbed beqz a5,80006894 <__pow5mult+0x2e> + 800068a4: 8626 mv a2,s1 + 800068a6: 85ca mv a1,s2 + 800068a8: 854e mv a0,s3 + 800068aa: dedff0ef jal 80006696 <__multiply> + 800068ae: 00090d63 beqz s2,800068c8 <__pow5mult+0x62> + 800068b2: 00892703 lw a4,8(s2) + 800068b6: 0689b783 ld a5,104(s3) + 800068ba: 070e slli a4,a4,0x3 + 800068bc: 97ba add a5,a5,a4 + 800068be: 6398 ld a4,0(a5) + 800068c0: 00e93023 sd a4,0(s2) + 800068c4: 0127b023 sd s2,0(a5) + 800068c8: cc11 beqz s0,800068e4 <__pow5mult+0x7e> + 800068ca: 892a mv s2,a0 + 800068cc: 6088 ld a0,0(s1) + 800068ce: f569 bnez a0,80006898 <__pow5mult+0x32> + 800068d0: 8626 mv a2,s1 + 800068d2: 85a6 mv a1,s1 + 800068d4: 854e mv a0,s3 + 800068d6: dc1ff0ef jal 80006696 <__multiply> + 800068da: e088 sd a0,0(s1) + 800068dc: 00053023 sd zero,0(a0) + 800068e0: 84aa mv s1,a0 + 800068e2: bf65 j 8000689a <__pow5mult+0x34> + 800068e4: 70a2 ld ra,40(sp) + 800068e6: 7402 ld s0,32(sp) + 800068e8: 64e2 ld s1,24(sp) + 800068ea: 6942 ld s2,16(sp) + 800068ec: 69a2 ld s3,8(sp) + 800068ee: 6145 addi sp,sp,48 + 800068f0: 8082 ret + 800068f2: 70a2 ld ra,40(sp) + 800068f4: 7402 ld s0,32(sp) + 800068f6: 69a2 ld s3,8(sp) + 800068f8: 854a mv a0,s2 + 800068fa: 6942 ld s2,16(sp) + 800068fc: 6145 addi sp,sp,48 + 800068fe: 8082 ret + 80006900: 37fd addiw a5,a5,-1 + 80006902: 00003717 auipc a4,0x3 + 80006906: 70670713 addi a4,a4,1798 # 8000a008 + 8000690a: 078a slli a5,a5,0x2 + 8000690c: 97ba add a5,a5,a4 + 8000690e: 4390 lw a2,0(a5) + 80006910: 4681 li a3,0 + 80006912: af5ff0ef jal 80006406 <__multadd> + 80006916: 892a mv s2,a0 + 80006918: b795 j 8000687c <__pow5mult+0x16> + 8000691a: 4585 li a1,1 + 8000691c: 854e mv a0,s3 + 8000691e: a67ff0ef jal 80006384 <_Balloc> + 80006922: 84aa mv s1,a0 + 80006924: c919 beqz a0,8000693a <__pow5mult+0xd4> + 80006926: 27100713 li a4,625 + 8000692a: 4785 li a5,1 + 8000692c: cd18 sw a4,24(a0) + 8000692e: c95c sw a5,20(a0) + 80006930: 06a9b023 sd a0,96(s3) + 80006934: 00053023 sd zero,0(a0) + 80006938: bf89 j 8000688a <__pow5mult+0x24> + 8000693a: 00003697 auipc a3,0x3 + 8000693e: 36668693 addi a3,a3,870 # 80009ca0 <__clzdi2+0x5de> + 80006942: 4601 li a2,0 + 80006944: 14500593 li a1,325 + 80006948: 00003517 auipc a0,0x3 + 8000694c: 3d850513 addi a0,a0,984 # 80009d20 <__clzdi2+0x65e> + 80006950: 28b000ef jal 800073da <__assert_func> -000000008000626c <__lshift>: - 8000626c: 7139 addi sp,sp,-64 - 8000626e: f04a sd s2,32(sp) - 80006270: 0145a903 lw s2,20(a1) - 80006274: 45dc lw a5,12(a1) - 80006276: e852 sd s4,16(sp) - 80006278: 40565a1b sraiw s4,a2,0x5 - 8000627c: 0149093b addw s2,s2,s4 - 80006280: f822 sd s0,48(sp) - 80006282: f426 sd s1,40(sp) - 80006284: ec4e sd s3,24(sp) - 80006286: fc06 sd ra,56(sp) - 80006288: 0019041b addiw s0,s2,1 - 8000628c: 84ae mv s1,a1 - 8000628e: 89aa mv s3,a0 - 80006290: 458c lw a1,8(a1) - 80006292: 0087d763 bge a5,s0,800062a0 <__lshift+0x34> - 80006296: 0017979b slliw a5,a5,0x1 - 8000629a: 2585 addiw a1,a1,1 - 8000629c: fe87cde3 blt a5,s0,80006296 <__lshift+0x2a> - 800062a0: 854e mv a0,s3 - 800062a2: e432 sd a2,8(sp) - 800062a4: 9f9ff0ef jal 80005c9c <_Balloc> - 800062a8: 6622 ld a2,8(sp) - 800062aa: cd45 beqz a0,80006362 <__lshift+0xf6> - 800062ac: 01850593 addi a1,a0,24 - 800062b0: 01405e63 blez s4,800062cc <__lshift+0x60> - 800062b4: 006a071b addiw a4,s4,6 - 800062b8: 070a slli a4,a4,0x2 - 800062ba: 972a add a4,a4,a0 - 800062bc: 87ae mv a5,a1 - 800062be: 0791 addi a5,a5,4 - 800062c0: fe07ae23 sw zero,-4(a5) - 800062c4: fee79de3 bne a5,a4,800062be <__lshift+0x52> - 800062c8: 0a0a slli s4,s4,0x2 - 800062ca: 95d2 add a1,a1,s4 - 800062cc: 0144a803 lw a6,20(s1) - 800062d0: 01848793 addi a5,s1,24 - 800062d4: 8a7d andi a2,a2,31 - 800062d6: 080a slli a6,a6,0x2 - 800062d8: 983e add a6,a6,a5 - 800062da: c62d beqz a2,80006344 <__lshift+0xd8> - 800062dc: 02000313 li t1,32 - 800062e0: 40c3033b subw t1,t1,a2 - 800062e4: 88ae mv a7,a1 - 800062e6: 4681 li a3,0 - 800062e8: 4398 lw a4,0(a5) - 800062ea: 0891 addi a7,a7,4 - 800062ec: 0791 addi a5,a5,4 - 800062ee: 00c7173b sllw a4,a4,a2 - 800062f2: 8f55 or a4,a4,a3 - 800062f4: fee8ae23 sw a4,-4(a7) - 800062f8: ffc7a683 lw a3,-4(a5) - 800062fc: 0066d6bb srlw a3,a3,t1 - 80006300: ff07e4e3 bltu a5,a6,800062e8 <__lshift+0x7c> - 80006304: 01948793 addi a5,s1,25 - 80006308: 4701 li a4,0 - 8000630a: 00f86763 bltu a6,a5,80006318 <__lshift+0xac> - 8000630e: 40980833 sub a6,a6,s1 - 80006312: 181d addi a6,a6,-25 - 80006314: ffc87713 andi a4,a6,-4 - 80006318: 95ba add a1,a1,a4 - 8000631a: c1d4 sw a3,4(a1) - 8000631c: c291 beqz a3,80006320 <__lshift+0xb4> - 8000631e: 8922 mv s2,s0 - 80006320: 4498 lw a4,8(s1) - 80006322: 0689b783 ld a5,104(s3) - 80006326: 70e2 ld ra,56(sp) - 80006328: 070e slli a4,a4,0x3 - 8000632a: 97ba add a5,a5,a4 - 8000632c: 6398 ld a4,0(a5) - 8000632e: 01252a23 sw s2,20(a0) - 80006332: 7442 ld s0,48(sp) - 80006334: e098 sd a4,0(s1) - 80006336: e384 sd s1,0(a5) - 80006338: 7902 ld s2,32(sp) - 8000633a: 74a2 ld s1,40(sp) - 8000633c: 69e2 ld s3,24(sp) - 8000633e: 6a42 ld s4,16(sp) - 80006340: 6121 addi sp,sp,64 - 80006342: 8082 ret - 80006344: 4398 lw a4,0(a5) - 80006346: 0791 addi a5,a5,4 - 80006348: 0591 addi a1,a1,4 - 8000634a: fee5ae23 sw a4,-4(a1) - 8000634e: fd07f9e3 bgeu a5,a6,80006320 <__lshift+0xb4> - 80006352: 4398 lw a4,0(a5) - 80006354: 0791 addi a5,a5,4 - 80006356: 0591 addi a1,a1,4 - 80006358: fee5ae23 sw a4,-4(a1) - 8000635c: ff07e4e3 bltu a5,a6,80006344 <__lshift+0xd8> - 80006360: b7c1 j 80006320 <__lshift+0xb4> - 80006362: 00003697 auipc a3,0x3 - 80006366: fae68693 addi a3,a3,-82 # 80009310 <__clzdi2+0x336> - 8000636a: 4601 li a2,0 - 8000636c: 1de00593 li a1,478 - 80006370: 00003517 auipc a0,0x3 - 80006374: 02050513 addi a0,a0,32 # 80009390 <__clzdi2+0x3b6> - 80006378: 17b000ef jal 80006cf2 <__assert_func> +0000000080006954 <__lshift>: + 80006954: 7139 addi sp,sp,-64 + 80006956: f04a sd s2,32(sp) + 80006958: 0145a903 lw s2,20(a1) + 8000695c: 45dc lw a5,12(a1) + 8000695e: e852 sd s4,16(sp) + 80006960: 40565a1b sraiw s4,a2,0x5 + 80006964: 0149093b addw s2,s2,s4 + 80006968: f822 sd s0,48(sp) + 8000696a: f426 sd s1,40(sp) + 8000696c: ec4e sd s3,24(sp) + 8000696e: fc06 sd ra,56(sp) + 80006970: 0019041b addiw s0,s2,1 + 80006974: 84ae mv s1,a1 + 80006976: 89aa mv s3,a0 + 80006978: 458c lw a1,8(a1) + 8000697a: 0087d763 bge a5,s0,80006988 <__lshift+0x34> + 8000697e: 0017979b slliw a5,a5,0x1 + 80006982: 2585 addiw a1,a1,1 + 80006984: fe87cde3 blt a5,s0,8000697e <__lshift+0x2a> + 80006988: 854e mv a0,s3 + 8000698a: e432 sd a2,8(sp) + 8000698c: 9f9ff0ef jal 80006384 <_Balloc> + 80006990: 6622 ld a2,8(sp) + 80006992: cd45 beqz a0,80006a4a <__lshift+0xf6> + 80006994: 01850593 addi a1,a0,24 + 80006998: 01405e63 blez s4,800069b4 <__lshift+0x60> + 8000699c: 006a071b addiw a4,s4,6 + 800069a0: 070a slli a4,a4,0x2 + 800069a2: 972a add a4,a4,a0 + 800069a4: 87ae mv a5,a1 + 800069a6: 0791 addi a5,a5,4 + 800069a8: fe07ae23 sw zero,-4(a5) + 800069ac: fee79de3 bne a5,a4,800069a6 <__lshift+0x52> + 800069b0: 0a0a slli s4,s4,0x2 + 800069b2: 95d2 add a1,a1,s4 + 800069b4: 0144a803 lw a6,20(s1) + 800069b8: 01848793 addi a5,s1,24 + 800069bc: 8a7d andi a2,a2,31 + 800069be: 080a slli a6,a6,0x2 + 800069c0: 983e add a6,a6,a5 + 800069c2: c62d beqz a2,80006a2c <__lshift+0xd8> + 800069c4: 02000313 li t1,32 + 800069c8: 40c3033b subw t1,t1,a2 + 800069cc: 88ae mv a7,a1 + 800069ce: 4681 li a3,0 + 800069d0: 4398 lw a4,0(a5) + 800069d2: 0891 addi a7,a7,4 + 800069d4: 0791 addi a5,a5,4 + 800069d6: 00c7173b sllw a4,a4,a2 + 800069da: 8f55 or a4,a4,a3 + 800069dc: fee8ae23 sw a4,-4(a7) + 800069e0: ffc7a683 lw a3,-4(a5) + 800069e4: 0066d6bb srlw a3,a3,t1 + 800069e8: ff07e4e3 bltu a5,a6,800069d0 <__lshift+0x7c> + 800069ec: 01948793 addi a5,s1,25 + 800069f0: 4701 li a4,0 + 800069f2: 00f86763 bltu a6,a5,80006a00 <__lshift+0xac> + 800069f6: 40980833 sub a6,a6,s1 + 800069fa: 181d addi a6,a6,-25 + 800069fc: ffc87713 andi a4,a6,-4 + 80006a00: 95ba add a1,a1,a4 + 80006a02: c1d4 sw a3,4(a1) + 80006a04: c291 beqz a3,80006a08 <__lshift+0xb4> + 80006a06: 8922 mv s2,s0 + 80006a08: 4498 lw a4,8(s1) + 80006a0a: 0689b783 ld a5,104(s3) + 80006a0e: 70e2 ld ra,56(sp) + 80006a10: 070e slli a4,a4,0x3 + 80006a12: 97ba add a5,a5,a4 + 80006a14: 6398 ld a4,0(a5) + 80006a16: 01252a23 sw s2,20(a0) + 80006a1a: 7442 ld s0,48(sp) + 80006a1c: e098 sd a4,0(s1) + 80006a1e: e384 sd s1,0(a5) + 80006a20: 7902 ld s2,32(sp) + 80006a22: 74a2 ld s1,40(sp) + 80006a24: 69e2 ld s3,24(sp) + 80006a26: 6a42 ld s4,16(sp) + 80006a28: 6121 addi sp,sp,64 + 80006a2a: 8082 ret + 80006a2c: 4398 lw a4,0(a5) + 80006a2e: 0791 addi a5,a5,4 + 80006a30: 0591 addi a1,a1,4 + 80006a32: fee5ae23 sw a4,-4(a1) + 80006a36: fd07f9e3 bgeu a5,a6,80006a08 <__lshift+0xb4> + 80006a3a: 4398 lw a4,0(a5) + 80006a3c: 0791 addi a5,a5,4 + 80006a3e: 0591 addi a1,a1,4 + 80006a40: fee5ae23 sw a4,-4(a1) + 80006a44: ff07e4e3 bltu a5,a6,80006a2c <__lshift+0xd8> + 80006a48: b7c1 j 80006a08 <__lshift+0xb4> + 80006a4a: 00003697 auipc a3,0x3 + 80006a4e: 25668693 addi a3,a3,598 # 80009ca0 <__clzdi2+0x5de> + 80006a52: 4601 li a2,0 + 80006a54: 1de00593 li a1,478 + 80006a58: 00003517 auipc a0,0x3 + 80006a5c: 2c850513 addi a0,a0,712 # 80009d20 <__clzdi2+0x65e> + 80006a60: 17b000ef jal 800073da <__assert_func> -000000008000637c <__mcmp>: - 8000637c: 49dc lw a5,20(a1) - 8000637e: 862a mv a2,a0 - 80006380: 4948 lw a0,20(a0) - 80006382: 9d1d subw a0,a0,a5 - 80006384: e515 bnez a0,800063b0 <__mcmp+0x34> - 80006386: 078a slli a5,a5,0x2 - 80006388: 0661 addi a2,a2,24 - 8000638a: 05e1 addi a1,a1,24 - 8000638c: 95be add a1,a1,a5 - 8000638e: 97b2 add a5,a5,a2 - 80006390: a019 j 80006396 <__mcmp+0x1a> - 80006392: 00f67f63 bgeu a2,a5,800063b0 <__mcmp+0x34> - 80006396: ffc7a683 lw a3,-4(a5) - 8000639a: ffc5a703 lw a4,-4(a1) - 8000639e: 17f1 addi a5,a5,-4 - 800063a0: 15f1 addi a1,a1,-4 - 800063a2: fee688e3 beq a3,a4,80006392 <__mcmp+0x16> - 800063a6: 4505 li a0,1 - 800063a8: 00e6f463 bgeu a3,a4,800063b0 <__mcmp+0x34> - 800063ac: 557d li a0,-1 - 800063ae: 8082 ret - 800063b0: 8082 ret +0000000080006a64 <__mcmp>: + 80006a64: 49dc lw a5,20(a1) + 80006a66: 862a mv a2,a0 + 80006a68: 4948 lw a0,20(a0) + 80006a6a: 9d1d subw a0,a0,a5 + 80006a6c: e515 bnez a0,80006a98 <__mcmp+0x34> + 80006a6e: 078a slli a5,a5,0x2 + 80006a70: 0661 addi a2,a2,24 + 80006a72: 05e1 addi a1,a1,24 + 80006a74: 95be add a1,a1,a5 + 80006a76: 97b2 add a5,a5,a2 + 80006a78: a019 j 80006a7e <__mcmp+0x1a> + 80006a7a: 00f67f63 bgeu a2,a5,80006a98 <__mcmp+0x34> + 80006a7e: ffc7a683 lw a3,-4(a5) + 80006a82: ffc5a703 lw a4,-4(a1) + 80006a86: 17f1 addi a5,a5,-4 + 80006a88: 15f1 addi a1,a1,-4 + 80006a8a: fee688e3 beq a3,a4,80006a7a <__mcmp+0x16> + 80006a8e: 4505 li a0,1 + 80006a90: 00e6f463 bgeu a3,a4,80006a98 <__mcmp+0x34> + 80006a94: 557d li a0,-1 + 80006a96: 8082 ret + 80006a98: 8082 ret -00000000800063b2 <__mdiff>: - 800063b2: 0145a883 lw a7,20(a1) - 800063b6: 4a5c lw a5,20(a2) - 800063b8: 7179 addi sp,sp,-48 - 800063ba: f406 sd ra,40(sp) - 800063bc: 40f888bb subw a7,a7,a5 - 800063c0: 8f2e mv t5,a1 - 800063c2: 12089563 bnez a7,800064ec <__mdiff+0x13a> - 800063c6: 00279693 slli a3,a5,0x2 - 800063ca: 01858813 addi a6,a1,24 - 800063ce: 01860713 addi a4,a2,24 - 800063d2: 00d807b3 add a5,a6,a3 - 800063d6: 9736 add a4,a4,a3 - 800063d8: a019 j 800063de <__mdiff+0x2c> - 800063da: 12f87863 bgeu a6,a5,8000650a <__mdiff+0x158> - 800063de: ffc7a583 lw a1,-4(a5) - 800063e2: ffc72683 lw a3,-4(a4) - 800063e6: 17f1 addi a5,a5,-4 - 800063e8: 1771 addi a4,a4,-4 - 800063ea: fed588e3 beq a1,a3,800063da <__mdiff+0x28> - 800063ee: 12d5f963 bgeu a1,a3,80006520 <__mdiff+0x16e> - 800063f2: 4885 li a7,1 - 800063f4: 460c lw a1,8(a2) - 800063f6: ec7a sd t5,24(sp) - 800063f8: e846 sd a7,16(sp) - 800063fa: e432 sd a2,8(sp) - 800063fc: 8a1ff0ef jal 80005c9c <_Balloc> - 80006400: 6622 ld a2,8(sp) - 80006402: 68c2 ld a7,16(sp) - 80006404: 6f62 ld t5,24(sp) - 80006406: 12050363 beqz a0,8000652c <__mdiff+0x17a> - 8000640a: 014f2f83 lw t6,20(t5) - 8000640e: 01152823 sw a7,16(a0) - 80006412: 01462883 lw a7,20(a2) - 80006416: 01860293 addi t0,a2,24 - 8000641a: 0f8a slli t6,t6,0x2 - 8000641c: 00289813 slli a6,a7,0x2 - 80006420: 018f0313 addi t1,t5,24 - 80006424: 01850393 addi t2,a0,24 - 80006428: 9816 add a6,a6,t0 - 8000642a: 9f9a add t6,t6,t1 - 8000642c: 8e96 mv t4,t0 - 8000642e: 8e1e mv t3,t2 - 80006430: 4781 li a5,0 - 80006432: 000ea683 lw a3,0(t4) - 80006436: 00032603 lw a2,0(t1) - 8000643a: 0e11 addi t3,t3,4 - 8000643c: 03069713 slli a4,a3,0x30 - 80006440: 03061593 slli a1,a2,0x30 - 80006444: 9341 srli a4,a4,0x30 - 80006446: 91c1 srli a1,a1,0x30 - 80006448: 9f0d subw a4,a4,a1 - 8000644a: 9f3d addw a4,a4,a5 - 8000644c: 0106d69b srliw a3,a3,0x10 - 80006450: 0106561b srliw a2,a2,0x10 - 80006454: 9e91 subw a3,a3,a2 - 80006456: 4107579b sraiw a5,a4,0x10 - 8000645a: 9fb5 addw a5,a5,a3 - 8000645c: 1742 slli a4,a4,0x30 - 8000645e: 0107969b slliw a3,a5,0x10 - 80006462: 9341 srli a4,a4,0x30 - 80006464: 8ed9 or a3,a3,a4 - 80006466: 0311 addi t1,t1,4 - 80006468: fede2e23 sw a3,-4(t3) - 8000646c: 0e91 addi t4,t4,4 - 8000646e: 4107d79b sraiw a5,a5,0x10 - 80006472: fdf360e3 bltu t1,t6,80006432 <__mdiff+0x80> - 80006476: 019f0613 addi a2,t5,25 - 8000647a: 4701 li a4,0 - 8000647c: 08cff163 bgeu t6,a2,800064fe <__mdiff+0x14c> - 80006480: 00570eb3 add t4,a4,t0 - 80006484: 0e91 addi t4,t4,4 - 80006486: 971e add a4,a4,t2 - 80006488: 40538e33 sub t3,t2,t0 - 8000648c: 8676 mv a2,t4 - 8000648e: 00470f13 addi t5,a4,4 - 80006492: 090efb63 bgeu t4,a6,80006528 <__mdiff+0x176> - 80006496: 4218 lw a4,0(a2) - 80006498: 01c60333 add t1,a2,t3 - 8000649c: 0611 addi a2,a2,4 - 8000649e: 03071693 slli a3,a4,0x30 - 800064a2: 92c1 srli a3,a3,0x30 - 800064a4: 00f705bb addw a1,a4,a5 - 800064a8: 9fb5 addw a5,a5,a3 - 800064aa: 4107d79b sraiw a5,a5,0x10 - 800064ae: 0107571b srliw a4,a4,0x10 - 800064b2: 9f3d addw a4,a4,a5 - 800064b4: 15c2 slli a1,a1,0x30 - 800064b6: 91c1 srli a1,a1,0x30 - 800064b8: 0107169b slliw a3,a4,0x10 - 800064bc: 8ecd or a3,a3,a1 - 800064be: 00d32023 sw a3,0(t1) - 800064c2: 4107579b sraiw a5,a4,0x10 - 800064c6: fd0668e3 bltu a2,a6,80006496 <__mdiff+0xe4> - 800064ca: fff80793 addi a5,a6,-1 - 800064ce: 41d787b3 sub a5,a5,t4 - 800064d2: 9bf1 andi a5,a5,-4 - 800064d4: 97fa add a5,a5,t5 - 800064d6: e691 bnez a3,800064e2 <__mdiff+0x130> - 800064d8: ffc7a703 lw a4,-4(a5) - 800064dc: 17f1 addi a5,a5,-4 - 800064de: 38fd addiw a7,a7,-1 - 800064e0: df65 beqz a4,800064d8 <__mdiff+0x126> - 800064e2: 70a2 ld ra,40(sp) - 800064e4: 01152a23 sw a7,20(a0) - 800064e8: 6145 addi sp,sp,48 - 800064ea: 8082 ret - 800064ec: 8746 mv a4,a7 - 800064ee: 4885 li a7,1 - 800064f0: f00742e3 bltz a4,800063f4 <__mdiff+0x42> - 800064f4: 87b2 mv a5,a2 - 800064f6: 4881 li a7,0 - 800064f8: 862e mv a2,a1 - 800064fa: 8f3e mv t5,a5 - 800064fc: bde5 j 800063f4 <__mdiff+0x42> - 800064fe: 41ef8fb3 sub t6,t6,t5 - 80006502: 1f9d addi t6,t6,-25 - 80006504: ffcff713 andi a4,t6,-4 - 80006508: bfa5 j 80006480 <__mdiff+0xce> - 8000650a: 4581 li a1,0 - 8000650c: f90ff0ef jal 80005c9c <_Balloc> - 80006510: c91d beqz a0,80006546 <__mdiff+0x194> - 80006512: 70a2 ld ra,40(sp) - 80006514: 4785 li a5,1 - 80006516: 00052c23 sw zero,24(a0) - 8000651a: c95c sw a5,20(a0) - 8000651c: 6145 addi sp,sp,48 - 8000651e: 8082 ret - 80006520: 87b2 mv a5,a2 - 80006522: 867a mv a2,t5 - 80006524: 8f3e mv t5,a5 - 80006526: b5f9 j 800063f4 <__mdiff+0x42> - 80006528: 87ba mv a5,a4 - 8000652a: b775 j 800064d6 <__mdiff+0x124> - 8000652c: 00003697 auipc a3,0x3 - 80006530: de468693 addi a3,a3,-540 # 80009310 <__clzdi2+0x336> - 80006534: 4601 li a2,0 - 80006536: 24500593 li a1,581 - 8000653a: 00003517 auipc a0,0x3 - 8000653e: e5650513 addi a0,a0,-426 # 80009390 <__clzdi2+0x3b6> - 80006542: 7b0000ef jal 80006cf2 <__assert_func> - 80006546: 00003697 auipc a3,0x3 - 8000654a: dca68693 addi a3,a3,-566 # 80009310 <__clzdi2+0x336> - 8000654e: 4601 li a2,0 - 80006550: 23700593 li a1,567 - 80006554: 00003517 auipc a0,0x3 - 80006558: e3c50513 addi a0,a0,-452 # 80009390 <__clzdi2+0x3b6> - 8000655c: 796000ef jal 80006cf2 <__assert_func> +0000000080006a9a <__mdiff>: + 80006a9a: 0145a883 lw a7,20(a1) + 80006a9e: 4a5c lw a5,20(a2) + 80006aa0: 7179 addi sp,sp,-48 + 80006aa2: f406 sd ra,40(sp) + 80006aa4: 40f888bb subw a7,a7,a5 + 80006aa8: 8f2e mv t5,a1 + 80006aaa: 12089563 bnez a7,80006bd4 <__mdiff+0x13a> + 80006aae: 00279693 slli a3,a5,0x2 + 80006ab2: 01858813 addi a6,a1,24 + 80006ab6: 01860713 addi a4,a2,24 + 80006aba: 00d807b3 add a5,a6,a3 + 80006abe: 9736 add a4,a4,a3 + 80006ac0: a019 j 80006ac6 <__mdiff+0x2c> + 80006ac2: 12f87863 bgeu a6,a5,80006bf2 <__mdiff+0x158> + 80006ac6: ffc7a583 lw a1,-4(a5) + 80006aca: ffc72683 lw a3,-4(a4) + 80006ace: 17f1 addi a5,a5,-4 + 80006ad0: 1771 addi a4,a4,-4 + 80006ad2: fed588e3 beq a1,a3,80006ac2 <__mdiff+0x28> + 80006ad6: 12d5f963 bgeu a1,a3,80006c08 <__mdiff+0x16e> + 80006ada: 4885 li a7,1 + 80006adc: 460c lw a1,8(a2) + 80006ade: ec7a sd t5,24(sp) + 80006ae0: e846 sd a7,16(sp) + 80006ae2: e432 sd a2,8(sp) + 80006ae4: 8a1ff0ef jal 80006384 <_Balloc> + 80006ae8: 6622 ld a2,8(sp) + 80006aea: 68c2 ld a7,16(sp) + 80006aec: 6f62 ld t5,24(sp) + 80006aee: 12050363 beqz a0,80006c14 <__mdiff+0x17a> + 80006af2: 014f2f83 lw t6,20(t5) + 80006af6: 01152823 sw a7,16(a0) + 80006afa: 01462883 lw a7,20(a2) + 80006afe: 01860293 addi t0,a2,24 + 80006b02: 0f8a slli t6,t6,0x2 + 80006b04: 00289813 slli a6,a7,0x2 + 80006b08: 018f0313 addi t1,t5,24 + 80006b0c: 01850393 addi t2,a0,24 + 80006b10: 9816 add a6,a6,t0 + 80006b12: 9f9a add t6,t6,t1 + 80006b14: 8e96 mv t4,t0 + 80006b16: 8e1e mv t3,t2 + 80006b18: 4781 li a5,0 + 80006b1a: 000ea683 lw a3,0(t4) + 80006b1e: 00032603 lw a2,0(t1) + 80006b22: 0e11 addi t3,t3,4 + 80006b24: 03069713 slli a4,a3,0x30 + 80006b28: 03061593 slli a1,a2,0x30 + 80006b2c: 9341 srli a4,a4,0x30 + 80006b2e: 91c1 srli a1,a1,0x30 + 80006b30: 9f0d subw a4,a4,a1 + 80006b32: 9f3d addw a4,a4,a5 + 80006b34: 0106d69b srliw a3,a3,0x10 + 80006b38: 0106561b srliw a2,a2,0x10 + 80006b3c: 9e91 subw a3,a3,a2 + 80006b3e: 4107579b sraiw a5,a4,0x10 + 80006b42: 9fb5 addw a5,a5,a3 + 80006b44: 1742 slli a4,a4,0x30 + 80006b46: 0107969b slliw a3,a5,0x10 + 80006b4a: 9341 srli a4,a4,0x30 + 80006b4c: 8ed9 or a3,a3,a4 + 80006b4e: 0311 addi t1,t1,4 + 80006b50: fede2e23 sw a3,-4(t3) + 80006b54: 0e91 addi t4,t4,4 + 80006b56: 4107d79b sraiw a5,a5,0x10 + 80006b5a: fdf360e3 bltu t1,t6,80006b1a <__mdiff+0x80> + 80006b5e: 019f0613 addi a2,t5,25 + 80006b62: 4701 li a4,0 + 80006b64: 08cff163 bgeu t6,a2,80006be6 <__mdiff+0x14c> + 80006b68: 00570eb3 add t4,a4,t0 + 80006b6c: 0e91 addi t4,t4,4 + 80006b6e: 971e add a4,a4,t2 + 80006b70: 40538e33 sub t3,t2,t0 + 80006b74: 8676 mv a2,t4 + 80006b76: 00470f13 addi t5,a4,4 + 80006b7a: 090efb63 bgeu t4,a6,80006c10 <__mdiff+0x176> + 80006b7e: 4218 lw a4,0(a2) + 80006b80: 01c60333 add t1,a2,t3 + 80006b84: 0611 addi a2,a2,4 + 80006b86: 03071693 slli a3,a4,0x30 + 80006b8a: 92c1 srli a3,a3,0x30 + 80006b8c: 00f705bb addw a1,a4,a5 + 80006b90: 9fb5 addw a5,a5,a3 + 80006b92: 4107d79b sraiw a5,a5,0x10 + 80006b96: 0107571b srliw a4,a4,0x10 + 80006b9a: 9f3d addw a4,a4,a5 + 80006b9c: 15c2 slli a1,a1,0x30 + 80006b9e: 91c1 srli a1,a1,0x30 + 80006ba0: 0107169b slliw a3,a4,0x10 + 80006ba4: 8ecd or a3,a3,a1 + 80006ba6: 00d32023 sw a3,0(t1) + 80006baa: 4107579b sraiw a5,a4,0x10 + 80006bae: fd0668e3 bltu a2,a6,80006b7e <__mdiff+0xe4> + 80006bb2: fff80793 addi a5,a6,-1 + 80006bb6: 41d787b3 sub a5,a5,t4 + 80006bba: 9bf1 andi a5,a5,-4 + 80006bbc: 97fa add a5,a5,t5 + 80006bbe: e691 bnez a3,80006bca <__mdiff+0x130> + 80006bc0: ffc7a703 lw a4,-4(a5) + 80006bc4: 17f1 addi a5,a5,-4 + 80006bc6: 38fd addiw a7,a7,-1 + 80006bc8: df65 beqz a4,80006bc0 <__mdiff+0x126> + 80006bca: 70a2 ld ra,40(sp) + 80006bcc: 01152a23 sw a7,20(a0) + 80006bd0: 6145 addi sp,sp,48 + 80006bd2: 8082 ret + 80006bd4: 8746 mv a4,a7 + 80006bd6: 4885 li a7,1 + 80006bd8: f00742e3 bltz a4,80006adc <__mdiff+0x42> + 80006bdc: 87b2 mv a5,a2 + 80006bde: 4881 li a7,0 + 80006be0: 862e mv a2,a1 + 80006be2: 8f3e mv t5,a5 + 80006be4: bde5 j 80006adc <__mdiff+0x42> + 80006be6: 41ef8fb3 sub t6,t6,t5 + 80006bea: 1f9d addi t6,t6,-25 + 80006bec: ffcff713 andi a4,t6,-4 + 80006bf0: bfa5 j 80006b68 <__mdiff+0xce> + 80006bf2: 4581 li a1,0 + 80006bf4: f90ff0ef jal 80006384 <_Balloc> + 80006bf8: c91d beqz a0,80006c2e <__mdiff+0x194> + 80006bfa: 70a2 ld ra,40(sp) + 80006bfc: 4785 li a5,1 + 80006bfe: 00052c23 sw zero,24(a0) + 80006c02: c95c sw a5,20(a0) + 80006c04: 6145 addi sp,sp,48 + 80006c06: 8082 ret + 80006c08: 87b2 mv a5,a2 + 80006c0a: 867a mv a2,t5 + 80006c0c: 8f3e mv t5,a5 + 80006c0e: b5f9 j 80006adc <__mdiff+0x42> + 80006c10: 87ba mv a5,a4 + 80006c12: b775 j 80006bbe <__mdiff+0x124> + 80006c14: 00003697 auipc a3,0x3 + 80006c18: 08c68693 addi a3,a3,140 # 80009ca0 <__clzdi2+0x5de> + 80006c1c: 4601 li a2,0 + 80006c1e: 24500593 li a1,581 + 80006c22: 00003517 auipc a0,0x3 + 80006c26: 0fe50513 addi a0,a0,254 # 80009d20 <__clzdi2+0x65e> + 80006c2a: 7b0000ef jal 800073da <__assert_func> + 80006c2e: 00003697 auipc a3,0x3 + 80006c32: 07268693 addi a3,a3,114 # 80009ca0 <__clzdi2+0x5de> + 80006c36: 4601 li a2,0 + 80006c38: 23700593 li a1,567 + 80006c3c: 00003517 auipc a0,0x3 + 80006c40: 0e450513 addi a0,a0,228 # 80009d20 <__clzdi2+0x65e> + 80006c44: 796000ef jal 800073da <__assert_func> -0000000080006560 <__b2d>: - 80006560: 7139 addi sp,sp,-64 - 80006562: f822 sd s0,48(sp) - 80006564: 4940 lw s0,20(a0) - 80006566: f04a sd s2,32(sp) - 80006568: 01850913 addi s2,a0,24 - 8000656c: 040a slli s0,s0,0x2 - 8000656e: 944a add s0,s0,s2 - 80006570: f426 sd s1,40(sp) - 80006572: ffc42483 lw s1,-4(s0) - 80006576: ec4e sd s3,24(sp) - 80006578: e42e sd a1,8(sp) - 8000657a: 8526 mv a0,s1 - 8000657c: fc06 sd ra,56(sp) - 8000657e: 891ff0ef jal 80005e0e <__hi0bits> - 80006582: 65a2 ld a1,8(sp) - 80006584: 02000793 li a5,32 - 80006588: 40a7873b subw a4,a5,a0 - 8000658c: c198 sw a4,0(a1) - 8000658e: 4729 li a4,10 - 80006590: ffc40993 addi s3,s0,-4 - 80006594: 06a75863 bge a4,a0,80006604 <__b2d+0xa4> - 80006598: ff55061b addiw a2,a0,-11 - 8000659c: 03397d63 bgeu s2,s3,800065d6 <__b2d+0x76> - 800065a0: ff842703 lw a4,-8(s0) - 800065a4: ce0d beqz a2,800065de <__b2d+0x7e> - 800065a6: 40c786bb subw a3,a5,a2 - 800065aa: 00d757bb srlw a5,a4,a3 - 800065ae: 00c494bb sllw s1,s1,a2 - 800065b2: 8cdd or s1,s1,a5 - 800065b4: 3ff007b7 lui a5,0x3ff00 - 800065b8: 8cdd or s1,s1,a5 - 800065ba: 00c7173b sllw a4,a4,a2 - 800065be: ff840613 addi a2,s0,-8 - 800065c2: 02049793 slli a5,s1,0x20 - 800065c6: 02c97163 bgeu s2,a2,800065e8 <__b2d+0x88> - 800065ca: ff442603 lw a2,-12(s0) - 800065ce: 00d656bb srlw a3,a2,a3 - 800065d2: 8f55 or a4,a4,a3 - 800065d4: a811 j 800065e8 <__b2d+0x88> - 800065d6: 47ad li a5,11 - 800065d8: 4701 li a4,0 - 800065da: 04f51963 bne a0,a5,8000662c <__b2d+0xcc> - 800065de: 3ff007b7 lui a5,0x3ff00 - 800065e2: 8cdd or s1,s1,a5 - 800065e4: 02049793 slli a5,s1,0x20 - 800065e8: 70e2 ld ra,56(sp) - 800065ea: 7442 ld s0,48(sp) - 800065ec: 1702 slli a4,a4,0x20 - 800065ee: 9381 srli a5,a5,0x20 - 800065f0: 9301 srli a4,a4,0x20 - 800065f2: 1782 slli a5,a5,0x20 - 800065f4: 8fd9 or a5,a5,a4 - 800065f6: 74a2 ld s1,40(sp) - 800065f8: 7902 ld s2,32(sp) - 800065fa: 69e2 ld s3,24(sp) - 800065fc: f2078553 fmv.d.x fa0,a5 - 80006600: 6121 addi sp,sp,64 - 80006602: 8082 ret - 80006604: 46ad li a3,11 - 80006606: 9e89 subw a3,a3,a0 - 80006608: 3ff00737 lui a4,0x3ff00 - 8000660c: 00d4d7bb srlw a5,s1,a3 - 80006610: 8fd9 or a5,a5,a4 - 80006612: 1782 slli a5,a5,0x20 - 80006614: 4701 li a4,0 - 80006616: 01397663 bgeu s2,s3,80006622 <__b2d+0xc2> - 8000661a: ff842703 lw a4,-8(s0) - 8000661e: 00d7573b srlw a4,a4,a3 - 80006622: 2555 addiw a0,a0,21 - 80006624: 00a494bb sllw s1,s1,a0 - 80006628: 8f45 or a4,a4,s1 - 8000662a: bf7d j 800065e8 <__b2d+0x88> - 8000662c: 3ff007b7 lui a5,0x3ff00 - 80006630: 00c494bb sllw s1,s1,a2 - 80006634: 8cdd or s1,s1,a5 - 80006636: 02049793 slli a5,s1,0x20 - 8000663a: 4701 li a4,0 - 8000663c: b775 j 800065e8 <__b2d+0x88> +0000000080006c48 <__b2d>: + 80006c48: 7139 addi sp,sp,-64 + 80006c4a: f822 sd s0,48(sp) + 80006c4c: 4940 lw s0,20(a0) + 80006c4e: f04a sd s2,32(sp) + 80006c50: 01850913 addi s2,a0,24 + 80006c54: 040a slli s0,s0,0x2 + 80006c56: 944a add s0,s0,s2 + 80006c58: f426 sd s1,40(sp) + 80006c5a: ffc42483 lw s1,-4(s0) + 80006c5e: ec4e sd s3,24(sp) + 80006c60: e42e sd a1,8(sp) + 80006c62: 8526 mv a0,s1 + 80006c64: fc06 sd ra,56(sp) + 80006c66: 891ff0ef jal 800064f6 <__hi0bits> + 80006c6a: 65a2 ld a1,8(sp) + 80006c6c: 02000793 li a5,32 + 80006c70: 40a7873b subw a4,a5,a0 + 80006c74: c198 sw a4,0(a1) + 80006c76: 4729 li a4,10 + 80006c78: ffc40993 addi s3,s0,-4 + 80006c7c: 06a75863 bge a4,a0,80006cec <__b2d+0xa4> + 80006c80: ff55061b addiw a2,a0,-11 + 80006c84: 03397d63 bgeu s2,s3,80006cbe <__b2d+0x76> + 80006c88: ff842703 lw a4,-8(s0) + 80006c8c: ce0d beqz a2,80006cc6 <__b2d+0x7e> + 80006c8e: 40c786bb subw a3,a5,a2 + 80006c92: 00d757bb srlw a5,a4,a3 + 80006c96: 00c494bb sllw s1,s1,a2 + 80006c9a: 8cdd or s1,s1,a5 + 80006c9c: 3ff007b7 lui a5,0x3ff00 + 80006ca0: 8cdd or s1,s1,a5 + 80006ca2: 00c7173b sllw a4,a4,a2 + 80006ca6: ff840613 addi a2,s0,-8 + 80006caa: 02049793 slli a5,s1,0x20 + 80006cae: 02c97163 bgeu s2,a2,80006cd0 <__b2d+0x88> + 80006cb2: ff442603 lw a2,-12(s0) + 80006cb6: 00d656bb srlw a3,a2,a3 + 80006cba: 8f55 or a4,a4,a3 + 80006cbc: a811 j 80006cd0 <__b2d+0x88> + 80006cbe: 47ad li a5,11 + 80006cc0: 4701 li a4,0 + 80006cc2: 04f51963 bne a0,a5,80006d14 <__b2d+0xcc> + 80006cc6: 3ff007b7 lui a5,0x3ff00 + 80006cca: 8cdd or s1,s1,a5 + 80006ccc: 02049793 slli a5,s1,0x20 + 80006cd0: 70e2 ld ra,56(sp) + 80006cd2: 7442 ld s0,48(sp) + 80006cd4: 1702 slli a4,a4,0x20 + 80006cd6: 9381 srli a5,a5,0x20 + 80006cd8: 9301 srli a4,a4,0x20 + 80006cda: 1782 slli a5,a5,0x20 + 80006cdc: 8fd9 or a5,a5,a4 + 80006cde: 74a2 ld s1,40(sp) + 80006ce0: 7902 ld s2,32(sp) + 80006ce2: 69e2 ld s3,24(sp) + 80006ce4: f2078553 fmv.d.x fa0,a5 + 80006ce8: 6121 addi sp,sp,64 + 80006cea: 8082 ret + 80006cec: 46ad li a3,11 + 80006cee: 9e89 subw a3,a3,a0 + 80006cf0: 3ff00737 lui a4,0x3ff00 + 80006cf4: 00d4d7bb srlw a5,s1,a3 + 80006cf8: 8fd9 or a5,a5,a4 + 80006cfa: 1782 slli a5,a5,0x20 + 80006cfc: 4701 li a4,0 + 80006cfe: 01397663 bgeu s2,s3,80006d0a <__b2d+0xc2> + 80006d02: ff842703 lw a4,-8(s0) + 80006d06: 00d7573b srlw a4,a4,a3 + 80006d0a: 2555 addiw a0,a0,21 + 80006d0c: 00a494bb sllw s1,s1,a0 + 80006d10: 8f45 or a4,a4,s1 + 80006d12: bf7d j 80006cd0 <__b2d+0x88> + 80006d14: 3ff007b7 lui a5,0x3ff00 + 80006d18: 00c494bb sllw s1,s1,a2 + 80006d1c: 8cdd or s1,s1,a5 + 80006d1e: 02049793 slli a5,s1,0x20 + 80006d22: 4701 li a4,0 + 80006d24: b775 j 80006cd0 <__b2d+0x88> -000000008000663e <_realloc_r>: - 8000663e: 1a058963 beqz a1,800067f0 <_realloc_r+0x1b2> - 80006642: 7139 addi sp,sp,-64 - 80006644: f822 sd s0,48(sp) - 80006646: f426 sd s1,40(sp) - 80006648: 842e mv s0,a1 - 8000664a: e032 sd a2,0(sp) - 8000664c: fc06 sd ra,56(sp) - 8000664e: 84aa mv s1,a0 - 80006650: e48ff0ef jal 80005c98 <__malloc_lock> - 80006654: 6582 ld a1,0(sp) - 80006656: 02e00613 li a2,46 - 8000665a: 4781 li a5,0 - 8000665c: 01758693 addi a3,a1,23 - 80006660: 02000713 li a4,32 - 80006664: 12d66663 bltu a2,a3,80006790 <_realloc_r+0x152> - 80006668: 00b736b3 sltu a3,a4,a1 - 8000666c: 8fd5 or a5,a5,a3 - 8000666e: 12079c63 bnez a5,800067a6 <_realloc_r+0x168> - 80006672: ff843603 ld a2,-8(s0) - 80006676: ff040893 addi a7,s0,-16 - 8000667a: ffc67793 andi a5,a2,-4 - 8000667e: 0ce7de63 bge a5,a4,8000675a <_realloc_r+0x11c> - 80006682: 00003817 auipc a6,0x3 - 80006686: 66e83803 ld a6,1646(a6) # 80009cf0 <__malloc_av_+0x10> - 8000668a: 00f88533 add a0,a7,a5 - 8000668e: 6514 ld a3,8(a0) - 80006690: 16a80363 beq a6,a0,800067f6 <_realloc_r+0x1b8> - 80006694: ffe6f813 andi a6,a3,-2 - 80006698: 982a add a6,a6,a0 - 8000669a: 00883803 ld a6,8(a6) - 8000669e: 00187813 andi a6,a6,1 - 800066a2: 12081c63 bnez a6,800067da <_realloc_r+0x19c> - 800066a6: 9af1 andi a3,a3,-4 - 800066a8: 96be add a3,a3,a5 - 800066aa: 0ae6d363 bge a3,a4,80006750 <_realloc_r+0x112> - 800066ae: 8a05 andi a2,a2,1 - 800066b0: ee19 bnez a2,800066ce <_realloc_r+0x90> - 800066b2: ff043303 ld t1,-16(s0) - 800066b6: 40688333 sub t1,a7,t1 - 800066ba: 00833603 ld a2,8(t1) - 800066be: 9a71 andi a2,a2,-4 - 800066c0: 96b2 add a3,a3,a2 - 800066c2: 24e6d063 bge a3,a4,80006902 <_realloc_r+0x2c4> - 800066c6: 00c78833 add a6,a5,a2 - 800066ca: 1ce85c63 bge a6,a4,800068a2 <_realloc_r+0x264> - 800066ce: 8526 mv a0,s1 - 800066d0: e83e sd a5,16(sp) - 800066d2: e446 sd a7,8(sp) - 800066d4: e03a sd a4,0(sp) - 800066d6: f6dfe0ef jal 80005642 <_malloc_r> - 800066da: 6702 ld a4,0(sp) - 800066dc: 68a2 ld a7,8(sp) - 800066de: 67c2 ld a5,16(sp) - 800066e0: 86aa mv a3,a0 - 800066e2: 30050663 beqz a0,800069ee <_realloc_r+0x3b0> - 800066e6: ff843603 ld a2,-8(s0) - 800066ea: ff050593 addi a1,a0,-16 - 800066ee: 9a79 andi a2,a2,-2 - 800066f0: 9646 add a2,a2,a7 - 800066f2: 1ab60363 beq a2,a1,80006898 <_realloc_r+0x25a> - 800066f6: ff878613 addi a2,a5,-8 # 3feffff8 <__dtim_size+0x3fdffff8> - 800066fa: 04800593 li a1,72 - 800066fe: 1ec5ec63 bltu a1,a2,800068f6 <_realloc_r+0x2b8> - 80006702: 02700513 li a0,39 - 80006706: 87b6 mv a5,a3 - 80006708: 8722 mv a4,s0 - 8000670a: 00c57e63 bgeu a0,a2,80006726 <_realloc_r+0xe8> - 8000670e: 6018 ld a4,0(s0) - 80006710: 03700793 li a5,55 - 80006714: e298 sd a4,0(a3) - 80006716: 6418 ld a4,8(s0) - 80006718: e698 sd a4,8(a3) - 8000671a: 24c7e263 bltu a5,a2,8000695e <_realloc_r+0x320> - 8000671e: 01040713 addi a4,s0,16 - 80006722: 01068793 addi a5,a3,16 - 80006726: 6310 ld a2,0(a4) - 80006728: e390 sd a2,0(a5) - 8000672a: 6710 ld a2,8(a4) - 8000672c: e790 sd a2,8(a5) - 8000672e: 6b18 ld a4,16(a4) - 80006730: eb98 sd a4,16(a5) - 80006732: 85a2 mv a1,s0 - 80006734: 8526 mv a0,s1 - 80006736: e036 sd a3,0(sp) - 80006738: e40fd0ef jal 80003d78 <_free_r> - 8000673c: 8526 mv a0,s1 - 8000673e: d5cff0ef jal 80005c9a <__malloc_unlock> - 80006742: 6682 ld a3,0(sp) - 80006744: 70e2 ld ra,56(sp) - 80006746: 7442 ld s0,48(sp) - 80006748: 74a2 ld s1,40(sp) - 8000674a: 8536 mv a0,a3 - 8000674c: 6121 addi sp,sp,64 - 8000674e: 8082 ret - 80006750: 6d10 ld a2,24(a0) - 80006752: 690c ld a1,16(a0) - 80006754: 87b6 mv a5,a3 - 80006756: ed90 sd a2,24(a1) - 80006758: ea0c sd a1,16(a2) - 8000675a: 0088b683 ld a3,8(a7) - 8000675e: 40e78533 sub a0,a5,a4 - 80006762: 45fd li a1,31 - 80006764: 8a85 andi a3,a3,1 - 80006766: 00f88633 add a2,a7,a5 - 8000676a: 04a5e763 bltu a1,a0,800067b8 <_realloc_r+0x17a> - 8000676e: 8edd or a3,a3,a5 - 80006770: 00d8b423 sd a3,8(a7) - 80006774: 661c ld a5,8(a2) - 80006776: 0017e793 ori a5,a5,1 - 8000677a: e61c sd a5,8(a2) - 8000677c: 8526 mv a0,s1 - 8000677e: d1cff0ef jal 80005c9a <__malloc_unlock> - 80006782: 86a2 mv a3,s0 - 80006784: 70e2 ld ra,56(sp) - 80006786: 7442 ld s0,48(sp) - 80006788: 74a2 ld s1,40(sp) - 8000678a: 8536 mv a0,a3 - 8000678c: 6121 addi sp,sp,64 - 8000678e: 8082 ret - 80006790: 01f6d793 srli a5,a3,0x1f - 80006794: ff06f713 andi a4,a3,-16 - 80006798: 00f037b3 snez a5,a5 - 8000679c: 00b736b3 sltu a3,a4,a1 - 800067a0: 8fd5 or a5,a5,a3 - 800067a2: ec0788e3 beqz a5,80006672 <_realloc_r+0x34> - 800067a6: 70e2 ld ra,56(sp) - 800067a8: 7442 ld s0,48(sp) - 800067aa: 47b1 li a5,12 - 800067ac: c09c sw a5,0(s1) - 800067ae: 4681 li a3,0 - 800067b0: 74a2 ld s1,40(sp) - 800067b2: 8536 mv a0,a3 - 800067b4: 6121 addi sp,sp,64 - 800067b6: 8082 ret - 800067b8: 8ed9 or a3,a3,a4 - 800067ba: 00d8b423 sd a3,8(a7) - 800067be: 00e885b3 add a1,a7,a4 - 800067c2: 00156513 ori a0,a0,1 - 800067c6: e588 sd a0,8(a1) - 800067c8: 661c ld a5,8(a2) - 800067ca: 05c1 addi a1,a1,16 - 800067cc: 8526 mv a0,s1 - 800067ce: 0017e793 ori a5,a5,1 - 800067d2: e61c sd a5,8(a2) - 800067d4: da4fd0ef jal 80003d78 <_free_r> - 800067d8: b755 j 8000677c <_realloc_r+0x13e> - 800067da: 8a05 andi a2,a2,1 - 800067dc: ee0619e3 bnez a2,800066ce <_realloc_r+0x90> - 800067e0: ff043303 ld t1,-16(s0) - 800067e4: 40688333 sub t1,a7,t1 - 800067e8: 00833603 ld a2,8(t1) - 800067ec: 9a71 andi a2,a2,-4 - 800067ee: bde1 j 800066c6 <_realloc_r+0x88> - 800067f0: 85b2 mv a1,a2 - 800067f2: e51fe06f j 80005642 <_malloc_r> - 800067f6: 9af1 andi a3,a3,-4 - 800067f8: 96be add a3,a3,a5 - 800067fa: 02070513 addi a0,a4,32 # 3ff00020 <__dtim_size+0x3fe00020> - 800067fe: 18a6d863 bge a3,a0,8000698e <_realloc_r+0x350> - 80006802: 8a05 andi a2,a2,1 - 80006804: ec0615e3 bnez a2,800066ce <_realloc_r+0x90> - 80006808: ff043303 ld t1,-16(s0) - 8000680c: 40688333 sub t1,a7,t1 - 80006810: 00833603 ld a2,8(t1) - 80006814: 9a71 andi a2,a2,-4 - 80006816: 00c68833 add a6,a3,a2 - 8000681a: eaa846e3 blt a6,a0,800066c6 <_realloc_r+0x88> - 8000681e: 01833683 ld a3,24(t1) - 80006822: 01033583 ld a1,16(t1) - 80006826: ff878613 addi a2,a5,-8 - 8000682a: 04800513 li a0,72 - 8000682e: ed94 sd a3,24(a1) - 80006830: ea8c sd a1,16(a3) - 80006832: 01030693 addi a3,t1,16 - 80006836: 1ec56a63 bltu a0,a2,80006a2a <_realloc_r+0x3ec> - 8000683a: 02700593 li a1,39 - 8000683e: 87b6 mv a5,a3 - 80006840: 00c5ff63 bgeu a1,a2,8000685e <_realloc_r+0x220> - 80006844: 600c ld a1,0(s0) - 80006846: 03700793 li a5,55 - 8000684a: 00b33823 sd a1,16(t1) - 8000684e: 640c ld a1,8(s0) - 80006850: 00b33c23 sd a1,24(t1) - 80006854: 20c7e463 bltu a5,a2,80006a5c <_realloc_r+0x41e> - 80006858: 0441 addi s0,s0,16 - 8000685a: 02030793 addi a5,t1,32 - 8000685e: 6010 ld a2,0(s0) - 80006860: e390 sd a2,0(a5) - 80006862: 6410 ld a2,8(s0) - 80006864: e790 sd a2,8(a5) - 80006866: 6810 ld a2,16(s0) - 80006868: eb90 sd a2,16(a5) - 8000686a: 00e30633 add a2,t1,a4 - 8000686e: 40e807b3 sub a5,a6,a4 - 80006872: 00003597 auipc a1,0x3 - 80006876: 46c5bf23 sd a2,1150(a1) # 80009cf0 <__malloc_av_+0x10> - 8000687a: 0017e793 ori a5,a5,1 - 8000687e: e61c sd a5,8(a2) - 80006880: 00833783 ld a5,8(t1) - 80006884: 8526 mv a0,s1 - 80006886: e036 sd a3,0(sp) - 80006888: 8b85 andi a5,a5,1 - 8000688a: 8fd9 or a5,a5,a4 - 8000688c: 00f33423 sd a5,8(t1) - 80006890: c0aff0ef jal 80005c9a <__malloc_unlock> - 80006894: 6682 ld a3,0(sp) - 80006896: b5fd j 80006784 <_realloc_r+0x146> - 80006898: ff853683 ld a3,-8(a0) - 8000689c: 9af1 andi a3,a3,-4 - 8000689e: 97b6 add a5,a5,a3 - 800068a0: bd6d j 8000675a <_realloc_r+0x11c> - 800068a2: 01833683 ld a3,24(t1) - 800068a6: 01033583 ld a1,16(t1) - 800068aa: ff878613 addi a2,a5,-8 - 800068ae: 04800513 li a0,72 - 800068b2: ed94 sd a3,24(a1) - 800068b4: ea8c sd a1,16(a3) - 800068b6: 01030793 addi a5,t1,16 - 800068ba: 0ac56d63 bltu a0,a2,80006974 <_realloc_r+0x336> - 800068be: 02700593 li a1,39 - 800068c2: 86be mv a3,a5 - 800068c4: 00c5ff63 bgeu a1,a2,800068e2 <_realloc_r+0x2a4> - 800068c8: 600c ld a1,0(s0) - 800068ca: 03700693 li a3,55 - 800068ce: 00b33823 sd a1,16(t1) - 800068d2: 640c ld a1,8(s0) - 800068d4: 00b33c23 sd a1,24(t1) - 800068d8: 0ec6ee63 bltu a3,a2,800069d4 <_realloc_r+0x396> - 800068dc: 0441 addi s0,s0,16 - 800068de: 02030693 addi a3,t1,32 - 800068e2: 6010 ld a2,0(s0) - 800068e4: e290 sd a2,0(a3) - 800068e6: 6410 ld a2,8(s0) - 800068e8: e690 sd a2,8(a3) - 800068ea: 6810 ld a2,16(s0) - 800068ec: ea90 sd a2,16(a3) - 800068ee: 843e mv s0,a5 - 800068f0: 889a mv a7,t1 - 800068f2: 87c2 mv a5,a6 - 800068f4: b59d j 8000675a <_realloc_r+0x11c> - 800068f6: 85a2 mv a1,s0 - 800068f8: e02a sd a0,0(sp) - 800068fa: b0bfc0ef jal 80003404 - 800068fe: 6682 ld a3,0(sp) - 80006900: bd0d j 80006732 <_realloc_r+0xf4> - 80006902: 6d0c ld a1,24(a0) - 80006904: 6908 ld a0,16(a0) - 80006906: ff878613 addi a2,a5,-8 - 8000690a: 04800813 li a6,72 - 8000690e: ed0c sd a1,24(a0) - 80006910: e988 sd a0,16(a1) - 80006912: 01033503 ld a0,16(t1) - 80006916: 01833583 ld a1,24(t1) - 8000691a: 01030793 addi a5,t1,16 - 8000691e: ed0c sd a1,24(a0) - 80006920: e988 sd a0,16(a1) - 80006922: 08c86c63 bltu a6,a2,800069ba <_realloc_r+0x37c> - 80006926: 02700513 li a0,39 - 8000692a: 85be mv a1,a5 - 8000692c: 00c57f63 bgeu a0,a2,8000694a <_realloc_r+0x30c> - 80006930: 6008 ld a0,0(s0) - 80006932: 03700593 li a1,55 - 80006936: 00a33823 sd a0,16(t1) - 8000693a: 6408 ld a0,8(s0) - 8000693c: 00a33c23 sd a0,24(t1) - 80006940: 0cc5e663 bltu a1,a2,80006a0c <_realloc_r+0x3ce> - 80006944: 0441 addi s0,s0,16 - 80006946: 02030593 addi a1,t1,32 - 8000694a: 6010 ld a2,0(s0) - 8000694c: e190 sd a2,0(a1) - 8000694e: 6410 ld a2,8(s0) - 80006950: e590 sd a2,8(a1) - 80006952: 6810 ld a2,16(s0) - 80006954: e990 sd a2,16(a1) - 80006956: 843e mv s0,a5 - 80006958: 889a mv a7,t1 - 8000695a: 87b6 mv a5,a3 - 8000695c: bbfd j 8000675a <_realloc_r+0x11c> - 8000695e: 681c ld a5,16(s0) - 80006960: ea9c sd a5,16(a3) - 80006962: 6c1c ld a5,24(s0) - 80006964: ee9c sd a5,24(a3) - 80006966: 08b60a63 beq a2,a1,800069fa <_realloc_r+0x3bc> - 8000696a: 02040713 addi a4,s0,32 - 8000696e: 02068793 addi a5,a3,32 - 80006972: bb55 j 80006726 <_realloc_r+0xe8> - 80006974: 853e mv a0,a5 - 80006976: 85a2 mv a1,s0 - 80006978: ec1a sd t1,24(sp) - 8000697a: e83a sd a4,16(sp) - 8000697c: e442 sd a6,8(sp) - 8000697e: e03e sd a5,0(sp) - 80006980: a85fc0ef jal 80003404 - 80006984: 6782 ld a5,0(sp) - 80006986: 6822 ld a6,8(sp) - 80006988: 6742 ld a4,16(sp) - 8000698a: 6362 ld t1,24(sp) - 8000698c: b78d j 800068ee <_realloc_r+0x2b0> - 8000698e: 40e687b3 sub a5,a3,a4 - 80006992: 98ba add a7,a7,a4 - 80006994: 00003697 auipc a3,0x3 - 80006998: 3516be23 sd a7,860(a3) # 80009cf0 <__malloc_av_+0x10> - 8000699c: 0017e793 ori a5,a5,1 - 800069a0: 00f8b423 sd a5,8(a7) - 800069a4: ff843783 ld a5,-8(s0) - 800069a8: 8526 mv a0,s1 - 800069aa: 8b85 andi a5,a5,1 - 800069ac: 8fd9 or a5,a5,a4 - 800069ae: fef43c23 sd a5,-8(s0) - 800069b2: ae8ff0ef jal 80005c9a <__malloc_unlock> - 800069b6: 86a2 mv a3,s0 - 800069b8: b3f1 j 80006784 <_realloc_r+0x146> - 800069ba: 853e mv a0,a5 - 800069bc: 85a2 mv a1,s0 - 800069be: ec1a sd t1,24(sp) - 800069c0: e83a sd a4,16(sp) - 800069c2: e436 sd a3,8(sp) - 800069c4: e03e sd a5,0(sp) - 800069c6: a3ffc0ef jal 80003404 - 800069ca: 6782 ld a5,0(sp) - 800069cc: 66a2 ld a3,8(sp) - 800069ce: 6742 ld a4,16(sp) - 800069d0: 6362 ld t1,24(sp) - 800069d2: b751 j 80006956 <_realloc_r+0x318> - 800069d4: 6814 ld a3,16(s0) - 800069d6: 02d33023 sd a3,32(t1) - 800069da: 6c14 ld a3,24(s0) - 800069dc: 02d33423 sd a3,40(t1) - 800069e0: 06a60263 beq a2,a0,80006a44 <_realloc_r+0x406> - 800069e4: 02040413 addi s0,s0,32 - 800069e8: 03030693 addi a3,t1,48 - 800069ec: bddd j 800068e2 <_realloc_r+0x2a4> - 800069ee: e02a sd a0,0(sp) - 800069f0: 8526 mv a0,s1 - 800069f2: aa8ff0ef jal 80005c9a <__malloc_unlock> - 800069f6: 6682 ld a3,0(sp) - 800069f8: b371 j 80006784 <_realloc_r+0x146> - 800069fa: 7010 ld a2,32(s0) - 800069fc: 03040713 addi a4,s0,48 - 80006a00: 03068793 addi a5,a3,48 - 80006a04: f290 sd a2,32(a3) - 80006a06: 7410 ld a2,40(s0) - 80006a08: f690 sd a2,40(a3) - 80006a0a: bb31 j 80006726 <_realloc_r+0xe8> - 80006a0c: 6808 ld a0,16(s0) - 80006a0e: 04800593 li a1,72 - 80006a12: 02a33023 sd a0,32(t1) - 80006a16: 6c08 ld a0,24(s0) - 80006a18: 02a33423 sd a0,40(t1) - 80006a1c: 04b60d63 beq a2,a1,80006a76 <_realloc_r+0x438> - 80006a20: 02040413 addi s0,s0,32 - 80006a24: 03030593 addi a1,t1,48 - 80006a28: b70d j 8000694a <_realloc_r+0x30c> - 80006a2a: 8536 mv a0,a3 - 80006a2c: 85a2 mv a1,s0 - 80006a2e: ec1a sd t1,24(sp) - 80006a30: e83a sd a4,16(sp) - 80006a32: e442 sd a6,8(sp) - 80006a34: e036 sd a3,0(sp) - 80006a36: 9cffc0ef jal 80003404 - 80006a3a: 6362 ld t1,24(sp) - 80006a3c: 6742 ld a4,16(sp) - 80006a3e: 6822 ld a6,8(sp) - 80006a40: 6682 ld a3,0(sp) - 80006a42: b525 j 8000686a <_realloc_r+0x22c> - 80006a44: 7010 ld a2,32(s0) - 80006a46: 04030693 addi a3,t1,64 - 80006a4a: 03040413 addi s0,s0,48 - 80006a4e: 02c33823 sd a2,48(t1) - 80006a52: ff843603 ld a2,-8(s0) - 80006a56: 02c33c23 sd a2,56(t1) - 80006a5a: b561 j 800068e2 <_realloc_r+0x2a4> - 80006a5c: 681c ld a5,16(s0) - 80006a5e: 02f33023 sd a5,32(t1) - 80006a62: 6c1c ld a5,24(s0) - 80006a64: 02f33423 sd a5,40(t1) - 80006a68: 02a60363 beq a2,a0,80006a8e <_realloc_r+0x450> - 80006a6c: 02040413 addi s0,s0,32 - 80006a70: 03030793 addi a5,t1,48 - 80006a74: b3ed j 8000685e <_realloc_r+0x220> - 80006a76: 7010 ld a2,32(s0) - 80006a78: 04030593 addi a1,t1,64 - 80006a7c: 03040413 addi s0,s0,48 - 80006a80: 02c33823 sd a2,48(t1) - 80006a84: ff843603 ld a2,-8(s0) - 80006a88: 02c33c23 sd a2,56(t1) - 80006a8c: bd7d j 8000694a <_realloc_r+0x30c> - 80006a8e: 7010 ld a2,32(s0) - 80006a90: 04030793 addi a5,t1,64 - 80006a94: 03040413 addi s0,s0,48 - 80006a98: 02c33823 sd a2,48(t1) - 80006a9c: ff843603 ld a2,-8(s0) - 80006aa0: 02c33c23 sd a2,56(t1) - 80006aa4: bb6d j 8000685e <_realloc_r+0x220> - -0000000080006aa6 <_fclose_r>: - 80006aa6: 1101 addi sp,sp,-32 - 80006aa8: ec06 sd ra,24(sp) - 80006aaa: e04a sd s2,0(sp) - 80006aac: cdbd beqz a1,80006b2a <_fclose_r+0x84> - 80006aae: e822 sd s0,16(sp) - 80006ab0: e426 sd s1,8(sp) - 80006ab2: 842e mv s0,a1 - 80006ab4: 84aa mv s1,a0 - 80006ab6: c119 beqz a0,80006abc <_fclose_r+0x16> - 80006ab8: 653c ld a5,72(a0) - 80006aba: cfc1 beqz a5,80006b52 <_fclose_r+0xac> - 80006abc: a54fc0ef jal 80002d10 <__sfp_lock_acquire> - 80006ac0: 01041783 lh a5,16(s0) - 80006ac4: cfb9 beqz a5,80006b22 <_fclose_r+0x7c> - 80006ac6: 85a2 mv a1,s0 - 80006ac8: 8526 mv a0,s1 - 80006aca: ed9fb0ef jal 800029a2 <__sflush_r> - 80006ace: 683c ld a5,80(s0) - 80006ad0: 892a mv s2,a0 - 80006ad2: c791 beqz a5,80006ade <_fclose_r+0x38> - 80006ad4: 780c ld a1,48(s0) - 80006ad6: 8526 mv a0,s1 - 80006ad8: 9782 jalr a5 - 80006ada: 06054563 bltz a0,80006b44 <_fclose_r+0x9e> - 80006ade: 01045783 lhu a5,16(s0) - 80006ae2: 0807f793 andi a5,a5,128 - 80006ae6: eba1 bnez a5,80006b36 <_fclose_r+0x90> - 80006ae8: 6c2c ld a1,88(s0) - 80006aea: c991 beqz a1,80006afe <_fclose_r+0x58> - 80006aec: 07440793 addi a5,s0,116 - 80006af0: 00f58563 beq a1,a5,80006afa <_fclose_r+0x54> - 80006af4: 8526 mv a0,s1 - 80006af6: a82fd0ef jal 80003d78 <_free_r> - 80006afa: 04043c23 sd zero,88(s0) - 80006afe: 7c2c ld a1,120(s0) - 80006b00: c591 beqz a1,80006b0c <_fclose_r+0x66> - 80006b02: 8526 mv a0,s1 - 80006b04: a74fd0ef jal 80003d78 <_free_r> - 80006b08: 06043c23 sd zero,120(s0) - 80006b0c: 00041823 sh zero,16(s0) - 80006b10: a02fc0ef jal 80002d12 <__sfp_lock_release> - 80006b14: 60e2 ld ra,24(sp) - 80006b16: 6442 ld s0,16(sp) - 80006b18: 64a2 ld s1,8(sp) - 80006b1a: 854a mv a0,s2 - 80006b1c: 6902 ld s2,0(sp) - 80006b1e: 6105 addi sp,sp,32 - 80006b20: 8082 ret - 80006b22: 9f0fc0ef jal 80002d12 <__sfp_lock_release> - 80006b26: 6442 ld s0,16(sp) - 80006b28: 64a2 ld s1,8(sp) - 80006b2a: 60e2 ld ra,24(sp) - 80006b2c: 4901 li s2,0 - 80006b2e: 854a mv a0,s2 - 80006b30: 6902 ld s2,0(sp) - 80006b32: 6105 addi sp,sp,32 - 80006b34: 8082 ret - 80006b36: 6c0c ld a1,24(s0) - 80006b38: 8526 mv a0,s1 - 80006b3a: a3efd0ef jal 80003d78 <_free_r> - 80006b3e: 6c2c ld a1,88(s0) - 80006b40: f5d5 bnez a1,80006aec <_fclose_r+0x46> - 80006b42: bf75 j 80006afe <_fclose_r+0x58> - 80006b44: 01045783 lhu a5,16(s0) - 80006b48: 597d li s2,-1 - 80006b4a: 0807f793 andi a5,a5,128 - 80006b4e: dfc9 beqz a5,80006ae8 <_fclose_r+0x42> - 80006b50: b7dd j 80006b36 <_fclose_r+0x90> - 80006b52: 9a6fc0ef jal 80002cf8 <__sinit> - 80006b56: b79d j 80006abc <_fclose_r+0x16> - -0000000080006b58 <__smakebuf_r>: - 80006b58: 01059783 lh a5,16(a1) - 80006b5c: 0027f713 andi a4,a5,2 - 80006b60: cb01 beqz a4,80006b70 <__smakebuf_r+0x18> - 80006b62: 07758793 addi a5,a1,119 - 80006b66: 4705 li a4,1 - 80006b68: e19c sd a5,0(a1) - 80006b6a: ed9c sd a5,24(a1) - 80006b6c: d198 sw a4,32(a1) - 80006b6e: 8082 ret - 80006b70: 872e mv a4,a1 - 80006b72: 01259583 lh a1,18(a1) - 80006b76: 7135 addi sp,sp,-160 - 80006b78: e922 sd s0,144(sp) - 80006b7a: ed06 sd ra,152(sp) - 80006b7c: 842a mv s0,a0 - 80006b7e: 0605c863 bltz a1,80006bee <__smakebuf_r+0x96> - 80006b82: 0830 addi a2,sp,24 - 80006b84: e03a sd a4,0(sp) - 80006b86: 0d8000ef jal 80006c5e <_fstat_r> - 80006b8a: 6702 ld a4,0(sp) - 80006b8c: 04054f63 bltz a0,80006bea <__smakebuf_r+0x92> - 80006b90: 40000593 li a1,1024 - 80006b94: 8522 mv a0,s0 - 80006b96: e526 sd s1,136(sp) - 80006b98: e03a sd a4,0(sp) - 80006b9a: 44f2 lw s1,28(sp) - 80006b9c: aa7fe0ef jal 80005642 <_malloc_r> - 80006ba0: 6702 ld a4,0(sp) - 80006ba2: 01071783 lh a5,16(a4) - 80006ba6: c549 beqz a0,80006c30 <__smakebuf_r+0xd8> - 80006ba8: 40000693 li a3,1024 - 80006bac: 0807e793 ori a5,a5,128 - 80006bb0: d314 sw a3,32(a4) - 80006bb2: 40c4d693 srai a3,s1,0xc - 80006bb6: 00f71823 sh a5,16(a4) - 80006bba: e308 sd a0,0(a4) - 80006bbc: ef08 sd a0,24(a4) - 80006bbe: 8abd andi a3,a3,15 - 80006bc0: 4609 li a2,2 - 80006bc2: 08c69963 bne a3,a2,80006c54 <__smakebuf_r+0xfc> - 80006bc6: 01271583 lh a1,18(a4) - 80006bca: 8522 mv a0,s0 - 80006bcc: e03a sd a4,0(sp) - 80006bce: 0c4000ef jal 80006c92 <_isatty_r> - 80006bd2: 6702 ld a4,0(sp) - 80006bd4: 6685 lui a3,0x1 - 80006bd6: 80068693 addi a3,a3,-2048 # 800 - 80006bda: 01071783 lh a5,16(a4) - 80006bde: c92d beqz a0,80006c50 <__smakebuf_r+0xf8> - 80006be0: 9bf1 andi a5,a5,-4 - 80006be2: 64aa ld s1,136(sp) - 80006be4: 0017e793 ori a5,a5,1 - 80006be8: a82d j 80006c22 <__smakebuf_r+0xca> - 80006bea: 01071783 lh a5,16(a4) - 80006bee: 0807f793 andi a5,a5,128 - 80006bf2: 0017b593 seqz a1,a5 - 80006bf6: 40b005b3 neg a1,a1 - 80006bfa: 3c05f593 andi a1,a1,960 - 80006bfe: 04058593 addi a1,a1,64 - 80006c02: 8522 mv a0,s0 - 80006c04: e43a sd a4,8(sp) - 80006c06: e02e sd a1,0(sp) - 80006c08: a3bfe0ef jal 80005642 <_malloc_r> - 80006c0c: 6722 ld a4,8(sp) - 80006c0e: 6582 ld a1,0(sp) - 80006c10: 01071783 lh a5,16(a4) - 80006c14: cd19 beqz a0,80006c32 <__smakebuf_r+0xda> - 80006c16: 0807e793 ori a5,a5,128 - 80006c1a: e308 sd a0,0(a4) - 80006c1c: ef08 sd a0,24(a4) - 80006c1e: d30c sw a1,32(a4) - 80006c20: 4681 li a3,0 - 80006c22: 8fd5 or a5,a5,a3 - 80006c24: 00f71823 sh a5,16(a4) - 80006c28: 60ea ld ra,152(sp) - 80006c2a: 644a ld s0,144(sp) - 80006c2c: 610d addi sp,sp,160 - 80006c2e: 8082 ret - 80006c30: 64aa ld s1,136(sp) - 80006c32: 2007f693 andi a3,a5,512 - 80006c36: faed bnez a3,80006c28 <__smakebuf_r+0xd0> - 80006c38: 9bf1 andi a5,a5,-4 - 80006c3a: 07770693 addi a3,a4,119 - 80006c3e: 0027e793 ori a5,a5,2 - 80006c42: 4605 li a2,1 - 80006c44: 00f71823 sh a5,16(a4) - 80006c48: e314 sd a3,0(a4) - 80006c4a: ef14 sd a3,24(a4) - 80006c4c: d310 sw a2,32(a4) - 80006c4e: bfe9 j 80006c28 <__smakebuf_r+0xd0> - 80006c50: 64aa ld s1,136(sp) - 80006c52: bfc1 j 80006c22 <__smakebuf_r+0xca> - 80006c54: 6685 lui a3,0x1 - 80006c56: 64aa ld s1,136(sp) - 80006c58: 80068693 addi a3,a3,-2048 # 800 - 80006c5c: b7d9 j 80006c22 <__smakebuf_r+0xca> - -0000000080006c5e <_fstat_r>: - 80006c5e: 87ae mv a5,a1 - 80006c60: 1141 addi sp,sp,-16 - 80006c62: e022 sd s0,0(sp) - 80006c64: 85b2 mv a1,a2 - 80006c66: 842a mv s0,a0 - 80006c68: 853e mv a0,a5 - 80006c6a: e406 sd ra,8(sp) - 80006c6c: 3601a423 sw zero,872(gp) # 8000a6b8 - 80006c70: ca0f90ef jal 80000110 <_fstat> - 80006c74: 57fd li a5,-1 - 80006c76: 00f50663 beq a0,a5,80006c82 <_fstat_r+0x24> - 80006c7a: 60a2 ld ra,8(sp) - 80006c7c: 6402 ld s0,0(sp) - 80006c7e: 0141 addi sp,sp,16 - 80006c80: 8082 ret - 80006c82: 3681a783 lw a5,872(gp) # 8000a6b8 - 80006c86: dbf5 beqz a5,80006c7a <_fstat_r+0x1c> - 80006c88: 60a2 ld ra,8(sp) - 80006c8a: c01c sw a5,0(s0) - 80006c8c: 6402 ld s0,0(sp) - 80006c8e: 0141 addi sp,sp,16 - 80006c90: 8082 ret - -0000000080006c92 <_isatty_r>: - 80006c92: 1141 addi sp,sp,-16 - 80006c94: e022 sd s0,0(sp) - 80006c96: 842a mv s0,a0 - 80006c98: 852e mv a0,a1 - 80006c9a: 3601a423 sw zero,872(gp) # 8000a6b8 - 80006c9e: e406 sd ra,8(sp) - 80006ca0: c92f90ef jal 80000132 <_isatty> - 80006ca4: 57fd li a5,-1 - 80006ca6: 00f50663 beq a0,a5,80006cb2 <_isatty_r+0x20> - 80006caa: 60a2 ld ra,8(sp) - 80006cac: 6402 ld s0,0(sp) - 80006cae: 0141 addi sp,sp,16 - 80006cb0: 8082 ret - 80006cb2: 3681a783 lw a5,872(gp) # 8000a6b8 - 80006cb6: dbf5 beqz a5,80006caa <_isatty_r+0x18> - 80006cb8: 60a2 ld ra,8(sp) - 80006cba: c01c sw a5,0(s0) - 80006cbc: 6402 ld s0,0(sp) - 80006cbe: 0141 addi sp,sp,16 - 80006cc0: 8082 ret - -0000000080006cc2 <_sbrk_r>: - 80006cc2: 1141 addi sp,sp,-16 - 80006cc4: e022 sd s0,0(sp) - 80006cc6: 842a mv s0,a0 - 80006cc8: 852e mv a0,a1 - 80006cca: 3601a423 sw zero,872(gp) # 8000a6b8 - 80006cce: e406 sd ra,8(sp) - 80006cd0: b72f90ef jal 80000042 <_sbrk> - 80006cd4: 57fd li a5,-1 - 80006cd6: 00f50663 beq a0,a5,80006ce2 <_sbrk_r+0x20> - 80006cda: 60a2 ld ra,8(sp) - 80006cdc: 6402 ld s0,0(sp) - 80006cde: 0141 addi sp,sp,16 - 80006ce0: 8082 ret - 80006ce2: 3681a783 lw a5,872(gp) # 8000a6b8 - 80006ce6: dbf5 beqz a5,80006cda <_sbrk_r+0x18> - 80006ce8: 60a2 ld ra,8(sp) - 80006cea: c01c sw a5,0(s0) - 80006cec: 6402 ld s0,0(sp) - 80006cee: 0141 addi sp,sp,16 - 80006cf0: 8082 ret - -0000000080006cf2 <__assert_func>: - 80006cf2: 00003797 auipc a5,0x3 - 80006cf6: e667b783 ld a5,-410(a5) # 80009b58 <_impure_ptr> - 80006cfa: 1141 addi sp,sp,-16 - 80006cfc: 8832 mv a6,a2 - 80006cfe: e406 sd ra,8(sp) - 80006d00: 88aa mv a7,a0 - 80006d02: 872e mv a4,a1 - 80006d04: 6f88 ld a0,24(a5) - 80006d06: 8636 mv a2,a3 - 80006d08: 00002797 auipc a5,0x2 - 80006d0c: 70078793 addi a5,a5,1792 # 80009408 <__clzdi2+0x42e> - 80006d10: 00080b63 beqz a6,80006d26 <__assert_func+0x34> - 80006d14: 86c6 mv a3,a7 - 80006d16: 00002597 auipc a1,0x2 - 80006d1a: 70258593 addi a1,a1,1794 # 80009418 <__clzdi2+0x43e> - 80006d1e: 11a000ef jal 80006e38 - 80006d22: 7eb000ef jal 80007d0c - 80006d26: 00002797 auipc a5,0x2 - 80006d2a: 5ba78793 addi a5,a5,1466 # 800092e0 <__clzdi2+0x306> - 80006d2e: 883e mv a6,a5 - 80006d30: b7d5 j 80006d14 <__assert_func+0x22> - -0000000080006d32 <_calloc_r>: - 80006d32: 02c5b7b3 mulhu a5,a1,a2 - 80006d36: 1101 addi sp,sp,-32 - 80006d38: ec06 sd ra,24(sp) - 80006d3a: 02c585b3 mul a1,a1,a2 - 80006d3e: efb5 bnez a5,80006dba <_calloc_r+0x88> - 80006d40: 903fe0ef jal 80005642 <_malloc_r> - 80006d44: 87aa mv a5,a0 - 80006d46: c521 beqz a0,80006d8e <_calloc_r+0x5c> - 80006d48: ff853603 ld a2,-8(a0) - 80006d4c: 04800693 li a3,72 - 80006d50: 9a71 andi a2,a2,-4 - 80006d52: 1661 addi a2,a2,-8 - 80006d54: 04c6e163 bltu a3,a2,80006d96 <_calloc_r+0x64> - 80006d58: 02700593 li a1,39 - 80006d5c: 872a mv a4,a0 - 80006d5e: 02c5f263 bgeu a1,a2,80006d82 <_calloc_r+0x50> - 80006d62: 00053023 sd zero,0(a0) - 80006d66: 00053423 sd zero,8(a0) - 80006d6a: 03700713 li a4,55 - 80006d6e: 02c77d63 bgeu a4,a2,80006da8 <_calloc_r+0x76> - 80006d72: 00053823 sd zero,16(a0) - 80006d76: 00053c23 sd zero,24(a0) - 80006d7a: 02050713 addi a4,a0,32 - 80006d7e: 04d60763 beq a2,a3,80006dcc <_calloc_r+0x9a> - 80006d82: 00073023 sd zero,0(a4) - 80006d86: 00073423 sd zero,8(a4) - 80006d8a: 00073823 sd zero,16(a4) - 80006d8e: 60e2 ld ra,24(sp) - 80006d90: 853e mv a0,a5 - 80006d92: 6105 addi sp,sp,32 - 80006d94: 8082 ret - 80006d96: 4581 li a1,0 - 80006d98: e42a sd a0,8(sp) - 80006d9a: 963fc0ef jal 800036fc - 80006d9e: 67a2 ld a5,8(sp) - 80006da0: 60e2 ld ra,24(sp) - 80006da2: 853e mv a0,a5 - 80006da4: 6105 addi sp,sp,32 - 80006da6: 8082 ret - 80006da8: 01050713 addi a4,a0,16 - 80006dac: 00073023 sd zero,0(a4) - 80006db0: 00073423 sd zero,8(a4) - 80006db4: 00073823 sd zero,16(a4) - 80006db8: bfd9 j 80006d8e <_calloc_r+0x5c> - 80006dba: a9ff90ef jal 80000858 <__errno> - 80006dbe: 60e2 ld ra,24(sp) - 80006dc0: 47b1 li a5,12 - 80006dc2: c11c sw a5,0(a0) - 80006dc4: 4781 li a5,0 - 80006dc6: 853e mv a0,a5 - 80006dc8: 6105 addi sp,sp,32 - 80006dca: 8082 ret - 80006dcc: 02053023 sd zero,32(a0) - 80006dd0: 02053423 sd zero,40(a0) - 80006dd4: 03050713 addi a4,a0,48 - 80006dd8: b76d j 80006d82 <_calloc_r+0x50> - -0000000080006dda <__ascii_mbtowc>: - 80006dda: cd89 beqz a1,80006df4 <__ascii_mbtowc+0x1a> - 80006ddc: 4501 li a0,0 - 80006dde: ca11 beqz a2,80006df2 <__ascii_mbtowc+0x18> - 80006de0: ca85 beqz a3,80006e10 <__ascii_mbtowc+0x36> - 80006de2: 00064783 lbu a5,0(a2) - 80006de6: c19c sw a5,0(a1) - 80006de8: 00064503 lbu a0,0(a2) - 80006dec: 00a03533 snez a0,a0 - 80006df0: 8082 ret - 80006df2: 8082 ret - 80006df4: 1141 addi sp,sp,-16 - 80006df6: 006c addi a1,sp,12 - 80006df8: 4501 li a0,0 - 80006dfa: ca09 beqz a2,80006e0c <__ascii_mbtowc+0x32> - 80006dfc: ce81 beqz a3,80006e14 <__ascii_mbtowc+0x3a> - 80006dfe: 00064783 lbu a5,0(a2) - 80006e02: c19c sw a5,0(a1) - 80006e04: 00064503 lbu a0,0(a2) - 80006e08: 00a03533 snez a0,a0 - 80006e0c: 0141 addi sp,sp,16 - 80006e0e: 8082 ret - 80006e10: 5579 li a0,-2 - 80006e12: 8082 ret - 80006e14: 5579 li a0,-2 - 80006e16: bfdd j 80006e0c <__ascii_mbtowc+0x32> - -0000000080006e18 <__ascii_wctomb>: - 80006e18: c989 beqz a1,80006e2a <__ascii_wctomb+0x12> - 80006e1a: 0ff00793 li a5,255 - 80006e1e: 00c7e863 bltu a5,a2,80006e2e <__ascii_wctomb+0x16> - 80006e22: 00c58023 sb a2,0(a1) - 80006e26: 4505 li a0,1 - 80006e28: 8082 ret - 80006e2a: 4501 li a0,0 - 80006e2c: 8082 ret - 80006e2e: 08a00793 li a5,138 - 80006e32: c11c sw a5,0(a0) - 80006e34: 557d li a0,-1 +0000000080006d26 <_realloc_r>: + 80006d26: 1a058963 beqz a1,80006ed8 <_realloc_r+0x1b2> + 80006d2a: 7139 addi sp,sp,-64 + 80006d2c: f822 sd s0,48(sp) + 80006d2e: f426 sd s1,40(sp) + 80006d30: 842e mv s0,a1 + 80006d32: e032 sd a2,0(sp) + 80006d34: fc06 sd ra,56(sp) + 80006d36: 84aa mv s1,a0 + 80006d38: e48ff0ef jal 80006380 <__malloc_lock> + 80006d3c: 6582 ld a1,0(sp) + 80006d3e: 02e00613 li a2,46 + 80006d42: 4781 li a5,0 + 80006d44: 01758693 addi a3,a1,23 + 80006d48: 02000713 li a4,32 + 80006d4c: 12d66663 bltu a2,a3,80006e78 <_realloc_r+0x152> + 80006d50: 00b736b3 sltu a3,a4,a1 + 80006d54: 8fd5 or a5,a5,a3 + 80006d56: 12079c63 bnez a5,80006e8e <_realloc_r+0x168> + 80006d5a: ff843603 ld a2,-8(s0) + 80006d5e: ff040893 addi a7,s0,-16 + 80006d62: ffc67793 andi a5,a2,-4 + 80006d66: 0ce7de63 bge a5,a4,80006e42 <_realloc_r+0x11c> + 80006d6a: 00004817 auipc a6,0x4 + 80006d6e: 93e83803 ld a6,-1730(a6) # 8000a6a8 <__malloc_av_+0x10> + 80006d72: 00f88533 add a0,a7,a5 + 80006d76: 6514 ld a3,8(a0) + 80006d78: 16a80363 beq a6,a0,80006ede <_realloc_r+0x1b8> + 80006d7c: ffe6f813 andi a6,a3,-2 + 80006d80: 982a add a6,a6,a0 + 80006d82: 00883803 ld a6,8(a6) + 80006d86: 00187813 andi a6,a6,1 + 80006d8a: 12081c63 bnez a6,80006ec2 <_realloc_r+0x19c> + 80006d8e: 9af1 andi a3,a3,-4 + 80006d90: 96be add a3,a3,a5 + 80006d92: 0ae6d363 bge a3,a4,80006e38 <_realloc_r+0x112> + 80006d96: 8a05 andi a2,a2,1 + 80006d98: ee19 bnez a2,80006db6 <_realloc_r+0x90> + 80006d9a: ff043303 ld t1,-16(s0) + 80006d9e: 40688333 sub t1,a7,t1 + 80006da2: 00833603 ld a2,8(t1) + 80006da6: 9a71 andi a2,a2,-4 + 80006da8: 96b2 add a3,a3,a2 + 80006daa: 24e6d063 bge a3,a4,80006fea <_realloc_r+0x2c4> + 80006dae: 00c78833 add a6,a5,a2 + 80006db2: 1ce85c63 bge a6,a4,80006f8a <_realloc_r+0x264> + 80006db6: 8526 mv a0,s1 + 80006db8: e83e sd a5,16(sp) + 80006dba: e446 sd a7,8(sp) + 80006dbc: e03a sd a4,0(sp) + 80006dbe: f6dfe0ef jal 80005d2a <_malloc_r> + 80006dc2: 6702 ld a4,0(sp) + 80006dc4: 68a2 ld a7,8(sp) + 80006dc6: 67c2 ld a5,16(sp) + 80006dc8: 86aa mv a3,a0 + 80006dca: 30050663 beqz a0,800070d6 <_realloc_r+0x3b0> + 80006dce: ff843603 ld a2,-8(s0) + 80006dd2: ff050593 addi a1,a0,-16 + 80006dd6: 9a79 andi a2,a2,-2 + 80006dd8: 9646 add a2,a2,a7 + 80006dda: 1ab60363 beq a2,a1,80006f80 <_realloc_r+0x25a> + 80006dde: ff878613 addi a2,a5,-8 # 3feffff8 <__dtim_size+0x3fdffff8> + 80006de2: 04800593 li a1,72 + 80006de6: 1ec5ec63 bltu a1,a2,80006fde <_realloc_r+0x2b8> + 80006dea: 02700513 li a0,39 + 80006dee: 87b6 mv a5,a3 + 80006df0: 8722 mv a4,s0 + 80006df2: 00c57e63 bgeu a0,a2,80006e0e <_realloc_r+0xe8> + 80006df6: 6018 ld a4,0(s0) + 80006df8: 03700793 li a5,55 + 80006dfc: e298 sd a4,0(a3) + 80006dfe: 6418 ld a4,8(s0) + 80006e00: e698 sd a4,8(a3) + 80006e02: 24c7e263 bltu a5,a2,80007046 <_realloc_r+0x320> + 80006e06: 01040713 addi a4,s0,16 + 80006e0a: 01068793 addi a5,a3,16 + 80006e0e: 6310 ld a2,0(a4) + 80006e10: e390 sd a2,0(a5) + 80006e12: 6710 ld a2,8(a4) + 80006e14: e790 sd a2,8(a5) + 80006e16: 6b18 ld a4,16(a4) + 80006e18: eb98 sd a4,16(a5) + 80006e1a: 85a2 mv a1,s0 + 80006e1c: 8526 mv a0,s1 + 80006e1e: e036 sd a3,0(sp) + 80006e20: e40fd0ef jal 80004460 <_free_r> + 80006e24: 8526 mv a0,s1 + 80006e26: d5cff0ef jal 80006382 <__malloc_unlock> + 80006e2a: 6682 ld a3,0(sp) + 80006e2c: 70e2 ld ra,56(sp) + 80006e2e: 7442 ld s0,48(sp) + 80006e30: 74a2 ld s1,40(sp) + 80006e32: 8536 mv a0,a3 + 80006e34: 6121 addi sp,sp,64 80006e36: 8082 ret + 80006e38: 6d10 ld a2,24(a0) + 80006e3a: 690c ld a1,16(a0) + 80006e3c: 87b6 mv a5,a3 + 80006e3e: ed90 sd a2,24(a1) + 80006e40: ea0c sd a1,16(a2) + 80006e42: 0088b683 ld a3,8(a7) + 80006e46: 40e78533 sub a0,a5,a4 + 80006e4a: 45fd li a1,31 + 80006e4c: 8a85 andi a3,a3,1 + 80006e4e: 00f88633 add a2,a7,a5 + 80006e52: 04a5e763 bltu a1,a0,80006ea0 <_realloc_r+0x17a> + 80006e56: 8edd or a3,a3,a5 + 80006e58: 00d8b423 sd a3,8(a7) + 80006e5c: 661c ld a5,8(a2) + 80006e5e: 0017e793 ori a5,a5,1 + 80006e62: e61c sd a5,8(a2) + 80006e64: 8526 mv a0,s1 + 80006e66: d1cff0ef jal 80006382 <__malloc_unlock> + 80006e6a: 86a2 mv a3,s0 + 80006e6c: 70e2 ld ra,56(sp) + 80006e6e: 7442 ld s0,48(sp) + 80006e70: 74a2 ld s1,40(sp) + 80006e72: 8536 mv a0,a3 + 80006e74: 6121 addi sp,sp,64 + 80006e76: 8082 ret + 80006e78: 01f6d793 srli a5,a3,0x1f + 80006e7c: ff06f713 andi a4,a3,-16 + 80006e80: 00f037b3 snez a5,a5 + 80006e84: 00b736b3 sltu a3,a4,a1 + 80006e88: 8fd5 or a5,a5,a3 + 80006e8a: ec0788e3 beqz a5,80006d5a <_realloc_r+0x34> + 80006e8e: 70e2 ld ra,56(sp) + 80006e90: 7442 ld s0,48(sp) + 80006e92: 47b1 li a5,12 + 80006e94: c09c sw a5,0(s1) + 80006e96: 4681 li a3,0 + 80006e98: 74a2 ld s1,40(sp) + 80006e9a: 8536 mv a0,a3 + 80006e9c: 6121 addi sp,sp,64 + 80006e9e: 8082 ret + 80006ea0: 8ed9 or a3,a3,a4 + 80006ea2: 00d8b423 sd a3,8(a7) + 80006ea6: 00e885b3 add a1,a7,a4 + 80006eaa: 00156513 ori a0,a0,1 + 80006eae: e588 sd a0,8(a1) + 80006eb0: 661c ld a5,8(a2) + 80006eb2: 05c1 addi a1,a1,16 + 80006eb4: 8526 mv a0,s1 + 80006eb6: 0017e793 ori a5,a5,1 + 80006eba: e61c sd a5,8(a2) + 80006ebc: da4fd0ef jal 80004460 <_free_r> + 80006ec0: b755 j 80006e64 <_realloc_r+0x13e> + 80006ec2: 8a05 andi a2,a2,1 + 80006ec4: ee0619e3 bnez a2,80006db6 <_realloc_r+0x90> + 80006ec8: ff043303 ld t1,-16(s0) + 80006ecc: 40688333 sub t1,a7,t1 + 80006ed0: 00833603 ld a2,8(t1) + 80006ed4: 9a71 andi a2,a2,-4 + 80006ed6: bde1 j 80006dae <_realloc_r+0x88> + 80006ed8: 85b2 mv a1,a2 + 80006eda: e51fe06f j 80005d2a <_malloc_r> + 80006ede: 9af1 andi a3,a3,-4 + 80006ee0: 96be add a3,a3,a5 + 80006ee2: 02070513 addi a0,a4,32 # 3ff00020 <__dtim_size+0x3fe00020> + 80006ee6: 18a6d863 bge a3,a0,80007076 <_realloc_r+0x350> + 80006eea: 8a05 andi a2,a2,1 + 80006eec: ec0615e3 bnez a2,80006db6 <_realloc_r+0x90> + 80006ef0: ff043303 ld t1,-16(s0) + 80006ef4: 40688333 sub t1,a7,t1 + 80006ef8: 00833603 ld a2,8(t1) + 80006efc: 9a71 andi a2,a2,-4 + 80006efe: 00c68833 add a6,a3,a2 + 80006f02: eaa846e3 blt a6,a0,80006dae <_realloc_r+0x88> + 80006f06: 01833683 ld a3,24(t1) + 80006f0a: 01033583 ld a1,16(t1) + 80006f0e: ff878613 addi a2,a5,-8 + 80006f12: 04800513 li a0,72 + 80006f16: ed94 sd a3,24(a1) + 80006f18: ea8c sd a1,16(a3) + 80006f1a: 01030693 addi a3,t1,16 + 80006f1e: 1ec56a63 bltu a0,a2,80007112 <_realloc_r+0x3ec> + 80006f22: 02700593 li a1,39 + 80006f26: 87b6 mv a5,a3 + 80006f28: 00c5ff63 bgeu a1,a2,80006f46 <_realloc_r+0x220> + 80006f2c: 600c ld a1,0(s0) + 80006f2e: 03700793 li a5,55 + 80006f32: 00b33823 sd a1,16(t1) + 80006f36: 640c ld a1,8(s0) + 80006f38: 00b33c23 sd a1,24(t1) + 80006f3c: 20c7e463 bltu a5,a2,80007144 <_realloc_r+0x41e> + 80006f40: 0441 addi s0,s0,16 + 80006f42: 02030793 addi a5,t1,32 + 80006f46: 6010 ld a2,0(s0) + 80006f48: e390 sd a2,0(a5) + 80006f4a: 6410 ld a2,8(s0) + 80006f4c: e790 sd a2,8(a5) + 80006f4e: 6810 ld a2,16(s0) + 80006f50: eb90 sd a2,16(a5) + 80006f52: 00e30633 add a2,t1,a4 + 80006f56: 40e807b3 sub a5,a6,a4 + 80006f5a: 00003597 auipc a1,0x3 + 80006f5e: 74c5b723 sd a2,1870(a1) # 8000a6a8 <__malloc_av_+0x10> + 80006f62: 0017e793 ori a5,a5,1 + 80006f66: e61c sd a5,8(a2) + 80006f68: 00833783 ld a5,8(t1) + 80006f6c: 8526 mv a0,s1 + 80006f6e: e036 sd a3,0(sp) + 80006f70: 8b85 andi a5,a5,1 + 80006f72: 8fd9 or a5,a5,a4 + 80006f74: 00f33423 sd a5,8(t1) + 80006f78: c0aff0ef jal 80006382 <__malloc_unlock> + 80006f7c: 6682 ld a3,0(sp) + 80006f7e: b5fd j 80006e6c <_realloc_r+0x146> + 80006f80: ff853683 ld a3,-8(a0) + 80006f84: 9af1 andi a3,a3,-4 + 80006f86: 97b6 add a5,a5,a3 + 80006f88: bd6d j 80006e42 <_realloc_r+0x11c> + 80006f8a: 01833683 ld a3,24(t1) + 80006f8e: 01033583 ld a1,16(t1) + 80006f92: ff878613 addi a2,a5,-8 + 80006f96: 04800513 li a0,72 + 80006f9a: ed94 sd a3,24(a1) + 80006f9c: ea8c sd a1,16(a3) + 80006f9e: 01030793 addi a5,t1,16 + 80006fa2: 0ac56d63 bltu a0,a2,8000705c <_realloc_r+0x336> + 80006fa6: 02700593 li a1,39 + 80006faa: 86be mv a3,a5 + 80006fac: 00c5ff63 bgeu a1,a2,80006fca <_realloc_r+0x2a4> + 80006fb0: 600c ld a1,0(s0) + 80006fb2: 03700693 li a3,55 + 80006fb6: 00b33823 sd a1,16(t1) + 80006fba: 640c ld a1,8(s0) + 80006fbc: 00b33c23 sd a1,24(t1) + 80006fc0: 0ec6ee63 bltu a3,a2,800070bc <_realloc_r+0x396> + 80006fc4: 0441 addi s0,s0,16 + 80006fc6: 02030693 addi a3,t1,32 + 80006fca: 6010 ld a2,0(s0) + 80006fcc: e290 sd a2,0(a3) + 80006fce: 6410 ld a2,8(s0) + 80006fd0: e690 sd a2,8(a3) + 80006fd2: 6810 ld a2,16(s0) + 80006fd4: ea90 sd a2,16(a3) + 80006fd6: 843e mv s0,a5 + 80006fd8: 889a mv a7,t1 + 80006fda: 87c2 mv a5,a6 + 80006fdc: b59d j 80006e42 <_realloc_r+0x11c> + 80006fde: 85a2 mv a1,s0 + 80006fe0: e02a sd a0,0(sp) + 80006fe2: b0bfc0ef jal 80003aec + 80006fe6: 6682 ld a3,0(sp) + 80006fe8: bd0d j 80006e1a <_realloc_r+0xf4> + 80006fea: 6d0c ld a1,24(a0) + 80006fec: 6908 ld a0,16(a0) + 80006fee: ff878613 addi a2,a5,-8 + 80006ff2: 04800813 li a6,72 + 80006ff6: ed0c sd a1,24(a0) + 80006ff8: e988 sd a0,16(a1) + 80006ffa: 01033503 ld a0,16(t1) + 80006ffe: 01833583 ld a1,24(t1) + 80007002: 01030793 addi a5,t1,16 + 80007006: ed0c sd a1,24(a0) + 80007008: e988 sd a0,16(a1) + 8000700a: 08c86c63 bltu a6,a2,800070a2 <_realloc_r+0x37c> + 8000700e: 02700513 li a0,39 + 80007012: 85be mv a1,a5 + 80007014: 00c57f63 bgeu a0,a2,80007032 <_realloc_r+0x30c> + 80007018: 6008 ld a0,0(s0) + 8000701a: 03700593 li a1,55 + 8000701e: 00a33823 sd a0,16(t1) + 80007022: 6408 ld a0,8(s0) + 80007024: 00a33c23 sd a0,24(t1) + 80007028: 0cc5e663 bltu a1,a2,800070f4 <_realloc_r+0x3ce> + 8000702c: 0441 addi s0,s0,16 + 8000702e: 02030593 addi a1,t1,32 + 80007032: 6010 ld a2,0(s0) + 80007034: e190 sd a2,0(a1) + 80007036: 6410 ld a2,8(s0) + 80007038: e590 sd a2,8(a1) + 8000703a: 6810 ld a2,16(s0) + 8000703c: e990 sd a2,16(a1) + 8000703e: 843e mv s0,a5 + 80007040: 889a mv a7,t1 + 80007042: 87b6 mv a5,a3 + 80007044: bbfd j 80006e42 <_realloc_r+0x11c> + 80007046: 681c ld a5,16(s0) + 80007048: ea9c sd a5,16(a3) + 8000704a: 6c1c ld a5,24(s0) + 8000704c: ee9c sd a5,24(a3) + 8000704e: 08b60a63 beq a2,a1,800070e2 <_realloc_r+0x3bc> + 80007052: 02040713 addi a4,s0,32 + 80007056: 02068793 addi a5,a3,32 + 8000705a: bb55 j 80006e0e <_realloc_r+0xe8> + 8000705c: 853e mv a0,a5 + 8000705e: 85a2 mv a1,s0 + 80007060: ec1a sd t1,24(sp) + 80007062: e83a sd a4,16(sp) + 80007064: e442 sd a6,8(sp) + 80007066: e03e sd a5,0(sp) + 80007068: a85fc0ef jal 80003aec + 8000706c: 6782 ld a5,0(sp) + 8000706e: 6822 ld a6,8(sp) + 80007070: 6742 ld a4,16(sp) + 80007072: 6362 ld t1,24(sp) + 80007074: b78d j 80006fd6 <_realloc_r+0x2b0> + 80007076: 40e687b3 sub a5,a3,a4 + 8000707a: 98ba add a7,a7,a4 + 8000707c: 00003697 auipc a3,0x3 + 80007080: 6316b623 sd a7,1580(a3) # 8000a6a8 <__malloc_av_+0x10> + 80007084: 0017e793 ori a5,a5,1 + 80007088: 00f8b423 sd a5,8(a7) + 8000708c: ff843783 ld a5,-8(s0) + 80007090: 8526 mv a0,s1 + 80007092: 8b85 andi a5,a5,1 + 80007094: 8fd9 or a5,a5,a4 + 80007096: fef43c23 sd a5,-8(s0) + 8000709a: ae8ff0ef jal 80006382 <__malloc_unlock> + 8000709e: 86a2 mv a3,s0 + 800070a0: b3f1 j 80006e6c <_realloc_r+0x146> + 800070a2: 853e mv a0,a5 + 800070a4: 85a2 mv a1,s0 + 800070a6: ec1a sd t1,24(sp) + 800070a8: e83a sd a4,16(sp) + 800070aa: e436 sd a3,8(sp) + 800070ac: e03e sd a5,0(sp) + 800070ae: a3ffc0ef jal 80003aec + 800070b2: 6782 ld a5,0(sp) + 800070b4: 66a2 ld a3,8(sp) + 800070b6: 6742 ld a4,16(sp) + 800070b8: 6362 ld t1,24(sp) + 800070ba: b751 j 8000703e <_realloc_r+0x318> + 800070bc: 6814 ld a3,16(s0) + 800070be: 02d33023 sd a3,32(t1) + 800070c2: 6c14 ld a3,24(s0) + 800070c4: 02d33423 sd a3,40(t1) + 800070c8: 06a60263 beq a2,a0,8000712c <_realloc_r+0x406> + 800070cc: 02040413 addi s0,s0,32 + 800070d0: 03030693 addi a3,t1,48 + 800070d4: bddd j 80006fca <_realloc_r+0x2a4> + 800070d6: e02a sd a0,0(sp) + 800070d8: 8526 mv a0,s1 + 800070da: aa8ff0ef jal 80006382 <__malloc_unlock> + 800070de: 6682 ld a3,0(sp) + 800070e0: b371 j 80006e6c <_realloc_r+0x146> + 800070e2: 7010 ld a2,32(s0) + 800070e4: 03040713 addi a4,s0,48 + 800070e8: 03068793 addi a5,a3,48 + 800070ec: f290 sd a2,32(a3) + 800070ee: 7410 ld a2,40(s0) + 800070f0: f690 sd a2,40(a3) + 800070f2: bb31 j 80006e0e <_realloc_r+0xe8> + 800070f4: 6808 ld a0,16(s0) + 800070f6: 04800593 li a1,72 + 800070fa: 02a33023 sd a0,32(t1) + 800070fe: 6c08 ld a0,24(s0) + 80007100: 02a33423 sd a0,40(t1) + 80007104: 04b60d63 beq a2,a1,8000715e <_realloc_r+0x438> + 80007108: 02040413 addi s0,s0,32 + 8000710c: 03030593 addi a1,t1,48 + 80007110: b70d j 80007032 <_realloc_r+0x30c> + 80007112: 8536 mv a0,a3 + 80007114: 85a2 mv a1,s0 + 80007116: ec1a sd t1,24(sp) + 80007118: e83a sd a4,16(sp) + 8000711a: e442 sd a6,8(sp) + 8000711c: e036 sd a3,0(sp) + 8000711e: 9cffc0ef jal 80003aec + 80007122: 6362 ld t1,24(sp) + 80007124: 6742 ld a4,16(sp) + 80007126: 6822 ld a6,8(sp) + 80007128: 6682 ld a3,0(sp) + 8000712a: b525 j 80006f52 <_realloc_r+0x22c> + 8000712c: 7010 ld a2,32(s0) + 8000712e: 04030693 addi a3,t1,64 + 80007132: 03040413 addi s0,s0,48 + 80007136: 02c33823 sd a2,48(t1) + 8000713a: ff843603 ld a2,-8(s0) + 8000713e: 02c33c23 sd a2,56(t1) + 80007142: b561 j 80006fca <_realloc_r+0x2a4> + 80007144: 681c ld a5,16(s0) + 80007146: 02f33023 sd a5,32(t1) + 8000714a: 6c1c ld a5,24(s0) + 8000714c: 02f33423 sd a5,40(t1) + 80007150: 02a60363 beq a2,a0,80007176 <_realloc_r+0x450> + 80007154: 02040413 addi s0,s0,32 + 80007158: 03030793 addi a5,t1,48 + 8000715c: b3ed j 80006f46 <_realloc_r+0x220> + 8000715e: 7010 ld a2,32(s0) + 80007160: 04030593 addi a1,t1,64 + 80007164: 03040413 addi s0,s0,48 + 80007168: 02c33823 sd a2,48(t1) + 8000716c: ff843603 ld a2,-8(s0) + 80007170: 02c33c23 sd a2,56(t1) + 80007174: bd7d j 80007032 <_realloc_r+0x30c> + 80007176: 7010 ld a2,32(s0) + 80007178: 04030793 addi a5,t1,64 + 8000717c: 03040413 addi s0,s0,48 + 80007180: 02c33823 sd a2,48(t1) + 80007184: ff843603 ld a2,-8(s0) + 80007188: 02c33c23 sd a2,56(t1) + 8000718c: bb6d j 80006f46 <_realloc_r+0x220> -0000000080006e38 : - 80006e38: 715d addi sp,sp,-80 - 80006e3a: 8eaa mv t4,a0 - 80006e3c: 00003517 auipc a0,0x3 - 80006e40: d1c53503 ld a0,-740(a0) # 80009b58 <_impure_ptr> - 80006e44: 02010313 addi t1,sp,32 - 80006e48: 8e2e mv t3,a1 - 80006e4a: f032 sd a2,32(sp) - 80006e4c: f436 sd a3,40(sp) - 80006e4e: 85f6 mv a1,t4 - 80006e50: 8672 mv a2,t3 - 80006e52: 869a mv a3,t1 - 80006e54: ec06 sd ra,24(sp) - 80006e56: f83a sd a4,48(sp) - 80006e58: fc3e sd a5,56(sp) - 80006e5a: e0c2 sd a6,64(sp) - 80006e5c: e4c6 sd a7,72(sp) - 80006e5e: e41a sd t1,8(sp) - 80006e60: 00a000ef jal 80006e6a <_vfiprintf_r> - 80006e64: 60e2 ld ra,24(sp) - 80006e66: 6161 addi sp,sp,80 - 80006e68: 8082 ret +000000008000718e <_fclose_r>: + 8000718e: 1101 addi sp,sp,-32 + 80007190: ec06 sd ra,24(sp) + 80007192: e04a sd s2,0(sp) + 80007194: cdbd beqz a1,80007212 <_fclose_r+0x84> + 80007196: e822 sd s0,16(sp) + 80007198: e426 sd s1,8(sp) + 8000719a: 842e mv s0,a1 + 8000719c: 84aa mv s1,a0 + 8000719e: c119 beqz a0,800071a4 <_fclose_r+0x16> + 800071a0: 653c ld a5,72(a0) + 800071a2: cfc1 beqz a5,8000723a <_fclose_r+0xac> + 800071a4: a54fc0ef jal 800033f8 <__sfp_lock_acquire> + 800071a8: 01041783 lh a5,16(s0) + 800071ac: cfb9 beqz a5,8000720a <_fclose_r+0x7c> + 800071ae: 85a2 mv a1,s0 + 800071b0: 8526 mv a0,s1 + 800071b2: ed9fb0ef jal 8000308a <__sflush_r> + 800071b6: 683c ld a5,80(s0) + 800071b8: 892a mv s2,a0 + 800071ba: c791 beqz a5,800071c6 <_fclose_r+0x38> + 800071bc: 780c ld a1,48(s0) + 800071be: 8526 mv a0,s1 + 800071c0: 9782 jalr a5 + 800071c2: 06054563 bltz a0,8000722c <_fclose_r+0x9e> + 800071c6: 01045783 lhu a5,16(s0) + 800071ca: 0807f793 andi a5,a5,128 + 800071ce: eba1 bnez a5,8000721e <_fclose_r+0x90> + 800071d0: 6c2c ld a1,88(s0) + 800071d2: c991 beqz a1,800071e6 <_fclose_r+0x58> + 800071d4: 07440793 addi a5,s0,116 + 800071d8: 00f58563 beq a1,a5,800071e2 <_fclose_r+0x54> + 800071dc: 8526 mv a0,s1 + 800071de: a82fd0ef jal 80004460 <_free_r> + 800071e2: 04043c23 sd zero,88(s0) + 800071e6: 7c2c ld a1,120(s0) + 800071e8: c591 beqz a1,800071f4 <_fclose_r+0x66> + 800071ea: 8526 mv a0,s1 + 800071ec: a74fd0ef jal 80004460 <_free_r> + 800071f0: 06043c23 sd zero,120(s0) + 800071f4: 00041823 sh zero,16(s0) + 800071f8: a02fc0ef jal 800033fa <__sfp_lock_release> + 800071fc: 60e2 ld ra,24(sp) + 800071fe: 6442 ld s0,16(sp) + 80007200: 64a2 ld s1,8(sp) + 80007202: 854a mv a0,s2 + 80007204: 6902 ld s2,0(sp) + 80007206: 6105 addi sp,sp,32 + 80007208: 8082 ret + 8000720a: 9f0fc0ef jal 800033fa <__sfp_lock_release> + 8000720e: 6442 ld s0,16(sp) + 80007210: 64a2 ld s1,8(sp) + 80007212: 60e2 ld ra,24(sp) + 80007214: 4901 li s2,0 + 80007216: 854a mv a0,s2 + 80007218: 6902 ld s2,0(sp) + 8000721a: 6105 addi sp,sp,32 + 8000721c: 8082 ret + 8000721e: 6c0c ld a1,24(s0) + 80007220: 8526 mv a0,s1 + 80007222: a3efd0ef jal 80004460 <_free_r> + 80007226: 6c2c ld a1,88(s0) + 80007228: f5d5 bnez a1,800071d4 <_fclose_r+0x46> + 8000722a: bf75 j 800071e6 <_fclose_r+0x58> + 8000722c: 01045783 lhu a5,16(s0) + 80007230: 597d li s2,-1 + 80007232: 0807f793 andi a5,a5,128 + 80007236: dfc9 beqz a5,800071d0 <_fclose_r+0x42> + 80007238: b7dd j 8000721e <_fclose_r+0x90> + 8000723a: 9a6fc0ef jal 800033e0 <__sinit> + 8000723e: b79d j 800071a4 <_fclose_r+0x16> -0000000080006e6a <_vfiprintf_r>: - 80006e6a: 7145 addi sp,sp,-464 - 80006e6c: fb4a sd s2,432(sp) - 80006e6e: f74e sd s3,424(sp) - 80006e70: ef56 sd s5,408(sp) - 80006e72: f6ee sd s11,360(sp) - 80006e74: e786 sd ra,456(sp) - 80006e76: 89aa mv s3,a0 - 80006e78: 8db2 mv s11,a2 - 80006e7a: 8ab6 mv s5,a3 - 80006e7c: 892e mv s2,a1 - 80006e7e: c501 beqz a0,80006e86 <_vfiprintf_r+0x1c> - 80006e80: 653c ld a5,72(a0) - 80006e82: 420788e3 beqz a5,80007ab2 <_vfiprintf_r+0xc48> - 80006e86: 01091783 lh a5,16(s2) - 80006e8a: 0ac92703 lw a4,172(s2) - 80006e8e: 6609 lui a2,0x2 - 80006e90: 03279693 slli a3,a5,0x32 - 80006e94: 2606c463 bltz a3,800070fc <_vfiprintf_r+0x292> - 80006e98: 76f9 lui a3,0xffffe - 80006e9a: 8fd1 or a5,a5,a2 - 80006e9c: 16fd addi a3,a3,-1 # ffffffffffffdfff <_stack_top+0xffffffff7fefdfff> - 80006e9e: 8f75 and a4,a4,a3 - 80006ea0: 00f91823 sh a5,16(s2) - 80006ea4: 0107979b slliw a5,a5,0x10 - 80006ea8: 4107d79b sraiw a5,a5,0x10 - 80006eac: 0ae92623 sw a4,172(s2) - 80006eb0: 0087f713 andi a4,a5,8 - 80006eb4: 1c070663 beqz a4,80007080 <_vfiprintf_r+0x216> - 80006eb8: 01893703 ld a4,24(s2) - 80006ebc: 1c070263 beqz a4,80007080 <_vfiprintf_r+0x216> - 80006ec0: 8be9 andi a5,a5,26 - 80006ec2: 4729 li a4,10 - 80006ec4: 1ce78963 beq a5,a4,80007096 <_vfiprintf_r+0x22c> - 80006ec8: f352 sd s4,416(sp) - 80006eca: 0e010a13 addi s4,sp,224 - 80006ece: e3a2 sd s0,448(sp) - 80006ed0: ff26 sd s1,440(sp) - 80006ed2: eb5a sd s6,400(sp) - 80006ed4: e75e sd s7,392(sp) - 80006ed6: e362 sd s8,384(sp) - 80006ed8: fee6 sd s9,376(sp) - 80006eda: faea sd s10,368(sp) - 80006edc: f882 sd zero,112(sp) - 80006ede: d482 sw zero,104(sp) - 80006ee0: f0d2 sd s4,96(sp) - 80006ee2: 87d2 mv a5,s4 - 80006ee4: f802 sd zero,48(sp) - 80006ee6: f402 sd zero,40(sp) - 80006ee8: fc02 sd zero,56(sp) - 80006eea: e402 sd zero,8(sp) - 80006eec: 449d li s1,7 - 80006eee: 00003b17 auipc s6,0x3 - 80006ef2: 966b0b13 addi s6,s6,-1690 # 80009854 <_ctype_+0x104> - 80006ef6: 4441 li s0,16 - 80006ef8: 000dc603 lbu a2,0(s11) - 80006efc: 8c6e mv s8,s11 - 80006efe: fdb60693 addi a3,a2,-37 # 1fdb - 80006f02: 00d036b3 snez a3,a3 - 80006f06: 00c03733 snez a4,a2 - 80006f0a: 8f75 and a4,a4,a3 - 80006f0c: c329 beqz a4,80006f4e <_vfiprintf_r+0xe4> - 80006f0e: 001c4603 lbu a2,1(s8) - 80006f12: 0c05 addi s8,s8,1 - 80006f14: fdb60693 addi a3,a2,-37 - 80006f18: 00d036b3 snez a3,a3 - 80006f1c: 00c03733 snez a4,a2 - 80006f20: 8f75 and a4,a4,a3 - 80006f22: f775 bnez a4,80006f0e <_vfiprintf_r+0xa4> - 80006f24: 41bc0cbb subw s9,s8,s11 - 80006f28: 020c8363 beqz s9,80006f4e <_vfiprintf_r+0xe4> - 80006f2c: 76c6 ld a3,112(sp) - 80006f2e: 5726 lw a4,104(sp) - 80006f30: 01b7b023 sd s11,0(a5) - 80006f34: 96e6 add a3,a3,s9 - 80006f36: 2705 addiw a4,a4,1 - 80006f38: 0197b423 sd s9,8(a5) - 80006f3c: f8b6 sd a3,112(sp) - 80006f3e: d4ba sw a4,104(sp) - 80006f40: 07c1 addi a5,a5,16 - 80006f42: 16e4ca63 blt s1,a4,800070b6 <_vfiprintf_r+0x24c> - 80006f46: 6722 ld a4,8(sp) - 80006f48: 0197073b addw a4,a4,s9 - 80006f4c: e43a sd a4,8(sp) - 80006f4e: 16060e63 beqz a2,800070ca <_vfiprintf_r+0x260> - 80006f52: 001c4703 lbu a4,1(s8) - 80006f56: 001c0d93 addi s11,s8,1 - 80006f5a: 04010ba3 sb zero,87(sp) - 80006f5e: 5c7d li s8,-1 - 80006f60: 4c81 li s9,0 - 80006f62: 4b81 li s7,0 - 80006f64: 8d3e mv s10,a5 - 80006f66: 0d85 addi s11,s11,1 - 80006f68: 2701 sext.w a4,a4 - 80006f6a: fe07069b addiw a3,a4,-32 - 80006f6e: 05a00793 li a5,90 - 80006f72: 04d7e563 bltu a5,a3,80006fbc <_vfiprintf_r+0x152> - 80006f76: 02069613 slli a2,a3,0x20 - 80006f7a: 01e65693 srli a3,a2,0x1e - 80006f7e: 96da add a3,a3,s6 - 80006f80: 4294 lw a3,0(a3) - 80006f82: 96da add a3,a3,s6 - 80006f84: 8682 jr a3 - 80006f86: 4c81 li s9,0 - 80006f88: 45a5 li a1,9 - 80006f8a: 000dc603 lbu a2,0(s11) - 80006f8e: 002c969b slliw a3,s9,0x2 - 80006f92: 01968cbb addw s9,a3,s9 - 80006f96: fd07071b addiw a4,a4,-48 - 80006f9a: 001c9c9b slliw s9,s9,0x1 - 80006f9e: fd06069b addiw a3,a2,-48 - 80006fa2: 0d85 addi s11,s11,1 - 80006fa4: 01970cbb addw s9,a4,s9 - 80006fa8: 0006071b sext.w a4,a2 - 80006fac: fcd5ffe3 bgeu a1,a3,80006f8a <_vfiprintf_r+0x120> - 80006fb0: fe07069b addiw a3,a4,-32 - 80006fb4: 05a00793 li a5,90 - 80006fb8: fad7ffe3 bgeu a5,a3,80006f76 <_vfiprintf_r+0x10c> - 80006fbc: 87ea mv a5,s10 - 80006fbe: 10070663 beqz a4,800070ca <_vfiprintf_r+0x260> - 80006fc2: 4e05 li t3,1 - 80006fc4: 06e10c23 sb a4,120(sp) - 80006fc8: 04010ba3 sb zero,87(sp) - 80006fcc: 88f2 mv a7,t3 - 80006fce: 4c01 li s8,0 - 80006fd0: 07810d13 addi s10,sp,120 - 80006fd4: 75c6 ld a1,112(sp) - 80006fd6: 5626 lw a2,104(sp) - 80006fd8: 084bf313 andi t1,s7,132 - 80006fdc: 86ae mv a3,a1 - 80006fde: 8732 mv a4,a2 - 80006fe0: 04031463 bnez t1,80007028 <_vfiprintf_r+0x1be> - 80006fe4: 411c8ebb subw t4,s9,a7 - 80006fe8: 1bd04b63 bgtz t4,8000719e <_vfiprintf_r+0x334> - 80006fec: 05714603 lbu a2,87(sp) - 80006ff0: c221 beqz a2,80007030 <_vfiprintf_r+0x1c6> - 80006ff2: 4301 li t1,0 - 80006ff4: 4f01 li t5,0 - 80006ff6: 05710613 addi a2,sp,87 - 80006ffa: e390 sd a2,0(a5) - 80006ffc: 0685 addi a3,a3,1 - 80006ffe: 2705 addiw a4,a4,1 - 80007000: 4605 li a2,1 - 80007002: e790 sd a2,8(a5) - 80007004: f8b6 sd a3,112(sp) - 80007006: d4ba sw a4,104(sp) - 80007008: 07c1 addi a5,a5,16 - 8000700a: 10e4c063 blt s1,a4,8000710a <_vfiprintf_r+0x2a0> - 8000700e: 000f0d63 beqz t5,80007028 <_vfiprintf_r+0x1be> - 80007012: 08b0 addi a2,sp,88 - 80007014: e390 sd a2,0(a5) - 80007016: 0689 addi a3,a3,2 - 80007018: 2705 addiw a4,a4,1 - 8000701a: 4609 li a2,2 - 8000701c: e790 sd a2,8(a5) - 8000701e: f8b6 sd a3,112(sp) - 80007020: d4ba sw a4,104(sp) - 80007022: 07c1 addi a5,a5,16 - 80007024: 7ce4cc63 blt s1,a4,800077fc <_vfiprintf_r+0x992> - 80007028: 08000613 li a2,128 - 8000702c: 64c30763 beq t1,a2,8000767a <_vfiprintf_r+0x810> - 80007030: 41cc0c3b subw s8,s8,t3 - 80007034: 6f804a63 bgtz s8,80007728 <_vfiprintf_r+0x8be> - 80007038: 96f2 add a3,a3,t3 - 8000703a: 2705 addiw a4,a4,1 - 8000703c: 01a7b023 sd s10,0(a5) - 80007040: 01c7b423 sd t3,8(a5) - 80007044: f8b6 sd a3,112(sp) - 80007046: d4ba sw a4,104(sp) - 80007048: 07c1 addi a5,a5,16 - 8000704a: 78e4c563 blt s1,a4,800077d4 <_vfiprintf_r+0x96a> - 8000704e: 004bf813 andi a6,s7,4 - 80007052: 00080663 beqz a6,8000705e <_vfiprintf_r+0x1f4> - 80007056: 411c8c3b subw s8,s9,a7 - 8000705a: 7d804363 bgtz s8,80007820 <_vfiprintf_r+0x9b6> - 8000705e: 87e6 mv a5,s9 - 80007060: 011cd363 bge s9,a7,80007066 <_vfiprintf_r+0x1fc> - 80007064: 87c6 mv a5,a7 - 80007066: 6722 ld a4,8(sp) - 80007068: 9fb9 addw a5,a5,a4 - 8000706a: e43e sd a5,8(sp) - 8000706c: 78069063 bnez a3,800077ec <_vfiprintf_r+0x982> - 80007070: d482 sw zero,104(sp) - 80007072: 87d2 mv a5,s4 - 80007074: b551 j 80006ef8 <_vfiprintf_r+0x8e> - 80007076: 000dc703 lbu a4,0(s11) - 8000707a: 010beb93 ori s7,s7,16 - 8000707e: b5e5 j 80006f66 <_vfiprintf_r+0xfc> - 80007080: 85ca mv a1,s2 - 80007082: 854e mv a0,s3 - 80007084: 934fc0ef jal 800031b8 <__swsetup_r> - 80007088: ed35 bnez a0,80007104 <_vfiprintf_r+0x29a> - 8000708a: 01091783 lh a5,16(s2) - 8000708e: 4729 li a4,10 - 80007090: 8be9 andi a5,a5,26 - 80007092: e2e79be3 bne a5,a4,80006ec8 <_vfiprintf_r+0x5e> - 80007096: 01291783 lh a5,18(s2) - 8000709a: e207c7e3 bltz a5,80006ec8 <_vfiprintf_r+0x5e> - 8000709e: 60be ld ra,456(sp) - 800070a0: 86d6 mv a3,s5 - 800070a2: 866e mv a2,s11 - 800070a4: 6afa ld s5,408(sp) - 800070a6: 7db6 ld s11,360(sp) - 800070a8: 85ca mv a1,s2 - 800070aa: 854e mv a0,s3 - 800070ac: 795a ld s2,432(sp) - 800070ae: 79ba ld s3,424(sp) - 800070b0: 6179 addi sp,sp,464 - 800070b2: 3c90006f j 80007c7a <__sbprintf> - 800070b6: 1090 addi a2,sp,96 - 800070b8: 85ca mv a1,s2 - 800070ba: 854e mv a0,s3 - 800070bc: 8c1fb0ef jal 8000297c <__sprint_r> - 800070c0: e901 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800070c2: 000c4603 lbu a2,0(s8) - 800070c6: 87d2 mv a5,s4 - 800070c8: bdbd j 80006f46 <_vfiprintf_r+0xdc> - 800070ca: 77c6 ld a5,112(sp) - 800070cc: 2e0790e3 bnez a5,80007bac <_vfiprintf_r+0xd42> - 800070d0: 01095783 lhu a5,16(s2) - 800070d4: 0407f793 andi a5,a5,64 - 800070d8: 360794e3 bnez a5,80007c40 <_vfiprintf_r+0xdd6> - 800070dc: 641e ld s0,448(sp) - 800070de: 74fa ld s1,440(sp) - 800070e0: 7a1a ld s4,416(sp) - 800070e2: 6b5a ld s6,400(sp) - 800070e4: 6bba ld s7,392(sp) - 800070e6: 6c1a ld s8,384(sp) - 800070e8: 7cf6 ld s9,376(sp) - 800070ea: 7d56 ld s10,368(sp) - 800070ec: 60be ld ra,456(sp) - 800070ee: 6522 ld a0,8(sp) - 800070f0: 795a ld s2,432(sp) - 800070f2: 79ba ld s3,424(sp) - 800070f4: 6afa ld s5,408(sp) - 800070f6: 7db6 ld s11,360(sp) - 800070f8: 6179 addi sp,sp,464 - 800070fa: 8082 ret - 800070fc: 03271693 slli a3,a4,0x32 - 80007100: da06d8e3 bgez a3,80006eb0 <_vfiprintf_r+0x46> - 80007104: 57fd li a5,-1 - 80007106: e43e sd a5,8(sp) - 80007108: b7d5 j 800070ec <_vfiprintf_r+0x282> - 8000710a: 1090 addi a2,sp,96 - 8000710c: 85ca mv a1,s2 - 8000710e: 854e mv a0,s3 - 80007110: e0f2 sd t3,64(sp) - 80007112: f046 sd a7,32(sp) - 80007114: ec1a sd t1,24(sp) - 80007116: e87a sd t5,16(sp) - 80007118: 865fb0ef jal 8000297c <__sprint_r> - 8000711c: f955 bnez a0,800070d0 <_vfiprintf_r+0x266> - 8000711e: 76c6 ld a3,112(sp) - 80007120: 5726 lw a4,104(sp) - 80007122: 6e06 ld t3,64(sp) - 80007124: 7882 ld a7,32(sp) - 80007126: 6362 ld t1,24(sp) - 80007128: 6f42 ld t5,16(sp) - 8000712a: 87d2 mv a5,s4 - 8000712c: b5cd j 8000700e <_vfiprintf_r+0x1a4> - 8000712e: 020bf713 andi a4,s7,32 - 80007132: 87ea mv a5,s10 - 80007134: 008a8513 addi a0,s5,8 - 80007138: 16071e63 bnez a4,800072b4 <_vfiprintf_r+0x44a> - 8000713c: 010bf713 andi a4,s7,16 - 80007140: 7e071363 bnez a4,80007926 <_vfiprintf_r+0xabc> - 80007144: 040bf693 andi a3,s7,64 - 80007148: 000aa703 lw a4,0(s5) - 8000714c: 1e0683e3 beqz a3,80007b32 <_vfiprintf_r+0xcc8> - 80007150: 0107171b slliw a4,a4,0x10 - 80007154: 4107571b sraiw a4,a4,0x10 - 80007158: 8aaa mv s5,a0 - 8000715a: 86ba mv a3,a4 - 8000715c: 1606c263 bltz a3,800072c0 <_vfiprintf_r+0x456> - 80007160: 160c4a63 bltz s8,800072d4 <_vfiprintf_r+0x46a> - 80007164: 00ec66b3 or a3,s8,a4 - 80007168: f7fbf513 andi a0,s7,-129 - 8000716c: 22069de3 bnez a3,80007ba6 <_vfiprintf_r+0xd3c> - 80007170: 05714703 lbu a4,87(sp) - 80007174: 160701e3 beqz a4,80007ad6 <_vfiprintf_r+0xc6c> - 80007178: 8baa mv s7,a0 - 8000717a: 4e01 li t3,0 - 8000717c: 4c01 li s8,0 - 8000717e: 0dc10d13 addi s10,sp,220 - 80007182: 4885 li a7,1 - 80007184: 76c6 ld a3,112(sp) - 80007186: 5726 lw a4,104(sp) - 80007188: 084bf313 andi t1,s7,132 - 8000718c: 85b6 mv a1,a3 - 8000718e: 863a mv a2,a4 - 80007190: 4f01 li t5,0 - 80007192: e60312e3 bnez t1,80006ff6 <_vfiprintf_r+0x18c> - 80007196: 411c8ebb subw t4,s9,a7 - 8000719a: e5d059e3 blez t4,80006fec <_vfiprintf_r+0x182> - 8000719e: 4f01 li t5,0 - 800071a0: 4fc1 li t6,16 - 800071a2: 86ae mv a3,a1 - 800071a4: 8732 mv a4,a2 - 800071a6: 00003317 auipc t1,0x3 - 800071aa: 82a30313 addi t1,t1,-2006 # 800099d0 - 800071ae: 07dfd263 bge t6,t4,80007212 <_vfiprintf_r+0x3a8> - 800071b2: ec5e sd s7,24(sp) - 800071b4: e4d6 sd s5,72(sp) - 800071b6: 429d li t0,7 - 800071b8: e87a sd t5,16(sp) - 800071ba: f046 sd a7,32(sp) - 800071bc: e0f2 sd t3,64(sp) - 800071be: 8af6 mv s5,t4 - 800071c0: 00003b97 auipc s7,0x3 - 800071c4: 810b8b93 addi s7,s7,-2032 # 800099d0 - 800071c8: a021 j 800071d0 <_vfiprintf_r+0x366> - 800071ca: 3ac1 addiw s5,s5,-16 - 800071cc: 035fdc63 bge t6,s5,80007204 <_vfiprintf_r+0x39a> - 800071d0: 06c1 addi a3,a3,16 - 800071d2: 2705 addiw a4,a4,1 - 800071d4: 0177b023 sd s7,0(a5) - 800071d8: 01f7b423 sd t6,8(a5) - 800071dc: f8b6 sd a3,112(sp) - 800071de: d4ba sw a4,104(sp) - 800071e0: 07c1 addi a5,a5,16 - 800071e2: fee2d4e3 bge t0,a4,800071ca <_vfiprintf_r+0x360> - 800071e6: 1090 addi a2,sp,96 - 800071e8: 85ca mv a1,s2 - 800071ea: 854e mv a0,s3 - 800071ec: f90fb0ef jal 8000297c <__sprint_r> - 800071f0: ee0510e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800071f4: 4fc1 li t6,16 - 800071f6: 3ac1 addiw s5,s5,-16 - 800071f8: 76c6 ld a3,112(sp) - 800071fa: 5726 lw a4,104(sp) - 800071fc: 87d2 mv a5,s4 - 800071fe: 429d li t0,7 - 80007200: fd5fc8e3 blt t6,s5,800071d0 <_vfiprintf_r+0x366> - 80007204: 8ed6 mv t4,s5 - 80007206: 835e mv t1,s7 - 80007208: 6f42 ld t5,16(sp) - 8000720a: 7882 ld a7,32(sp) - 8000720c: 6e06 ld t3,64(sp) - 8000720e: 6aa6 ld s5,72(sp) - 80007210: 6be2 ld s7,24(sp) - 80007212: 96f6 add a3,a3,t4 - 80007214: 2705 addiw a4,a4,1 - 80007216: f8b6 sd a3,112(sp) - 80007218: d4ba sw a4,104(sp) - 8000721a: 0067b023 sd t1,0(a5) - 8000721e: 01d7b423 sd t4,8(a5) - 80007222: 461d li a2,7 - 80007224: 04e642e3 blt a2,a4,80007a68 <_vfiprintf_r+0xbfe> - 80007228: 05714603 lbu a2,87(sp) - 8000722c: 07c1 addi a5,a5,16 - 8000722e: 6e061763 bnez a2,8000791c <_vfiprintf_r+0xab2> - 80007232: de0f0fe3 beqz t5,80007030 <_vfiprintf_r+0x1c6> - 80007236: 4301 li t1,0 - 80007238: bbe9 j 80007012 <_vfiprintf_r+0x1a8> - 8000723a: 87ea mv a5,s10 - 8000723c: 000abd03 ld s10,0(s5) - 80007240: 04010ba3 sb zero,87(sp) - 80007244: 0aa1 addi s5,s5,8 - 80007246: 0a0d08e3 beqz s10,80007af6 <_vfiprintf_r+0xc8c> - 8000724a: e83e sd a5,16(sp) - 8000724c: 7c0c4963 bltz s8,80007a1e <_vfiprintf_r+0xbb4> - 80007250: 8662 mv a2,s8 - 80007252: 4581 li a1,0 - 80007254: 856a mv a0,s10 - 80007256: 865fc0ef jal 80003aba - 8000725a: 05714703 lbu a4,87(sp) - 8000725e: 67c2 ld a5,16(sp) - 80007260: 1c0504e3 beqz a0,80007c28 <_vfiprintf_r+0xdbe> - 80007264: 41a50e3b subw t3,a0,s10 - 80007268: 86f2 mv a3,t3 - 8000726a: 000e5363 bgez t3,80007270 <_vfiprintf_r+0x406> - 8000726e: 4681 li a3,0 - 80007270: 0006889b sext.w a7,a3 - 80007274: 7c070b63 beqz a4,80007a4a <_vfiprintf_r+0xbe0> - 80007278: 0016889b addiw a7,a3,1 - 8000727c: 4c01 li s8,0 - 8000727e: b719 j 80007184 <_vfiprintf_r+0x31a> - 80007280: 000aa703 lw a4,0(s5) - 80007284: 4e05 li t3,1 - 80007286: 87ea mv a5,s10 - 80007288: 04010ba3 sb zero,87(sp) - 8000728c: 06e10c23 sb a4,120(sp) - 80007290: 0aa1 addi s5,s5,8 - 80007292: 88f2 mv a7,t3 - 80007294: 4c01 li s8,0 - 80007296: 07810d13 addi s10,sp,120 - 8000729a: bb2d j 80006fd4 <_vfiprintf_r+0x16a> - 8000729c: 020bf713 andi a4,s7,32 - 800072a0: 87ea mv a5,s10 - 800072a2: 010be813 ori a6,s7,16 - 800072a6: 008a8513 addi a0,s5,8 - 800072aa: 66070f63 beqz a4,80007928 <_vfiprintf_r+0xabe> - 800072ae: 8bc2 mv s7,a6 - 800072b0: 008a8513 addi a0,s5,8 - 800072b4: 000ab683 ld a3,0(s5) - 800072b8: 8aaa mv s5,a0 - 800072ba: 8736 mv a4,a3 - 800072bc: ea06d2e3 bgez a3,80007160 <_vfiprintf_r+0x2f6> - 800072c0: 02d00693 li a3,45 - 800072c4: 04d10ba3 sb a3,87(sp) - 800072c8: 40e00733 neg a4,a4 - 800072cc: 000c4463 bltz s8,800072d4 <_vfiprintf_r+0x46a> - 800072d0: f7fbfb93 andi s7,s7,-129 - 800072d4: 4325 li t1,9 - 800072d6: 30e36863 bltu t1,a4,800075e6 <_vfiprintf_r+0x77c> - 800072da: 0307071b addiw a4,a4,48 - 800072de: 0ce10da3 sb a4,219(sp) - 800072e2: 8762 mv a4,s8 - 800072e4: 01804363 bgtz s8,800072ea <_vfiprintf_r+0x480> - 800072e8: 4705 li a4,1 - 800072ea: 05714683 lbu a3,87(sp) - 800072ee: 0007089b sext.w a7,a4 - 800072f2: 4e05 li t3,1 - 800072f4: 0db10d13 addi s10,sp,219 - 800072f8: cc068ee3 beqz a3,80006fd4 <_vfiprintf_r+0x16a> - 800072fc: 0017089b addiw a7,a4,1 - 80007300: 4e05 li t3,1 - 80007302: 0db10d13 addi s10,sp,219 - 80007306: bdbd j 80007184 <_vfiprintf_r+0x31a> - 80007308: 000aac83 lw s9,0(s5) - 8000730c: 600cd163 bgez s9,8000790e <_vfiprintf_r+0xaa4> - 80007310: 41900cbb negw s9,s9 - 80007314: 0aa1 addi s5,s5,8 - 80007316: 000dc703 lbu a4,0(s11) - 8000731a: 004beb93 ori s7,s7,4 - 8000731e: b1a1 j 80006f66 <_vfiprintf_r+0xfc> - 80007320: 02b00713 li a4,43 - 80007324: 04e10ba3 sb a4,87(sp) - 80007328: 000dc703 lbu a4,0(s11) - 8000732c: b92d j 80006f66 <_vfiprintf_r+0xfc> - 8000732e: 020bf713 andi a4,s7,32 - 80007332: 87ea mv a5,s10 - 80007334: 28071b63 bnez a4,800075ca <_vfiprintf_r+0x760> - 80007338: 010bfe13 andi t3,s7,16 - 8000733c: 008a8513 addi a0,s5,8 - 80007340: 120e1be3 bnez t3,80007c76 <_vfiprintf_r+0xe0c> - 80007344: 040bf713 andi a4,s7,64 - 80007348: 70070463 beqz a4,80007a50 <_vfiprintf_r+0xbe6> - 8000734c: 04010ba3 sb zero,87(sp) - 80007350: 000ad703 lhu a4,0(s5) - 80007354: 700c4863 bltz s8,80007a64 <_vfiprintf_r+0xbfa> - 80007358: 00ec66b3 or a3,s8,a4 - 8000735c: f7fbf313 andi t1,s7,-129 - 80007360: 0e0697e3 bnez a3,80007c4e <_vfiprintf_r+0xde4> - 80007364: 05714703 lbu a4,87(sp) - 80007368: 7e071c63 bnez a4,80007b60 <_vfiprintf_r+0xcf6> - 8000736c: 76c6 ld a3,112(sp) - 8000736e: 5726 lw a4,104(sp) - 80007370: 004bf893 andi a7,s7,4 - 80007374: 85b6 mv a1,a3 - 80007376: 863a mv a2,a4 - 80007378: 0c0898e3 bnez a7,80007c48 <_vfiprintf_r+0xdde> - 8000737c: 8b9a mv s7,t1 - 8000737e: 8aaa mv s5,a0 - 80007380: 4e01 li t3,0 - 80007382: a481 j 800075c2 <_vfiprintf_r+0x758> - 80007384: 000dc703 lbu a4,0(s11) - 80007388: 020beb93 ori s7,s7,32 - 8000738c: bee9 j 80006f66 <_vfiprintf_r+0xfc> - 8000738e: 6721 lui a4,0x8 - 80007390: 83070713 addi a4,a4,-2000 # 7830 - 80007394: 04010ba3 sb zero,87(sp) - 80007398: 04e11c23 sh a4,88(sp) - 8000739c: 000ab683 ld a3,0(s5) - 800073a0: 87ea mv a5,s10 - 800073a2: 002beb93 ori s7,s7,2 - 800073a6: 008a8513 addi a0,s5,8 - 800073aa: 580c4d63 bltz s8,80007944 <_vfiprintf_r+0xada> - 800073ae: 00d035b3 snez a1,a3 - 800073b2: 4309 li t1,2 - 800073b4: 00002617 auipc a2,0x2 - 800073b8: f0460613 addi a2,a2,-252 # 800092b8 <__clzdi2+0x2de> - 800073bc: 00bc65b3 or a1,s8,a1 - 800073c0: f7fbfb93 andi s7,s7,-129 - 800073c4: 8aaa mv s5,a0 - 800073c6: 78059763 bnez a1,80007b54 <_vfiprintf_r+0xcea> - 800073ca: 05714503 lbu a0,87(sp) - 800073ce: 4881 li a7,0 - 800073d0: 4e01 li t3,0 - 800073d2: 4c01 li s8,0 - 800073d4: 0dc10d13 addi s10,sp,220 - 800073d8: c111 beqz a0,800073dc <_vfiprintf_r+0x572> - 800073da: 2885 addiw a7,a7,1 - 800073dc: 50030a63 beqz t1,800078f0 <_vfiprintf_r+0xa86> - 800073e0: 76c6 ld a3,112(sp) - 800073e2: 5726 lw a4,104(sp) - 800073e4: 084bf313 andi t1,s7,132 - 800073e8: 2889 addiw a7,a7,2 - 800073ea: 85b6 mv a1,a3 - 800073ec: 863a mv a2,a4 - 800073ee: 00031663 bnez t1,800073fa <_vfiprintf_r+0x590> - 800073f2: 411c8ebb subw t4,s9,a7 - 800073f6: 53d04163 bgtz t4,80007918 <_vfiprintf_r+0xaae> - 800073fa: c0050ce3 beqz a0,80007012 <_vfiprintf_r+0x1a8> - 800073fe: 4f09 li t5,2 - 80007400: bedd j 80006ff6 <_vfiprintf_r+0x18c> - 80007402: 020bf713 andi a4,s7,32 - 80007406: 87ea mv a5,s10 - 80007408: 008a8513 addi a0,s5,8 - 8000740c: 50071b63 bnez a4,80007922 <_vfiprintf_r+0xab8> - 80007410: 010bf713 andi a4,s7,16 - 80007414: 50071763 bnez a4,80007922 <_vfiprintf_r+0xab8> - 80007418: 040bf713 andi a4,s7,64 - 8000741c: 6e070a63 beqz a4,80007b10 <_vfiprintf_r+0xca6> - 80007420: 000ad683 lhu a3,0(s5) - 80007424: 88de mv a7,s7 - 80007426: 8aaa mv s5,a0 - 80007428: a085 j 80007488 <_vfiprintf_r+0x61e> - 8000742a: 020bf713 andi a4,s7,32 - 8000742e: 87ea mv a5,s10 - 80007430: 008a8693 addi a3,s5,8 - 80007434: e31d bnez a4,8000745a <_vfiprintf_r+0x5f0> - 80007436: 010bf713 andi a4,s7,16 - 8000743a: e305 bnez a4,8000745a <_vfiprintf_r+0x5f0> - 8000743c: 040bf713 andi a4,s7,64 - 80007440: 72071863 bnez a4,80007b70 <_vfiprintf_r+0xd06> - 80007444: 200bf813 andi a6,s7,512 - 80007448: 000ab703 ld a4,0(s5) - 8000744c: 6622 ld a2,8(sp) - 8000744e: 7e080563 beqz a6,80007c38 <_vfiprintf_r+0xdce> - 80007452: 00c70023 sb a2,0(a4) - 80007456: 8ab6 mv s5,a3 - 80007458: b445 j 80006ef8 <_vfiprintf_r+0x8e> - 8000745a: 000ab703 ld a4,0(s5) - 8000745e: 6622 ld a2,8(sp) - 80007460: 8ab6 mv s5,a3 - 80007462: e310 sd a2,0(a4) - 80007464: bc51 j 80006ef8 <_vfiprintf_r+0x8e> - 80007466: 000dc703 lbu a4,0(s11) - 8000746a: 06c00693 li a3,108 - 8000746e: 64d70d63 beq a4,a3,80007ac8 <_vfiprintf_r+0xc5e> - 80007472: 010beb93 ori s7,s7,16 - 80007476: bcc5 j 80006f66 <_vfiprintf_r+0xfc> - 80007478: 87ea mv a5,s10 - 8000747a: 010be893 ori a7,s7,16 - 8000747e: 008a8513 addi a0,s5,8 - 80007482: 000ab683 ld a3,0(s5) - 80007486: 8aaa mv s5,a0 - 80007488: 04010ba3 sb zero,87(sp) - 8000748c: 420c4163 bltz s8,800078ae <_vfiprintf_r+0xa44> - 80007490: 00dc6733 or a4,s8,a3 - 80007494: b7f8fb93 andi s7,a7,-1153 - 80007498: 40071d63 bnez a4,800078b2 <_vfiprintf_r+0xa48> - 8000749c: 0018f893 andi a7,a7,1 - 800074a0: 4c088f63 beqz a7,8000797e <_vfiprintf_r+0xb14> - 800074a4: 03000713 li a4,48 - 800074a8: 0ce10da3 sb a4,219(sp) - 800074ac: 8e46 mv t3,a7 - 800074ae: 4c01 li s8,0 - 800074b0: 0db10d13 addi s10,sp,219 - 800074b4: a935 j 800078f0 <_vfiprintf_r+0xa86> - 800074b6: 000dc703 lbu a4,0(s11) - 800074ba: 06800693 li a3,104 - 800074be: 5ed70e63 beq a4,a3,80007aba <_vfiprintf_r+0xc50> - 800074c2: 040beb93 ori s7,s7,64 - 800074c6: b445 j 80006f66 <_vfiprintf_r+0xfc> - 800074c8: 854e mv a0,s3 - 800074ca: e63fb0ef jal 8000332c <_localeconv_r> - 800074ce: 651c ld a5,8(a0) - 800074d0: 853e mv a0,a5 - 800074d2: fc3e sd a5,56(sp) - 800074d4: d4cfc0ef jal 80003a20 - 800074d8: f42a sd a0,40(sp) - 800074da: 854e mv a0,s3 - 800074dc: e51fb0ef jal 8000332c <_localeconv_r> - 800074e0: 691c ld a5,16(a0) - 800074e2: 7722 ld a4,40(sp) - 800074e4: 00f03633 snez a2,a5 - 800074e8: 00e036b3 snez a3,a4 - 800074ec: f83e sd a5,48(sp) - 800074ee: 8ef1 and a3,a3,a2 - 800074f0: 000dc703 lbu a4,0(s11) - 800074f4: a60689e3 beqz a3,80006f66 <_vfiprintf_r+0xfc> - 800074f8: 0007c683 lbu a3,0(a5) - 800074fc: a60685e3 beqz a3,80006f66 <_vfiprintf_r+0xfc> - 80007500: 400beb93 ori s7,s7,1024 - 80007504: b48d j 80006f66 <_vfiprintf_r+0xfc> - 80007506: 000dc703 lbu a4,0(s11) - 8000750a: 001beb93 ori s7,s7,1 - 8000750e: bca1 j 80006f66 <_vfiprintf_r+0xfc> - 80007510: 05714683 lbu a3,87(sp) - 80007514: 000dc703 lbu a4,0(s11) - 80007518: a40697e3 bnez a3,80006f66 <_vfiprintf_r+0xfc> - 8000751c: 02000693 li a3,32 - 80007520: 04d10ba3 sb a3,87(sp) - 80007524: b489 j 80006f66 <_vfiprintf_r+0xfc> - 80007526: 000dc703 lbu a4,0(s11) - 8000752a: 080beb93 ori s7,s7,128 - 8000752e: bc25 j 80006f66 <_vfiprintf_r+0xfc> - 80007530: 000dc703 lbu a4,0(s11) - 80007534: 02a00693 li a3,42 - 80007538: 001d8513 addi a0,s11,1 - 8000753c: 70d70d63 beq a4,a3,80007c56 <_vfiprintf_r+0xdec> - 80007540: fd07061b addiw a2,a4,-48 - 80007544: 4825 li a6,9 - 80007546: 4581 li a1,0 - 80007548: 8daa mv s11,a0 - 8000754a: 4c01 li s8,0 - 8000754c: a0c86fe3 bltu a6,a2,80006f6a <_vfiprintf_r+0x100> - 80007550: 0025969b slliw a3,a1,0x2 - 80007554: 00054703 lbu a4,0(a0) - 80007558: 9ead addw a3,a3,a1 - 8000755a: 0016969b slliw a3,a3,0x1 - 8000755e: 00c685bb addw a1,a3,a2 - 80007562: fd07061b addiw a2,a4,-48 - 80007566: 0505 addi a0,a0,1 - 80007568: fec874e3 bgeu a6,a2,80007550 <_vfiprintf_r+0x6e6> - 8000756c: 00058c1b sext.w s8,a1 - 80007570: 4005cc63 bltz a1,80007988 <_vfiprintf_r+0xb1e> - 80007574: 8daa mv s11,a0 - 80007576: bad5 j 80006f6a <_vfiprintf_r+0x100> - 80007578: 020bf713 andi a4,s7,32 - 8000757c: 87ea mv a5,s10 - 8000757e: 010be893 ori a7,s7,16 - 80007582: 008a8513 addi a0,s5,8 - 80007586: e339 bnez a4,800075cc <_vfiprintf_r+0x762> - 80007588: 04010ba3 sb zero,87(sp) - 8000758c: 000ab703 ld a4,0(s5) - 80007590: 832a mv t1,a0 - 80007592: 8aaa mv s5,a0 - 80007594: 8bc6 mv s7,a7 - 80007596: d20c4fe3 bltz s8,800072d4 <_vfiprintf_r+0x46a> - 8000759a: 00ec66b3 or a3,s8,a4 - 8000759e: f7f8fb93 andi s7,a7,-129 - 800075a2: 6c069763 bnez a3,80007c70 <_vfiprintf_r+0xe06> - 800075a6: 05714703 lbu a4,87(sp) - 800075aa: 38071663 bnez a4,80007936 <_vfiprintf_r+0xacc> - 800075ae: 76c6 ld a3,112(sp) - 800075b0: 5726 lw a4,104(sp) - 800075b2: 0048f893 andi a7,a7,4 - 800075b6: 85b6 mv a1,a3 - 800075b8: 863a mv a2,a4 - 800075ba: 8a9a mv s5,t1 - 800075bc: 4e01 li t3,0 - 800075be: 52089663 bnez a7,80007aea <_vfiprintf_r+0xc80> - 800075c2: 4c01 li s8,0 - 800075c4: 0dc10d13 addi s10,sp,220 - 800075c8: bc31 j 80006fe4 <_vfiprintf_r+0x17a> - 800075ca: 88de mv a7,s7 - 800075cc: 008a8313 addi t1,s5,8 - 800075d0: 04010ba3 sb zero,87(sp) - 800075d4: 000ab703 ld a4,0(s5) - 800075d8: 8bc6 mv s7,a7 - 800075da: 8a9a mv s5,t1 - 800075dc: fa0c5fe3 bgez s8,8000759a <_vfiprintf_r+0x730> - 800075e0: 4325 li t1,9 - 800075e2: cee37ce3 bgeu t1,a4,800072da <_vfiprintf_r+0x470> - 800075e6: ccccd6b7 lui a3,0xccccd - 800075ea: ccd68693 addi a3,a3,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> - 800075ee: 02069893 slli a7,a3,0x20 - 800075f2: 0dc10e13 addi t3,sp,220 - 800075f6: 7d42 ld s10,48(sp) - 800075f8: 98b6 add a7,a7,a3 - 800075fa: 8672 mv a2,t3 - 800075fc: 400bfe93 andi t4,s7,1024 - 80007600: 4581 li a1,0 - 80007602: a801 j 80007612 <_vfiprintf_r+0x7a8> - 80007604: 883a mv a6,a4 - 80007606: 862a mv a2,a0 - 80007608: 03173733 mulhu a4,a4,a7 - 8000760c: 830d srli a4,a4,0x3 - 8000760e: 05037563 bgeu t1,a6,80007658 <_vfiprintf_r+0x7ee> - 80007612: 03173f33 mulhu t5,a4,a7 - 80007616: fff60513 addi a0,a2,-1 - 8000761a: 2585 addiw a1,a1,1 - 8000761c: 883a mv a6,a4 - 8000761e: 003f5f13 srli t5,t5,0x3 - 80007622: 002f1693 slli a3,t5,0x2 - 80007626: 96fa add a3,a3,t5 - 80007628: 0686 slli a3,a3,0x1 - 8000762a: 40d706b3 sub a3,a4,a3 - 8000762e: 0306869b addiw a3,a3,48 - 80007632: fed60fa3 sb a3,-1(a2) - 80007636: 862a mv a2,a0 - 80007638: fc0e88e3 beqz t4,80007608 <_vfiprintf_r+0x79e> - 8000763c: 000d4683 lbu a3,0(s10) - 80007640: 40b68633 sub a2,a3,a1 - 80007644: f0168693 addi a3,a3,-255 - 80007648: 00163613 seqz a2,a2 - 8000764c: 00d036b3 snez a3,a3 - 80007650: 8ef1 and a3,a3,a2 - 80007652: dacd beqz a3,80007604 <_vfiprintf_r+0x79a> - 80007654: 56e36363 bltu t1,a4,80007bba <_vfiprintf_r+0xd50> - 80007658: f86a sd s10,48(sp) - 8000765a: 40ae0e3b subw t3,t3,a0 - 8000765e: 8d2a mv s10,a0 - 80007660: 8762 mv a4,s8 - 80007662: 01cc5363 bge s8,t3,80007668 <_vfiprintf_r+0x7fe> - 80007666: 8772 mv a4,t3 - 80007668: 05714683 lbu a3,87(sp) - 8000766c: 0007089b sext.w a7,a4 - 80007670: 28068063 beqz a3,800078f0 <_vfiprintf_r+0xa86> - 80007674: 0017089b addiw a7,a4,1 - 80007678: aca5 j 800078f0 <_vfiprintf_r+0xa86> - 8000767a: 411c8ebb subw t4,s9,a7 - 8000767e: 9bd059e3 blez t4,80007030 <_vfiprintf_r+0x1c6> - 80007682: 4f41 li t5,16 - 80007684: 00002317 auipc t1,0x2 - 80007688: 33c30313 addi t1,t1,828 # 800099c0 - 8000768c: 07df5063 bge t5,t4,800076ec <_vfiprintf_r+0x882> - 80007690: e85e sd s7,16(sp) - 80007692: e0d6 sd s5,64(sp) - 80007694: 4f9d li t6,7 - 80007696: ec46 sd a7,24(sp) - 80007698: f072 sd t3,32(sp) - 8000769a: 8af6 mv s5,t4 - 8000769c: 00002b97 auipc s7,0x2 - 800076a0: 324b8b93 addi s7,s7,804 # 800099c0 - 800076a4: a021 j 800076ac <_vfiprintf_r+0x842> - 800076a6: 3ac1 addiw s5,s5,-16 - 800076a8: 035f5c63 bge t5,s5,800076e0 <_vfiprintf_r+0x876> - 800076ac: 06c1 addi a3,a3,16 - 800076ae: 2705 addiw a4,a4,1 - 800076b0: 0177b023 sd s7,0(a5) - 800076b4: 01e7b423 sd t5,8(a5) - 800076b8: f8b6 sd a3,112(sp) - 800076ba: d4ba sw a4,104(sp) - 800076bc: 07c1 addi a5,a5,16 - 800076be: feefd4e3 bge t6,a4,800076a6 <_vfiprintf_r+0x83c> - 800076c2: 1090 addi a2,sp,96 - 800076c4: 85ca mv a1,s2 - 800076c6: 854e mv a0,s3 - 800076c8: ab4fb0ef jal 8000297c <__sprint_r> - 800076cc: a00512e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800076d0: 4f41 li t5,16 - 800076d2: 3ac1 addiw s5,s5,-16 - 800076d4: 76c6 ld a3,112(sp) - 800076d6: 5726 lw a4,104(sp) - 800076d8: 87d2 mv a5,s4 - 800076da: 4f9d li t6,7 - 800076dc: fd5f48e3 blt t5,s5,800076ac <_vfiprintf_r+0x842> - 800076e0: 8ed6 mv t4,s5 - 800076e2: 835e mv t1,s7 - 800076e4: 68e2 ld a7,24(sp) - 800076e6: 7e02 ld t3,32(sp) - 800076e8: 6a86 ld s5,64(sp) - 800076ea: 6bc2 ld s7,16(sp) - 800076ec: 96f6 add a3,a3,t4 - 800076ee: 2705 addiw a4,a4,1 - 800076f0: 0067b023 sd t1,0(a5) - 800076f4: 01d7b423 sd t4,8(a5) - 800076f8: f8b6 sd a3,112(sp) - 800076fa: d4ba sw a4,104(sp) - 800076fc: 461d li a2,7 - 800076fe: 07c1 addi a5,a5,16 - 80007700: 92e658e3 bge a2,a4,80007030 <_vfiprintf_r+0x1c6> - 80007704: 1090 addi a2,sp,96 - 80007706: 85ca mv a1,s2 - 80007708: 854e mv a0,s3 - 8000770a: ec72 sd t3,24(sp) - 8000770c: e846 sd a7,16(sp) - 8000770e: a6efb0ef jal 8000297c <__sprint_r> - 80007712: 9a051fe3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 80007716: 6e62 ld t3,24(sp) - 80007718: 76c6 ld a3,112(sp) - 8000771a: 5726 lw a4,104(sp) - 8000771c: 41cc0c3b subw s8,s8,t3 - 80007720: 68c2 ld a7,16(sp) - 80007722: 87d2 mv a5,s4 - 80007724: 91805ae3 blez s8,80007038 <_vfiprintf_r+0x1ce> - 80007728: 00002317 auipc t1,0x2 - 8000772c: 29830313 addi t1,t1,664 # 800099c0 - 80007730: 05845e63 bge s0,s8,8000778c <_vfiprintf_r+0x922> - 80007734: 8656 mv a2,s5 - 80007736: e85e sd s7,16(sp) - 80007738: 8ae2 mv s5,s8 - 8000773a: ec46 sd a7,24(sp) - 8000773c: f072 sd t3,32(sp) - 8000773e: 00002b97 auipc s7,0x2 - 80007742: 282b8b93 addi s7,s7,642 # 800099c0 - 80007746: 8c32 mv s8,a2 - 80007748: a021 j 80007750 <_vfiprintf_r+0x8e6> - 8000774a: 3ac1 addiw s5,s5,-16 - 8000774c: 03545963 bge s0,s5,8000777e <_vfiprintf_r+0x914> - 80007750: 06c1 addi a3,a3,16 - 80007752: 2705 addiw a4,a4,1 - 80007754: 0177b023 sd s7,0(a5) - 80007758: e780 sd s0,8(a5) - 8000775a: f8b6 sd a3,112(sp) - 8000775c: d4ba sw a4,104(sp) - 8000775e: 07c1 addi a5,a5,16 - 80007760: fee4d5e3 bge s1,a4,8000774a <_vfiprintf_r+0x8e0> - 80007764: 1090 addi a2,sp,96 - 80007766: 85ca mv a1,s2 - 80007768: 854e mv a0,s3 - 8000776a: a12fb0ef jal 8000297c <__sprint_r> - 8000776e: 960511e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 80007772: 3ac1 addiw s5,s5,-16 - 80007774: 76c6 ld a3,112(sp) - 80007776: 5726 lw a4,104(sp) - 80007778: 87d2 mv a5,s4 - 8000777a: fd544be3 blt s0,s5,80007750 <_vfiprintf_r+0x8e6> - 8000777e: 835e mv t1,s7 - 80007780: 68e2 ld a7,24(sp) - 80007782: 7e02 ld t3,32(sp) - 80007784: 6bc2 ld s7,16(sp) - 80007786: 8662 mv a2,s8 - 80007788: 8c56 mv s8,s5 - 8000778a: 8ab2 mv s5,a2 - 8000778c: 96e2 add a3,a3,s8 - 8000778e: 2705 addiw a4,a4,1 - 80007790: 0067b023 sd t1,0(a5) - 80007794: 0187b423 sd s8,8(a5) - 80007798: f8b6 sd a3,112(sp) - 8000779a: d4ba sw a4,104(sp) - 8000779c: 07c1 addi a5,a5,16 - 8000779e: 88e4dde3 bge s1,a4,80007038 <_vfiprintf_r+0x1ce> - 800077a2: 1090 addi a2,sp,96 - 800077a4: 85ca mv a1,s2 - 800077a6: 854e mv a0,s3 - 800077a8: ec72 sd t3,24(sp) - 800077aa: e846 sd a7,16(sp) - 800077ac: 9d0fb0ef jal 8000297c <__sprint_r> - 800077b0: 920510e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800077b4: 76c6 ld a3,112(sp) - 800077b6: 5726 lw a4,104(sp) - 800077b8: 6e62 ld t3,24(sp) - 800077ba: 87d2 mv a5,s4 - 800077bc: 2705 addiw a4,a4,1 - 800077be: 96f2 add a3,a3,t3 - 800077c0: 01a7b023 sd s10,0(a5) - 800077c4: 01c7b423 sd t3,8(a5) - 800077c8: f8b6 sd a3,112(sp) - 800077ca: d4ba sw a4,104(sp) - 800077cc: 68c2 ld a7,16(sp) - 800077ce: 07c1 addi a5,a5,16 - 800077d0: 86e4dfe3 bge s1,a4,8000704e <_vfiprintf_r+0x1e4> - 800077d4: 1090 addi a2,sp,96 - 800077d6: 85ca mv a1,s2 - 800077d8: 854e mv a0,s3 - 800077da: e846 sd a7,16(sp) - 800077dc: 9a0fb0ef jal 8000297c <__sprint_r> - 800077e0: 8e0518e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800077e4: 76c6 ld a3,112(sp) - 800077e6: 68c2 ld a7,16(sp) - 800077e8: 87d2 mv a5,s4 - 800077ea: b095 j 8000704e <_vfiprintf_r+0x1e4> - 800077ec: 1090 addi a2,sp,96 - 800077ee: 85ca mv a1,s2 - 800077f0: 854e mv a0,s3 - 800077f2: 98afb0ef jal 8000297c <__sprint_r> - 800077f6: 86050de3 beqz a0,80007070 <_vfiprintf_r+0x206> - 800077fa: b8d9 j 800070d0 <_vfiprintf_r+0x266> - 800077fc: 1090 addi a2,sp,96 - 800077fe: 85ca mv a1,s2 - 80007800: 854e mv a0,s3 - 80007802: f072 sd t3,32(sp) - 80007804: ec46 sd a7,24(sp) - 80007806: e81a sd t1,16(sp) - 80007808: 974fb0ef jal 8000297c <__sprint_r> - 8000780c: 8c0512e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 80007810: 76c6 ld a3,112(sp) - 80007812: 5726 lw a4,104(sp) - 80007814: 7e02 ld t3,32(sp) - 80007816: 68e2 ld a7,24(sp) - 80007818: 6342 ld t1,16(sp) - 8000781a: 87d2 mv a5,s4 - 8000781c: 80dff06f j 80007028 <_vfiprintf_r+0x1be> - 80007820: 4d41 li s10,16 - 80007822: 5726 lw a4,104(sp) - 80007824: 00002317 auipc t1,0x2 - 80007828: 1ac30313 addi t1,t1,428 # 800099d0 - 8000782c: 058d5a63 bge s10,s8,80007880 <_vfiprintf_r+0xa16> - 80007830: ec56 sd s5,24(sp) - 80007832: 4b9d li s7,7 - 80007834: 8ae2 mv s5,s8 - 80007836: e846 sd a7,16(sp) - 80007838: 00002c17 auipc s8,0x2 - 8000783c: 198c0c13 addi s8,s8,408 # 800099d0 - 80007840: a021 j 80007848 <_vfiprintf_r+0x9de> - 80007842: 3ac1 addiw s5,s5,-16 - 80007844: 035d5a63 bge s10,s5,80007878 <_vfiprintf_r+0xa0e> - 80007848: 06c1 addi a3,a3,16 - 8000784a: 2705 addiw a4,a4,1 - 8000784c: 0187b023 sd s8,0(a5) - 80007850: 01a7b423 sd s10,8(a5) - 80007854: f8b6 sd a3,112(sp) - 80007856: d4ba sw a4,104(sp) - 80007858: 07c1 addi a5,a5,16 - 8000785a: feebd4e3 bge s7,a4,80007842 <_vfiprintf_r+0x9d8> - 8000785e: 1090 addi a2,sp,96 - 80007860: 85ca mv a1,s2 - 80007862: 854e mv a0,s3 - 80007864: 918fb0ef jal 8000297c <__sprint_r> - 80007868: 860514e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 8000786c: 3ac1 addiw s5,s5,-16 - 8000786e: 76c6 ld a3,112(sp) - 80007870: 5726 lw a4,104(sp) - 80007872: 87d2 mv a5,s4 - 80007874: fd5d4ae3 blt s10,s5,80007848 <_vfiprintf_r+0x9de> - 80007878: 8362 mv t1,s8 - 8000787a: 68c2 ld a7,16(sp) - 8000787c: 8c56 mv s8,s5 - 8000787e: 6ae2 ld s5,24(sp) - 80007880: 96e2 add a3,a3,s8 - 80007882: 2705 addiw a4,a4,1 - 80007884: 0067b023 sd t1,0(a5) - 80007888: 0187b423 sd s8,8(a5) - 8000788c: f8b6 sd a3,112(sp) - 8000788e: d4ba sw a4,104(sp) - 80007890: 479d li a5,7 - 80007892: fce7d663 bge a5,a4,8000705e <_vfiprintf_r+0x1f4> - 80007896: 1090 addi a2,sp,96 - 80007898: 85ca mv a1,s2 - 8000789a: 854e mv a0,s3 - 8000789c: e846 sd a7,16(sp) - 8000789e: 8defb0ef jal 8000297c <__sprint_r> - 800078a2: 820517e3 bnez a0,800070d0 <_vfiprintf_r+0x266> - 800078a6: 76c6 ld a3,112(sp) - 800078a8: 68c2 ld a7,16(sp) - 800078aa: fb4ff06f j 8000705e <_vfiprintf_r+0x1f4> - 800078ae: bff8fb93 andi s7,a7,-1025 - 800078b2: 0dc10e13 addi t3,sp,220 - 800078b6: 8d72 mv s10,t3 - 800078b8: 0076f713 andi a4,a3,7 - 800078bc: 866a mv a2,s10 - 800078be: 03070713 addi a4,a4,48 - 800078c2: 828d srli a3,a3,0x3 - 800078c4: feed0fa3 sb a4,-1(s10) - 800078c8: 1d7d addi s10,s10,-1 - 800078ca: f6fd bnez a3,800078b8 <_vfiprintf_r+0xa4e> - 800078cc: fd070713 addi a4,a4,-48 - 800078d0: 00e03733 snez a4,a4 - 800078d4: 00ebf733 and a4,s7,a4 - 800078d8: 03000693 li a3,48 - 800078dc: 1a071e63 bnez a4,80007a98 <_vfiprintf_r+0xc2e> - 800078e0: 41ae0e3b subw t3,t3,s10 - 800078e4: 000c089b sext.w a7,s8 - 800078e8: 01cc5463 bge s8,t3,800078f0 <_vfiprintf_r+0xa86> - 800078ec: 000e089b sext.w a7,t3 - 800078f0: 76c6 ld a3,112(sp) - 800078f2: 5726 lw a4,104(sp) - 800078f4: 084bf313 andi t1,s7,132 - 800078f8: 85b6 mv a1,a3 - 800078fa: 863a mv a2,a4 - 800078fc: ee030463 beqz t1,80006fe4 <_vfiprintf_r+0x17a> - 80007900: 05714603 lbu a2,87(sp) - 80007904: 4f01 li t5,0 - 80007906: ee061863 bnez a2,80006ff6 <_vfiprintf_r+0x18c> - 8000790a: f1eff06f j 80007028 <_vfiprintf_r+0x1be> - 8000790e: 000dc703 lbu a4,0(s11) - 80007912: 0aa1 addi s5,s5,8 - 80007914: e52ff06f j 80006f66 <_vfiprintf_r+0xfc> - 80007918: 4f09 li t5,2 - 8000791a: b059 j 800071a0 <_vfiprintf_r+0x336> - 8000791c: 4301 li t1,0 - 8000791e: ed8ff06f j 80006ff6 <_vfiprintf_r+0x18c> - 80007922: 88de mv a7,s7 - 80007924: beb9 j 80007482 <_vfiprintf_r+0x618> - 80007926: 885e mv a6,s7 - 80007928: 000ab683 ld a3,0(s5) - 8000792c: 8bc2 mv s7,a6 - 8000792e: 8aaa mv s5,a0 - 80007930: 8736 mv a4,a3 - 80007932: 82bff06f j 8000715c <_vfiprintf_r+0x2f2> - 80007936: 8a9a mv s5,t1 - 80007938: 4e01 li t3,0 - 8000793a: 4c01 li s8,0 - 8000793c: 0dc10d13 addi s10,sp,220 - 80007940: 4885 li a7,1 - 80007942: b089 j 80007184 <_vfiprintf_r+0x31a> - 80007944: 8aaa mv s5,a0 - 80007946: 4309 li t1,2 - 80007948: 4501 li a0,0 - 8000794a: 00002617 auipc a2,0x2 - 8000794e: 96e60613 addi a2,a2,-1682 # 800092b8 <__clzdi2+0x2de> - 80007952: 0dc10e13 addi t3,sp,220 - 80007956: 8d72 mv s10,t3 - 80007958: 00f6f713 andi a4,a3,15 - 8000795c: 9732 add a4,a4,a2 - 8000795e: 00074703 lbu a4,0(a4) - 80007962: 8291 srli a3,a3,0x4 - 80007964: 1d7d addi s10,s10,-1 - 80007966: 00ed0023 sb a4,0(s10) - 8000796a: f6fd bnez a3,80007958 <_vfiprintf_r+0xaee> - 8000796c: 41ae0e3b subw t3,t3,s10 - 80007970: 000c089b sext.w a7,s8 - 80007974: a7cc52e3 bge s8,t3,800073d8 <_vfiprintf_r+0x56e> - 80007978: 000e089b sext.w a7,t3 - 8000797c: bcb1 j 800073d8 <_vfiprintf_r+0x56e> - 8000797e: 4e01 li t3,0 - 80007980: 4c01 li s8,0 - 80007982: 0dc10d13 addi s10,sp,220 - 80007986: b7ad j 800078f0 <_vfiprintf_r+0xa86> - 80007988: 5c7d li s8,-1 - 8000798a: 8daa mv s11,a0 - 8000798c: ddeff06f j 80006f6a <_vfiprintf_r+0x100> - 80007990: 020bf693 andi a3,s7,32 - 80007994: 87ea mv a5,s10 - 80007996: 00002617 auipc a2,0x2 - 8000799a: 93a60613 addi a2,a2,-1734 # 800092d0 <__clzdi2+0x2f6> - 8000799e: 008a8513 addi a0,s5,8 - 800079a2: e6a1 bnez a3,800079ea <_vfiprintf_r+0xb80> - 800079a4: 010bf693 andi a3,s7,16 - 800079a8: e2a9 bnez a3,800079ea <_vfiprintf_r+0xb80> - 800079aa: 040bf693 andi a3,s7,64 - 800079ae: 16068963 beqz a3,80007b20 <_vfiprintf_r+0xcb6> - 800079b2: 000ad683 lhu a3,0(s5) - 800079b6: 00d035b3 snez a1,a3 - 800079ba: 00bbf8b3 and a7,s7,a1 - 800079be: 02089e63 bnez a7,800079fa <_vfiprintf_r+0xb90> - 800079c2: 04010ba3 sb zero,87(sp) - 800079c6: bffbfb93 andi s7,s7,-1025 - 800079ca: 4301 li t1,0 - 800079cc: 9e0c58e3 bgez s8,800073bc <_vfiprintf_r+0x552> - 800079d0: 8aaa mv s5,a0 - 800079d2: 4501 li a0,0 - 800079d4: bfbd j 80007952 <_vfiprintf_r+0xae8> - 800079d6: 020bf693 andi a3,s7,32 - 800079da: 87ea mv a5,s10 - 800079dc: 00002617 auipc a2,0x2 - 800079e0: 8dc60613 addi a2,a2,-1828 # 800092b8 <__clzdi2+0x2de> - 800079e4: 008a8513 addi a0,s5,8 - 800079e8: ded5 beqz a3,800079a4 <_vfiprintf_r+0xb3a> - 800079ea: 000ab683 ld a3,0(s5) - 800079ee: 00d035b3 snez a1,a3 - 800079f2: 00bbf8b3 and a7,s7,a1 - 800079f6: fc0886e3 beqz a7,800079c2 <_vfiprintf_r+0xb58> - 800079fa: 04e10ca3 sb a4,89(sp) - 800079fe: 03000713 li a4,48 - 80007a02: 04010ba3 sb zero,87(sp) - 80007a06: 04e10c23 sb a4,88(sp) - 80007a0a: 120c5f63 bgez s8,80007b48 <_vfiprintf_r+0xcde> - 80007a0e: bffbf813 andi a6,s7,-1025 - 80007a12: 8aaa mv s5,a0 - 80007a14: 00286b93 ori s7,a6,2 - 80007a18: 4501 li a0,0 - 80007a1a: 4309 li t1,2 - 80007a1c: bf1d j 80007952 <_vfiprintf_r+0xae8> - 80007a1e: 856a mv a0,s10 - 80007a20: 800fc0ef jal 80003a20 - 80007a24: 00050e1b sext.w t3,a0 - 80007a28: 67c2 ld a5,16(sp) - 80007a2a: 8772 mv a4,t3 - 80007a2c: 000e5363 bgez t3,80007a32 <_vfiprintf_r+0xbc8> - 80007a30: 4701 li a4,0 - 80007a32: 05714683 lbu a3,87(sp) - 80007a36: 0007089b sext.w a7,a4 - 80007a3a: ca81 beqz a3,80007a4a <_vfiprintf_r+0xbe0> - 80007a3c: 0017089b addiw a7,a4,1 - 80007a40: 4c01 li s8,0 - 80007a42: f42ff06f j 80007184 <_vfiprintf_r+0x31a> - 80007a46: 8e62 mv t3,s8 - 80007a48: 88e2 mv a7,s8 - 80007a4a: 4c01 li s8,0 - 80007a4c: d88ff06f j 80006fd4 <_vfiprintf_r+0x16a> - 80007a50: 200bf713 andi a4,s7,512 - 80007a54: 04010ba3 sb zero,87(sp) - 80007a58: 12071463 bnez a4,80007b80 <_vfiprintf_r+0xd16> - 80007a5c: 000ae703 lwu a4,0(s5) - 80007a60: 8e0c5ce3 bgez s8,80007358 <_vfiprintf_r+0x4ee> - 80007a64: 8aaa mv s5,a0 - 80007a66: b0bd j 800072d4 <_vfiprintf_r+0x46a> - 80007a68: 1090 addi a2,sp,96 - 80007a6a: 85ca mv a1,s2 - 80007a6c: 854e mv a0,s3 - 80007a6e: f072 sd t3,32(sp) - 80007a70: ec46 sd a7,24(sp) - 80007a72: e87a sd t5,16(sp) - 80007a74: f09fa0ef jal 8000297c <__sprint_r> - 80007a78: 832a mv t1,a0 - 80007a7a: e4051b63 bnez a0,800070d0 <_vfiprintf_r+0x266> - 80007a7e: 05714783 lbu a5,87(sp) - 80007a82: 76c6 ld a3,112(sp) - 80007a84: 5726 lw a4,104(sp) - 80007a86: 6f42 ld t5,16(sp) - 80007a88: 68e2 ld a7,24(sp) - 80007a8a: 7e02 ld t3,32(sp) - 80007a8c: e3c5 bnez a5,80007b2c <_vfiprintf_r+0xcc2> - 80007a8e: 87d2 mv a5,s4 - 80007a90: d80f1163 bnez t5,80007012 <_vfiprintf_r+0x1a8> - 80007a94: d9cff06f j 80007030 <_vfiprintf_r+0x1c6> - 80007a98: 1679 addi a2,a2,-2 - 80007a9a: 40ce0e3b subw t3,t3,a2 - 80007a9e: fedd0fa3 sb a3,-1(s10) - 80007aa2: 000c089b sext.w a7,s8 - 80007aa6: 01cc5463 bge s8,t3,80007aae <_vfiprintf_r+0xc44> - 80007aaa: 000e089b sext.w a7,t3 - 80007aae: 8d32 mv s10,a2 - 80007ab0: b581 j 800078f0 <_vfiprintf_r+0xa86> - 80007ab2: a46fb0ef jal 80002cf8 <__sinit> - 80007ab6: bd0ff06f j 80006e86 <_vfiprintf_r+0x1c> - 80007aba: 001dc703 lbu a4,1(s11) - 80007abe: 200beb93 ori s7,s7,512 - 80007ac2: 0d85 addi s11,s11,1 - 80007ac4: ca2ff06f j 80006f66 <_vfiprintf_r+0xfc> - 80007ac8: 001dc703 lbu a4,1(s11) - 80007acc: 020beb93 ori s7,s7,32 - 80007ad0: 0d85 addi s11,s11,1 - 80007ad2: c94ff06f j 80006f66 <_vfiprintf_r+0xfc> - 80007ad6: 76c6 ld a3,112(sp) - 80007ad8: 5726 lw a4,104(sp) - 80007ada: 004bf893 andi a7,s7,4 - 80007ade: 85b6 mv a1,a3 - 80007ae0: 863a mv a2,a4 - 80007ae2: 8baa mv s7,a0 - 80007ae4: 4e01 li t3,0 - 80007ae6: ac088ee3 beqz a7,800075c2 <_vfiprintf_r+0x758> - 80007aea: 4881 li a7,0 - 80007aec: 4c01 li s8,0 - 80007aee: 0dc10d13 addi s10,sp,220 - 80007af2: d3eff06f j 80007030 <_vfiprintf_r+0x1c6> - 80007af6: 4719 li a4,6 - 80007af8: 000c089b sext.w a7,s8 - 80007afc: 05876f63 bltu a4,s8,80007b5a <_vfiprintf_r+0xcf0> - 80007b00: 8e46 mv t3,a7 - 80007b02: 4c01 li s8,0 - 80007b04: 00001d17 auipc s10,0x1 - 80007b08: 7e4d0d13 addi s10,s10,2020 # 800092e8 <__clzdi2+0x30e> - 80007b0c: cc8ff06f j 80006fd4 <_vfiprintf_r+0x16a> - 80007b10: 200bf713 andi a4,s7,512 - 80007b14: c741 beqz a4,80007b9c <_vfiprintf_r+0xd32> - 80007b16: 000ac683 lbu a3,0(s5) - 80007b1a: 88de mv a7,s7 - 80007b1c: 8aaa mv s5,a0 - 80007b1e: b2ad j 80007488 <_vfiprintf_r+0x61e> - 80007b20: 200bf693 andi a3,s7,512 - 80007b24: caad beqz a3,80007b96 <_vfiprintf_r+0xd2c> - 80007b26: 000ac683 lbu a3,0(s5) - 80007b2a: b571 j 800079b6 <_vfiprintf_r+0xb4c> - 80007b2c: 87d2 mv a5,s4 - 80007b2e: cc8ff06f j 80006ff6 <_vfiprintf_r+0x18c> - 80007b32: 200bf693 andi a3,s7,512 - 80007b36: cea1 beqz a3,80007b8e <_vfiprintf_r+0xd24> - 80007b38: 0187171b slliw a4,a4,0x18 - 80007b3c: 4187571b sraiw a4,a4,0x18 - 80007b40: 8aaa mv s5,a0 - 80007b42: 86ba mv a3,a4 - 80007b44: e18ff06f j 8000715c <_vfiprintf_r+0x2f2> - 80007b48: b7fbf813 andi a6,s7,-1153 - 80007b4c: 00286b93 ori s7,a6,2 - 80007b50: 8aaa mv s5,a0 - 80007b52: 4309 li t1,2 - 80007b54: 05714503 lbu a0,87(sp) - 80007b58: bbed j 80007952 <_vfiprintf_r+0xae8> - 80007b5a: 0007089b sext.w a7,a4 - 80007b5e: b74d j 80007b00 <_vfiprintf_r+0xc96> - 80007b60: 8aaa mv s5,a0 - 80007b62: 8b9a mv s7,t1 - 80007b64: 4c01 li s8,0 - 80007b66: 0dc10d13 addi s10,sp,220 - 80007b6a: 4885 li a7,1 - 80007b6c: e18ff06f j 80007184 <_vfiprintf_r+0x31a> - 80007b70: 000ab703 ld a4,0(s5) - 80007b74: 6622 ld a2,8(sp) - 80007b76: 8ab6 mv s5,a3 - 80007b78: 00c71023 sh a2,0(a4) - 80007b7c: b7cff06f j 80006ef8 <_vfiprintf_r+0x8e> - 80007b80: 000ac703 lbu a4,0(s5) - 80007b84: fc0c5a63 bgez s8,80007358 <_vfiprintf_r+0x4ee> - 80007b88: 8aaa mv s5,a0 - 80007b8a: f4aff06f j 800072d4 <_vfiprintf_r+0x46a> - 80007b8e: 8aaa mv s5,a0 - 80007b90: 86ba mv a3,a4 - 80007b92: dcaff06f j 8000715c <_vfiprintf_r+0x2f2> - 80007b96: 000ae683 lwu a3,0(s5) - 80007b9a: bd31 j 800079b6 <_vfiprintf_r+0xb4c> - 80007b9c: 000ae683 lwu a3,0(s5) - 80007ba0: 88de mv a7,s7 - 80007ba2: 8aaa mv s5,a0 - 80007ba4: b0d5 j 80007488 <_vfiprintf_r+0x61e> - 80007ba6: 8baa mv s7,a0 - 80007ba8: f2cff06f j 800072d4 <_vfiprintf_r+0x46a> - 80007bac: 854e mv a0,s3 - 80007bae: 1090 addi a2,sp,96 - 80007bb0: 85ca mv a1,s2 - 80007bb2: dcbfa0ef jal 8000297c <__sprint_r> - 80007bb6: d1aff06f j 800070d0 <_vfiprintf_r+0x266> - 80007bba: 7622 ld a2,40(sp) - 80007bbc: 75e2 ld a1,56(sp) - 80007bbe: e0f2 sd t3,64(sp) - 80007bc0: 40c50833 sub a6,a0,a2 - 80007bc4: 8542 mv a0,a6 - 80007bc6: f83e sd a5,48(sp) - 80007bc8: f03a sd a4,32(sp) - 80007bca: ec76 sd t4,24(sp) - 80007bcc: e842 sd a6,16(sp) - 80007bce: edcfb0ef jal 800032aa - 80007bd2: ccccd637 lui a2,0xccccd - 80007bd6: ccd60613 addi a2,a2,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> - 80007bda: 7702 ld a4,32(sp) - 80007bdc: 02061693 slli a3,a2,0x20 - 80007be0: 96b2 add a3,a3,a2 - 80007be2: 02d73733 mulhu a4,a4,a3 - 80007be6: 001d4603 lbu a2,1(s10) - 80007bea: 6842 ld a6,16(sp) - 80007bec: 00002897 auipc a7,0x2 - 80007bf0: ef48b883 ld a7,-268(a7) # 80009ae0 <__clz_tab+0x100> - 80007bf4: 00c03633 snez a2,a2 - 80007bf8: 9d32 add s10,s10,a2 - 80007bfa: 6ee2 ld t4,24(sp) - 80007bfc: 77c2 ld a5,48(sp) - 80007bfe: 6e06 ld t3,64(sp) - 80007c00: fff80513 addi a0,a6,-1 - 80007c04: 830d srli a4,a4,0x3 - 80007c06: 02d736b3 mulhu a3,a4,a3 - 80007c0a: 4585 li a1,1 - 80007c0c: 4325 li t1,9 - 80007c0e: 0036d613 srli a2,a3,0x3 - 80007c12: 00261693 slli a3,a2,0x2 - 80007c16: 96b2 add a3,a3,a2 - 80007c18: 0686 slli a3,a3,0x1 - 80007c1a: 40d706b3 sub a3,a4,a3 - 80007c1e: 0306869b addiw a3,a3,48 - 80007c22: fed80fa3 sb a3,-1(a6) - 80007c26: bc19 j 8000763c <_vfiprintf_r+0x7d2> - 80007c28: e0070fe3 beqz a4,80007a46 <_vfiprintf_r+0xbdc> - 80007c2c: 001c089b addiw a7,s8,1 - 80007c30: 8e62 mv t3,s8 +0000000080007240 <__smakebuf_r>: + 80007240: 01059783 lh a5,16(a1) + 80007244: 0027f713 andi a4,a5,2 + 80007248: cb01 beqz a4,80007258 <__smakebuf_r+0x18> + 8000724a: 07758793 addi a5,a1,119 + 8000724e: 4705 li a4,1 + 80007250: e19c sd a5,0(a1) + 80007252: ed9c sd a5,24(a1) + 80007254: d198 sw a4,32(a1) + 80007256: 8082 ret + 80007258: 872e mv a4,a1 + 8000725a: 01259583 lh a1,18(a1) + 8000725e: 7135 addi sp,sp,-160 + 80007260: e922 sd s0,144(sp) + 80007262: ed06 sd ra,152(sp) + 80007264: 842a mv s0,a0 + 80007266: 0605c863 bltz a1,800072d6 <__smakebuf_r+0x96> + 8000726a: 0830 addi a2,sp,24 + 8000726c: e03a sd a4,0(sp) + 8000726e: 0d8000ef jal 80007346 <_fstat_r> + 80007272: 6702 ld a4,0(sp) + 80007274: 04054f63 bltz a0,800072d2 <__smakebuf_r+0x92> + 80007278: 40000593 li a1,1024 + 8000727c: 8522 mv a0,s0 + 8000727e: e526 sd s1,136(sp) + 80007280: e03a sd a4,0(sp) + 80007282: 44f2 lw s1,28(sp) + 80007284: aa7fe0ef jal 80005d2a <_malloc_r> + 80007288: 6702 ld a4,0(sp) + 8000728a: 01071783 lh a5,16(a4) + 8000728e: c549 beqz a0,80007318 <__smakebuf_r+0xd8> + 80007290: 40000693 li a3,1024 + 80007294: 0807e793 ori a5,a5,128 + 80007298: d314 sw a3,32(a4) + 8000729a: 40c4d693 srai a3,s1,0xc + 8000729e: 00f71823 sh a5,16(a4) + 800072a2: e308 sd a0,0(a4) + 800072a4: ef08 sd a0,24(a4) + 800072a6: 8abd andi a3,a3,15 + 800072a8: 4609 li a2,2 + 800072aa: 08c69963 bne a3,a2,8000733c <__smakebuf_r+0xfc> + 800072ae: 01271583 lh a1,18(a4) + 800072b2: 8522 mv a0,s0 + 800072b4: e03a sd a4,0(sp) + 800072b6: 0c4000ef jal 8000737a <_isatty_r> + 800072ba: 6702 ld a4,0(sp) + 800072bc: 6685 lui a3,0x1 + 800072be: 80068693 addi a3,a3,-2048 # 800 + 800072c2: 01071783 lh a5,16(a4) + 800072c6: c92d beqz a0,80007338 <__smakebuf_r+0xf8> + 800072c8: 9bf1 andi a5,a5,-4 + 800072ca: 64aa ld s1,136(sp) + 800072cc: 0017e793 ori a5,a5,1 + 800072d0: a82d j 8000730a <__smakebuf_r+0xca> + 800072d2: 01071783 lh a5,16(a4) + 800072d6: 0807f793 andi a5,a5,128 + 800072da: 0017b593 seqz a1,a5 + 800072de: 40b005b3 neg a1,a1 + 800072e2: 3c05f593 andi a1,a1,960 + 800072e6: 04058593 addi a1,a1,64 + 800072ea: 8522 mv a0,s0 + 800072ec: e43a sd a4,8(sp) + 800072ee: e02e sd a1,0(sp) + 800072f0: a3bfe0ef jal 80005d2a <_malloc_r> + 800072f4: 6722 ld a4,8(sp) + 800072f6: 6582 ld a1,0(sp) + 800072f8: 01071783 lh a5,16(a4) + 800072fc: cd19 beqz a0,8000731a <__smakebuf_r+0xda> + 800072fe: 0807e793 ori a5,a5,128 + 80007302: e308 sd a0,0(a4) + 80007304: ef08 sd a0,24(a4) + 80007306: d30c sw a1,32(a4) + 80007308: 4681 li a3,0 + 8000730a: 8fd5 or a5,a5,a3 + 8000730c: 00f71823 sh a5,16(a4) + 80007310: 60ea ld ra,152(sp) + 80007312: 644a ld s0,144(sp) + 80007314: 610d addi sp,sp,160 + 80007316: 8082 ret + 80007318: 64aa ld s1,136(sp) + 8000731a: 2007f693 andi a3,a5,512 + 8000731e: faed bnez a3,80007310 <__smakebuf_r+0xd0> + 80007320: 9bf1 andi a5,a5,-4 + 80007322: 07770693 addi a3,a4,119 + 80007326: 0027e793 ori a5,a5,2 + 8000732a: 4605 li a2,1 + 8000732c: 00f71823 sh a5,16(a4) + 80007330: e314 sd a3,0(a4) + 80007332: ef14 sd a3,24(a4) + 80007334: d310 sw a2,32(a4) + 80007336: bfe9 j 80007310 <__smakebuf_r+0xd0> + 80007338: 64aa ld s1,136(sp) + 8000733a: bfc1 j 8000730a <__smakebuf_r+0xca> + 8000733c: 6685 lui a3,0x1 + 8000733e: 64aa ld s1,136(sp) + 80007340: 80068693 addi a3,a3,-2048 # 800 + 80007344: b7d9 j 8000730a <__smakebuf_r+0xca> + +0000000080007346 <_fstat_r>: + 80007346: 87ae mv a5,a1 + 80007348: 1141 addi sp,sp,-16 + 8000734a: e022 sd s0,0(sp) + 8000734c: 85b2 mv a1,a2 + 8000734e: 842a mv s0,a0 + 80007350: 853e mv a0,a5 + 80007352: e406 sd ra,8(sp) + 80007354: 3801a423 sw zero,904(gp) # 8000b090 + 80007358: dbdf80ef jal 80000114 <_fstat> + 8000735c: 57fd li a5,-1 + 8000735e: 00f50663 beq a0,a5,8000736a <_fstat_r+0x24> + 80007362: 60a2 ld ra,8(sp) + 80007364: 6402 ld s0,0(sp) + 80007366: 0141 addi sp,sp,16 + 80007368: 8082 ret + 8000736a: 3881a783 lw a5,904(gp) # 8000b090 + 8000736e: dbf5 beqz a5,80007362 <_fstat_r+0x1c> + 80007370: 60a2 ld ra,8(sp) + 80007372: c01c sw a5,0(s0) + 80007374: 6402 ld s0,0(sp) + 80007376: 0141 addi sp,sp,16 + 80007378: 8082 ret + +000000008000737a <_isatty_r>: + 8000737a: 1141 addi sp,sp,-16 + 8000737c: e022 sd s0,0(sp) + 8000737e: 842a mv s0,a0 + 80007380: 852e mv a0,a1 + 80007382: 3801a423 sw zero,904(gp) # 8000b090 + 80007386: e406 sd ra,8(sp) + 80007388: daff80ef jal 80000136 <_isatty> + 8000738c: 57fd li a5,-1 + 8000738e: 00f50663 beq a0,a5,8000739a <_isatty_r+0x20> + 80007392: 60a2 ld ra,8(sp) + 80007394: 6402 ld s0,0(sp) + 80007396: 0141 addi sp,sp,16 + 80007398: 8082 ret + 8000739a: 3881a783 lw a5,904(gp) # 8000b090 + 8000739e: dbf5 beqz a5,80007392 <_isatty_r+0x18> + 800073a0: 60a2 ld ra,8(sp) + 800073a2: c01c sw a5,0(s0) + 800073a4: 6402 ld s0,0(sp) + 800073a6: 0141 addi sp,sp,16 + 800073a8: 8082 ret + +00000000800073aa <_sbrk_r>: + 800073aa: 1141 addi sp,sp,-16 + 800073ac: e022 sd s0,0(sp) + 800073ae: 842a mv s0,a0 + 800073b0: 852e mv a0,a1 + 800073b2: 3801a423 sw zero,904(gp) # 8000b090 + 800073b6: e406 sd ra,8(sp) + 800073b8: c8ff80ef jal 80000046 <_sbrk> + 800073bc: 57fd li a5,-1 + 800073be: 00f50663 beq a0,a5,800073ca <_sbrk_r+0x20> + 800073c2: 60a2 ld ra,8(sp) + 800073c4: 6402 ld s0,0(sp) + 800073c6: 0141 addi sp,sp,16 + 800073c8: 8082 ret + 800073ca: 3881a783 lw a5,904(gp) # 8000b090 + 800073ce: dbf5 beqz a5,800073c2 <_sbrk_r+0x18> + 800073d0: 60a2 ld ra,8(sp) + 800073d2: c01c sw a5,0(s0) + 800073d4: 6402 ld s0,0(sp) + 800073d6: 0141 addi sp,sp,16 + 800073d8: 8082 ret + +00000000800073da <__assert_func>: + 800073da: 00003797 auipc a5,0x3 + 800073de: 1367b783 ld a5,310(a5) # 8000a510 <_impure_ptr> + 800073e2: 1141 addi sp,sp,-16 + 800073e4: 8832 mv a6,a2 + 800073e6: e406 sd ra,8(sp) + 800073e8: 88aa mv a7,a0 + 800073ea: 872e mv a4,a1 + 800073ec: 6f88 ld a0,24(a5) + 800073ee: 8636 mv a2,a3 + 800073f0: 00003797 auipc a5,0x3 + 800073f4: 9a878793 addi a5,a5,-1624 # 80009d98 <__clzdi2+0x6d6> + 800073f8: 00080b63 beqz a6,8000740e <__assert_func+0x34> + 800073fc: 86c6 mv a3,a7 + 800073fe: 00003597 auipc a1,0x3 + 80007402: 9aa58593 addi a1,a1,-1622 # 80009da8 <__clzdi2+0x6e6> + 80007406: 11a000ef jal 80007520 + 8000740a: 7eb000ef jal 800083f4 + 8000740e: 00002797 auipc a5,0x2 + 80007412: 5b278793 addi a5,a5,1458 # 800099c0 <__clzdi2+0x2fe> + 80007416: 883e mv a6,a5 + 80007418: b7d5 j 800073fc <__assert_func+0x22> + +000000008000741a <_calloc_r>: + 8000741a: 02c5b7b3 mulhu a5,a1,a2 + 8000741e: 1101 addi sp,sp,-32 + 80007420: ec06 sd ra,24(sp) + 80007422: 02c585b3 mul a1,a1,a2 + 80007426: efb5 bnez a5,800074a2 <_calloc_r+0x88> + 80007428: 903fe0ef jal 80005d2a <_malloc_r> + 8000742c: 87aa mv a5,a0 + 8000742e: c521 beqz a0,80007476 <_calloc_r+0x5c> + 80007430: ff853603 ld a2,-8(a0) + 80007434: 04800693 li a3,72 + 80007438: 9a71 andi a2,a2,-4 + 8000743a: 1661 addi a2,a2,-8 + 8000743c: 04c6e163 bltu a3,a2,8000747e <_calloc_r+0x64> + 80007440: 02700593 li a1,39 + 80007444: 872a mv a4,a0 + 80007446: 02c5f263 bgeu a1,a2,8000746a <_calloc_r+0x50> + 8000744a: 00053023 sd zero,0(a0) + 8000744e: 00053423 sd zero,8(a0) + 80007452: 03700713 li a4,55 + 80007456: 02c77d63 bgeu a4,a2,80007490 <_calloc_r+0x76> + 8000745a: 00053823 sd zero,16(a0) + 8000745e: 00053c23 sd zero,24(a0) + 80007462: 02050713 addi a4,a0,32 + 80007466: 04d60763 beq a2,a3,800074b4 <_calloc_r+0x9a> + 8000746a: 00073023 sd zero,0(a4) + 8000746e: 00073423 sd zero,8(a4) + 80007472: 00073823 sd zero,16(a4) + 80007476: 60e2 ld ra,24(sp) + 80007478: 853e mv a0,a5 + 8000747a: 6105 addi sp,sp,32 + 8000747c: 8082 ret + 8000747e: 4581 li a1,0 + 80007480: e42a sd a0,8(sp) + 80007482: 963fc0ef jal 80003de4 + 80007486: 67a2 ld a5,8(sp) + 80007488: 60e2 ld ra,24(sp) + 8000748a: 853e mv a0,a5 + 8000748c: 6105 addi sp,sp,32 + 8000748e: 8082 ret + 80007490: 01050713 addi a4,a0,16 + 80007494: 00073023 sd zero,0(a4) + 80007498: 00073423 sd zero,8(a4) + 8000749c: 00073823 sd zero,16(a4) + 800074a0: bfd9 j 80007476 <_calloc_r+0x5c> + 800074a2: a9ff90ef jal 80000f40 <__errno> + 800074a6: 60e2 ld ra,24(sp) + 800074a8: 47b1 li a5,12 + 800074aa: c11c sw a5,0(a0) + 800074ac: 4781 li a5,0 + 800074ae: 853e mv a0,a5 + 800074b0: 6105 addi sp,sp,32 + 800074b2: 8082 ret + 800074b4: 02053023 sd zero,32(a0) + 800074b8: 02053423 sd zero,40(a0) + 800074bc: 03050713 addi a4,a0,48 + 800074c0: b76d j 8000746a <_calloc_r+0x50> + +00000000800074c2 <__ascii_mbtowc>: + 800074c2: cd89 beqz a1,800074dc <__ascii_mbtowc+0x1a> + 800074c4: 4501 li a0,0 + 800074c6: ca11 beqz a2,800074da <__ascii_mbtowc+0x18> + 800074c8: ca85 beqz a3,800074f8 <__ascii_mbtowc+0x36> + 800074ca: 00064783 lbu a5,0(a2) + 800074ce: c19c sw a5,0(a1) + 800074d0: 00064503 lbu a0,0(a2) + 800074d4: 00a03533 snez a0,a0 + 800074d8: 8082 ret + 800074da: 8082 ret + 800074dc: 1141 addi sp,sp,-16 + 800074de: 006c addi a1,sp,12 + 800074e0: 4501 li a0,0 + 800074e2: ca09 beqz a2,800074f4 <__ascii_mbtowc+0x32> + 800074e4: ce81 beqz a3,800074fc <__ascii_mbtowc+0x3a> + 800074e6: 00064783 lbu a5,0(a2) + 800074ea: c19c sw a5,0(a1) + 800074ec: 00064503 lbu a0,0(a2) + 800074f0: 00a03533 snez a0,a0 + 800074f4: 0141 addi sp,sp,16 + 800074f6: 8082 ret + 800074f8: 5579 li a0,-2 + 800074fa: 8082 ret + 800074fc: 5579 li a0,-2 + 800074fe: bfdd j 800074f4 <__ascii_mbtowc+0x32> + +0000000080007500 <__ascii_wctomb>: + 80007500: c989 beqz a1,80007512 <__ascii_wctomb+0x12> + 80007502: 0ff00793 li a5,255 + 80007506: 00c7e863 bltu a5,a2,80007516 <__ascii_wctomb+0x16> + 8000750a: 00c58023 sb a2,0(a1) + 8000750e: 4505 li a0,1 + 80007510: 8082 ret + 80007512: 4501 li a0,0 + 80007514: 8082 ret + 80007516: 08a00793 li a5,138 + 8000751a: c11c sw a5,0(a0) + 8000751c: 557d li a0,-1 + 8000751e: 8082 ret + +0000000080007520 : + 80007520: 715d addi sp,sp,-80 + 80007522: 8eaa mv t4,a0 + 80007524: 00003517 auipc a0,0x3 + 80007528: fec53503 ld a0,-20(a0) # 8000a510 <_impure_ptr> + 8000752c: 02010313 addi t1,sp,32 + 80007530: 8e2e mv t3,a1 + 80007532: f032 sd a2,32(sp) + 80007534: f436 sd a3,40(sp) + 80007536: 85f6 mv a1,t4 + 80007538: 8672 mv a2,t3 + 8000753a: 869a mv a3,t1 + 8000753c: ec06 sd ra,24(sp) + 8000753e: f83a sd a4,48(sp) + 80007540: fc3e sd a5,56(sp) + 80007542: e0c2 sd a6,64(sp) + 80007544: e4c6 sd a7,72(sp) + 80007546: e41a sd t1,8(sp) + 80007548: 00a000ef jal 80007552 <_vfiprintf_r> + 8000754c: 60e2 ld ra,24(sp) + 8000754e: 6161 addi sp,sp,80 + 80007550: 8082 ret + +0000000080007552 <_vfiprintf_r>: + 80007552: 7145 addi sp,sp,-464 + 80007554: fb4a sd s2,432(sp) + 80007556: f74e sd s3,424(sp) + 80007558: ef56 sd s5,408(sp) + 8000755a: f6ee sd s11,360(sp) + 8000755c: e786 sd ra,456(sp) + 8000755e: 89aa mv s3,a0 + 80007560: 8db2 mv s11,a2 + 80007562: 8ab6 mv s5,a3 + 80007564: 892e mv s2,a1 + 80007566: c501 beqz a0,8000756e <_vfiprintf_r+0x1c> + 80007568: 653c ld a5,72(a0) + 8000756a: 420788e3 beqz a5,8000819a <_vfiprintf_r+0xc48> + 8000756e: 01091783 lh a5,16(s2) + 80007572: 0ac92703 lw a4,172(s2) + 80007576: 6609 lui a2,0x2 + 80007578: 03279693 slli a3,a5,0x32 + 8000757c: 2606c463 bltz a3,800077e4 <_vfiprintf_r+0x292> + 80007580: 76f9 lui a3,0xffffe + 80007582: 8fd1 or a5,a5,a2 + 80007584: 16fd addi a3,a3,-1 # ffffffffffffdfff <_stack_top+0xffffffff7fefdfff> + 80007586: 8f75 and a4,a4,a3 + 80007588: 00f91823 sh a5,16(s2) + 8000758c: 0107979b slliw a5,a5,0x10 + 80007590: 4107d79b sraiw a5,a5,0x10 + 80007594: 0ae92623 sw a4,172(s2) + 80007598: 0087f713 andi a4,a5,8 + 8000759c: 1c070663 beqz a4,80007768 <_vfiprintf_r+0x216> + 800075a0: 01893703 ld a4,24(s2) + 800075a4: 1c070263 beqz a4,80007768 <_vfiprintf_r+0x216> + 800075a8: 8be9 andi a5,a5,26 + 800075aa: 4729 li a4,10 + 800075ac: 1ce78963 beq a5,a4,8000777e <_vfiprintf_r+0x22c> + 800075b0: f352 sd s4,416(sp) + 800075b2: 0e010a13 addi s4,sp,224 + 800075b6: e3a2 sd s0,448(sp) + 800075b8: ff26 sd s1,440(sp) + 800075ba: eb5a sd s6,400(sp) + 800075bc: e75e sd s7,392(sp) + 800075be: e362 sd s8,384(sp) + 800075c0: fee6 sd s9,376(sp) + 800075c2: faea sd s10,368(sp) + 800075c4: f882 sd zero,112(sp) + 800075c6: d482 sw zero,104(sp) + 800075c8: f0d2 sd s4,96(sp) + 800075ca: 87d2 mv a5,s4 + 800075cc: f802 sd zero,48(sp) + 800075ce: f402 sd zero,40(sp) + 800075d0: fc02 sd zero,56(sp) + 800075d2: e402 sd zero,8(sp) + 800075d4: 449d li s1,7 + 800075d6: 00003b17 auipc s6,0x3 + 800075da: c0eb0b13 addi s6,s6,-1010 # 8000a1e4 <_ctype_+0x104> + 800075de: 4441 li s0,16 + 800075e0: 000dc603 lbu a2,0(s11) + 800075e4: 8c6e mv s8,s11 + 800075e6: fdb60693 addi a3,a2,-37 # 1fdb + 800075ea: 00d036b3 snez a3,a3 + 800075ee: 00c03733 snez a4,a2 + 800075f2: 8f75 and a4,a4,a3 + 800075f4: c329 beqz a4,80007636 <_vfiprintf_r+0xe4> + 800075f6: 001c4603 lbu a2,1(s8) + 800075fa: 0c05 addi s8,s8,1 + 800075fc: fdb60693 addi a3,a2,-37 + 80007600: 00d036b3 snez a3,a3 + 80007604: 00c03733 snez a4,a2 + 80007608: 8f75 and a4,a4,a3 + 8000760a: f775 bnez a4,800075f6 <_vfiprintf_r+0xa4> + 8000760c: 41bc0cbb subw s9,s8,s11 + 80007610: 020c8363 beqz s9,80007636 <_vfiprintf_r+0xe4> + 80007614: 76c6 ld a3,112(sp) + 80007616: 5726 lw a4,104(sp) + 80007618: 01b7b023 sd s11,0(a5) + 8000761c: 96e6 add a3,a3,s9 + 8000761e: 2705 addiw a4,a4,1 + 80007620: 0197b423 sd s9,8(a5) + 80007624: f8b6 sd a3,112(sp) + 80007626: d4ba sw a4,104(sp) + 80007628: 07c1 addi a5,a5,16 + 8000762a: 16e4ca63 blt s1,a4,8000779e <_vfiprintf_r+0x24c> + 8000762e: 6722 ld a4,8(sp) + 80007630: 0197073b addw a4,a4,s9 + 80007634: e43a sd a4,8(sp) + 80007636: 16060e63 beqz a2,800077b2 <_vfiprintf_r+0x260> + 8000763a: 001c4703 lbu a4,1(s8) + 8000763e: 001c0d93 addi s11,s8,1 + 80007642: 04010ba3 sb zero,87(sp) + 80007646: 5c7d li s8,-1 + 80007648: 4c81 li s9,0 + 8000764a: 4b81 li s7,0 + 8000764c: 8d3e mv s10,a5 + 8000764e: 0d85 addi s11,s11,1 + 80007650: 2701 sext.w a4,a4 + 80007652: fe07069b addiw a3,a4,-32 + 80007656: 05a00793 li a5,90 + 8000765a: 04d7e563 bltu a5,a3,800076a4 <_vfiprintf_r+0x152> + 8000765e: 02069613 slli a2,a3,0x20 + 80007662: 01e65693 srli a3,a2,0x1e + 80007666: 96da add a3,a3,s6 + 80007668: 4294 lw a3,0(a3) + 8000766a: 96da add a3,a3,s6 + 8000766c: 8682 jr a3 + 8000766e: 4c81 li s9,0 + 80007670: 45a5 li a1,9 + 80007672: 000dc603 lbu a2,0(s11) + 80007676: 002c969b slliw a3,s9,0x2 + 8000767a: 01968cbb addw s9,a3,s9 + 8000767e: fd07071b addiw a4,a4,-48 + 80007682: 001c9c9b slliw s9,s9,0x1 + 80007686: fd06069b addiw a3,a2,-48 + 8000768a: 0d85 addi s11,s11,1 + 8000768c: 01970cbb addw s9,a4,s9 + 80007690: 0006071b sext.w a4,a2 + 80007694: fcd5ffe3 bgeu a1,a3,80007672 <_vfiprintf_r+0x120> + 80007698: fe07069b addiw a3,a4,-32 + 8000769c: 05a00793 li a5,90 + 800076a0: fad7ffe3 bgeu a5,a3,8000765e <_vfiprintf_r+0x10c> + 800076a4: 87ea mv a5,s10 + 800076a6: 10070663 beqz a4,800077b2 <_vfiprintf_r+0x260> + 800076aa: 4e05 li t3,1 + 800076ac: 06e10c23 sb a4,120(sp) + 800076b0: 04010ba3 sb zero,87(sp) + 800076b4: 88f2 mv a7,t3 + 800076b6: 4c01 li s8,0 + 800076b8: 07810d13 addi s10,sp,120 + 800076bc: 75c6 ld a1,112(sp) + 800076be: 5626 lw a2,104(sp) + 800076c0: 084bf313 andi t1,s7,132 + 800076c4: 86ae mv a3,a1 + 800076c6: 8732 mv a4,a2 + 800076c8: 04031463 bnez t1,80007710 <_vfiprintf_r+0x1be> + 800076cc: 411c8ebb subw t4,s9,a7 + 800076d0: 1bd04b63 bgtz t4,80007886 <_vfiprintf_r+0x334> + 800076d4: 05714603 lbu a2,87(sp) + 800076d8: c221 beqz a2,80007718 <_vfiprintf_r+0x1c6> + 800076da: 4301 li t1,0 + 800076dc: 4f01 li t5,0 + 800076de: 05710613 addi a2,sp,87 + 800076e2: e390 sd a2,0(a5) + 800076e4: 0685 addi a3,a3,1 + 800076e6: 2705 addiw a4,a4,1 + 800076e8: 4605 li a2,1 + 800076ea: e790 sd a2,8(a5) + 800076ec: f8b6 sd a3,112(sp) + 800076ee: d4ba sw a4,104(sp) + 800076f0: 07c1 addi a5,a5,16 + 800076f2: 10e4c063 blt s1,a4,800077f2 <_vfiprintf_r+0x2a0> + 800076f6: 000f0d63 beqz t5,80007710 <_vfiprintf_r+0x1be> + 800076fa: 08b0 addi a2,sp,88 + 800076fc: e390 sd a2,0(a5) + 800076fe: 0689 addi a3,a3,2 + 80007700: 2705 addiw a4,a4,1 + 80007702: 4609 li a2,2 + 80007704: e790 sd a2,8(a5) + 80007706: f8b6 sd a3,112(sp) + 80007708: d4ba sw a4,104(sp) + 8000770a: 07c1 addi a5,a5,16 + 8000770c: 7ce4cc63 blt s1,a4,80007ee4 <_vfiprintf_r+0x992> + 80007710: 08000613 li a2,128 + 80007714: 64c30763 beq t1,a2,80007d62 <_vfiprintf_r+0x810> + 80007718: 41cc0c3b subw s8,s8,t3 + 8000771c: 6f804a63 bgtz s8,80007e10 <_vfiprintf_r+0x8be> + 80007720: 96f2 add a3,a3,t3 + 80007722: 2705 addiw a4,a4,1 + 80007724: 01a7b023 sd s10,0(a5) + 80007728: 01c7b423 sd t3,8(a5) + 8000772c: f8b6 sd a3,112(sp) + 8000772e: d4ba sw a4,104(sp) + 80007730: 07c1 addi a5,a5,16 + 80007732: 78e4c563 blt s1,a4,80007ebc <_vfiprintf_r+0x96a> + 80007736: 004bf813 andi a6,s7,4 + 8000773a: 00080663 beqz a6,80007746 <_vfiprintf_r+0x1f4> + 8000773e: 411c8c3b subw s8,s9,a7 + 80007742: 7d804363 bgtz s8,80007f08 <_vfiprintf_r+0x9b6> + 80007746: 87e6 mv a5,s9 + 80007748: 011cd363 bge s9,a7,8000774e <_vfiprintf_r+0x1fc> + 8000774c: 87c6 mv a5,a7 + 8000774e: 6722 ld a4,8(sp) + 80007750: 9fb9 addw a5,a5,a4 + 80007752: e43e sd a5,8(sp) + 80007754: 78069063 bnez a3,80007ed4 <_vfiprintf_r+0x982> + 80007758: d482 sw zero,104(sp) + 8000775a: 87d2 mv a5,s4 + 8000775c: b551 j 800075e0 <_vfiprintf_r+0x8e> + 8000775e: 000dc703 lbu a4,0(s11) + 80007762: 010beb93 ori s7,s7,16 + 80007766: b5e5 j 8000764e <_vfiprintf_r+0xfc> + 80007768: 85ca mv a1,s2 + 8000776a: 854e mv a0,s3 + 8000776c: 934fc0ef jal 800038a0 <__swsetup_r> + 80007770: ed35 bnez a0,800077ec <_vfiprintf_r+0x29a> + 80007772: 01091783 lh a5,16(s2) + 80007776: 4729 li a4,10 + 80007778: 8be9 andi a5,a5,26 + 8000777a: e2e79be3 bne a5,a4,800075b0 <_vfiprintf_r+0x5e> + 8000777e: 01291783 lh a5,18(s2) + 80007782: e207c7e3 bltz a5,800075b0 <_vfiprintf_r+0x5e> + 80007786: 60be ld ra,456(sp) + 80007788: 86d6 mv a3,s5 + 8000778a: 866e mv a2,s11 + 8000778c: 6afa ld s5,408(sp) + 8000778e: 7db6 ld s11,360(sp) + 80007790: 85ca mv a1,s2 + 80007792: 854e mv a0,s3 + 80007794: 795a ld s2,432(sp) + 80007796: 79ba ld s3,424(sp) + 80007798: 6179 addi sp,sp,464 + 8000779a: 3c90006f j 80008362 <__sbprintf> + 8000779e: 1090 addi a2,sp,96 + 800077a0: 85ca mv a1,s2 + 800077a2: 854e mv a0,s3 + 800077a4: 8c1fb0ef jal 80003064 <__sprint_r> + 800077a8: e901 bnez a0,800077b8 <_vfiprintf_r+0x266> + 800077aa: 000c4603 lbu a2,0(s8) + 800077ae: 87d2 mv a5,s4 + 800077b0: bdbd j 8000762e <_vfiprintf_r+0xdc> + 800077b2: 77c6 ld a5,112(sp) + 800077b4: 2e0790e3 bnez a5,80008294 <_vfiprintf_r+0xd42> + 800077b8: 01095783 lhu a5,16(s2) + 800077bc: 0407f793 andi a5,a5,64 + 800077c0: 360794e3 bnez a5,80008328 <_vfiprintf_r+0xdd6> + 800077c4: 641e ld s0,448(sp) + 800077c6: 74fa ld s1,440(sp) + 800077c8: 7a1a ld s4,416(sp) + 800077ca: 6b5a ld s6,400(sp) + 800077cc: 6bba ld s7,392(sp) + 800077ce: 6c1a ld s8,384(sp) + 800077d0: 7cf6 ld s9,376(sp) + 800077d2: 7d56 ld s10,368(sp) + 800077d4: 60be ld ra,456(sp) + 800077d6: 6522 ld a0,8(sp) + 800077d8: 795a ld s2,432(sp) + 800077da: 79ba ld s3,424(sp) + 800077dc: 6afa ld s5,408(sp) + 800077de: 7db6 ld s11,360(sp) + 800077e0: 6179 addi sp,sp,464 + 800077e2: 8082 ret + 800077e4: 03271693 slli a3,a4,0x32 + 800077e8: da06d8e3 bgez a3,80007598 <_vfiprintf_r+0x46> + 800077ec: 57fd li a5,-1 + 800077ee: e43e sd a5,8(sp) + 800077f0: b7d5 j 800077d4 <_vfiprintf_r+0x282> + 800077f2: 1090 addi a2,sp,96 + 800077f4: 85ca mv a1,s2 + 800077f6: 854e mv a0,s3 + 800077f8: e0f2 sd t3,64(sp) + 800077fa: f046 sd a7,32(sp) + 800077fc: ec1a sd t1,24(sp) + 800077fe: e87a sd t5,16(sp) + 80007800: 865fb0ef jal 80003064 <__sprint_r> + 80007804: f955 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007806: 76c6 ld a3,112(sp) + 80007808: 5726 lw a4,104(sp) + 8000780a: 6e06 ld t3,64(sp) + 8000780c: 7882 ld a7,32(sp) + 8000780e: 6362 ld t1,24(sp) + 80007810: 6f42 ld t5,16(sp) + 80007812: 87d2 mv a5,s4 + 80007814: b5cd j 800076f6 <_vfiprintf_r+0x1a4> + 80007816: 020bf713 andi a4,s7,32 + 8000781a: 87ea mv a5,s10 + 8000781c: 008a8513 addi a0,s5,8 + 80007820: 16071e63 bnez a4,8000799c <_vfiprintf_r+0x44a> + 80007824: 010bf713 andi a4,s7,16 + 80007828: 7e071363 bnez a4,8000800e <_vfiprintf_r+0xabc> + 8000782c: 040bf693 andi a3,s7,64 + 80007830: 000aa703 lw a4,0(s5) + 80007834: 1e0683e3 beqz a3,8000821a <_vfiprintf_r+0xcc8> + 80007838: 0107171b slliw a4,a4,0x10 + 8000783c: 4107571b sraiw a4,a4,0x10 + 80007840: 8aaa mv s5,a0 + 80007842: 86ba mv a3,a4 + 80007844: 1606c263 bltz a3,800079a8 <_vfiprintf_r+0x456> + 80007848: 160c4a63 bltz s8,800079bc <_vfiprintf_r+0x46a> + 8000784c: 00ec66b3 or a3,s8,a4 + 80007850: f7fbf513 andi a0,s7,-129 + 80007854: 22069de3 bnez a3,8000828e <_vfiprintf_r+0xd3c> + 80007858: 05714703 lbu a4,87(sp) + 8000785c: 160701e3 beqz a4,800081be <_vfiprintf_r+0xc6c> + 80007860: 8baa mv s7,a0 + 80007862: 4e01 li t3,0 + 80007864: 4c01 li s8,0 + 80007866: 0dc10d13 addi s10,sp,220 + 8000786a: 4885 li a7,1 + 8000786c: 76c6 ld a3,112(sp) + 8000786e: 5726 lw a4,104(sp) + 80007870: 084bf313 andi t1,s7,132 + 80007874: 85b6 mv a1,a3 + 80007876: 863a mv a2,a4 + 80007878: 4f01 li t5,0 + 8000787a: e60312e3 bnez t1,800076de <_vfiprintf_r+0x18c> + 8000787e: 411c8ebb subw t4,s9,a7 + 80007882: e5d059e3 blez t4,800076d4 <_vfiprintf_r+0x182> + 80007886: 4f01 li t5,0 + 80007888: 4fc1 li t6,16 + 8000788a: 86ae mv a3,a1 + 8000788c: 8732 mv a4,a2 + 8000788e: 00003317 auipc t1,0x3 + 80007892: ad230313 addi t1,t1,-1326 # 8000a360 + 80007896: 07dfd263 bge t6,t4,800078fa <_vfiprintf_r+0x3a8> + 8000789a: ec5e sd s7,24(sp) + 8000789c: e4d6 sd s5,72(sp) + 8000789e: 429d li t0,7 + 800078a0: e87a sd t5,16(sp) + 800078a2: f046 sd a7,32(sp) + 800078a4: e0f2 sd t3,64(sp) + 800078a6: 8af6 mv s5,t4 + 800078a8: 00003b97 auipc s7,0x3 + 800078ac: ab8b8b93 addi s7,s7,-1352 # 8000a360 + 800078b0: a021 j 800078b8 <_vfiprintf_r+0x366> + 800078b2: 3ac1 addiw s5,s5,-16 + 800078b4: 035fdc63 bge t6,s5,800078ec <_vfiprintf_r+0x39a> + 800078b8: 06c1 addi a3,a3,16 + 800078ba: 2705 addiw a4,a4,1 + 800078bc: 0177b023 sd s7,0(a5) + 800078c0: 01f7b423 sd t6,8(a5) + 800078c4: f8b6 sd a3,112(sp) + 800078c6: d4ba sw a4,104(sp) + 800078c8: 07c1 addi a5,a5,16 + 800078ca: fee2d4e3 bge t0,a4,800078b2 <_vfiprintf_r+0x360> + 800078ce: 1090 addi a2,sp,96 + 800078d0: 85ca mv a1,s2 + 800078d2: 854e mv a0,s3 + 800078d4: f90fb0ef jal 80003064 <__sprint_r> + 800078d8: ee0510e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 800078dc: 4fc1 li t6,16 + 800078de: 3ac1 addiw s5,s5,-16 + 800078e0: 76c6 ld a3,112(sp) + 800078e2: 5726 lw a4,104(sp) + 800078e4: 87d2 mv a5,s4 + 800078e6: 429d li t0,7 + 800078e8: fd5fc8e3 blt t6,s5,800078b8 <_vfiprintf_r+0x366> + 800078ec: 8ed6 mv t4,s5 + 800078ee: 835e mv t1,s7 + 800078f0: 6f42 ld t5,16(sp) + 800078f2: 7882 ld a7,32(sp) + 800078f4: 6e06 ld t3,64(sp) + 800078f6: 6aa6 ld s5,72(sp) + 800078f8: 6be2 ld s7,24(sp) + 800078fa: 96f6 add a3,a3,t4 + 800078fc: 2705 addiw a4,a4,1 + 800078fe: f8b6 sd a3,112(sp) + 80007900: d4ba sw a4,104(sp) + 80007902: 0067b023 sd t1,0(a5) + 80007906: 01d7b423 sd t4,8(a5) + 8000790a: 461d li a2,7 + 8000790c: 04e642e3 blt a2,a4,80008150 <_vfiprintf_r+0xbfe> + 80007910: 05714603 lbu a2,87(sp) + 80007914: 07c1 addi a5,a5,16 + 80007916: 6e061763 bnez a2,80008004 <_vfiprintf_r+0xab2> + 8000791a: de0f0fe3 beqz t5,80007718 <_vfiprintf_r+0x1c6> + 8000791e: 4301 li t1,0 + 80007920: bbe9 j 800076fa <_vfiprintf_r+0x1a8> + 80007922: 87ea mv a5,s10 + 80007924: 000abd03 ld s10,0(s5) + 80007928: 04010ba3 sb zero,87(sp) + 8000792c: 0aa1 addi s5,s5,8 + 8000792e: 0a0d08e3 beqz s10,800081de <_vfiprintf_r+0xc8c> + 80007932: e83e sd a5,16(sp) + 80007934: 7c0c4963 bltz s8,80008106 <_vfiprintf_r+0xbb4> + 80007938: 8662 mv a2,s8 + 8000793a: 4581 li a1,0 + 8000793c: 856a mv a0,s10 + 8000793e: 865fc0ef jal 800041a2 + 80007942: 05714703 lbu a4,87(sp) + 80007946: 67c2 ld a5,16(sp) + 80007948: 1c0504e3 beqz a0,80008310 <_vfiprintf_r+0xdbe> + 8000794c: 41a50e3b subw t3,a0,s10 + 80007950: 86f2 mv a3,t3 + 80007952: 000e5363 bgez t3,80007958 <_vfiprintf_r+0x406> + 80007956: 4681 li a3,0 + 80007958: 0006889b sext.w a7,a3 + 8000795c: 7c070b63 beqz a4,80008132 <_vfiprintf_r+0xbe0> + 80007960: 0016889b addiw a7,a3,1 + 80007964: 4c01 li s8,0 + 80007966: b719 j 8000786c <_vfiprintf_r+0x31a> + 80007968: 000aa703 lw a4,0(s5) + 8000796c: 4e05 li t3,1 + 8000796e: 87ea mv a5,s10 + 80007970: 04010ba3 sb zero,87(sp) + 80007974: 06e10c23 sb a4,120(sp) + 80007978: 0aa1 addi s5,s5,8 + 8000797a: 88f2 mv a7,t3 + 8000797c: 4c01 li s8,0 + 8000797e: 07810d13 addi s10,sp,120 + 80007982: bb2d j 800076bc <_vfiprintf_r+0x16a> + 80007984: 020bf713 andi a4,s7,32 + 80007988: 87ea mv a5,s10 + 8000798a: 010be813 ori a6,s7,16 + 8000798e: 008a8513 addi a0,s5,8 + 80007992: 66070f63 beqz a4,80008010 <_vfiprintf_r+0xabe> + 80007996: 8bc2 mv s7,a6 + 80007998: 008a8513 addi a0,s5,8 + 8000799c: 000ab683 ld a3,0(s5) + 800079a0: 8aaa mv s5,a0 + 800079a2: 8736 mv a4,a3 + 800079a4: ea06d2e3 bgez a3,80007848 <_vfiprintf_r+0x2f6> + 800079a8: 02d00693 li a3,45 + 800079ac: 04d10ba3 sb a3,87(sp) + 800079b0: 40e00733 neg a4,a4 + 800079b4: 000c4463 bltz s8,800079bc <_vfiprintf_r+0x46a> + 800079b8: f7fbfb93 andi s7,s7,-129 + 800079bc: 4325 li t1,9 + 800079be: 30e36863 bltu t1,a4,80007cce <_vfiprintf_r+0x77c> + 800079c2: 0307071b addiw a4,a4,48 + 800079c6: 0ce10da3 sb a4,219(sp) + 800079ca: 8762 mv a4,s8 + 800079cc: 01804363 bgtz s8,800079d2 <_vfiprintf_r+0x480> + 800079d0: 4705 li a4,1 + 800079d2: 05714683 lbu a3,87(sp) + 800079d6: 0007089b sext.w a7,a4 + 800079da: 4e05 li t3,1 + 800079dc: 0db10d13 addi s10,sp,219 + 800079e0: cc068ee3 beqz a3,800076bc <_vfiprintf_r+0x16a> + 800079e4: 0017089b addiw a7,a4,1 + 800079e8: 4e05 li t3,1 + 800079ea: 0db10d13 addi s10,sp,219 + 800079ee: bdbd j 8000786c <_vfiprintf_r+0x31a> + 800079f0: 000aac83 lw s9,0(s5) + 800079f4: 600cd163 bgez s9,80007ff6 <_vfiprintf_r+0xaa4> + 800079f8: 41900cbb negw s9,s9 + 800079fc: 0aa1 addi s5,s5,8 + 800079fe: 000dc703 lbu a4,0(s11) + 80007a02: 004beb93 ori s7,s7,4 + 80007a06: b1a1 j 8000764e <_vfiprintf_r+0xfc> + 80007a08: 02b00713 li a4,43 + 80007a0c: 04e10ba3 sb a4,87(sp) + 80007a10: 000dc703 lbu a4,0(s11) + 80007a14: b92d j 8000764e <_vfiprintf_r+0xfc> + 80007a16: 020bf713 andi a4,s7,32 + 80007a1a: 87ea mv a5,s10 + 80007a1c: 28071b63 bnez a4,80007cb2 <_vfiprintf_r+0x760> + 80007a20: 010bfe13 andi t3,s7,16 + 80007a24: 008a8513 addi a0,s5,8 + 80007a28: 120e1be3 bnez t3,8000835e <_vfiprintf_r+0xe0c> + 80007a2c: 040bf713 andi a4,s7,64 + 80007a30: 70070463 beqz a4,80008138 <_vfiprintf_r+0xbe6> + 80007a34: 04010ba3 sb zero,87(sp) + 80007a38: 000ad703 lhu a4,0(s5) + 80007a3c: 700c4863 bltz s8,8000814c <_vfiprintf_r+0xbfa> + 80007a40: 00ec66b3 or a3,s8,a4 + 80007a44: f7fbf313 andi t1,s7,-129 + 80007a48: 0e0697e3 bnez a3,80008336 <_vfiprintf_r+0xde4> + 80007a4c: 05714703 lbu a4,87(sp) + 80007a50: 7e071c63 bnez a4,80008248 <_vfiprintf_r+0xcf6> + 80007a54: 76c6 ld a3,112(sp) + 80007a56: 5726 lw a4,104(sp) + 80007a58: 004bf893 andi a7,s7,4 + 80007a5c: 85b6 mv a1,a3 + 80007a5e: 863a mv a2,a4 + 80007a60: 0c0898e3 bnez a7,80008330 <_vfiprintf_r+0xdde> + 80007a64: 8b9a mv s7,t1 + 80007a66: 8aaa mv s5,a0 + 80007a68: 4e01 li t3,0 + 80007a6a: a481 j 80007caa <_vfiprintf_r+0x758> + 80007a6c: 000dc703 lbu a4,0(s11) + 80007a70: 020beb93 ori s7,s7,32 + 80007a74: bee9 j 8000764e <_vfiprintf_r+0xfc> + 80007a76: 6721 lui a4,0x8 + 80007a78: 83070713 addi a4,a4,-2000 # 7830 + 80007a7c: 04010ba3 sb zero,87(sp) + 80007a80: 04e11c23 sh a4,88(sp) + 80007a84: 000ab683 ld a3,0(s5) + 80007a88: 87ea mv a5,s10 + 80007a8a: 002beb93 ori s7,s7,2 + 80007a8e: 008a8513 addi a0,s5,8 + 80007a92: 580c4d63 bltz s8,8000802c <_vfiprintf_r+0xada> + 80007a96: 00d035b3 snez a1,a3 + 80007a9a: 4309 li t1,2 + 80007a9c: 00002617 auipc a2,0x2 + 80007aa0: 1ac60613 addi a2,a2,428 # 80009c48 <__clzdi2+0x586> + 80007aa4: 00bc65b3 or a1,s8,a1 + 80007aa8: f7fbfb93 andi s7,s7,-129 + 80007aac: 8aaa mv s5,a0 + 80007aae: 78059763 bnez a1,8000823c <_vfiprintf_r+0xcea> + 80007ab2: 05714503 lbu a0,87(sp) + 80007ab6: 4881 li a7,0 + 80007ab8: 4e01 li t3,0 + 80007aba: 4c01 li s8,0 + 80007abc: 0dc10d13 addi s10,sp,220 + 80007ac0: c111 beqz a0,80007ac4 <_vfiprintf_r+0x572> + 80007ac2: 2885 addiw a7,a7,1 + 80007ac4: 50030a63 beqz t1,80007fd8 <_vfiprintf_r+0xa86> + 80007ac8: 76c6 ld a3,112(sp) + 80007aca: 5726 lw a4,104(sp) + 80007acc: 084bf313 andi t1,s7,132 + 80007ad0: 2889 addiw a7,a7,2 + 80007ad2: 85b6 mv a1,a3 + 80007ad4: 863a mv a2,a4 + 80007ad6: 00031663 bnez t1,80007ae2 <_vfiprintf_r+0x590> + 80007ada: 411c8ebb subw t4,s9,a7 + 80007ade: 53d04163 bgtz t4,80008000 <_vfiprintf_r+0xaae> + 80007ae2: c0050ce3 beqz a0,800076fa <_vfiprintf_r+0x1a8> + 80007ae6: 4f09 li t5,2 + 80007ae8: bedd j 800076de <_vfiprintf_r+0x18c> + 80007aea: 020bf713 andi a4,s7,32 + 80007aee: 87ea mv a5,s10 + 80007af0: 008a8513 addi a0,s5,8 + 80007af4: 50071b63 bnez a4,8000800a <_vfiprintf_r+0xab8> + 80007af8: 010bf713 andi a4,s7,16 + 80007afc: 50071763 bnez a4,8000800a <_vfiprintf_r+0xab8> + 80007b00: 040bf713 andi a4,s7,64 + 80007b04: 6e070a63 beqz a4,800081f8 <_vfiprintf_r+0xca6> + 80007b08: 000ad683 lhu a3,0(s5) + 80007b0c: 88de mv a7,s7 + 80007b0e: 8aaa mv s5,a0 + 80007b10: a085 j 80007b70 <_vfiprintf_r+0x61e> + 80007b12: 020bf713 andi a4,s7,32 + 80007b16: 87ea mv a5,s10 + 80007b18: 008a8693 addi a3,s5,8 + 80007b1c: e31d bnez a4,80007b42 <_vfiprintf_r+0x5f0> + 80007b1e: 010bf713 andi a4,s7,16 + 80007b22: e305 bnez a4,80007b42 <_vfiprintf_r+0x5f0> + 80007b24: 040bf713 andi a4,s7,64 + 80007b28: 72071863 bnez a4,80008258 <_vfiprintf_r+0xd06> + 80007b2c: 200bf813 andi a6,s7,512 + 80007b30: 000ab703 ld a4,0(s5) + 80007b34: 6622 ld a2,8(sp) + 80007b36: 7e080563 beqz a6,80008320 <_vfiprintf_r+0xdce> + 80007b3a: 00c70023 sb a2,0(a4) + 80007b3e: 8ab6 mv s5,a3 + 80007b40: b445 j 800075e0 <_vfiprintf_r+0x8e> + 80007b42: 000ab703 ld a4,0(s5) + 80007b46: 6622 ld a2,8(sp) + 80007b48: 8ab6 mv s5,a3 + 80007b4a: e310 sd a2,0(a4) + 80007b4c: bc51 j 800075e0 <_vfiprintf_r+0x8e> + 80007b4e: 000dc703 lbu a4,0(s11) + 80007b52: 06c00693 li a3,108 + 80007b56: 64d70d63 beq a4,a3,800081b0 <_vfiprintf_r+0xc5e> + 80007b5a: 010beb93 ori s7,s7,16 + 80007b5e: bcc5 j 8000764e <_vfiprintf_r+0xfc> + 80007b60: 87ea mv a5,s10 + 80007b62: 010be893 ori a7,s7,16 + 80007b66: 008a8513 addi a0,s5,8 + 80007b6a: 000ab683 ld a3,0(s5) + 80007b6e: 8aaa mv s5,a0 + 80007b70: 04010ba3 sb zero,87(sp) + 80007b74: 420c4163 bltz s8,80007f96 <_vfiprintf_r+0xa44> + 80007b78: 00dc6733 or a4,s8,a3 + 80007b7c: b7f8fb93 andi s7,a7,-1153 + 80007b80: 40071d63 bnez a4,80007f9a <_vfiprintf_r+0xa48> + 80007b84: 0018f893 andi a7,a7,1 + 80007b88: 4c088f63 beqz a7,80008066 <_vfiprintf_r+0xb14> + 80007b8c: 03000713 li a4,48 + 80007b90: 0ce10da3 sb a4,219(sp) + 80007b94: 8e46 mv t3,a7 + 80007b96: 4c01 li s8,0 + 80007b98: 0db10d13 addi s10,sp,219 + 80007b9c: a935 j 80007fd8 <_vfiprintf_r+0xa86> + 80007b9e: 000dc703 lbu a4,0(s11) + 80007ba2: 06800693 li a3,104 + 80007ba6: 5ed70e63 beq a4,a3,800081a2 <_vfiprintf_r+0xc50> + 80007baa: 040beb93 ori s7,s7,64 + 80007bae: b445 j 8000764e <_vfiprintf_r+0xfc> + 80007bb0: 854e mv a0,s3 + 80007bb2: e63fb0ef jal 80003a14 <_localeconv_r> + 80007bb6: 651c ld a5,8(a0) + 80007bb8: 853e mv a0,a5 + 80007bba: fc3e sd a5,56(sp) + 80007bbc: d4cfc0ef jal 80004108 + 80007bc0: f42a sd a0,40(sp) + 80007bc2: 854e mv a0,s3 + 80007bc4: e51fb0ef jal 80003a14 <_localeconv_r> + 80007bc8: 691c ld a5,16(a0) + 80007bca: 7722 ld a4,40(sp) + 80007bcc: 00f03633 snez a2,a5 + 80007bd0: 00e036b3 snez a3,a4 + 80007bd4: f83e sd a5,48(sp) + 80007bd6: 8ef1 and a3,a3,a2 + 80007bd8: 000dc703 lbu a4,0(s11) + 80007bdc: a60689e3 beqz a3,8000764e <_vfiprintf_r+0xfc> + 80007be0: 0007c683 lbu a3,0(a5) + 80007be4: a60685e3 beqz a3,8000764e <_vfiprintf_r+0xfc> + 80007be8: 400beb93 ori s7,s7,1024 + 80007bec: b48d j 8000764e <_vfiprintf_r+0xfc> + 80007bee: 000dc703 lbu a4,0(s11) + 80007bf2: 001beb93 ori s7,s7,1 + 80007bf6: bca1 j 8000764e <_vfiprintf_r+0xfc> + 80007bf8: 05714683 lbu a3,87(sp) + 80007bfc: 000dc703 lbu a4,0(s11) + 80007c00: a40697e3 bnez a3,8000764e <_vfiprintf_r+0xfc> + 80007c04: 02000693 li a3,32 + 80007c08: 04d10ba3 sb a3,87(sp) + 80007c0c: b489 j 8000764e <_vfiprintf_r+0xfc> + 80007c0e: 000dc703 lbu a4,0(s11) + 80007c12: 080beb93 ori s7,s7,128 + 80007c16: bc25 j 8000764e <_vfiprintf_r+0xfc> + 80007c18: 000dc703 lbu a4,0(s11) + 80007c1c: 02a00693 li a3,42 + 80007c20: 001d8513 addi a0,s11,1 + 80007c24: 70d70d63 beq a4,a3,8000833e <_vfiprintf_r+0xdec> + 80007c28: fd07061b addiw a2,a4,-48 + 80007c2c: 4825 li a6,9 + 80007c2e: 4581 li a1,0 + 80007c30: 8daa mv s11,a0 80007c32: 4c01 li s8,0 - 80007c34: d50ff06f j 80007184 <_vfiprintf_r+0x31a> - 80007c38: c310 sw a2,0(a4) - 80007c3a: 8ab6 mv s5,a3 - 80007c3c: abcff06f j 80006ef8 <_vfiprintf_r+0x8e> - 80007c40: 57fd li a5,-1 - 80007c42: e43e sd a5,8(sp) - 80007c44: c98ff06f j 800070dc <_vfiprintf_r+0x272> - 80007c48: 8aaa mv s5,a0 - 80007c4a: 8b9a mv s7,t1 - 80007c4c: bd79 j 80007aea <_vfiprintf_r+0xc80> - 80007c4e: 8aaa mv s5,a0 - 80007c50: 8b9a mv s7,t1 - 80007c52: e82ff06f j 800072d4 <_vfiprintf_r+0x46a> - 80007c56: 000aa703 lw a4,0(s5) - 80007c5a: 0aa1 addi s5,s5,8 - 80007c5c: 00070c1b sext.w s8,a4 - 80007c60: 00075363 bgez a4,80007c66 <_vfiprintf_r+0xdfc> - 80007c64: 5c7d li s8,-1 - 80007c66: 001dc703 lbu a4,1(s11) - 80007c6a: 8daa mv s11,a0 - 80007c6c: afaff06f j 80006f66 <_vfiprintf_r+0xfc> - 80007c70: 8a9a mv s5,t1 - 80007c72: e62ff06f j 800072d4 <_vfiprintf_r+0x46a> - 80007c76: 88de mv a7,s7 - 80007c78: ba01 j 80007588 <_vfiprintf_r+0x71e> + 80007c34: a0c86fe3 bltu a6,a2,80007652 <_vfiprintf_r+0x100> + 80007c38: 0025969b slliw a3,a1,0x2 + 80007c3c: 00054703 lbu a4,0(a0) + 80007c40: 9ead addw a3,a3,a1 + 80007c42: 0016969b slliw a3,a3,0x1 + 80007c46: 00c685bb addw a1,a3,a2 + 80007c4a: fd07061b addiw a2,a4,-48 + 80007c4e: 0505 addi a0,a0,1 + 80007c50: fec874e3 bgeu a6,a2,80007c38 <_vfiprintf_r+0x6e6> + 80007c54: 00058c1b sext.w s8,a1 + 80007c58: 4005cc63 bltz a1,80008070 <_vfiprintf_r+0xb1e> + 80007c5c: 8daa mv s11,a0 + 80007c5e: bad5 j 80007652 <_vfiprintf_r+0x100> + 80007c60: 020bf713 andi a4,s7,32 + 80007c64: 87ea mv a5,s10 + 80007c66: 010be893 ori a7,s7,16 + 80007c6a: 008a8513 addi a0,s5,8 + 80007c6e: e339 bnez a4,80007cb4 <_vfiprintf_r+0x762> + 80007c70: 04010ba3 sb zero,87(sp) + 80007c74: 000ab703 ld a4,0(s5) + 80007c78: 832a mv t1,a0 + 80007c7a: 8aaa mv s5,a0 + 80007c7c: 8bc6 mv s7,a7 + 80007c7e: d20c4fe3 bltz s8,800079bc <_vfiprintf_r+0x46a> + 80007c82: 00ec66b3 or a3,s8,a4 + 80007c86: f7f8fb93 andi s7,a7,-129 + 80007c8a: 6c069763 bnez a3,80008358 <_vfiprintf_r+0xe06> + 80007c8e: 05714703 lbu a4,87(sp) + 80007c92: 38071663 bnez a4,8000801e <_vfiprintf_r+0xacc> + 80007c96: 76c6 ld a3,112(sp) + 80007c98: 5726 lw a4,104(sp) + 80007c9a: 0048f893 andi a7,a7,4 + 80007c9e: 85b6 mv a1,a3 + 80007ca0: 863a mv a2,a4 + 80007ca2: 8a9a mv s5,t1 + 80007ca4: 4e01 li t3,0 + 80007ca6: 52089663 bnez a7,800081d2 <_vfiprintf_r+0xc80> + 80007caa: 4c01 li s8,0 + 80007cac: 0dc10d13 addi s10,sp,220 + 80007cb0: bc31 j 800076cc <_vfiprintf_r+0x17a> + 80007cb2: 88de mv a7,s7 + 80007cb4: 008a8313 addi t1,s5,8 + 80007cb8: 04010ba3 sb zero,87(sp) + 80007cbc: 000ab703 ld a4,0(s5) + 80007cc0: 8bc6 mv s7,a7 + 80007cc2: 8a9a mv s5,t1 + 80007cc4: fa0c5fe3 bgez s8,80007c82 <_vfiprintf_r+0x730> + 80007cc8: 4325 li t1,9 + 80007cca: cee37ce3 bgeu t1,a4,800079c2 <_vfiprintf_r+0x470> + 80007cce: ccccd6b7 lui a3,0xccccd + 80007cd2: ccd68693 addi a3,a3,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> + 80007cd6: 02069893 slli a7,a3,0x20 + 80007cda: 0dc10e13 addi t3,sp,220 + 80007cde: 7d42 ld s10,48(sp) + 80007ce0: 98b6 add a7,a7,a3 + 80007ce2: 8672 mv a2,t3 + 80007ce4: 400bfe93 andi t4,s7,1024 + 80007ce8: 4581 li a1,0 + 80007cea: a801 j 80007cfa <_vfiprintf_r+0x7a8> + 80007cec: 883a mv a6,a4 + 80007cee: 862a mv a2,a0 + 80007cf0: 03173733 mulhu a4,a4,a7 + 80007cf4: 830d srli a4,a4,0x3 + 80007cf6: 05037563 bgeu t1,a6,80007d40 <_vfiprintf_r+0x7ee> + 80007cfa: 03173f33 mulhu t5,a4,a7 + 80007cfe: fff60513 addi a0,a2,-1 + 80007d02: 2585 addiw a1,a1,1 + 80007d04: 883a mv a6,a4 + 80007d06: 003f5f13 srli t5,t5,0x3 + 80007d0a: 002f1693 slli a3,t5,0x2 + 80007d0e: 96fa add a3,a3,t5 + 80007d10: 0686 slli a3,a3,0x1 + 80007d12: 40d706b3 sub a3,a4,a3 + 80007d16: 0306869b addiw a3,a3,48 + 80007d1a: fed60fa3 sb a3,-1(a2) + 80007d1e: 862a mv a2,a0 + 80007d20: fc0e88e3 beqz t4,80007cf0 <_vfiprintf_r+0x79e> + 80007d24: 000d4683 lbu a3,0(s10) + 80007d28: 40b68633 sub a2,a3,a1 + 80007d2c: f0168693 addi a3,a3,-255 + 80007d30: 00163613 seqz a2,a2 + 80007d34: 00d036b3 snez a3,a3 + 80007d38: 8ef1 and a3,a3,a2 + 80007d3a: dacd beqz a3,80007cec <_vfiprintf_r+0x79a> + 80007d3c: 56e36363 bltu t1,a4,800082a2 <_vfiprintf_r+0xd50> + 80007d40: f86a sd s10,48(sp) + 80007d42: 40ae0e3b subw t3,t3,a0 + 80007d46: 8d2a mv s10,a0 + 80007d48: 8762 mv a4,s8 + 80007d4a: 01cc5363 bge s8,t3,80007d50 <_vfiprintf_r+0x7fe> + 80007d4e: 8772 mv a4,t3 + 80007d50: 05714683 lbu a3,87(sp) + 80007d54: 0007089b sext.w a7,a4 + 80007d58: 28068063 beqz a3,80007fd8 <_vfiprintf_r+0xa86> + 80007d5c: 0017089b addiw a7,a4,1 + 80007d60: aca5 j 80007fd8 <_vfiprintf_r+0xa86> + 80007d62: 411c8ebb subw t4,s9,a7 + 80007d66: 9bd059e3 blez t4,80007718 <_vfiprintf_r+0x1c6> + 80007d6a: 4f41 li t5,16 + 80007d6c: 00002317 auipc t1,0x2 + 80007d70: 5e430313 addi t1,t1,1508 # 8000a350 + 80007d74: 07df5063 bge t5,t4,80007dd4 <_vfiprintf_r+0x882> + 80007d78: e85e sd s7,16(sp) + 80007d7a: e0d6 sd s5,64(sp) + 80007d7c: 4f9d li t6,7 + 80007d7e: ec46 sd a7,24(sp) + 80007d80: f072 sd t3,32(sp) + 80007d82: 8af6 mv s5,t4 + 80007d84: 00002b97 auipc s7,0x2 + 80007d88: 5ccb8b93 addi s7,s7,1484 # 8000a350 + 80007d8c: a021 j 80007d94 <_vfiprintf_r+0x842> + 80007d8e: 3ac1 addiw s5,s5,-16 + 80007d90: 035f5c63 bge t5,s5,80007dc8 <_vfiprintf_r+0x876> + 80007d94: 06c1 addi a3,a3,16 + 80007d96: 2705 addiw a4,a4,1 + 80007d98: 0177b023 sd s7,0(a5) + 80007d9c: 01e7b423 sd t5,8(a5) + 80007da0: f8b6 sd a3,112(sp) + 80007da2: d4ba sw a4,104(sp) + 80007da4: 07c1 addi a5,a5,16 + 80007da6: feefd4e3 bge t6,a4,80007d8e <_vfiprintf_r+0x83c> + 80007daa: 1090 addi a2,sp,96 + 80007dac: 85ca mv a1,s2 + 80007dae: 854e mv a0,s3 + 80007db0: ab4fb0ef jal 80003064 <__sprint_r> + 80007db4: a00512e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007db8: 4f41 li t5,16 + 80007dba: 3ac1 addiw s5,s5,-16 + 80007dbc: 76c6 ld a3,112(sp) + 80007dbe: 5726 lw a4,104(sp) + 80007dc0: 87d2 mv a5,s4 + 80007dc2: 4f9d li t6,7 + 80007dc4: fd5f48e3 blt t5,s5,80007d94 <_vfiprintf_r+0x842> + 80007dc8: 8ed6 mv t4,s5 + 80007dca: 835e mv t1,s7 + 80007dcc: 68e2 ld a7,24(sp) + 80007dce: 7e02 ld t3,32(sp) + 80007dd0: 6a86 ld s5,64(sp) + 80007dd2: 6bc2 ld s7,16(sp) + 80007dd4: 96f6 add a3,a3,t4 + 80007dd6: 2705 addiw a4,a4,1 + 80007dd8: 0067b023 sd t1,0(a5) + 80007ddc: 01d7b423 sd t4,8(a5) + 80007de0: f8b6 sd a3,112(sp) + 80007de2: d4ba sw a4,104(sp) + 80007de4: 461d li a2,7 + 80007de6: 07c1 addi a5,a5,16 + 80007de8: 92e658e3 bge a2,a4,80007718 <_vfiprintf_r+0x1c6> + 80007dec: 1090 addi a2,sp,96 + 80007dee: 85ca mv a1,s2 + 80007df0: 854e mv a0,s3 + 80007df2: ec72 sd t3,24(sp) + 80007df4: e846 sd a7,16(sp) + 80007df6: a6efb0ef jal 80003064 <__sprint_r> + 80007dfa: 9a051fe3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007dfe: 6e62 ld t3,24(sp) + 80007e00: 76c6 ld a3,112(sp) + 80007e02: 5726 lw a4,104(sp) + 80007e04: 41cc0c3b subw s8,s8,t3 + 80007e08: 68c2 ld a7,16(sp) + 80007e0a: 87d2 mv a5,s4 + 80007e0c: 91805ae3 blez s8,80007720 <_vfiprintf_r+0x1ce> + 80007e10: 00002317 auipc t1,0x2 + 80007e14: 54030313 addi t1,t1,1344 # 8000a350 + 80007e18: 05845e63 bge s0,s8,80007e74 <_vfiprintf_r+0x922> + 80007e1c: 8656 mv a2,s5 + 80007e1e: e85e sd s7,16(sp) + 80007e20: 8ae2 mv s5,s8 + 80007e22: ec46 sd a7,24(sp) + 80007e24: f072 sd t3,32(sp) + 80007e26: 00002b97 auipc s7,0x2 + 80007e2a: 52ab8b93 addi s7,s7,1322 # 8000a350 + 80007e2e: 8c32 mv s8,a2 + 80007e30: a021 j 80007e38 <_vfiprintf_r+0x8e6> + 80007e32: 3ac1 addiw s5,s5,-16 + 80007e34: 03545963 bge s0,s5,80007e66 <_vfiprintf_r+0x914> + 80007e38: 06c1 addi a3,a3,16 + 80007e3a: 2705 addiw a4,a4,1 + 80007e3c: 0177b023 sd s7,0(a5) + 80007e40: e780 sd s0,8(a5) + 80007e42: f8b6 sd a3,112(sp) + 80007e44: d4ba sw a4,104(sp) + 80007e46: 07c1 addi a5,a5,16 + 80007e48: fee4d5e3 bge s1,a4,80007e32 <_vfiprintf_r+0x8e0> + 80007e4c: 1090 addi a2,sp,96 + 80007e4e: 85ca mv a1,s2 + 80007e50: 854e mv a0,s3 + 80007e52: a12fb0ef jal 80003064 <__sprint_r> + 80007e56: 960511e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007e5a: 3ac1 addiw s5,s5,-16 + 80007e5c: 76c6 ld a3,112(sp) + 80007e5e: 5726 lw a4,104(sp) + 80007e60: 87d2 mv a5,s4 + 80007e62: fd544be3 blt s0,s5,80007e38 <_vfiprintf_r+0x8e6> + 80007e66: 835e mv t1,s7 + 80007e68: 68e2 ld a7,24(sp) + 80007e6a: 7e02 ld t3,32(sp) + 80007e6c: 6bc2 ld s7,16(sp) + 80007e6e: 8662 mv a2,s8 + 80007e70: 8c56 mv s8,s5 + 80007e72: 8ab2 mv s5,a2 + 80007e74: 96e2 add a3,a3,s8 + 80007e76: 2705 addiw a4,a4,1 + 80007e78: 0067b023 sd t1,0(a5) + 80007e7c: 0187b423 sd s8,8(a5) + 80007e80: f8b6 sd a3,112(sp) + 80007e82: d4ba sw a4,104(sp) + 80007e84: 07c1 addi a5,a5,16 + 80007e86: 88e4dde3 bge s1,a4,80007720 <_vfiprintf_r+0x1ce> + 80007e8a: 1090 addi a2,sp,96 + 80007e8c: 85ca mv a1,s2 + 80007e8e: 854e mv a0,s3 + 80007e90: ec72 sd t3,24(sp) + 80007e92: e846 sd a7,16(sp) + 80007e94: 9d0fb0ef jal 80003064 <__sprint_r> + 80007e98: 920510e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007e9c: 76c6 ld a3,112(sp) + 80007e9e: 5726 lw a4,104(sp) + 80007ea0: 6e62 ld t3,24(sp) + 80007ea2: 87d2 mv a5,s4 + 80007ea4: 2705 addiw a4,a4,1 + 80007ea6: 96f2 add a3,a3,t3 + 80007ea8: 01a7b023 sd s10,0(a5) + 80007eac: 01c7b423 sd t3,8(a5) + 80007eb0: f8b6 sd a3,112(sp) + 80007eb2: d4ba sw a4,104(sp) + 80007eb4: 68c2 ld a7,16(sp) + 80007eb6: 07c1 addi a5,a5,16 + 80007eb8: 86e4dfe3 bge s1,a4,80007736 <_vfiprintf_r+0x1e4> + 80007ebc: 1090 addi a2,sp,96 + 80007ebe: 85ca mv a1,s2 + 80007ec0: 854e mv a0,s3 + 80007ec2: e846 sd a7,16(sp) + 80007ec4: 9a0fb0ef jal 80003064 <__sprint_r> + 80007ec8: 8e0518e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007ecc: 76c6 ld a3,112(sp) + 80007ece: 68c2 ld a7,16(sp) + 80007ed0: 87d2 mv a5,s4 + 80007ed2: b095 j 80007736 <_vfiprintf_r+0x1e4> + 80007ed4: 1090 addi a2,sp,96 + 80007ed6: 85ca mv a1,s2 + 80007ed8: 854e mv a0,s3 + 80007eda: 98afb0ef jal 80003064 <__sprint_r> + 80007ede: 86050de3 beqz a0,80007758 <_vfiprintf_r+0x206> + 80007ee2: b8d9 j 800077b8 <_vfiprintf_r+0x266> + 80007ee4: 1090 addi a2,sp,96 + 80007ee6: 85ca mv a1,s2 + 80007ee8: 854e mv a0,s3 + 80007eea: f072 sd t3,32(sp) + 80007eec: ec46 sd a7,24(sp) + 80007eee: e81a sd t1,16(sp) + 80007ef0: 974fb0ef jal 80003064 <__sprint_r> + 80007ef4: 8c0512e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007ef8: 76c6 ld a3,112(sp) + 80007efa: 5726 lw a4,104(sp) + 80007efc: 7e02 ld t3,32(sp) + 80007efe: 68e2 ld a7,24(sp) + 80007f00: 6342 ld t1,16(sp) + 80007f02: 87d2 mv a5,s4 + 80007f04: 80dff06f j 80007710 <_vfiprintf_r+0x1be> + 80007f08: 4d41 li s10,16 + 80007f0a: 5726 lw a4,104(sp) + 80007f0c: 00002317 auipc t1,0x2 + 80007f10: 45430313 addi t1,t1,1108 # 8000a360 + 80007f14: 058d5a63 bge s10,s8,80007f68 <_vfiprintf_r+0xa16> + 80007f18: ec56 sd s5,24(sp) + 80007f1a: 4b9d li s7,7 + 80007f1c: 8ae2 mv s5,s8 + 80007f1e: e846 sd a7,16(sp) + 80007f20: 00002c17 auipc s8,0x2 + 80007f24: 440c0c13 addi s8,s8,1088 # 8000a360 + 80007f28: a021 j 80007f30 <_vfiprintf_r+0x9de> + 80007f2a: 3ac1 addiw s5,s5,-16 + 80007f2c: 035d5a63 bge s10,s5,80007f60 <_vfiprintf_r+0xa0e> + 80007f30: 06c1 addi a3,a3,16 + 80007f32: 2705 addiw a4,a4,1 + 80007f34: 0187b023 sd s8,0(a5) + 80007f38: 01a7b423 sd s10,8(a5) + 80007f3c: f8b6 sd a3,112(sp) + 80007f3e: d4ba sw a4,104(sp) + 80007f40: 07c1 addi a5,a5,16 + 80007f42: feebd4e3 bge s7,a4,80007f2a <_vfiprintf_r+0x9d8> + 80007f46: 1090 addi a2,sp,96 + 80007f48: 85ca mv a1,s2 + 80007f4a: 854e mv a0,s3 + 80007f4c: 918fb0ef jal 80003064 <__sprint_r> + 80007f50: 860514e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007f54: 3ac1 addiw s5,s5,-16 + 80007f56: 76c6 ld a3,112(sp) + 80007f58: 5726 lw a4,104(sp) + 80007f5a: 87d2 mv a5,s4 + 80007f5c: fd5d4ae3 blt s10,s5,80007f30 <_vfiprintf_r+0x9de> + 80007f60: 8362 mv t1,s8 + 80007f62: 68c2 ld a7,16(sp) + 80007f64: 8c56 mv s8,s5 + 80007f66: 6ae2 ld s5,24(sp) + 80007f68: 96e2 add a3,a3,s8 + 80007f6a: 2705 addiw a4,a4,1 + 80007f6c: 0067b023 sd t1,0(a5) + 80007f70: 0187b423 sd s8,8(a5) + 80007f74: f8b6 sd a3,112(sp) + 80007f76: d4ba sw a4,104(sp) + 80007f78: 479d li a5,7 + 80007f7a: fce7d663 bge a5,a4,80007746 <_vfiprintf_r+0x1f4> + 80007f7e: 1090 addi a2,sp,96 + 80007f80: 85ca mv a1,s2 + 80007f82: 854e mv a0,s3 + 80007f84: e846 sd a7,16(sp) + 80007f86: 8defb0ef jal 80003064 <__sprint_r> + 80007f8a: 820517e3 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80007f8e: 76c6 ld a3,112(sp) + 80007f90: 68c2 ld a7,16(sp) + 80007f92: fb4ff06f j 80007746 <_vfiprintf_r+0x1f4> + 80007f96: bff8fb93 andi s7,a7,-1025 + 80007f9a: 0dc10e13 addi t3,sp,220 + 80007f9e: 8d72 mv s10,t3 + 80007fa0: 0076f713 andi a4,a3,7 + 80007fa4: 866a mv a2,s10 + 80007fa6: 03070713 addi a4,a4,48 + 80007faa: 828d srli a3,a3,0x3 + 80007fac: feed0fa3 sb a4,-1(s10) + 80007fb0: 1d7d addi s10,s10,-1 + 80007fb2: f6fd bnez a3,80007fa0 <_vfiprintf_r+0xa4e> + 80007fb4: fd070713 addi a4,a4,-48 + 80007fb8: 00e03733 snez a4,a4 + 80007fbc: 00ebf733 and a4,s7,a4 + 80007fc0: 03000693 li a3,48 + 80007fc4: 1a071e63 bnez a4,80008180 <_vfiprintf_r+0xc2e> + 80007fc8: 41ae0e3b subw t3,t3,s10 + 80007fcc: 000c089b sext.w a7,s8 + 80007fd0: 01cc5463 bge s8,t3,80007fd8 <_vfiprintf_r+0xa86> + 80007fd4: 000e089b sext.w a7,t3 + 80007fd8: 76c6 ld a3,112(sp) + 80007fda: 5726 lw a4,104(sp) + 80007fdc: 084bf313 andi t1,s7,132 + 80007fe0: 85b6 mv a1,a3 + 80007fe2: 863a mv a2,a4 + 80007fe4: ee030463 beqz t1,800076cc <_vfiprintf_r+0x17a> + 80007fe8: 05714603 lbu a2,87(sp) + 80007fec: 4f01 li t5,0 + 80007fee: ee061863 bnez a2,800076de <_vfiprintf_r+0x18c> + 80007ff2: f1eff06f j 80007710 <_vfiprintf_r+0x1be> + 80007ff6: 000dc703 lbu a4,0(s11) + 80007ffa: 0aa1 addi s5,s5,8 + 80007ffc: e52ff06f j 8000764e <_vfiprintf_r+0xfc> + 80008000: 4f09 li t5,2 + 80008002: b059 j 80007888 <_vfiprintf_r+0x336> + 80008004: 4301 li t1,0 + 80008006: ed8ff06f j 800076de <_vfiprintf_r+0x18c> + 8000800a: 88de mv a7,s7 + 8000800c: beb9 j 80007b6a <_vfiprintf_r+0x618> + 8000800e: 885e mv a6,s7 + 80008010: 000ab683 ld a3,0(s5) + 80008014: 8bc2 mv s7,a6 + 80008016: 8aaa mv s5,a0 + 80008018: 8736 mv a4,a3 + 8000801a: 82bff06f j 80007844 <_vfiprintf_r+0x2f2> + 8000801e: 8a9a mv s5,t1 + 80008020: 4e01 li t3,0 + 80008022: 4c01 li s8,0 + 80008024: 0dc10d13 addi s10,sp,220 + 80008028: 4885 li a7,1 + 8000802a: b089 j 8000786c <_vfiprintf_r+0x31a> + 8000802c: 8aaa mv s5,a0 + 8000802e: 4309 li t1,2 + 80008030: 4501 li a0,0 + 80008032: 00002617 auipc a2,0x2 + 80008036: c1660613 addi a2,a2,-1002 # 80009c48 <__clzdi2+0x586> + 8000803a: 0dc10e13 addi t3,sp,220 + 8000803e: 8d72 mv s10,t3 + 80008040: 00f6f713 andi a4,a3,15 + 80008044: 9732 add a4,a4,a2 + 80008046: 00074703 lbu a4,0(a4) + 8000804a: 8291 srli a3,a3,0x4 + 8000804c: 1d7d addi s10,s10,-1 + 8000804e: 00ed0023 sb a4,0(s10) + 80008052: f6fd bnez a3,80008040 <_vfiprintf_r+0xaee> + 80008054: 41ae0e3b subw t3,t3,s10 + 80008058: 000c089b sext.w a7,s8 + 8000805c: a7cc52e3 bge s8,t3,80007ac0 <_vfiprintf_r+0x56e> + 80008060: 000e089b sext.w a7,t3 + 80008064: bcb1 j 80007ac0 <_vfiprintf_r+0x56e> + 80008066: 4e01 li t3,0 + 80008068: 4c01 li s8,0 + 8000806a: 0dc10d13 addi s10,sp,220 + 8000806e: b7ad j 80007fd8 <_vfiprintf_r+0xa86> + 80008070: 5c7d li s8,-1 + 80008072: 8daa mv s11,a0 + 80008074: ddeff06f j 80007652 <_vfiprintf_r+0x100> + 80008078: 020bf693 andi a3,s7,32 + 8000807c: 87ea mv a5,s10 + 8000807e: 00002617 auipc a2,0x2 + 80008082: be260613 addi a2,a2,-1054 # 80009c60 <__clzdi2+0x59e> + 80008086: 008a8513 addi a0,s5,8 + 8000808a: e6a1 bnez a3,800080d2 <_vfiprintf_r+0xb80> + 8000808c: 010bf693 andi a3,s7,16 + 80008090: e2a9 bnez a3,800080d2 <_vfiprintf_r+0xb80> + 80008092: 040bf693 andi a3,s7,64 + 80008096: 16068963 beqz a3,80008208 <_vfiprintf_r+0xcb6> + 8000809a: 000ad683 lhu a3,0(s5) + 8000809e: 00d035b3 snez a1,a3 + 800080a2: 00bbf8b3 and a7,s7,a1 + 800080a6: 02089e63 bnez a7,800080e2 <_vfiprintf_r+0xb90> + 800080aa: 04010ba3 sb zero,87(sp) + 800080ae: bffbfb93 andi s7,s7,-1025 + 800080b2: 4301 li t1,0 + 800080b4: 9e0c58e3 bgez s8,80007aa4 <_vfiprintf_r+0x552> + 800080b8: 8aaa mv s5,a0 + 800080ba: 4501 li a0,0 + 800080bc: bfbd j 8000803a <_vfiprintf_r+0xae8> + 800080be: 020bf693 andi a3,s7,32 + 800080c2: 87ea mv a5,s10 + 800080c4: 00002617 auipc a2,0x2 + 800080c8: b8460613 addi a2,a2,-1148 # 80009c48 <__clzdi2+0x586> + 800080cc: 008a8513 addi a0,s5,8 + 800080d0: ded5 beqz a3,8000808c <_vfiprintf_r+0xb3a> + 800080d2: 000ab683 ld a3,0(s5) + 800080d6: 00d035b3 snez a1,a3 + 800080da: 00bbf8b3 and a7,s7,a1 + 800080de: fc0886e3 beqz a7,800080aa <_vfiprintf_r+0xb58> + 800080e2: 04e10ca3 sb a4,89(sp) + 800080e6: 03000713 li a4,48 + 800080ea: 04010ba3 sb zero,87(sp) + 800080ee: 04e10c23 sb a4,88(sp) + 800080f2: 120c5f63 bgez s8,80008230 <_vfiprintf_r+0xcde> + 800080f6: bffbf813 andi a6,s7,-1025 + 800080fa: 8aaa mv s5,a0 + 800080fc: 00286b93 ori s7,a6,2 + 80008100: 4501 li a0,0 + 80008102: 4309 li t1,2 + 80008104: bf1d j 8000803a <_vfiprintf_r+0xae8> + 80008106: 856a mv a0,s10 + 80008108: 800fc0ef jal 80004108 + 8000810c: 00050e1b sext.w t3,a0 + 80008110: 67c2 ld a5,16(sp) + 80008112: 8772 mv a4,t3 + 80008114: 000e5363 bgez t3,8000811a <_vfiprintf_r+0xbc8> + 80008118: 4701 li a4,0 + 8000811a: 05714683 lbu a3,87(sp) + 8000811e: 0007089b sext.w a7,a4 + 80008122: ca81 beqz a3,80008132 <_vfiprintf_r+0xbe0> + 80008124: 0017089b addiw a7,a4,1 + 80008128: 4c01 li s8,0 + 8000812a: f42ff06f j 8000786c <_vfiprintf_r+0x31a> + 8000812e: 8e62 mv t3,s8 + 80008130: 88e2 mv a7,s8 + 80008132: 4c01 li s8,0 + 80008134: d88ff06f j 800076bc <_vfiprintf_r+0x16a> + 80008138: 200bf713 andi a4,s7,512 + 8000813c: 04010ba3 sb zero,87(sp) + 80008140: 12071463 bnez a4,80008268 <_vfiprintf_r+0xd16> + 80008144: 000ae703 lwu a4,0(s5) + 80008148: 8e0c5ce3 bgez s8,80007a40 <_vfiprintf_r+0x4ee> + 8000814c: 8aaa mv s5,a0 + 8000814e: b0bd j 800079bc <_vfiprintf_r+0x46a> + 80008150: 1090 addi a2,sp,96 + 80008152: 85ca mv a1,s2 + 80008154: 854e mv a0,s3 + 80008156: f072 sd t3,32(sp) + 80008158: ec46 sd a7,24(sp) + 8000815a: e87a sd t5,16(sp) + 8000815c: f09fa0ef jal 80003064 <__sprint_r> + 80008160: 832a mv t1,a0 + 80008162: e4051b63 bnez a0,800077b8 <_vfiprintf_r+0x266> + 80008166: 05714783 lbu a5,87(sp) + 8000816a: 76c6 ld a3,112(sp) + 8000816c: 5726 lw a4,104(sp) + 8000816e: 6f42 ld t5,16(sp) + 80008170: 68e2 ld a7,24(sp) + 80008172: 7e02 ld t3,32(sp) + 80008174: e3c5 bnez a5,80008214 <_vfiprintf_r+0xcc2> + 80008176: 87d2 mv a5,s4 + 80008178: d80f1163 bnez t5,800076fa <_vfiprintf_r+0x1a8> + 8000817c: d9cff06f j 80007718 <_vfiprintf_r+0x1c6> + 80008180: 1679 addi a2,a2,-2 + 80008182: 40ce0e3b subw t3,t3,a2 + 80008186: fedd0fa3 sb a3,-1(s10) + 8000818a: 000c089b sext.w a7,s8 + 8000818e: 01cc5463 bge s8,t3,80008196 <_vfiprintf_r+0xc44> + 80008192: 000e089b sext.w a7,t3 + 80008196: 8d32 mv s10,a2 + 80008198: b581 j 80007fd8 <_vfiprintf_r+0xa86> + 8000819a: a46fb0ef jal 800033e0 <__sinit> + 8000819e: bd0ff06f j 8000756e <_vfiprintf_r+0x1c> + 800081a2: 001dc703 lbu a4,1(s11) + 800081a6: 200beb93 ori s7,s7,512 + 800081aa: 0d85 addi s11,s11,1 + 800081ac: ca2ff06f j 8000764e <_vfiprintf_r+0xfc> + 800081b0: 001dc703 lbu a4,1(s11) + 800081b4: 020beb93 ori s7,s7,32 + 800081b8: 0d85 addi s11,s11,1 + 800081ba: c94ff06f j 8000764e <_vfiprintf_r+0xfc> + 800081be: 76c6 ld a3,112(sp) + 800081c0: 5726 lw a4,104(sp) + 800081c2: 004bf893 andi a7,s7,4 + 800081c6: 85b6 mv a1,a3 + 800081c8: 863a mv a2,a4 + 800081ca: 8baa mv s7,a0 + 800081cc: 4e01 li t3,0 + 800081ce: ac088ee3 beqz a7,80007caa <_vfiprintf_r+0x758> + 800081d2: 4881 li a7,0 + 800081d4: 4c01 li s8,0 + 800081d6: 0dc10d13 addi s10,sp,220 + 800081da: d3eff06f j 80007718 <_vfiprintf_r+0x1c6> + 800081de: 4719 li a4,6 + 800081e0: 000c089b sext.w a7,s8 + 800081e4: 05876f63 bltu a4,s8,80008242 <_vfiprintf_r+0xcf0> + 800081e8: 8e46 mv t3,a7 + 800081ea: 4c01 li s8,0 + 800081ec: 00002d17 auipc s10,0x2 + 800081f0: a8cd0d13 addi s10,s10,-1396 # 80009c78 <__clzdi2+0x5b6> + 800081f4: cc8ff06f j 800076bc <_vfiprintf_r+0x16a> + 800081f8: 200bf713 andi a4,s7,512 + 800081fc: c741 beqz a4,80008284 <_vfiprintf_r+0xd32> + 800081fe: 000ac683 lbu a3,0(s5) + 80008202: 88de mv a7,s7 + 80008204: 8aaa mv s5,a0 + 80008206: b2ad j 80007b70 <_vfiprintf_r+0x61e> + 80008208: 200bf693 andi a3,s7,512 + 8000820c: caad beqz a3,8000827e <_vfiprintf_r+0xd2c> + 8000820e: 000ac683 lbu a3,0(s5) + 80008212: b571 j 8000809e <_vfiprintf_r+0xb4c> + 80008214: 87d2 mv a5,s4 + 80008216: cc8ff06f j 800076de <_vfiprintf_r+0x18c> + 8000821a: 200bf693 andi a3,s7,512 + 8000821e: cea1 beqz a3,80008276 <_vfiprintf_r+0xd24> + 80008220: 0187171b slliw a4,a4,0x18 + 80008224: 4187571b sraiw a4,a4,0x18 + 80008228: 8aaa mv s5,a0 + 8000822a: 86ba mv a3,a4 + 8000822c: e18ff06f j 80007844 <_vfiprintf_r+0x2f2> + 80008230: b7fbf813 andi a6,s7,-1153 + 80008234: 00286b93 ori s7,a6,2 + 80008238: 8aaa mv s5,a0 + 8000823a: 4309 li t1,2 + 8000823c: 05714503 lbu a0,87(sp) + 80008240: bbed j 8000803a <_vfiprintf_r+0xae8> + 80008242: 0007089b sext.w a7,a4 + 80008246: b74d j 800081e8 <_vfiprintf_r+0xc96> + 80008248: 8aaa mv s5,a0 + 8000824a: 8b9a mv s7,t1 + 8000824c: 4c01 li s8,0 + 8000824e: 0dc10d13 addi s10,sp,220 + 80008252: 4885 li a7,1 + 80008254: e18ff06f j 8000786c <_vfiprintf_r+0x31a> + 80008258: 000ab703 ld a4,0(s5) + 8000825c: 6622 ld a2,8(sp) + 8000825e: 8ab6 mv s5,a3 + 80008260: 00c71023 sh a2,0(a4) + 80008264: b7cff06f j 800075e0 <_vfiprintf_r+0x8e> + 80008268: 000ac703 lbu a4,0(s5) + 8000826c: fc0c5a63 bgez s8,80007a40 <_vfiprintf_r+0x4ee> + 80008270: 8aaa mv s5,a0 + 80008272: f4aff06f j 800079bc <_vfiprintf_r+0x46a> + 80008276: 8aaa mv s5,a0 + 80008278: 86ba mv a3,a4 + 8000827a: dcaff06f j 80007844 <_vfiprintf_r+0x2f2> + 8000827e: 000ae683 lwu a3,0(s5) + 80008282: bd31 j 8000809e <_vfiprintf_r+0xb4c> + 80008284: 000ae683 lwu a3,0(s5) + 80008288: 88de mv a7,s7 + 8000828a: 8aaa mv s5,a0 + 8000828c: b0d5 j 80007b70 <_vfiprintf_r+0x61e> + 8000828e: 8baa mv s7,a0 + 80008290: f2cff06f j 800079bc <_vfiprintf_r+0x46a> + 80008294: 854e mv a0,s3 + 80008296: 1090 addi a2,sp,96 + 80008298: 85ca mv a1,s2 + 8000829a: dcbfa0ef jal 80003064 <__sprint_r> + 8000829e: d1aff06f j 800077b8 <_vfiprintf_r+0x266> + 800082a2: 7622 ld a2,40(sp) + 800082a4: 75e2 ld a1,56(sp) + 800082a6: e0f2 sd t3,64(sp) + 800082a8: 40c50833 sub a6,a0,a2 + 800082ac: 8542 mv a0,a6 + 800082ae: f83e sd a5,48(sp) + 800082b0: f03a sd a4,32(sp) + 800082b2: ec76 sd t4,24(sp) + 800082b4: e842 sd a6,16(sp) + 800082b6: edcfb0ef jal 80003992 + 800082ba: ccccd637 lui a2,0xccccd + 800082be: ccd60613 addi a2,a2,-819 # ffffffffcccccccd <_stack_top+0xffffffff4cbccccd> + 800082c2: 7702 ld a4,32(sp) + 800082c4: 02061693 slli a3,a2,0x20 + 800082c8: 96b2 add a3,a3,a2 + 800082ca: 02d73733 mulhu a4,a4,a3 + 800082ce: 001d4603 lbu a2,1(s10) + 800082d2: 6842 ld a6,16(sp) + 800082d4: 00002897 auipc a7,0x2 + 800082d8: 1c48b883 ld a7,452(a7) # 8000a498 <__clz_tab+0x128> + 800082dc: 00c03633 snez a2,a2 + 800082e0: 9d32 add s10,s10,a2 + 800082e2: 6ee2 ld t4,24(sp) + 800082e4: 77c2 ld a5,48(sp) + 800082e6: 6e06 ld t3,64(sp) + 800082e8: fff80513 addi a0,a6,-1 + 800082ec: 830d srli a4,a4,0x3 + 800082ee: 02d736b3 mulhu a3,a4,a3 + 800082f2: 4585 li a1,1 + 800082f4: 4325 li t1,9 + 800082f6: 0036d613 srli a2,a3,0x3 + 800082fa: 00261693 slli a3,a2,0x2 + 800082fe: 96b2 add a3,a3,a2 + 80008300: 0686 slli a3,a3,0x1 + 80008302: 40d706b3 sub a3,a4,a3 + 80008306: 0306869b addiw a3,a3,48 + 8000830a: fed80fa3 sb a3,-1(a6) + 8000830e: bc19 j 80007d24 <_vfiprintf_r+0x7d2> + 80008310: e0070fe3 beqz a4,8000812e <_vfiprintf_r+0xbdc> + 80008314: 001c089b addiw a7,s8,1 + 80008318: 8e62 mv t3,s8 + 8000831a: 4c01 li s8,0 + 8000831c: d50ff06f j 8000786c <_vfiprintf_r+0x31a> + 80008320: c310 sw a2,0(a4) + 80008322: 8ab6 mv s5,a3 + 80008324: abcff06f j 800075e0 <_vfiprintf_r+0x8e> + 80008328: 57fd li a5,-1 + 8000832a: e43e sd a5,8(sp) + 8000832c: c98ff06f j 800077c4 <_vfiprintf_r+0x272> + 80008330: 8aaa mv s5,a0 + 80008332: 8b9a mv s7,t1 + 80008334: bd79 j 800081d2 <_vfiprintf_r+0xc80> + 80008336: 8aaa mv s5,a0 + 80008338: 8b9a mv s7,t1 + 8000833a: e82ff06f j 800079bc <_vfiprintf_r+0x46a> + 8000833e: 000aa703 lw a4,0(s5) + 80008342: 0aa1 addi s5,s5,8 + 80008344: 00070c1b sext.w s8,a4 + 80008348: 00075363 bgez a4,8000834e <_vfiprintf_r+0xdfc> + 8000834c: 5c7d li s8,-1 + 8000834e: 001dc703 lbu a4,1(s11) + 80008352: 8daa mv s11,a0 + 80008354: afaff06f j 8000764e <_vfiprintf_r+0xfc> + 80008358: 8a9a mv s5,t1 + 8000835a: e62ff06f j 800079bc <_vfiprintf_r+0x46a> + 8000835e: 88de mv a7,s7 + 80008360: ba01 j 80007c70 <_vfiprintf_r+0x71e> -0000000080007c7a <__sbprintf>: - 80007c7a: 0105d783 lhu a5,16(a1) - 80007c7e: 0ac5ae83 lw t4,172(a1) - 80007c82: 0125de03 lhu t3,18(a1) - 80007c86: 0305b303 ld t1,48(a1) - 80007c8a: 0405b883 ld a7,64(a1) - 80007c8e: b2010113 addi sp,sp,-1248 - 80007c92: 9bf5 andi a5,a5,-3 - 80007c94: 0c010813 addi a6,sp,192 - 80007c98: 40000713 li a4,1024 - 80007c9c: 4c813823 sd s0,1232(sp) - 80007ca0: 842e mv s0,a1 - 80007ca2: 080c addi a1,sp,16 - 80007ca4: 4c913423 sd s1,1224(sp) - 80007ca8: 02f11023 sh a5,32(sp) - 80007cac: 4c113c23 sd ra,1240(sp) - 80007cb0: dc02 sw zero,56(sp) - 80007cb2: df76 sw t4,188(sp) - 80007cb4: 03c11123 sh t3,34(sp) - 80007cb8: e09a sd t1,64(sp) - 80007cba: e8c6 sd a7,80(sp) - 80007cbc: e842 sd a6,16(sp) - 80007cbe: f442 sd a6,40(sp) - 80007cc0: ce3a sw a4,28(sp) - 80007cc2: d83a sw a4,48(sp) - 80007cc4: 84aa mv s1,a0 - 80007cc6: 9a4ff0ef jal 80006e6a <_vfiprintf_r> - 80007cca: 87aa mv a5,a0 - 80007ccc: 02055763 bgez a0,80007cfa <__sbprintf+0x80> - 80007cd0: 02015703 lhu a4,32(sp) - 80007cd4: 04077713 andi a4,a4,64 - 80007cd8: c719 beqz a4,80007ce6 <__sbprintf+0x6c> - 80007cda: 01045703 lhu a4,16(s0) - 80007cde: 04076713 ori a4,a4,64 - 80007ce2: 00e41823 sh a4,16(s0) - 80007ce6: 4d813083 ld ra,1240(sp) - 80007cea: 4d013403 ld s0,1232(sp) - 80007cee: 4c813483 ld s1,1224(sp) - 80007cf2: 853e mv a0,a5 - 80007cf4: 4e010113 addi sp,sp,1248 - 80007cf8: 8082 ret - 80007cfa: e42a sd a0,8(sp) - 80007cfc: 080c addi a1,sp,16 - 80007cfe: 8526 mv a0,s1 - 80007d00: e55fa0ef jal 80002b54 <_fflush_r> - 80007d04: 67a2 ld a5,8(sp) - 80007d06: d569 beqz a0,80007cd0 <__sbprintf+0x56> - 80007d08: 57fd li a5,-1 - 80007d0a: b7d9 j 80007cd0 <__sbprintf+0x56> +0000000080008362 <__sbprintf>: + 80008362: 0105d783 lhu a5,16(a1) + 80008366: 0ac5ae83 lw t4,172(a1) + 8000836a: 0125de03 lhu t3,18(a1) + 8000836e: 0305b303 ld t1,48(a1) + 80008372: 0405b883 ld a7,64(a1) + 80008376: b2010113 addi sp,sp,-1248 + 8000837a: 9bf5 andi a5,a5,-3 + 8000837c: 0c010813 addi a6,sp,192 + 80008380: 40000713 li a4,1024 + 80008384: 4c813823 sd s0,1232(sp) + 80008388: 842e mv s0,a1 + 8000838a: 080c addi a1,sp,16 + 8000838c: 4c913423 sd s1,1224(sp) + 80008390: 02f11023 sh a5,32(sp) + 80008394: 4c113c23 sd ra,1240(sp) + 80008398: dc02 sw zero,56(sp) + 8000839a: df76 sw t4,188(sp) + 8000839c: 03c11123 sh t3,34(sp) + 800083a0: e09a sd t1,64(sp) + 800083a2: e8c6 sd a7,80(sp) + 800083a4: e842 sd a6,16(sp) + 800083a6: f442 sd a6,40(sp) + 800083a8: ce3a sw a4,28(sp) + 800083aa: d83a sw a4,48(sp) + 800083ac: 84aa mv s1,a0 + 800083ae: 9a4ff0ef jal 80007552 <_vfiprintf_r> + 800083b2: 87aa mv a5,a0 + 800083b4: 02055763 bgez a0,800083e2 <__sbprintf+0x80> + 800083b8: 02015703 lhu a4,32(sp) + 800083bc: 04077713 andi a4,a4,64 + 800083c0: c719 beqz a4,800083ce <__sbprintf+0x6c> + 800083c2: 01045703 lhu a4,16(s0) + 800083c6: 04076713 ori a4,a4,64 + 800083ca: 00e41823 sh a4,16(s0) + 800083ce: 4d813083 ld ra,1240(sp) + 800083d2: 4d013403 ld s0,1232(sp) + 800083d6: 4c813483 ld s1,1224(sp) + 800083da: 853e mv a0,a5 + 800083dc: 4e010113 addi sp,sp,1248 + 800083e0: 8082 ret + 800083e2: e42a sd a0,8(sp) + 800083e4: 080c addi a1,sp,16 + 800083e6: 8526 mv a0,s1 + 800083e8: e55fa0ef jal 8000323c <_fflush_r> + 800083ec: 67a2 ld a5,8(sp) + 800083ee: d569 beqz a0,800083b8 <__sbprintf+0x56> + 800083f0: 57fd li a5,-1 + 800083f2: b7d9 j 800083b8 <__sbprintf+0x56> -0000000080007d0c : - 80007d0c: 1141 addi sp,sp,-16 - 80007d0e: 4519 li a0,6 - 80007d10: e406 sd ra,8(sp) - 80007d12: 00a000ef jal 80007d1c - 80007d16: 4505 li a0,1 - 80007d18: c4cf80ef jal 80000164 <_exit> +00000000800083f4 : + 800083f4: 1141 addi sp,sp,-16 + 800083f6: 4519 li a0,6 + 800083f8: e406 sd ra,8(sp) + 800083fa: 00a000ef jal 80008404 + 800083fe: 4505 li a0,1 + 80008400: d69f70ef jal 80000168 <_exit> -0000000080007d1c : - 80007d1c: 47fd li a5,31 - 80007d1e: 00002817 auipc a6,0x2 - 80007d22: e3a83803 ld a6,-454(a6) # 80009b58 <_impure_ptr> - 80007d26: 04a7ec63 bltu a5,a0,80007d7e - 80007d2a: 15083783 ld a5,336(a6) - 80007d2e: 1101 addi sp,sp,-32 - 80007d30: ec06 sd ra,24(sp) - 80007d32: 862a mv a2,a0 - 80007d34: c39d beqz a5,80007d5a - 80007d36: 00351713 slli a4,a0,0x3 - 80007d3a: 97ba add a5,a5,a4 - 80007d3c: 6398 ld a4,0(a5) - 80007d3e: cf11 beqz a4,80007d5a - 80007d40: 4685 li a3,1 - 80007d42: 00d70863 beq a4,a3,80007d52 - 80007d46: 567d li a2,-1 - 80007d48: 02c70463 beq a4,a2,80007d70 - 80007d4c: 0007b023 sd zero,0(a5) - 80007d50: 9702 jalr a4 - 80007d52: 60e2 ld ra,24(sp) - 80007d54: 4501 li a0,0 - 80007d56: 6105 addi sp,sp,32 - 80007d58: 8082 ret - 80007d5a: 8542 mv a0,a6 - 80007d5c: e432 sd a2,8(sp) - 80007d5e: e042 sd a6,0(sp) - 80007d60: 05c000ef jal 80007dbc <_getpid_r> - 80007d64: 6622 ld a2,8(sp) - 80007d66: 60e2 ld ra,24(sp) - 80007d68: 85aa mv a1,a0 - 80007d6a: 6502 ld a0,0(sp) - 80007d6c: 6105 addi sp,sp,32 - 80007d6e: a829 j 80007d88 <_kill_r> - 80007d70: 60e2 ld ra,24(sp) - 80007d72: 47d9 li a5,22 - 80007d74: 00f82023 sw a5,0(a6) - 80007d78: 8536 mv a0,a3 - 80007d7a: 6105 addi sp,sp,32 - 80007d7c: 8082 ret - 80007d7e: 47d9 li a5,22 - 80007d80: 00f82023 sw a5,0(a6) - 80007d84: 557d li a0,-1 - 80007d86: 8082 ret +0000000080008404 : + 80008404: 47fd li a5,31 + 80008406: 00002817 auipc a6,0x2 + 8000840a: 10a83803 ld a6,266(a6) # 8000a510 <_impure_ptr> + 8000840e: 04a7ec63 bltu a5,a0,80008466 + 80008412: 15083783 ld a5,336(a6) + 80008416: 1101 addi sp,sp,-32 + 80008418: ec06 sd ra,24(sp) + 8000841a: 862a mv a2,a0 + 8000841c: c39d beqz a5,80008442 + 8000841e: 00351713 slli a4,a0,0x3 + 80008422: 97ba add a5,a5,a4 + 80008424: 6398 ld a4,0(a5) + 80008426: cf11 beqz a4,80008442 + 80008428: 4685 li a3,1 + 8000842a: 00d70863 beq a4,a3,8000843a + 8000842e: 567d li a2,-1 + 80008430: 02c70463 beq a4,a2,80008458 + 80008434: 0007b023 sd zero,0(a5) + 80008438: 9702 jalr a4 + 8000843a: 60e2 ld ra,24(sp) + 8000843c: 4501 li a0,0 + 8000843e: 6105 addi sp,sp,32 + 80008440: 8082 ret + 80008442: 8542 mv a0,a6 + 80008444: e432 sd a2,8(sp) + 80008446: e042 sd a6,0(sp) + 80008448: 05c000ef jal 800084a4 <_getpid_r> + 8000844c: 6622 ld a2,8(sp) + 8000844e: 60e2 ld ra,24(sp) + 80008450: 85aa mv a1,a0 + 80008452: 6502 ld a0,0(sp) + 80008454: 6105 addi sp,sp,32 + 80008456: a829 j 80008470 <_kill_r> + 80008458: 60e2 ld ra,24(sp) + 8000845a: 47d9 li a5,22 + 8000845c: 00f82023 sw a5,0(a6) + 80008460: 8536 mv a0,a3 + 80008462: 6105 addi sp,sp,32 + 80008464: 8082 ret + 80008466: 47d9 li a5,22 + 80008468: 00f82023 sw a5,0(a6) + 8000846c: 557d li a0,-1 + 8000846e: 8082 ret -0000000080007d88 <_kill_r>: - 80007d88: 87ae mv a5,a1 - 80007d8a: 1141 addi sp,sp,-16 - 80007d8c: e022 sd s0,0(sp) - 80007d8e: 85b2 mv a1,a2 - 80007d90: 842a mv s0,a0 - 80007d92: 853e mv a0,a5 - 80007d94: e406 sd ra,8(sp) - 80007d96: 3601a423 sw zero,872(gp) # 8000a6b8 - 80007d9a: bb6f80ef jal 80000150 <_kill> - 80007d9e: 57fd li a5,-1 - 80007da0: 00f50663 beq a0,a5,80007dac <_kill_r+0x24> - 80007da4: 60a2 ld ra,8(sp) - 80007da6: 6402 ld s0,0(sp) - 80007da8: 0141 addi sp,sp,16 - 80007daa: 8082 ret - 80007dac: 3681a783 lw a5,872(gp) # 8000a6b8 - 80007db0: dbf5 beqz a5,80007da4 <_kill_r+0x1c> - 80007db2: 60a2 ld ra,8(sp) - 80007db4: c01c sw a5,0(s0) - 80007db6: 6402 ld s0,0(sp) - 80007db8: 0141 addi sp,sp,16 - 80007dba: 8082 ret +0000000080008470 <_kill_r>: + 80008470: 87ae mv a5,a1 + 80008472: 1141 addi sp,sp,-16 + 80008474: e022 sd s0,0(sp) + 80008476: 85b2 mv a1,a2 + 80008478: 842a mv s0,a0 + 8000847a: 853e mv a0,a5 + 8000847c: e406 sd ra,8(sp) + 8000847e: 3801a423 sw zero,904(gp) # 8000b090 + 80008482: cd3f70ef jal 80000154 <_kill> + 80008486: 57fd li a5,-1 + 80008488: 00f50663 beq a0,a5,80008494 <_kill_r+0x24> + 8000848c: 60a2 ld ra,8(sp) + 8000848e: 6402 ld s0,0(sp) + 80008490: 0141 addi sp,sp,16 + 80008492: 8082 ret + 80008494: 3881a783 lw a5,904(gp) # 8000b090 + 80008498: dbf5 beqz a5,8000848c <_kill_r+0x1c> + 8000849a: 60a2 ld ra,8(sp) + 8000849c: c01c sw a5,0(s0) + 8000849e: 6402 ld s0,0(sp) + 800084a0: 0141 addi sp,sp,16 + 800084a2: 8082 ret -0000000080007dbc <_getpid_r>: - 80007dbc: b90f806f j 8000014c <_getpid> +00000000800084a4 <_getpid_r>: + 800084a4: cadf706f j 80000150 <_getpid> -0000000080007dc0 <__eqtf2>: - 80007dc0: 002027f3 frrm a5 - 80007dc4: 00169313 slli t1,a3,0x1 - 80007dc8: 00159713 slli a4,a1,0x1 - 80007dcc: 03135813 srli a6,t1,0x31 - 80007dd0: 6321 lui t1,0x8 - 80007dd2: 01059793 slli a5,a1,0x10 - 80007dd6: 03175893 srli a7,a4,0x31 - 80007dda: 137d addi t1,t1,-1 # 7fff - 80007ddc: 01069713 slli a4,a3,0x10 - 80007de0: 83c1 srli a5,a5,0x10 - 80007de2: 91fd srli a1,a1,0x3f - 80007de4: 8341 srli a4,a4,0x10 - 80007de6: 92fd srli a3,a3,0x3f - 80007de8: 00689963 bne a7,t1,80007dfa <__eqtf2+0x3a> - 80007dec: 00a7e333 or t1,a5,a0 - 80007df0: 00031f63 bnez t1,80007e0e <__eqtf2+0x4e> - 80007df4: 05181763 bne a6,a7,80007e42 <__eqtf2+0x82> - 80007df8: a019 j 80007dfe <__eqtf2+0x3e> - 80007dfa: 02681b63 bne a6,t1,80007e30 <__eqtf2+0x70> - 80007dfe: 00e66333 or t1,a2,a4 - 80007e02: 02030763 beqz t1,80007e30 <__eqtf2+0x70> - 80007e06: 66a1 lui a3,0x8 - 80007e08: 16fd addi a3,a3,-1 # 7fff - 80007e0a: 00d89a63 bne a7,a3,80007e1e <__eqtf2+0x5e> - 80007e0e: 8d5d or a0,a0,a5 - 80007e10: c119 beqz a0,80007e16 <__eqtf2+0x56> - 80007e12: 93bd srli a5,a5,0x2f - 80007e14: cb99 beqz a5,80007e2a <__eqtf2+0x6a> - 80007e16: 67a1 lui a5,0x8 - 80007e18: 17fd addi a5,a5,-1 # 7fff - 80007e1a: 00f81663 bne a6,a5,80007e26 <__eqtf2+0x66> - 80007e1e: 8e59 or a2,a2,a4 - 80007e20: c219 beqz a2,80007e26 <__eqtf2+0x66> - 80007e22: 933d srli a4,a4,0x2f - 80007e24: c319 beqz a4,80007e2a <__eqtf2+0x6a> - 80007e26: 4505 li a0,1 - 80007e28: 8082 ret - 80007e2a: 00186073 csrsi fflags,16 - 80007e2e: bfe5 j 80007e26 <__eqtf2+0x66> - 80007e30: 41088833 sub a6,a7,a6 - 80007e34: 8e09 sub a2,a2,a0 - 80007e36: 00c86833 or a6,a6,a2 - 80007e3a: 00081463 bnez a6,80007e42 <__eqtf2+0x82> - 80007e3e: 00e78563 beq a5,a4,80007e48 <__eqtf2+0x88> - 80007e42: 4705 li a4,1 - 80007e44: 853a mv a0,a4 - 80007e46: 8082 ret - 80007e48: 4701 li a4,0 - 80007e4a: fed58de3 beq a1,a3,80007e44 <__eqtf2+0x84> - 80007e4e: fe089ae3 bnez a7,80007e42 <__eqtf2+0x82> - 80007e52: 8fc9 or a5,a5,a0 - 80007e54: 00f03733 snez a4,a5 - 80007e58: b7f5 j 80007e44 <__eqtf2+0x84> +00000000800084a8 <__eqtf2>: + 800084a8: 002027f3 frrm a5 + 800084ac: 00169313 slli t1,a3,0x1 + 800084b0: 00159713 slli a4,a1,0x1 + 800084b4: 03135813 srli a6,t1,0x31 + 800084b8: 6321 lui t1,0x8 + 800084ba: 01059793 slli a5,a1,0x10 + 800084be: 03175893 srli a7,a4,0x31 + 800084c2: 137d addi t1,t1,-1 # 7fff + 800084c4: 01069713 slli a4,a3,0x10 + 800084c8: 83c1 srli a5,a5,0x10 + 800084ca: 91fd srli a1,a1,0x3f + 800084cc: 8341 srli a4,a4,0x10 + 800084ce: 92fd srli a3,a3,0x3f + 800084d0: 00689963 bne a7,t1,800084e2 <__eqtf2+0x3a> + 800084d4: 00a7e333 or t1,a5,a0 + 800084d8: 00031f63 bnez t1,800084f6 <__eqtf2+0x4e> + 800084dc: 05181763 bne a6,a7,8000852a <__eqtf2+0x82> + 800084e0: a019 j 800084e6 <__eqtf2+0x3e> + 800084e2: 02681b63 bne a6,t1,80008518 <__eqtf2+0x70> + 800084e6: 00e66333 or t1,a2,a4 + 800084ea: 02030763 beqz t1,80008518 <__eqtf2+0x70> + 800084ee: 66a1 lui a3,0x8 + 800084f0: 16fd addi a3,a3,-1 # 7fff + 800084f2: 00d89a63 bne a7,a3,80008506 <__eqtf2+0x5e> + 800084f6: 8d5d or a0,a0,a5 + 800084f8: c119 beqz a0,800084fe <__eqtf2+0x56> + 800084fa: 93bd srli a5,a5,0x2f + 800084fc: cb99 beqz a5,80008512 <__eqtf2+0x6a> + 800084fe: 67a1 lui a5,0x8 + 80008500: 17fd addi a5,a5,-1 # 7fff + 80008502: 00f81663 bne a6,a5,8000850e <__eqtf2+0x66> + 80008506: 8e59 or a2,a2,a4 + 80008508: c219 beqz a2,8000850e <__eqtf2+0x66> + 8000850a: 933d srli a4,a4,0x2f + 8000850c: c319 beqz a4,80008512 <__eqtf2+0x6a> + 8000850e: 4505 li a0,1 + 80008510: 8082 ret + 80008512: 00186073 csrsi fflags,16 + 80008516: bfe5 j 8000850e <__eqtf2+0x66> + 80008518: 41088833 sub a6,a7,a6 + 8000851c: 8e09 sub a2,a2,a0 + 8000851e: 00c86833 or a6,a6,a2 + 80008522: 00081463 bnez a6,8000852a <__eqtf2+0x82> + 80008526: 00e78563 beq a5,a4,80008530 <__eqtf2+0x88> + 8000852a: 4705 li a4,1 + 8000852c: 853a mv a0,a4 + 8000852e: 8082 ret + 80008530: 4701 li a4,0 + 80008532: fed58de3 beq a1,a3,8000852c <__eqtf2+0x84> + 80008536: fe089ae3 bnez a7,8000852a <__eqtf2+0x82> + 8000853a: 8fc9 or a5,a5,a0 + 8000853c: 00f03733 snez a4,a5 + 80008540: b7f5 j 8000852c <__eqtf2+0x84> -0000000080007e5a <__getf2>: - 80007e5a: 002027f3 frrm a5 - 80007e5e: 00159793 slli a5,a1,0x1 - 80007e62: 0317de13 srli t3,a5,0x31 - 80007e66: 00169793 slli a5,a3,0x1 - 80007e6a: 0317d813 srli a6,a5,0x31 - 80007e6e: 67a1 lui a5,0x8 - 80007e70: 01059713 slli a4,a1,0x10 - 80007e74: 17fd addi a5,a5,-1 # 7fff - 80007e76: 8341 srli a4,a4,0x10 - 80007e78: 91fd srli a1,a1,0x3f - 80007e7a: 03f6d313 srli t1,a3,0x3f - 80007e7e: 04fe0163 beq t3,a5,80007ec0 <__getf2+0x66> - 80007e82: 68a1 lui a7,0x8 - 80007e84: 06c2 slli a3,a3,0x10 - 80007e86: 18fd addi a7,a7,-1 # 7fff - 80007e88: 82c1 srli a3,a3,0x10 - 80007e8a: 87c2 mv a5,a6 - 80007e8c: 01181663 bne a6,a7,80007e98 <__getf2+0x3e> - 80007e90: 00c6e8b3 or a7,a3,a2 - 80007e94: 02089963 bnez a7,80007ec6 <__getf2+0x6c> - 80007e98: 4881 li a7,0 - 80007e9a: 000e1663 bnez t3,80007ea6 <__getf2+0x4c> - 80007e9e: 00a768b3 or a7,a4,a0 - 80007ea2: 0018b893 seqz a7,a7 - 80007ea6: 04081a63 bnez a6,80007efa <__getf2+0xa0> - 80007eaa: 00c6eeb3 or t4,a3,a2 - 80007eae: 02088063 beqz a7,80007ece <__getf2+0x74> - 80007eb2: 020e8263 beqz t4,80007ed6 <__getf2+0x7c> - 80007eb6: 4785 li a5,1 - 80007eb8: 00031f63 bnez t1,80007ed6 <__getf2+0x7c> - 80007ebc: 57fd li a5,-1 - 80007ebe: a821 j 80007ed6 <__getf2+0x7c> - 80007ec0: 00a767b3 or a5,a4,a0 - 80007ec4: dfdd beqz a5,80007e82 <__getf2+0x28> - 80007ec6: 00186073 csrsi fflags,16 - 80007eca: 57f9 li a5,-2 - 80007ecc: a029 j 80007ed6 <__getf2+0x7c> - 80007ece: 020e9863 bnez t4,80007efe <__getf2+0xa4> - 80007ed2: 57fd li a5,-1 - 80007ed4: cd85 beqz a1,80007f0c <__getf2+0xb2> - 80007ed6: 853e mv a0,a5 - 80007ed8: 8082 ret - 80007eda: fd0e4ee3 blt t3,a6,80007eb6 <__getf2+0x5c> - 80007ede: fee6eae3 bltu a3,a4,80007ed2 <__getf2+0x78> - 80007ee2: 00a67463 bgeu a2,a0,80007eea <__getf2+0x90> - 80007ee6: fed706e3 beq a4,a3,80007ed2 <__getf2+0x78> - 80007eea: 00c56563 bltu a0,a2,80007ef4 <__getf2+0x9a> - 80007eee: 4781 li a5,0 - 80007ef0: fed773e3 bgeu a4,a3,80007ed6 <__getf2+0x7c> - 80007ef4: 4785 li a5,1 - 80007ef6: f1e5 bnez a1,80007ed6 <__getf2+0x7c> - 80007ef8: b7d1 j 80007ebc <__getf2+0x62> - 80007efa: fa089ee3 bnez a7,80007eb6 <__getf2+0x5c> - 80007efe: fcb31ae3 bne t1,a1,80007ed2 <__getf2+0x78> - 80007f02: fdc85ce3 bge a6,t3,80007eda <__getf2+0x80> - 80007f06: 57fd li a5,-1 - 80007f08: fc0317e3 bnez t1,80007ed6 <__getf2+0x7c> - 80007f0c: 4785 li a5,1 - 80007f0e: b7e1 j 80007ed6 <__getf2+0x7c> +0000000080008542 <__getf2>: + 80008542: 002027f3 frrm a5 + 80008546: 00159793 slli a5,a1,0x1 + 8000854a: 0317de13 srli t3,a5,0x31 + 8000854e: 00169793 slli a5,a3,0x1 + 80008552: 0317d813 srli a6,a5,0x31 + 80008556: 67a1 lui a5,0x8 + 80008558: 01059713 slli a4,a1,0x10 + 8000855c: 17fd addi a5,a5,-1 # 7fff + 8000855e: 8341 srli a4,a4,0x10 + 80008560: 91fd srli a1,a1,0x3f + 80008562: 03f6d313 srli t1,a3,0x3f + 80008566: 04fe0163 beq t3,a5,800085a8 <__getf2+0x66> + 8000856a: 68a1 lui a7,0x8 + 8000856c: 06c2 slli a3,a3,0x10 + 8000856e: 18fd addi a7,a7,-1 # 7fff + 80008570: 82c1 srli a3,a3,0x10 + 80008572: 87c2 mv a5,a6 + 80008574: 01181663 bne a6,a7,80008580 <__getf2+0x3e> + 80008578: 00c6e8b3 or a7,a3,a2 + 8000857c: 02089963 bnez a7,800085ae <__getf2+0x6c> + 80008580: 4881 li a7,0 + 80008582: 000e1663 bnez t3,8000858e <__getf2+0x4c> + 80008586: 00a768b3 or a7,a4,a0 + 8000858a: 0018b893 seqz a7,a7 + 8000858e: 04081a63 bnez a6,800085e2 <__getf2+0xa0> + 80008592: 00c6eeb3 or t4,a3,a2 + 80008596: 02088063 beqz a7,800085b6 <__getf2+0x74> + 8000859a: 020e8263 beqz t4,800085be <__getf2+0x7c> + 8000859e: 4785 li a5,1 + 800085a0: 00031f63 bnez t1,800085be <__getf2+0x7c> + 800085a4: 57fd li a5,-1 + 800085a6: a821 j 800085be <__getf2+0x7c> + 800085a8: 00a767b3 or a5,a4,a0 + 800085ac: dfdd beqz a5,8000856a <__getf2+0x28> + 800085ae: 00186073 csrsi fflags,16 + 800085b2: 57f9 li a5,-2 + 800085b4: a029 j 800085be <__getf2+0x7c> + 800085b6: 020e9863 bnez t4,800085e6 <__getf2+0xa4> + 800085ba: 57fd li a5,-1 + 800085bc: cd85 beqz a1,800085f4 <__getf2+0xb2> + 800085be: 853e mv a0,a5 + 800085c0: 8082 ret + 800085c2: fd0e4ee3 blt t3,a6,8000859e <__getf2+0x5c> + 800085c6: fee6eae3 bltu a3,a4,800085ba <__getf2+0x78> + 800085ca: 00a67463 bgeu a2,a0,800085d2 <__getf2+0x90> + 800085ce: fed706e3 beq a4,a3,800085ba <__getf2+0x78> + 800085d2: 00c56563 bltu a0,a2,800085dc <__getf2+0x9a> + 800085d6: 4781 li a5,0 + 800085d8: fed773e3 bgeu a4,a3,800085be <__getf2+0x7c> + 800085dc: 4785 li a5,1 + 800085de: f1e5 bnez a1,800085be <__getf2+0x7c> + 800085e0: b7d1 j 800085a4 <__getf2+0x62> + 800085e2: fa089ee3 bnez a7,8000859e <__getf2+0x5c> + 800085e6: fcb31ae3 bne t1,a1,800085ba <__getf2+0x78> + 800085ea: fdc85ce3 bge a6,t3,800085c2 <__getf2+0x80> + 800085ee: 57fd li a5,-1 + 800085f0: fc0317e3 bnez t1,800085be <__getf2+0x7c> + 800085f4: 4785 li a5,1 + 800085f6: b7e1 j 800085be <__getf2+0x7c> -0000000080007f10 <__letf2>: - 80007f10: 002027f3 frrm a5 - 80007f14: 00159793 slli a5,a1,0x1 - 80007f18: 0317de13 srli t3,a5,0x31 - 80007f1c: 00169793 slli a5,a3,0x1 - 80007f20: 0317d813 srli a6,a5,0x31 - 80007f24: 67a1 lui a5,0x8 - 80007f26: 01059713 slli a4,a1,0x10 - 80007f2a: 17fd addi a5,a5,-1 # 7fff - 80007f2c: 8341 srli a4,a4,0x10 - 80007f2e: 91fd srli a1,a1,0x3f - 80007f30: 03f6d313 srli t1,a3,0x3f - 80007f34: 04fe0163 beq t3,a5,80007f76 <__letf2+0x66> - 80007f38: 68a1 lui a7,0x8 - 80007f3a: 06c2 slli a3,a3,0x10 - 80007f3c: 18fd addi a7,a7,-1 # 7fff - 80007f3e: 82c1 srli a3,a3,0x10 - 80007f40: 87c2 mv a5,a6 - 80007f42: 01181663 bne a6,a7,80007f4e <__letf2+0x3e> - 80007f46: 00c6e8b3 or a7,a3,a2 - 80007f4a: 02089963 bnez a7,80007f7c <__letf2+0x6c> - 80007f4e: 4881 li a7,0 - 80007f50: 000e1663 bnez t3,80007f5c <__letf2+0x4c> - 80007f54: 00a768b3 or a7,a4,a0 - 80007f58: 0018b893 seqz a7,a7 - 80007f5c: 04081a63 bnez a6,80007fb0 <__letf2+0xa0> - 80007f60: 00c6eeb3 or t4,a3,a2 - 80007f64: 02088063 beqz a7,80007f84 <__letf2+0x74> - 80007f68: 020e8263 beqz t4,80007f8c <__letf2+0x7c> - 80007f6c: 4785 li a5,1 - 80007f6e: 00031f63 bnez t1,80007f8c <__letf2+0x7c> - 80007f72: 57fd li a5,-1 - 80007f74: a821 j 80007f8c <__letf2+0x7c> - 80007f76: 00a767b3 or a5,a4,a0 - 80007f7a: dfdd beqz a5,80007f38 <__letf2+0x28> - 80007f7c: 00186073 csrsi fflags,16 - 80007f80: 4789 li a5,2 - 80007f82: a029 j 80007f8c <__letf2+0x7c> - 80007f84: 020e9863 bnez t4,80007fb4 <__letf2+0xa4> - 80007f88: 57fd li a5,-1 - 80007f8a: cd85 beqz a1,80007fc2 <__letf2+0xb2> - 80007f8c: 853e mv a0,a5 - 80007f8e: 8082 ret - 80007f90: fd0e4ee3 blt t3,a6,80007f6c <__letf2+0x5c> - 80007f94: fee6eae3 bltu a3,a4,80007f88 <__letf2+0x78> - 80007f98: 00a67463 bgeu a2,a0,80007fa0 <__letf2+0x90> - 80007f9c: fed706e3 beq a4,a3,80007f88 <__letf2+0x78> - 80007fa0: 00c56563 bltu a0,a2,80007faa <__letf2+0x9a> - 80007fa4: 4781 li a5,0 - 80007fa6: fed773e3 bgeu a4,a3,80007f8c <__letf2+0x7c> - 80007faa: 4785 li a5,1 - 80007fac: f1e5 bnez a1,80007f8c <__letf2+0x7c> - 80007fae: b7d1 j 80007f72 <__letf2+0x62> - 80007fb0: fa089ee3 bnez a7,80007f6c <__letf2+0x5c> - 80007fb4: fcb31ae3 bne t1,a1,80007f88 <__letf2+0x78> - 80007fb8: fdc85ce3 bge a6,t3,80007f90 <__letf2+0x80> - 80007fbc: 57fd li a5,-1 - 80007fbe: fc0317e3 bnez t1,80007f8c <__letf2+0x7c> - 80007fc2: 4785 li a5,1 - 80007fc4: b7e1 j 80007f8c <__letf2+0x7c> +00000000800085f8 <__letf2>: + 800085f8: 002027f3 frrm a5 + 800085fc: 00159793 slli a5,a1,0x1 + 80008600: 0317de13 srli t3,a5,0x31 + 80008604: 00169793 slli a5,a3,0x1 + 80008608: 0317d813 srli a6,a5,0x31 + 8000860c: 67a1 lui a5,0x8 + 8000860e: 01059713 slli a4,a1,0x10 + 80008612: 17fd addi a5,a5,-1 # 7fff + 80008614: 8341 srli a4,a4,0x10 + 80008616: 91fd srli a1,a1,0x3f + 80008618: 03f6d313 srli t1,a3,0x3f + 8000861c: 04fe0163 beq t3,a5,8000865e <__letf2+0x66> + 80008620: 68a1 lui a7,0x8 + 80008622: 06c2 slli a3,a3,0x10 + 80008624: 18fd addi a7,a7,-1 # 7fff + 80008626: 82c1 srli a3,a3,0x10 + 80008628: 87c2 mv a5,a6 + 8000862a: 01181663 bne a6,a7,80008636 <__letf2+0x3e> + 8000862e: 00c6e8b3 or a7,a3,a2 + 80008632: 02089963 bnez a7,80008664 <__letf2+0x6c> + 80008636: 4881 li a7,0 + 80008638: 000e1663 bnez t3,80008644 <__letf2+0x4c> + 8000863c: 00a768b3 or a7,a4,a0 + 80008640: 0018b893 seqz a7,a7 + 80008644: 04081a63 bnez a6,80008698 <__letf2+0xa0> + 80008648: 00c6eeb3 or t4,a3,a2 + 8000864c: 02088063 beqz a7,8000866c <__letf2+0x74> + 80008650: 020e8263 beqz t4,80008674 <__letf2+0x7c> + 80008654: 4785 li a5,1 + 80008656: 00031f63 bnez t1,80008674 <__letf2+0x7c> + 8000865a: 57fd li a5,-1 + 8000865c: a821 j 80008674 <__letf2+0x7c> + 8000865e: 00a767b3 or a5,a4,a0 + 80008662: dfdd beqz a5,80008620 <__letf2+0x28> + 80008664: 00186073 csrsi fflags,16 + 80008668: 4789 li a5,2 + 8000866a: a029 j 80008674 <__letf2+0x7c> + 8000866c: 020e9863 bnez t4,8000869c <__letf2+0xa4> + 80008670: 57fd li a5,-1 + 80008672: cd85 beqz a1,800086aa <__letf2+0xb2> + 80008674: 853e mv a0,a5 + 80008676: 8082 ret + 80008678: fd0e4ee3 blt t3,a6,80008654 <__letf2+0x5c> + 8000867c: fee6eae3 bltu a3,a4,80008670 <__letf2+0x78> + 80008680: 00a67463 bgeu a2,a0,80008688 <__letf2+0x90> + 80008684: fed706e3 beq a4,a3,80008670 <__letf2+0x78> + 80008688: 00c56563 bltu a0,a2,80008692 <__letf2+0x9a> + 8000868c: 4781 li a5,0 + 8000868e: fed773e3 bgeu a4,a3,80008674 <__letf2+0x7c> + 80008692: 4785 li a5,1 + 80008694: f1e5 bnez a1,80008674 <__letf2+0x7c> + 80008696: b7d1 j 8000865a <__letf2+0x62> + 80008698: fa089ee3 bnez a7,80008654 <__letf2+0x5c> + 8000869c: fcb31ae3 bne t1,a1,80008670 <__letf2+0x78> + 800086a0: fdc85ce3 bge a6,t3,80008678 <__letf2+0x80> + 800086a4: 57fd li a5,-1 + 800086a6: fc0317e3 bnez t1,80008674 <__letf2+0x7c> + 800086aa: 4785 li a5,1 + 800086ac: b7e1 j 80008674 <__letf2+0x7c> -0000000080007fc6 <__multf3>: - 80007fc6: 711d addi sp,sp,-96 - 80007fc8: e8a2 sd s0,80(sp) - 80007fca: f852 sd s4,48(sp) - 80007fcc: e862 sd s8,16(sp) - 80007fce: ec86 sd ra,88(sp) - 80007fd0: e4a6 sd s1,72(sp) - 80007fd2: e0ca sd s2,64(sp) - 80007fd4: fc4e sd s3,56(sp) - 80007fd6: f456 sd s5,40(sp) - 80007fd8: f05a sd s6,32(sp) - 80007fda: ec5e sd s7,24(sp) - 80007fdc: e466 sd s9,8(sp) - 80007fde: 842a mv s0,a0 - 80007fe0: 8c32 mv s8,a2 - 80007fe2: 8a36 mv s4,a3 - 80007fe4: 002029f3 frrm s3 - 80007fe8: 00159793 slli a5,a1,0x1 - 80007fec: 01059913 slli s2,a1,0x10 - 80007ff0: 0317db13 srli s6,a5,0x31 - 80007ff4: 2981 sext.w s3,s3 - 80007ff6: 01095913 srli s2,s2,0x10 - 80007ffa: 03f5da93 srli s5,a1,0x3f - 80007ffe: 020b0763 beqz s6,8000802c <__multf3+0x66> - 80008002: 67a1 lui a5,0x8 - 80008004: 17fd addi a5,a5,-1 # 7fff - 80008006: 08fb0363 beq s6,a5,8000808c <__multf3+0xc6> - 8000800a: 090e slli s2,s2,0x3 - 8000800c: 03d55793 srli a5,a0,0x3d - 80008010: 0127e7b3 or a5,a5,s2 - 80008014: 4905 li s2,1 - 80008016: 194e slli s2,s2,0x33 - 80008018: 0127e933 or s2,a5,s2 - 8000801c: 77f1 lui a5,0xffffc - 8000801e: 0785 addi a5,a5,1 # ffffffffffffc001 <_stack_top+0xffffffff7fefc001> - 80008020: 00351b93 slli s7,a0,0x3 - 80008024: 9b3e add s6,s6,a5 - 80008026: 4c81 li s9,0 - 80008028: 4481 li s1,0 - 8000802a: a8b5 j 800080a6 <__multf3+0xe0> - 8000802c: 00a96bb3 or s7,s2,a0 - 80008030: 120b8063 beqz s7,80008150 <__multf3+0x18a> - 80008034: 02090d63 beqz s2,8000806e <__multf3+0xa8> - 80008038: 854a mv a0,s2 - 8000803a: 7a1000ef jal 80008fda <__clzdi2> - 8000803e: 2501 sext.w a0,a0 - 80008040: ff150793 addi a5,a0,-15 - 80008044: 03d00713 li a4,61 - 80008048: 0037869b addiw a3,a5,3 - 8000804c: 40f707bb subw a5,a4,a5 - 80008050: 00d91933 sll s2,s2,a3 - 80008054: 00f457b3 srl a5,s0,a5 - 80008058: 0127e7b3 or a5,a5,s2 - 8000805c: 00d41933 sll s2,s0,a3 - 80008060: 7b71 lui s6,0xffffc - 80008062: 0b45 addi s6,s6,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> - 80008064: 8bca mv s7,s2 - 80008066: 40ab0b33 sub s6,s6,a0 - 8000806a: 893e mv s2,a5 - 8000806c: bf6d j 80008026 <__multf3+0x60> - 8000806e: 76d000ef jal 80008fda <__clzdi2> - 80008072: 0405051b addiw a0,a0,64 - 80008076: ff150793 addi a5,a0,-15 - 8000807a: 03c00713 li a4,60 - 8000807e: fcf753e3 bge a4,a5,80008044 <__multf3+0x7e> - 80008082: fc37879b addiw a5,a5,-61 - 80008086: 00f417b3 sll a5,s0,a5 - 8000808a: bfd9 j 80008060 <__multf3+0x9a> - 8000808c: 00a96bb3 or s7,s2,a0 - 80008090: 0c0b8463 beqz s7,80008158 <__multf3+0x192> - 80008094: 02f95493 srli s1,s2,0x2f - 80008098: 0014b493 seqz s1,s1 - 8000809c: 0044949b slliw s1,s1,0x4 - 800080a0: 8baa mv s7,a0 - 800080a2: 2b01 sext.w s6,s6 - 800080a4: 4c8d li s9,3 - 800080a6: 001a1693 slli a3,s4,0x1 - 800080aa: 010a1413 slli s0,s4,0x10 - 800080ae: 0316d713 srli a4,a3,0x31 - 800080b2: 87e2 mv a5,s8 - 800080b4: 8041 srli s0,s0,0x10 - 800080b6: 03fa5a13 srli s4,s4,0x3f - 800080ba: c35d beqz a4,80008160 <__multf3+0x19a> - 800080bc: 66a1 lui a3,0x8 - 800080be: 16fd addi a3,a3,-1 # 7fff - 800080c0: 0ed70e63 beq a4,a3,800081bc <__multf3+0x1f6> - 800080c4: 040e slli s0,s0,0x3 - 800080c6: 03dc5693 srli a3,s8,0x3d - 800080ca: 8ec1 or a3,a3,s0 - 800080cc: 4405 li s0,1 - 800080ce: 144e slli s0,s0,0x33 - 800080d0: 8c55 or s0,s0,a3 - 800080d2: 76f1 lui a3,0xffffc - 800080d4: 0685 addi a3,a3,1 # ffffffffffffc001 <_stack_top+0xffffffff7fefc001> - 800080d6: 003c1793 slli a5,s8,0x3 - 800080da: 9736 add a4,a4,a3 - 800080dc: 4881 li a7,0 - 800080de: 002c9693 slli a3,s9,0x2 - 800080e2: 01670633 add a2,a4,s6 - 800080e6: 0116e6b3 or a3,a3,a7 - 800080ea: 472d li a4,11 - 800080ec: 00160813 addi a6,a2,1 - 800080f0: 10d74e63 blt a4,a3,8000820c <__multf3+0x246> - 800080f4: 4509 li a0,2 - 800080f6: 014ac5b3 xor a1,s5,s4 - 800080fa: 4705 li a4,1 - 800080fc: 0ed54463 blt a0,a3,800081e4 <__multf3+0x21e> - 80008100: 16fd addi a3,a3,-1 - 80008102: 10d76c63 bltu a4,a3,8000821a <__multf3+0x254> - 80008106: 8cc6 mv s9,a7 - 80008108: 4709 li a4,2 - 8000810a: 4cec8263 beq s9,a4,800085ce <__multf3+0x608> - 8000810e: 470d li a4,3 - 80008110: 2eec9763 bne s9,a4,800083fe <__multf3+0x438> - 80008114: 4705 li a4,1 - 80008116: 66a1 lui a3,0x8 - 80008118: 173e slli a4,a4,0x2f - 8000811a: 4501 li a0,0 - 8000811c: 16fd addi a3,a3,-1 # 7fff - 8000811e: 4581 li a1,0 - 80008120: 00f5979b slliw a5,a1,0xf - 80008124: 8fd5 or a5,a5,a3 - 80008126: 0742 slli a4,a4,0x10 - 80008128: 17c2 slli a5,a5,0x30 - 8000812a: 01075593 srli a1,a4,0x10 - 8000812e: 8ddd or a1,a1,a5 - 80008130: c099 beqz s1,80008136 <__multf3+0x170> - 80008132: 0014a073 csrs fflags,s1 - 80008136: 60e6 ld ra,88(sp) - 80008138: 6446 ld s0,80(sp) - 8000813a: 64a6 ld s1,72(sp) - 8000813c: 6906 ld s2,64(sp) - 8000813e: 79e2 ld s3,56(sp) - 80008140: 7a42 ld s4,48(sp) - 80008142: 7aa2 ld s5,40(sp) - 80008144: 7b02 ld s6,32(sp) - 80008146: 6be2 ld s7,24(sp) - 80008148: 6c42 ld s8,16(sp) - 8000814a: 6ca2 ld s9,8(sp) - 8000814c: 6125 addi sp,sp,96 - 8000814e: 8082 ret - 80008150: 4901 li s2,0 - 80008152: 4b01 li s6,0 - 80008154: 4c85 li s9,1 - 80008156: bdc9 j 80008028 <__multf3+0x62> - 80008158: 4901 li s2,0 - 8000815a: 2b01 sext.w s6,s6 - 8000815c: 4c89 li s9,2 - 8000815e: b5e9 j 80008028 <__multf3+0x62> - 80008160: 018467b3 or a5,s0,s8 - 80008164: c7bd beqz a5,800081d2 <__multf3+0x20c> - 80008166: c81d beqz s0,8000819c <__multf3+0x1d6> - 80008168: 8522 mv a0,s0 - 8000816a: 671000ef jal 80008fda <__clzdi2> - 8000816e: 2501 sext.w a0,a0 - 80008170: ff150793 addi a5,a0,-15 - 80008174: 03d00713 li a4,61 - 80008178: 0037861b addiw a2,a5,3 - 8000817c: 40f707bb subw a5,a4,a5 - 80008180: 00c41433 sll s0,s0,a2 - 80008184: 00fc57b3 srl a5,s8,a5 - 80008188: 0087e6b3 or a3,a5,s0 - 8000818c: 00cc1433 sll s0,s8,a2 - 80008190: 7771 lui a4,0xffffc - 80008192: 0745 addi a4,a4,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> - 80008194: 87a2 mv a5,s0 - 80008196: 8f09 sub a4,a4,a0 - 80008198: 8436 mv s0,a3 - 8000819a: b789 j 800080dc <__multf3+0x116> - 8000819c: 8562 mv a0,s8 - 8000819e: 63d000ef jal 80008fda <__clzdi2> - 800081a2: 0405051b addiw a0,a0,64 - 800081a6: ff150793 addi a5,a0,-15 - 800081aa: 03c00713 li a4,60 - 800081ae: fcf753e3 bge a4,a5,80008174 <__multf3+0x1ae> - 800081b2: fc37879b addiw a5,a5,-61 - 800081b6: 00fc16b3 sll a3,s8,a5 - 800081ba: bfd9 j 80008190 <__multf3+0x1ca> - 800081bc: 018466b3 or a3,s0,s8 - 800081c0: ce89 beqz a3,800081da <__multf3+0x214> - 800081c2: 56fd li a3,-1 - 800081c4: 82c5 srli a3,a3,0x11 - 800081c6: 2701 sext.w a4,a4 - 800081c8: 488d li a7,3 - 800081ca: f086eae3 bltu a3,s0,800080de <__multf3+0x118> - 800081ce: 44c1 li s1,16 - 800081d0: b739 j 800080de <__multf3+0x118> - 800081d2: 4401 li s0,0 - 800081d4: 4701 li a4,0 - 800081d6: 4885 li a7,1 - 800081d8: b719 j 800080de <__multf3+0x118> - 800081da: 4401 li s0,0 - 800081dc: 4781 li a5,0 - 800081de: 2701 sext.w a4,a4 - 800081e0: 4889 li a7,2 - 800081e2: bdf5 j 800080de <__multf3+0x118> - 800081e4: 00d716b3 sll a3,a4,a3 - 800081e8: 5306f513 andi a0,a3,1328 - 800081ec: e505 bnez a0,80008214 <__multf3+0x24e> - 800081ee: 6505 lui a0,0x1 - 800081f0: 88850513 addi a0,a0,-1912 # 888 - 800081f4: 8d75 and a0,a0,a3 - 800081f6: 20051263 bnez a0,800083fa <__multf3+0x434> - 800081fa: 2406f693 andi a3,a3,576 - 800081fe: ce91 beqz a3,8000821a <__multf3+0x254> - 80008200: 66a1 lui a3,0x8 - 80008202: 173e slli a4,a4,0x2f - 80008204: 16fd addi a3,a3,-1 # 7fff - 80008206: 4581 li a1,0 - 80008208: 44c1 li s1,16 - 8000820a: bf19 j 80008120 <__multf3+0x15a> - 8000820c: 47bd li a5,15 - 8000820e: f0f683e3 beq a3,a5,80008114 <__multf3+0x14e> - 80008212: 85d6 mv a1,s5 - 80008214: 844a mv s0,s2 - 80008216: 87de mv a5,s7 - 80008218: bdc5 j 80008108 <__multf3+0x142> - 8000821a: 008786b3 add a3,a5,s0 - 8000821e: 020bd513 srli a0,s7,0x20 - 80008222: 0207d893 srli a7,a5,0x20 - 80008226: 01790733 add a4,s2,s7 - 8000822a: 00f6bfb3 sltu t6,a3,a5 - 8000822e: 1b82 slli s7,s7,0x20 - 80008230: 1782 slli a5,a5,0x20 - 80008232: 020bdb93 srli s7,s7,0x20 - 80008236: 9381 srli a5,a5,0x20 - 80008238: 02fb8eb3 mul t4,s7,a5 - 8000823c: 01273f33 sltu t5,a4,s2 - 80008240: 02f507b3 mul a5,a0,a5 - 80008244: 03150533 mul a0,a0,a7 - 80008248: 037888b3 mul a7,a7,s7 - 8000824c: 00f88333 add t1,a7,a5 - 80008250: 020ed893 srli a7,t4,0x20 - 80008254: 989a add a7,a7,t1 - 80008256: 00f8f563 bgeu a7,a5,80008260 <__multf3+0x29a> - 8000825a: 4785 li a5,1 - 8000825c: 1782 slli a5,a5,0x20 - 8000825e: 953e add a0,a0,a5 - 80008260: 0208de13 srli t3,a7,0x20 - 80008264: 9e2a add t3,t3,a0 - 80008266: 1e82 slli t4,t4,0x20 - 80008268: 02071313 slli t1,a4,0x20 - 8000826c: 02069513 slli a0,a3,0x20 - 80008270: 02035313 srli t1,t1,0x20 - 80008274: 020ede93 srli t4,t4,0x20 - 80008278: 02075293 srli t0,a4,0x20 - 8000827c: 0206d793 srli a5,a3,0x20 - 80008280: 9101 srli a0,a0,0x20 - 80008282: 1882 slli a7,a7,0x20 - 80008284: 98f6 add a7,a7,t4 - 80008286: 02a30eb3 mul t4,t1,a0 - 8000828a: 02a28533 mul a0,t0,a0 - 8000828e: 02f282b3 mul t0,t0,a5 - 80008292: 026787b3 mul a5,a5,t1 - 80008296: 020ed313 srli t1,t4,0x20 - 8000829a: 97aa add a5,a5,a0 - 8000829c: 933e add t1,t1,a5 - 8000829e: 00a37563 bgeu t1,a0,800082a8 <__multf3+0x2e2> - 800082a2: 4785 li a5,1 - 800082a4: 1782 slli a5,a5,0x20 - 800082a6: 92be add t0,t0,a5 - 800082a8: 02095393 srli t2,s2,0x20 - 800082ac: 02045793 srli a5,s0,0x20 - 800082b0: 1902 slli s2,s2,0x20 - 800082b2: 1402 slli s0,s0,0x20 - 800082b4: 02095913 srli s2,s2,0x20 - 800082b8: 9001 srli s0,s0,0x20 - 800082ba: 02890a33 mul s4,s2,s0 - 800082be: 1e82 slli t4,t4,0x20 - 800082c0: 020ede93 srli t4,t4,0x20 - 800082c4: 02035513 srli a0,t1,0x20 - 800082c8: 1302 slli t1,t1,0x20 - 800082ca: 9376 add t1,t1,t4 - 800082cc: 02838433 mul s0,t2,s0 - 800082d0: 02f383b3 mul t2,t2,a5 - 800082d4: 032787b3 mul a5,a5,s2 - 800082d8: 00878eb3 add t4,a5,s0 - 800082dc: 020a5793 srli a5,s4,0x20 - 800082e0: 97f6 add a5,a5,t4 - 800082e2: 0087f563 bgeu a5,s0,800082ec <__multf3+0x326> - 800082e6: 4e85 li t4,1 - 800082e8: 1e82 slli t4,t4,0x20 - 800082ea: 93f6 add t2,t2,t4 - 800082ec: 0207de93 srli t4,a5,0x20 - 800082f0: 9e9e add t4,t4,t2 - 800082f2: 020a1393 slli t2,s4,0x20 - 800082f6: 0203d393 srli t2,t2,0x20 - 800082fa: 1782 slli a5,a5,0x20 - 800082fc: 979e add a5,a5,t2 - 800082fe: 41f003b3 neg t2,t6 - 80008302: 00777733 and a4,a4,t2 - 80008306: 41e003b3 neg t2,t5 - 8000830a: 0076f6b3 and a3,a3,t2 - 8000830e: 01c303b3 add t2,t1,t3 - 80008312: 0063b333 sltu t1,t2,t1 - 80008316: 951a add a0,a0,t1 - 80008318: 9516 add a0,a0,t0 - 8000831a: 01ff7f33 and t5,t5,t6 - 8000831e: 00653333 sltu t1,a0,t1 - 80008322: 972a add a4,a4,a0 - 80008324: 937a add t1,t1,t5 - 80008326: 00a73533 sltu a0,a4,a0 - 8000832a: 9736 add a4,a4,a3 - 8000832c: 951a add a0,a0,t1 - 8000832e: 00d736b3 sltu a3,a4,a3 - 80008332: 41c70fb3 sub t6,a4,t3 - 80008336: 96aa add a3,a3,a0 - 80008338: 40ee0e33 sub t3,t3,a4 - 8000833c: 41138533 sub a0,t2,a7 - 80008340: 00a3b333 sltu t1,t2,a0 - 80008344: 001e3e13 seqz t3,t3 - 80008348: 406f8f33 sub t5,t6,t1 - 8000834c: 01f73733 sltu a4,a4,t6 - 80008350: 01c37333 and t1,t1,t3 - 80008354: 00676733 or a4,a4,t1 - 80008358: 40f50333 sub t1,a0,a5 - 8000835c: 00653533 sltu a0,a0,t1 - 80008360: 41df0fb3 sub t6,t5,t4 - 80008364: 40a78e33 sub t3,a5,a0 - 80008368: 9e7e add t3,t3,t6 - 8000836a: 8e99 sub a3,a3,a4 - 8000836c: 00fe3733 sltu a4,t3,a5 - 80008370: 001fb793 seqz a5,t6 - 80008374: 96f6 add a3,a3,t4 - 80008376: 8d7d and a0,a0,a5 - 80008378: 01ff37b3 sltu a5,t5,t6 - 8000837c: 9736 add a4,a4,a3 - 8000837e: 8fc9 or a5,a5,a0 - 80008380: 8f1d sub a4,a4,a5 - 80008382: 00d31793 slli a5,t1,0xd - 80008386: 0117e7b3 or a5,a5,a7 - 8000838a: 00f037b3 snez a5,a5 - 8000838e: 03335313 srli t1,t1,0x33 - 80008392: 0736 slli a4,a4,0xd - 80008394: 00de1693 slli a3,t3,0xd - 80008398: 0067e7b3 or a5,a5,t1 - 8000839c: 033e5413 srli s0,t3,0x33 - 800083a0: 8fd5 or a5,a5,a3 - 800083a2: 00b71693 slli a3,a4,0xb - 800083a6: 8c59 or s0,s0,a4 - 800083a8: 0606d163 bgez a3,8000840a <__multf3+0x444> - 800083ac: 0017d713 srli a4,a5,0x1 - 800083b0: 8b85 andi a5,a5,1 - 800083b2: 8f5d or a4,a4,a5 - 800083b4: 03f41793 slli a5,s0,0x3f - 800083b8: 8fd9 or a5,a5,a4 - 800083ba: 8005 srli s0,s0,0x1 - 800083bc: 6691 lui a3,0x4 - 800083be: 16fd addi a3,a3,-1 # 3fff - 800083c0: 96c2 add a3,a3,a6 - 800083c2: 0ad05763 blez a3,80008470 <__multf3+0x4aa> - 800083c6: 0077f713 andi a4,a5,7 - 800083ca: c739 beqz a4,80008418 <__multf3+0x452> - 800083cc: 0014e493 ori s1,s1,1 - 800083d0: 4709 li a4,2 - 800083d2: 2481 sext.w s1,s1 - 800083d4: 04e98163 beq s3,a4,80008416 <__multf3+0x450> - 800083d8: 470d li a4,3 - 800083da: 02e98a63 beq s3,a4,8000840e <__multf3+0x448> - 800083de: 02099d63 bnez s3,80008418 <__multf3+0x452> - 800083e2: 00f7f713 andi a4,a5,15 - 800083e6: 4611 li a2,4 - 800083e8: 02c70863 beq a4,a2,80008418 <__multf3+0x452> - 800083ec: 00c78733 add a4,a5,a2 - 800083f0: 00f73633 sltu a2,a4,a5 - 800083f4: 9432 add s0,s0,a2 - 800083f6: 87ba mv a5,a4 - 800083f8: a005 j 80008418 <__multf3+0x452> - 800083fa: 85d2 mv a1,s4 - 800083fc: b329 j 80008106 <__multf3+0x140> - 800083fe: 4705 li a4,1 - 80008400: faec9ee3 bne s9,a4,800083bc <__multf3+0x3f6> - 80008404: 4701 li a4,0 - 80008406: 4501 li a0,0 - 80008408: aa55 j 800085bc <__multf3+0x5f6> - 8000840a: 8832 mv a6,a2 - 8000840c: bf45 j 800083bc <__multf3+0x3f6> - 8000840e: e589 bnez a1,80008418 <__multf3+0x452> - 80008410: 00878713 addi a4,a5,8 - 80008414: bff1 j 800083f0 <__multf3+0x42a> - 80008416: fded bnez a1,80008410 <__multf3+0x44a> - 80008418: 00b41713 slli a4,s0,0xb - 8000841c: 00075863 bgez a4,8000842c <__multf3+0x466> - 80008420: 577d li a4,-1 - 80008422: 1752 slli a4,a4,0x34 - 80008424: 177d addi a4,a4,-1 - 80008426: 6691 lui a3,0x4 - 80008428: 8c79 and s0,s0,a4 - 8000842a: 96c2 add a3,a3,a6 - 8000842c: 6621 lui a2,0x8 - 8000842e: ffe60713 addi a4,a2,-2 # 7ffe - 80008432: 00d74963 blt a4,a3,80008444 <__multf3+0x47e> - 80008436: 838d srli a5,a5,0x3 - 80008438: 03d41513 slli a0,s0,0x3d - 8000843c: 8d5d or a0,a0,a5 - 8000843e: 00345713 srli a4,s0,0x3 - 80008442: b9f9 j 80008120 <__multf3+0x15a> - 80008444: 4789 li a5,2 - 80008446: 02f98363 beq s3,a5,8000846c <__multf3+0x4a6> - 8000844a: 478d li a5,3 - 8000844c: 00f98863 beq s3,a5,8000845c <__multf3+0x496> - 80008450: 00099763 bnez s3,8000845e <__multf3+0x498> - 80008454: 4501 li a0,0 - 80008456: fff60693 addi a3,a2,-1 - 8000845a: a021 j 80008462 <__multf3+0x49c> - 8000845c: dde5 beqz a1,80008454 <__multf3+0x48e> - 8000845e: 557d li a0,-1 - 80008460: 86ba mv a3,a4 - 80008462: 0054e493 ori s1,s1,5 - 80008466: 2481 sext.w s1,s1 - 80008468: 872a mv a4,a0 - 8000846a: b95d j 80008120 <__multf3+0x15a> - 8000846c: f5e5 bnez a1,80008454 <__multf3+0x48e> - 8000846e: bfc5 j 8000845e <__multf3+0x498> - 80008470: eed9 bnez a3,8000850e <__multf3+0x548> - 80008472: 0077f693 andi a3,a5,7 - 80008476: 8722 mv a4,s0 - 80008478: ce85 beqz a3,800084b0 <__multf3+0x4ea> - 8000847a: 0014e493 ori s1,s1,1 - 8000847e: 4689 li a3,2 - 80008480: 2481 sext.w s1,s1 - 80008482: 02d98663 beq s3,a3,800084ae <__multf3+0x4e8> - 80008486: 468d li a3,3 - 80008488: 00d98f63 beq s3,a3,800084a6 <__multf3+0x4e0> - 8000848c: 02099263 bnez s3,800084b0 <__multf3+0x4ea> - 80008490: 00f7f693 andi a3,a5,15 - 80008494: 4611 li a2,4 - 80008496: 00c68d63 beq a3,a2,800084b0 <__multf3+0x4ea> - 8000849a: ffc7b713 sltiu a4,a5,-4 - 8000849e: 00173713 seqz a4,a4 - 800084a2: 9722 add a4,a4,s0 - 800084a4: a031 j 800084b0 <__multf3+0x4ea> - 800084a6: e589 bnez a1,800084b0 <__multf3+0x4ea> - 800084a8: ff87b713 sltiu a4,a5,-8 - 800084ac: bfcd j 8000849e <__multf3+0x4d8> - 800084ae: fded bnez a1,800084a8 <__multf3+0x4e2> - 800084b0: 9351 srli a4,a4,0x34 - 800084b2: 8b05 andi a4,a4,1 - 800084b4: 00174813 xori a6,a4,1 - 800084b8: 4705 li a4,1 - 800084ba: 04000613 li a2,64 - 800084be: 9e19 subw a2,a2,a4 - 800084c0: 00e7d533 srl a0,a5,a4 - 800084c4: 00c416b3 sll a3,s0,a2 - 800084c8: 00c79633 sll a2,a5,a2 - 800084cc: 8ec9 or a3,a3,a0 - 800084ce: 00c03633 snez a2,a2 - 800084d2: 00c6e7b3 or a5,a3,a2 - 800084d6: 00e45733 srl a4,s0,a4 - 800084da: 0077f693 andi a3,a5,7 - 800084de: c2c1 beqz a3,8000855e <__multf3+0x598> - 800084e0: 0014e493 ori s1,s1,1 - 800084e4: 4689 li a3,2 - 800084e6: 2481 sext.w s1,s1 - 800084e8: 06d98a63 beq s3,a3,8000855c <__multf3+0x596> - 800084ec: 468d li a3,3 - 800084ee: 06d98363 beq s3,a3,80008554 <__multf3+0x58e> - 800084f2: 06099663 bnez s3,8000855e <__multf3+0x598> - 800084f6: 00f7f693 andi a3,a5,15 - 800084fa: 4611 li a2,4 - 800084fc: 06c68163 beq a3,a2,8000855e <__multf3+0x598> - 80008500: 00c786b3 add a3,a5,a2 - 80008504: 00f6b633 sltu a2,a3,a5 - 80008508: 9732 add a4,a4,a2 - 8000850a: 87b6 mv a5,a3 - 8000850c: a889 j 8000855e <__multf3+0x598> - 8000850e: f8d00713 li a4,-115 - 80008512: 08e6c163 blt a3,a4,80008594 <__multf3+0x5ce> - 80008516: 4605 li a2,1 - 80008518: fc200513 li a0,-62 - 8000851c: 40d60733 sub a4,a2,a3 - 80008520: 00a6c463 blt a3,a0,80008528 <__multf3+0x562> - 80008524: 8832 mv a6,a2 - 80008526: bf51 j 800084ba <__multf3+0x4f4> - 80008528: fc07061b addiw a2,a4,-64 - 8000852c: fc100813 li a6,-63 - 80008530: 00c45633 srl a2,s0,a2 - 80008534: 4501 li a0,0 - 80008536: 01068763 beq a3,a6,80008544 <__multf3+0x57e> - 8000853a: 08000513 li a0,128 - 8000853e: 9d19 subw a0,a0,a4 - 80008540: 00a41533 sll a0,s0,a0 - 80008544: 8d5d or a0,a0,a5 - 80008546: 00a03533 snez a0,a0 - 8000854a: 00a667b3 or a5,a2,a0 - 8000854e: 4805 li a6,1 - 80008550: 4701 li a4,0 - 80008552: b761 j 800084da <__multf3+0x514> - 80008554: e589 bnez a1,8000855e <__multf3+0x598> - 80008556: 00878693 addi a3,a5,8 - 8000855a: b76d j 80008504 <__multf3+0x53e> - 8000855c: fded bnez a1,80008556 <__multf3+0x590> - 8000855e: 00c71693 slli a3,a4,0xc - 80008562: 0206d263 bgez a3,80008586 <__multf3+0x5c0> - 80008566: 0014e493 ori s1,s1,1 - 8000856a: 2481 sext.w s1,s1 - 8000856c: 4701 li a4,0 - 8000856e: 4501 li a0,0 - 80008570: 4685 li a3,1 - 80008572: ba0807e3 beqz a6,80008120 <__multf3+0x15a> - 80008576: 0014f793 andi a5,s1,1 - 8000857a: 0017979b slliw a5,a5,0x1 - 8000857e: 8fc5 or a5,a5,s1 - 80008580: 0007849b sext.w s1,a5 - 80008584: be71 j 80008120 <__multf3+0x15a> - 80008586: 03d71513 slli a0,a4,0x3d - 8000858a: 838d srli a5,a5,0x3 - 8000858c: 8d5d or a0,a0,a5 - 8000858e: 830d srli a4,a4,0x3 - 80008590: 4681 li a3,0 - 80008592: b7c5 j 80008572 <__multf3+0x5ac> - 80008594: 00f46533 or a0,s0,a5 - 80008598: cd11 beqz a0,800085b4 <__multf3+0x5ee> - 8000859a: 4789 li a5,2 - 8000859c: 0014e493 ori s1,s1,1 - 800085a0: 02f98463 beq s3,a5,800085c8 <__multf3+0x602> - 800085a4: 478d li a5,3 - 800085a6: 00f98d63 beq s3,a5,800085c0 <__multf3+0x5fa> - 800085aa: 4505 li a0,1 - 800085ac: 00099363 bnez s3,800085b2 <__multf3+0x5ec> - 800085b0: 4515 li a0,5 - 800085b2: 810d srli a0,a0,0x3 - 800085b4: 0024e493 ori s1,s1,2 - 800085b8: 2481 sext.w s1,s1 - 800085ba: 4701 li a4,0 - 800085bc: 4681 li a3,0 - 800085be: b68d j 80008120 <__multf3+0x15a> - 800085c0: 4525 li a0,9 - 800085c2: d9e5 beqz a1,800085b2 <__multf3+0x5ec> - 800085c4: 4505 li a0,1 - 800085c6: b7f5 j 800085b2 <__multf3+0x5ec> - 800085c8: 4525 li a0,9 - 800085ca: f5e5 bnez a1,800085b2 <__multf3+0x5ec> - 800085cc: bfe5 j 800085c4 <__multf3+0x5fe> - 800085ce: 66a1 lui a3,0x8 - 800085d0: 4701 li a4,0 - 800085d2: 4501 li a0,0 - 800085d4: 16fd addi a3,a3,-1 # 7fff - 800085d6: b6a9 j 80008120 <__multf3+0x15a> +00000000800086ae <__multf3>: + 800086ae: 711d addi sp,sp,-96 + 800086b0: e8a2 sd s0,80(sp) + 800086b2: f852 sd s4,48(sp) + 800086b4: e862 sd s8,16(sp) + 800086b6: ec86 sd ra,88(sp) + 800086b8: e4a6 sd s1,72(sp) + 800086ba: e0ca sd s2,64(sp) + 800086bc: fc4e sd s3,56(sp) + 800086be: f456 sd s5,40(sp) + 800086c0: f05a sd s6,32(sp) + 800086c2: ec5e sd s7,24(sp) + 800086c4: e466 sd s9,8(sp) + 800086c6: 842a mv s0,a0 + 800086c8: 8c32 mv s8,a2 + 800086ca: 8a36 mv s4,a3 + 800086cc: 002029f3 frrm s3 + 800086d0: 00159793 slli a5,a1,0x1 + 800086d4: 01059913 slli s2,a1,0x10 + 800086d8: 0317db13 srli s6,a5,0x31 + 800086dc: 2981 sext.w s3,s3 + 800086de: 01095913 srli s2,s2,0x10 + 800086e2: 03f5da93 srli s5,a1,0x3f + 800086e6: 020b0763 beqz s6,80008714 <__multf3+0x66> + 800086ea: 67a1 lui a5,0x8 + 800086ec: 17fd addi a5,a5,-1 # 7fff + 800086ee: 08fb0363 beq s6,a5,80008774 <__multf3+0xc6> + 800086f2: 090e slli s2,s2,0x3 + 800086f4: 03d55793 srli a5,a0,0x3d + 800086f8: 0127e7b3 or a5,a5,s2 + 800086fc: 4905 li s2,1 + 800086fe: 194e slli s2,s2,0x33 + 80008700: 0127e933 or s2,a5,s2 + 80008704: 77f1 lui a5,0xffffc + 80008706: 0785 addi a5,a5,1 # ffffffffffffc001 <_stack_top+0xffffffff7fefc001> + 80008708: 00351b93 slli s7,a0,0x3 + 8000870c: 9b3e add s6,s6,a5 + 8000870e: 4c81 li s9,0 + 80008710: 4481 li s1,0 + 80008712: a8b5 j 8000878e <__multf3+0xe0> + 80008714: 00a96bb3 or s7,s2,a0 + 80008718: 120b8063 beqz s7,80008838 <__multf3+0x18a> + 8000871c: 02090d63 beqz s2,80008756 <__multf3+0xa8> + 80008720: 854a mv a0,s2 + 80008722: 7a1000ef jal 800096c2 <__clzdi2> + 80008726: 2501 sext.w a0,a0 + 80008728: ff150793 addi a5,a0,-15 + 8000872c: 03d00713 li a4,61 + 80008730: 0037869b addiw a3,a5,3 + 80008734: 40f707bb subw a5,a4,a5 + 80008738: 00d91933 sll s2,s2,a3 + 8000873c: 00f457b3 srl a5,s0,a5 + 80008740: 0127e7b3 or a5,a5,s2 + 80008744: 00d41933 sll s2,s0,a3 + 80008748: 7b71 lui s6,0xffffc + 8000874a: 0b45 addi s6,s6,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> + 8000874c: 8bca mv s7,s2 + 8000874e: 40ab0b33 sub s6,s6,a0 + 80008752: 893e mv s2,a5 + 80008754: bf6d j 8000870e <__multf3+0x60> + 80008756: 76d000ef jal 800096c2 <__clzdi2> + 8000875a: 0405051b addiw a0,a0,64 + 8000875e: ff150793 addi a5,a0,-15 + 80008762: 03c00713 li a4,60 + 80008766: fcf753e3 bge a4,a5,8000872c <__multf3+0x7e> + 8000876a: fc37879b addiw a5,a5,-61 + 8000876e: 00f417b3 sll a5,s0,a5 + 80008772: bfd9 j 80008748 <__multf3+0x9a> + 80008774: 00a96bb3 or s7,s2,a0 + 80008778: 0c0b8463 beqz s7,80008840 <__multf3+0x192> + 8000877c: 02f95493 srli s1,s2,0x2f + 80008780: 0014b493 seqz s1,s1 + 80008784: 0044949b slliw s1,s1,0x4 + 80008788: 8baa mv s7,a0 + 8000878a: 2b01 sext.w s6,s6 + 8000878c: 4c8d li s9,3 + 8000878e: 001a1693 slli a3,s4,0x1 + 80008792: 010a1413 slli s0,s4,0x10 + 80008796: 0316d713 srli a4,a3,0x31 + 8000879a: 87e2 mv a5,s8 + 8000879c: 8041 srli s0,s0,0x10 + 8000879e: 03fa5a13 srli s4,s4,0x3f + 800087a2: c35d beqz a4,80008848 <__multf3+0x19a> + 800087a4: 66a1 lui a3,0x8 + 800087a6: 16fd addi a3,a3,-1 # 7fff + 800087a8: 0ed70e63 beq a4,a3,800088a4 <__multf3+0x1f6> + 800087ac: 040e slli s0,s0,0x3 + 800087ae: 03dc5693 srli a3,s8,0x3d + 800087b2: 8ec1 or a3,a3,s0 + 800087b4: 4405 li s0,1 + 800087b6: 144e slli s0,s0,0x33 + 800087b8: 8c55 or s0,s0,a3 + 800087ba: 76f1 lui a3,0xffffc + 800087bc: 0685 addi a3,a3,1 # ffffffffffffc001 <_stack_top+0xffffffff7fefc001> + 800087be: 003c1793 slli a5,s8,0x3 + 800087c2: 9736 add a4,a4,a3 + 800087c4: 4881 li a7,0 + 800087c6: 002c9693 slli a3,s9,0x2 + 800087ca: 01670633 add a2,a4,s6 + 800087ce: 0116e6b3 or a3,a3,a7 + 800087d2: 472d li a4,11 + 800087d4: 00160813 addi a6,a2,1 + 800087d8: 10d74e63 blt a4,a3,800088f4 <__multf3+0x246> + 800087dc: 4509 li a0,2 + 800087de: 014ac5b3 xor a1,s5,s4 + 800087e2: 4705 li a4,1 + 800087e4: 0ed54463 blt a0,a3,800088cc <__multf3+0x21e> + 800087e8: 16fd addi a3,a3,-1 + 800087ea: 10d76c63 bltu a4,a3,80008902 <__multf3+0x254> + 800087ee: 8cc6 mv s9,a7 + 800087f0: 4709 li a4,2 + 800087f2: 4cec8263 beq s9,a4,80008cb6 <__multf3+0x608> + 800087f6: 470d li a4,3 + 800087f8: 2eec9763 bne s9,a4,80008ae6 <__multf3+0x438> + 800087fc: 4705 li a4,1 + 800087fe: 66a1 lui a3,0x8 + 80008800: 173e slli a4,a4,0x2f + 80008802: 4501 li a0,0 + 80008804: 16fd addi a3,a3,-1 # 7fff + 80008806: 4581 li a1,0 + 80008808: 00f5979b slliw a5,a1,0xf + 8000880c: 8fd5 or a5,a5,a3 + 8000880e: 0742 slli a4,a4,0x10 + 80008810: 17c2 slli a5,a5,0x30 + 80008812: 01075593 srli a1,a4,0x10 + 80008816: 8ddd or a1,a1,a5 + 80008818: c099 beqz s1,8000881e <__multf3+0x170> + 8000881a: 0014a073 csrs fflags,s1 + 8000881e: 60e6 ld ra,88(sp) + 80008820: 6446 ld s0,80(sp) + 80008822: 64a6 ld s1,72(sp) + 80008824: 6906 ld s2,64(sp) + 80008826: 79e2 ld s3,56(sp) + 80008828: 7a42 ld s4,48(sp) + 8000882a: 7aa2 ld s5,40(sp) + 8000882c: 7b02 ld s6,32(sp) + 8000882e: 6be2 ld s7,24(sp) + 80008830: 6c42 ld s8,16(sp) + 80008832: 6ca2 ld s9,8(sp) + 80008834: 6125 addi sp,sp,96 + 80008836: 8082 ret + 80008838: 4901 li s2,0 + 8000883a: 4b01 li s6,0 + 8000883c: 4c85 li s9,1 + 8000883e: bdc9 j 80008710 <__multf3+0x62> + 80008840: 4901 li s2,0 + 80008842: 2b01 sext.w s6,s6 + 80008844: 4c89 li s9,2 + 80008846: b5e9 j 80008710 <__multf3+0x62> + 80008848: 018467b3 or a5,s0,s8 + 8000884c: c7bd beqz a5,800088ba <__multf3+0x20c> + 8000884e: c81d beqz s0,80008884 <__multf3+0x1d6> + 80008850: 8522 mv a0,s0 + 80008852: 671000ef jal 800096c2 <__clzdi2> + 80008856: 2501 sext.w a0,a0 + 80008858: ff150793 addi a5,a0,-15 + 8000885c: 03d00713 li a4,61 + 80008860: 0037861b addiw a2,a5,3 + 80008864: 40f707bb subw a5,a4,a5 + 80008868: 00c41433 sll s0,s0,a2 + 8000886c: 00fc57b3 srl a5,s8,a5 + 80008870: 0087e6b3 or a3,a5,s0 + 80008874: 00cc1433 sll s0,s8,a2 + 80008878: 7771 lui a4,0xffffc + 8000887a: 0745 addi a4,a4,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> + 8000887c: 87a2 mv a5,s0 + 8000887e: 8f09 sub a4,a4,a0 + 80008880: 8436 mv s0,a3 + 80008882: b789 j 800087c4 <__multf3+0x116> + 80008884: 8562 mv a0,s8 + 80008886: 63d000ef jal 800096c2 <__clzdi2> + 8000888a: 0405051b addiw a0,a0,64 + 8000888e: ff150793 addi a5,a0,-15 + 80008892: 03c00713 li a4,60 + 80008896: fcf753e3 bge a4,a5,8000885c <__multf3+0x1ae> + 8000889a: fc37879b addiw a5,a5,-61 + 8000889e: 00fc16b3 sll a3,s8,a5 + 800088a2: bfd9 j 80008878 <__multf3+0x1ca> + 800088a4: 018466b3 or a3,s0,s8 + 800088a8: ce89 beqz a3,800088c2 <__multf3+0x214> + 800088aa: 56fd li a3,-1 + 800088ac: 82c5 srli a3,a3,0x11 + 800088ae: 2701 sext.w a4,a4 + 800088b0: 488d li a7,3 + 800088b2: f086eae3 bltu a3,s0,800087c6 <__multf3+0x118> + 800088b6: 44c1 li s1,16 + 800088b8: b739 j 800087c6 <__multf3+0x118> + 800088ba: 4401 li s0,0 + 800088bc: 4701 li a4,0 + 800088be: 4885 li a7,1 + 800088c0: b719 j 800087c6 <__multf3+0x118> + 800088c2: 4401 li s0,0 + 800088c4: 4781 li a5,0 + 800088c6: 2701 sext.w a4,a4 + 800088c8: 4889 li a7,2 + 800088ca: bdf5 j 800087c6 <__multf3+0x118> + 800088cc: 00d716b3 sll a3,a4,a3 + 800088d0: 5306f513 andi a0,a3,1328 + 800088d4: e505 bnez a0,800088fc <__multf3+0x24e> + 800088d6: 6505 lui a0,0x1 + 800088d8: 88850513 addi a0,a0,-1912 # 888 + 800088dc: 8d75 and a0,a0,a3 + 800088de: 20051263 bnez a0,80008ae2 <__multf3+0x434> + 800088e2: 2406f693 andi a3,a3,576 + 800088e6: ce91 beqz a3,80008902 <__multf3+0x254> + 800088e8: 66a1 lui a3,0x8 + 800088ea: 173e slli a4,a4,0x2f + 800088ec: 16fd addi a3,a3,-1 # 7fff + 800088ee: 4581 li a1,0 + 800088f0: 44c1 li s1,16 + 800088f2: bf19 j 80008808 <__multf3+0x15a> + 800088f4: 47bd li a5,15 + 800088f6: f0f683e3 beq a3,a5,800087fc <__multf3+0x14e> + 800088fa: 85d6 mv a1,s5 + 800088fc: 844a mv s0,s2 + 800088fe: 87de mv a5,s7 + 80008900: bdc5 j 800087f0 <__multf3+0x142> + 80008902: 008786b3 add a3,a5,s0 + 80008906: 020bd513 srli a0,s7,0x20 + 8000890a: 0207d893 srli a7,a5,0x20 + 8000890e: 01790733 add a4,s2,s7 + 80008912: 00f6bfb3 sltu t6,a3,a5 + 80008916: 1b82 slli s7,s7,0x20 + 80008918: 1782 slli a5,a5,0x20 + 8000891a: 020bdb93 srli s7,s7,0x20 + 8000891e: 9381 srli a5,a5,0x20 + 80008920: 02fb8eb3 mul t4,s7,a5 + 80008924: 01273f33 sltu t5,a4,s2 + 80008928: 02f507b3 mul a5,a0,a5 + 8000892c: 03150533 mul a0,a0,a7 + 80008930: 037888b3 mul a7,a7,s7 + 80008934: 00f88333 add t1,a7,a5 + 80008938: 020ed893 srli a7,t4,0x20 + 8000893c: 989a add a7,a7,t1 + 8000893e: 00f8f563 bgeu a7,a5,80008948 <__multf3+0x29a> + 80008942: 4785 li a5,1 + 80008944: 1782 slli a5,a5,0x20 + 80008946: 953e add a0,a0,a5 + 80008948: 0208de13 srli t3,a7,0x20 + 8000894c: 9e2a add t3,t3,a0 + 8000894e: 1e82 slli t4,t4,0x20 + 80008950: 02071313 slli t1,a4,0x20 + 80008954: 02069513 slli a0,a3,0x20 + 80008958: 02035313 srli t1,t1,0x20 + 8000895c: 020ede93 srli t4,t4,0x20 + 80008960: 02075293 srli t0,a4,0x20 + 80008964: 0206d793 srli a5,a3,0x20 + 80008968: 9101 srli a0,a0,0x20 + 8000896a: 1882 slli a7,a7,0x20 + 8000896c: 98f6 add a7,a7,t4 + 8000896e: 02a30eb3 mul t4,t1,a0 + 80008972: 02a28533 mul a0,t0,a0 + 80008976: 02f282b3 mul t0,t0,a5 + 8000897a: 026787b3 mul a5,a5,t1 + 8000897e: 020ed313 srli t1,t4,0x20 + 80008982: 97aa add a5,a5,a0 + 80008984: 933e add t1,t1,a5 + 80008986: 00a37563 bgeu t1,a0,80008990 <__multf3+0x2e2> + 8000898a: 4785 li a5,1 + 8000898c: 1782 slli a5,a5,0x20 + 8000898e: 92be add t0,t0,a5 + 80008990: 02095393 srli t2,s2,0x20 + 80008994: 02045793 srli a5,s0,0x20 + 80008998: 1902 slli s2,s2,0x20 + 8000899a: 1402 slli s0,s0,0x20 + 8000899c: 02095913 srli s2,s2,0x20 + 800089a0: 9001 srli s0,s0,0x20 + 800089a2: 02890a33 mul s4,s2,s0 + 800089a6: 1e82 slli t4,t4,0x20 + 800089a8: 020ede93 srli t4,t4,0x20 + 800089ac: 02035513 srli a0,t1,0x20 + 800089b0: 1302 slli t1,t1,0x20 + 800089b2: 9376 add t1,t1,t4 + 800089b4: 02838433 mul s0,t2,s0 + 800089b8: 02f383b3 mul t2,t2,a5 + 800089bc: 032787b3 mul a5,a5,s2 + 800089c0: 00878eb3 add t4,a5,s0 + 800089c4: 020a5793 srli a5,s4,0x20 + 800089c8: 97f6 add a5,a5,t4 + 800089ca: 0087f563 bgeu a5,s0,800089d4 <__multf3+0x326> + 800089ce: 4e85 li t4,1 + 800089d0: 1e82 slli t4,t4,0x20 + 800089d2: 93f6 add t2,t2,t4 + 800089d4: 0207de93 srli t4,a5,0x20 + 800089d8: 9e9e add t4,t4,t2 + 800089da: 020a1393 slli t2,s4,0x20 + 800089de: 0203d393 srli t2,t2,0x20 + 800089e2: 1782 slli a5,a5,0x20 + 800089e4: 979e add a5,a5,t2 + 800089e6: 41f003b3 neg t2,t6 + 800089ea: 00777733 and a4,a4,t2 + 800089ee: 41e003b3 neg t2,t5 + 800089f2: 0076f6b3 and a3,a3,t2 + 800089f6: 01c303b3 add t2,t1,t3 + 800089fa: 0063b333 sltu t1,t2,t1 + 800089fe: 951a add a0,a0,t1 + 80008a00: 9516 add a0,a0,t0 + 80008a02: 01ff7f33 and t5,t5,t6 + 80008a06: 00653333 sltu t1,a0,t1 + 80008a0a: 972a add a4,a4,a0 + 80008a0c: 937a add t1,t1,t5 + 80008a0e: 00a73533 sltu a0,a4,a0 + 80008a12: 9736 add a4,a4,a3 + 80008a14: 951a add a0,a0,t1 + 80008a16: 00d736b3 sltu a3,a4,a3 + 80008a1a: 41c70fb3 sub t6,a4,t3 + 80008a1e: 96aa add a3,a3,a0 + 80008a20: 40ee0e33 sub t3,t3,a4 + 80008a24: 41138533 sub a0,t2,a7 + 80008a28: 00a3b333 sltu t1,t2,a0 + 80008a2c: 001e3e13 seqz t3,t3 + 80008a30: 406f8f33 sub t5,t6,t1 + 80008a34: 01f73733 sltu a4,a4,t6 + 80008a38: 01c37333 and t1,t1,t3 + 80008a3c: 00676733 or a4,a4,t1 + 80008a40: 40f50333 sub t1,a0,a5 + 80008a44: 00653533 sltu a0,a0,t1 + 80008a48: 41df0fb3 sub t6,t5,t4 + 80008a4c: 40a78e33 sub t3,a5,a0 + 80008a50: 9e7e add t3,t3,t6 + 80008a52: 8e99 sub a3,a3,a4 + 80008a54: 00fe3733 sltu a4,t3,a5 + 80008a58: 001fb793 seqz a5,t6 + 80008a5c: 96f6 add a3,a3,t4 + 80008a5e: 8d7d and a0,a0,a5 + 80008a60: 01ff37b3 sltu a5,t5,t6 + 80008a64: 9736 add a4,a4,a3 + 80008a66: 8fc9 or a5,a5,a0 + 80008a68: 8f1d sub a4,a4,a5 + 80008a6a: 00d31793 slli a5,t1,0xd + 80008a6e: 0117e7b3 or a5,a5,a7 + 80008a72: 00f037b3 snez a5,a5 + 80008a76: 03335313 srli t1,t1,0x33 + 80008a7a: 0736 slli a4,a4,0xd + 80008a7c: 00de1693 slli a3,t3,0xd + 80008a80: 0067e7b3 or a5,a5,t1 + 80008a84: 033e5413 srli s0,t3,0x33 + 80008a88: 8fd5 or a5,a5,a3 + 80008a8a: 00b71693 slli a3,a4,0xb + 80008a8e: 8c59 or s0,s0,a4 + 80008a90: 0606d163 bgez a3,80008af2 <__multf3+0x444> + 80008a94: 0017d713 srli a4,a5,0x1 + 80008a98: 8b85 andi a5,a5,1 + 80008a9a: 8f5d or a4,a4,a5 + 80008a9c: 03f41793 slli a5,s0,0x3f + 80008aa0: 8fd9 or a5,a5,a4 + 80008aa2: 8005 srli s0,s0,0x1 + 80008aa4: 6691 lui a3,0x4 + 80008aa6: 16fd addi a3,a3,-1 # 3fff + 80008aa8: 96c2 add a3,a3,a6 + 80008aaa: 0ad05763 blez a3,80008b58 <__multf3+0x4aa> + 80008aae: 0077f713 andi a4,a5,7 + 80008ab2: c739 beqz a4,80008b00 <__multf3+0x452> + 80008ab4: 0014e493 ori s1,s1,1 + 80008ab8: 4709 li a4,2 + 80008aba: 2481 sext.w s1,s1 + 80008abc: 04e98163 beq s3,a4,80008afe <__multf3+0x450> + 80008ac0: 470d li a4,3 + 80008ac2: 02e98a63 beq s3,a4,80008af6 <__multf3+0x448> + 80008ac6: 02099d63 bnez s3,80008b00 <__multf3+0x452> + 80008aca: 00f7f713 andi a4,a5,15 + 80008ace: 4611 li a2,4 + 80008ad0: 02c70863 beq a4,a2,80008b00 <__multf3+0x452> + 80008ad4: 00c78733 add a4,a5,a2 + 80008ad8: 00f73633 sltu a2,a4,a5 + 80008adc: 9432 add s0,s0,a2 + 80008ade: 87ba mv a5,a4 + 80008ae0: a005 j 80008b00 <__multf3+0x452> + 80008ae2: 85d2 mv a1,s4 + 80008ae4: b329 j 800087ee <__multf3+0x140> + 80008ae6: 4705 li a4,1 + 80008ae8: faec9ee3 bne s9,a4,80008aa4 <__multf3+0x3f6> + 80008aec: 4701 li a4,0 + 80008aee: 4501 li a0,0 + 80008af0: aa55 j 80008ca4 <__multf3+0x5f6> + 80008af2: 8832 mv a6,a2 + 80008af4: bf45 j 80008aa4 <__multf3+0x3f6> + 80008af6: e589 bnez a1,80008b00 <__multf3+0x452> + 80008af8: 00878713 addi a4,a5,8 + 80008afc: bff1 j 80008ad8 <__multf3+0x42a> + 80008afe: fded bnez a1,80008af8 <__multf3+0x44a> + 80008b00: 00b41713 slli a4,s0,0xb + 80008b04: 00075863 bgez a4,80008b14 <__multf3+0x466> + 80008b08: 577d li a4,-1 + 80008b0a: 1752 slli a4,a4,0x34 + 80008b0c: 177d addi a4,a4,-1 + 80008b0e: 6691 lui a3,0x4 + 80008b10: 8c79 and s0,s0,a4 + 80008b12: 96c2 add a3,a3,a6 + 80008b14: 6621 lui a2,0x8 + 80008b16: ffe60713 addi a4,a2,-2 # 7ffe + 80008b1a: 00d74963 blt a4,a3,80008b2c <__multf3+0x47e> + 80008b1e: 838d srli a5,a5,0x3 + 80008b20: 03d41513 slli a0,s0,0x3d + 80008b24: 8d5d or a0,a0,a5 + 80008b26: 00345713 srli a4,s0,0x3 + 80008b2a: b9f9 j 80008808 <__multf3+0x15a> + 80008b2c: 4789 li a5,2 + 80008b2e: 02f98363 beq s3,a5,80008b54 <__multf3+0x4a6> + 80008b32: 478d li a5,3 + 80008b34: 00f98863 beq s3,a5,80008b44 <__multf3+0x496> + 80008b38: 00099763 bnez s3,80008b46 <__multf3+0x498> + 80008b3c: 4501 li a0,0 + 80008b3e: fff60693 addi a3,a2,-1 + 80008b42: a021 j 80008b4a <__multf3+0x49c> + 80008b44: dde5 beqz a1,80008b3c <__multf3+0x48e> + 80008b46: 557d li a0,-1 + 80008b48: 86ba mv a3,a4 + 80008b4a: 0054e493 ori s1,s1,5 + 80008b4e: 2481 sext.w s1,s1 + 80008b50: 872a mv a4,a0 + 80008b52: b95d j 80008808 <__multf3+0x15a> + 80008b54: f5e5 bnez a1,80008b3c <__multf3+0x48e> + 80008b56: bfc5 j 80008b46 <__multf3+0x498> + 80008b58: eed9 bnez a3,80008bf6 <__multf3+0x548> + 80008b5a: 0077f693 andi a3,a5,7 + 80008b5e: 8722 mv a4,s0 + 80008b60: ce85 beqz a3,80008b98 <__multf3+0x4ea> + 80008b62: 0014e493 ori s1,s1,1 + 80008b66: 4689 li a3,2 + 80008b68: 2481 sext.w s1,s1 + 80008b6a: 02d98663 beq s3,a3,80008b96 <__multf3+0x4e8> + 80008b6e: 468d li a3,3 + 80008b70: 00d98f63 beq s3,a3,80008b8e <__multf3+0x4e0> + 80008b74: 02099263 bnez s3,80008b98 <__multf3+0x4ea> + 80008b78: 00f7f693 andi a3,a5,15 + 80008b7c: 4611 li a2,4 + 80008b7e: 00c68d63 beq a3,a2,80008b98 <__multf3+0x4ea> + 80008b82: ffc7b713 sltiu a4,a5,-4 + 80008b86: 00173713 seqz a4,a4 + 80008b8a: 9722 add a4,a4,s0 + 80008b8c: a031 j 80008b98 <__multf3+0x4ea> + 80008b8e: e589 bnez a1,80008b98 <__multf3+0x4ea> + 80008b90: ff87b713 sltiu a4,a5,-8 + 80008b94: bfcd j 80008b86 <__multf3+0x4d8> + 80008b96: fded bnez a1,80008b90 <__multf3+0x4e2> + 80008b98: 9351 srli a4,a4,0x34 + 80008b9a: 8b05 andi a4,a4,1 + 80008b9c: 00174813 xori a6,a4,1 + 80008ba0: 4705 li a4,1 + 80008ba2: 04000613 li a2,64 + 80008ba6: 9e19 subw a2,a2,a4 + 80008ba8: 00e7d533 srl a0,a5,a4 + 80008bac: 00c416b3 sll a3,s0,a2 + 80008bb0: 00c79633 sll a2,a5,a2 + 80008bb4: 8ec9 or a3,a3,a0 + 80008bb6: 00c03633 snez a2,a2 + 80008bba: 00c6e7b3 or a5,a3,a2 + 80008bbe: 00e45733 srl a4,s0,a4 + 80008bc2: 0077f693 andi a3,a5,7 + 80008bc6: c2c1 beqz a3,80008c46 <__multf3+0x598> + 80008bc8: 0014e493 ori s1,s1,1 + 80008bcc: 4689 li a3,2 + 80008bce: 2481 sext.w s1,s1 + 80008bd0: 06d98a63 beq s3,a3,80008c44 <__multf3+0x596> + 80008bd4: 468d li a3,3 + 80008bd6: 06d98363 beq s3,a3,80008c3c <__multf3+0x58e> + 80008bda: 06099663 bnez s3,80008c46 <__multf3+0x598> + 80008bde: 00f7f693 andi a3,a5,15 + 80008be2: 4611 li a2,4 + 80008be4: 06c68163 beq a3,a2,80008c46 <__multf3+0x598> + 80008be8: 00c786b3 add a3,a5,a2 + 80008bec: 00f6b633 sltu a2,a3,a5 + 80008bf0: 9732 add a4,a4,a2 + 80008bf2: 87b6 mv a5,a3 + 80008bf4: a889 j 80008c46 <__multf3+0x598> + 80008bf6: f8d00713 li a4,-115 + 80008bfa: 08e6c163 blt a3,a4,80008c7c <__multf3+0x5ce> + 80008bfe: 4605 li a2,1 + 80008c00: fc200513 li a0,-62 + 80008c04: 40d60733 sub a4,a2,a3 + 80008c08: 00a6c463 blt a3,a0,80008c10 <__multf3+0x562> + 80008c0c: 8832 mv a6,a2 + 80008c0e: bf51 j 80008ba2 <__multf3+0x4f4> + 80008c10: fc07061b addiw a2,a4,-64 + 80008c14: fc100813 li a6,-63 + 80008c18: 00c45633 srl a2,s0,a2 + 80008c1c: 4501 li a0,0 + 80008c1e: 01068763 beq a3,a6,80008c2c <__multf3+0x57e> + 80008c22: 08000513 li a0,128 + 80008c26: 9d19 subw a0,a0,a4 + 80008c28: 00a41533 sll a0,s0,a0 + 80008c2c: 8d5d or a0,a0,a5 + 80008c2e: 00a03533 snez a0,a0 + 80008c32: 00a667b3 or a5,a2,a0 + 80008c36: 4805 li a6,1 + 80008c38: 4701 li a4,0 + 80008c3a: b761 j 80008bc2 <__multf3+0x514> + 80008c3c: e589 bnez a1,80008c46 <__multf3+0x598> + 80008c3e: 00878693 addi a3,a5,8 + 80008c42: b76d j 80008bec <__multf3+0x53e> + 80008c44: fded bnez a1,80008c3e <__multf3+0x590> + 80008c46: 00c71693 slli a3,a4,0xc + 80008c4a: 0206d263 bgez a3,80008c6e <__multf3+0x5c0> + 80008c4e: 0014e493 ori s1,s1,1 + 80008c52: 2481 sext.w s1,s1 + 80008c54: 4701 li a4,0 + 80008c56: 4501 li a0,0 + 80008c58: 4685 li a3,1 + 80008c5a: ba0807e3 beqz a6,80008808 <__multf3+0x15a> + 80008c5e: 0014f793 andi a5,s1,1 + 80008c62: 0017979b slliw a5,a5,0x1 + 80008c66: 8fc5 or a5,a5,s1 + 80008c68: 0007849b sext.w s1,a5 + 80008c6c: be71 j 80008808 <__multf3+0x15a> + 80008c6e: 03d71513 slli a0,a4,0x3d + 80008c72: 838d srli a5,a5,0x3 + 80008c74: 8d5d or a0,a0,a5 + 80008c76: 830d srli a4,a4,0x3 + 80008c78: 4681 li a3,0 + 80008c7a: b7c5 j 80008c5a <__multf3+0x5ac> + 80008c7c: 00f46533 or a0,s0,a5 + 80008c80: cd11 beqz a0,80008c9c <__multf3+0x5ee> + 80008c82: 4789 li a5,2 + 80008c84: 0014e493 ori s1,s1,1 + 80008c88: 02f98463 beq s3,a5,80008cb0 <__multf3+0x602> + 80008c8c: 478d li a5,3 + 80008c8e: 00f98d63 beq s3,a5,80008ca8 <__multf3+0x5fa> + 80008c92: 4505 li a0,1 + 80008c94: 00099363 bnez s3,80008c9a <__multf3+0x5ec> + 80008c98: 4515 li a0,5 + 80008c9a: 810d srli a0,a0,0x3 + 80008c9c: 0024e493 ori s1,s1,2 + 80008ca0: 2481 sext.w s1,s1 + 80008ca2: 4701 li a4,0 + 80008ca4: 4681 li a3,0 + 80008ca6: b68d j 80008808 <__multf3+0x15a> + 80008ca8: 4525 li a0,9 + 80008caa: d9e5 beqz a1,80008c9a <__multf3+0x5ec> + 80008cac: 4505 li a0,1 + 80008cae: b7f5 j 80008c9a <__multf3+0x5ec> + 80008cb0: 4525 li a0,9 + 80008cb2: f5e5 bnez a1,80008c9a <__multf3+0x5ec> + 80008cb4: bfe5 j 80008cac <__multf3+0x5fe> + 80008cb6: 66a1 lui a3,0x8 + 80008cb8: 4701 li a4,0 + 80008cba: 4501 li a0,0 + 80008cbc: 16fd addi a3,a3,-1 # 7fff + 80008cbe: b6a9 j 80008808 <__multf3+0x15a> -00000000800085d8 <__subtf3>: - 800085d8: 7179 addi sp,sp,-48 - 800085da: f406 sd ra,40(sp) - 800085dc: f022 sd s0,32(sp) - 800085de: ec26 sd s1,24(sp) - 800085e0: e84a sd s2,16(sp) - 800085e2: e44e sd s3,8(sp) - 800085e4: e052 sd s4,0(sp) - 800085e6: 00202773 frrm a4 - 800085ea: 00159793 slli a5,a1,0x1 - 800085ee: 0317d313 srli t1,a5,0x31 - 800085f2: 03f5d993 srli s3,a1,0x3f - 800085f6: 00169793 slli a5,a3,0x1 - 800085fa: 05c2 slli a1,a1,0x10 - 800085fc: 81b5 srli a1,a1,0xd - 800085fe: 03d55813 srli a6,a0,0x3d - 80008602: 0317d893 srli a7,a5,0x31 - 80008606: 01069793 slli a5,a3,0x10 - 8000860a: 83b5 srli a5,a5,0xd - 8000860c: 00b86833 or a6,a6,a1 - 80008610: 03d65593 srli a1,a2,0x3d - 80008614: 8ddd or a1,a1,a5 - 80008616: 67a1 lui a5,0x8 - 80008618: 17fd addi a5,a5,-1 # 7fff - 8000861a: 0007091b sext.w s2,a4 - 8000861e: 849a mv s1,t1 - 80008620: 050e slli a0,a0,0x3 - 80008622: 03f6d713 srli a4,a3,0x3f - 80008626: 060e slli a2,a2,0x3 - 80008628: 00f89663 bne a7,a5,80008634 <__subtf3+0x5c> - 8000862c: 00c5e7b3 or a5,a1,a2 - 80008630: 86ba mv a3,a4 - 80008632: e399 bnez a5,80008638 <__subtf3+0x60> - 80008634: 00174693 xori a3,a4,1 - 80008638: 6721 lui a4,0x8 - 8000863a: 411307bb subw a5,t1,a7 - 8000863e: 177d addi a4,a4,-1 # 7fff - 80008640: 35369263 bne a3,s3,80008984 <__subtf3+0x3ac> - 80008644: 0ef05b63 blez a5,8000873a <__subtf3+0x162> - 80008648: 06089b63 bnez a7,800086be <__subtf3+0xe6> - 8000864c: 00c5e6b3 or a3,a1,a2 - 80008650: e699 bnez a3,8000865e <__subtf3+0x86> - 80008652: 04e30863 beq t1,a4,800086a2 <__subtf3+0xca> - 80008656: 85c2 mv a1,a6 - 80008658: 862a mv a2,a0 - 8000865a: 4781 li a5,0 - 8000865c: a2d5 j 80008840 <__subtf3+0x268> - 8000865e: 37fd addiw a5,a5,-1 - 80008660: ef9d bnez a5,8000869e <__subtf3+0xc6> - 80008662: 962a add a2,a2,a0 - 80008664: 982e add a6,a6,a1 - 80008666: 00a63533 sltu a0,a2,a0 - 8000866a: 00a805b3 add a1,a6,a0 - 8000866e: 00c59793 slli a5,a1,0xc - 80008672: 0207d463 bgez a5,8000869a <__subtf3+0xc2> - 80008676: 67a1 lui a5,0x8 - 80008678: 0485 addi s1,s1,1 - 8000867a: 17fd addi a5,a5,-1 # 7fff - 8000867c: 2cf48a63 beq s1,a5,80008950 <__subtf3+0x378> - 80008680: 57fd li a5,-1 - 80008682: 17ce slli a5,a5,0x33 - 80008684: 17fd addi a5,a5,-1 - 80008686: 8fed and a5,a5,a1 - 80008688: 00165713 srli a4,a2,0x1 - 8000868c: 8a05 andi a2,a2,1 - 8000868e: 8f51 or a4,a4,a2 - 80008690: 03f79613 slli a2,a5,0x3f - 80008694: 8e59 or a2,a2,a4 - 80008696: 0017d593 srli a1,a5,0x1 - 8000869a: 4781 li a5,0 - 8000869c: a4a9 j 800088e6 <__subtf3+0x30e> - 8000869e: 02e31563 bne t1,a4,800086c8 <__subtf3+0xf0> - 800086a2: 00a86633 or a2,a6,a0 - 800086a6: 6c060b63 beqz a2,80008d7c <__subtf3+0x7a4> - 800086aa: 03285793 srli a5,a6,0x32 - 800086ae: 8b85 andi a5,a5,1 - 800086b0: 0017c793 xori a5,a5,1 - 800086b4: 0047979b slliw a5,a5,0x4 - 800086b8: 85c2 mv a1,a6 - 800086ba: 862a mv a2,a0 - 800086bc: a251 j 80008840 <__subtf3+0x268> - 800086be: fee302e3 beq t1,a4,800086a2 <__subtf3+0xca> - 800086c2: 4705 li a4,1 - 800086c4: 174e slli a4,a4,0x33 - 800086c6: 8dd9 or a1,a1,a4 - 800086c8: 07400713 li a4,116 - 800086cc: 06f74263 blt a4,a5,80008730 <__subtf3+0x158> - 800086d0: 03f00713 li a4,63 - 800086d4: 02f74a63 blt a4,a5,80008708 <__subtf3+0x130> - 800086d8: 04000693 li a3,64 - 800086dc: 9e9d subw a3,a3,a5 - 800086de: 00d59733 sll a4,a1,a3 - 800086e2: 00f658b3 srl a7,a2,a5 - 800086e6: 00d616b3 sll a3,a2,a3 - 800086ea: 01176733 or a4,a4,a7 - 800086ee: 00d036b3 snez a3,a3 - 800086f2: 8f55 or a4,a4,a3 - 800086f4: 00f5d7b3 srl a5,a1,a5 - 800086f8: 00a70633 add a2,a4,a0 - 800086fc: 97c2 add a5,a5,a6 - 800086fe: 00e63733 sltu a4,a2,a4 - 80008702: 00e785b3 add a1,a5,a4 - 80008706: b7a5 j 8000866e <__subtf3+0x96> - 80008708: fc07871b addiw a4,a5,-64 - 8000870c: 04000893 li a7,64 - 80008710: 00e5d733 srl a4,a1,a4 - 80008714: 4681 li a3,0 - 80008716: 01178763 beq a5,a7,80008724 <__subtf3+0x14c> - 8000871a: 08000693 li a3,128 - 8000871e: 9e9d subw a3,a3,a5 - 80008720: 00d596b3 sll a3,a1,a3 - 80008724: 8ed1 or a3,a3,a2 - 80008726: 00d036b3 snez a3,a3 - 8000872a: 8f55 or a4,a4,a3 - 8000872c: 4781 li a5,0 - 8000872e: b7e9 j 800086f8 <__subtf3+0x120> - 80008730: 00c5e733 or a4,a1,a2 - 80008734: 00e03733 snez a4,a4 - 80008738: bfd5 j 8000872c <__subtf3+0x154> - 8000873a: c7e1 beqz a5,80008802 <__subtf3+0x22a> - 8000873c: 08031163 bnez t1,800087be <__subtf3+0x1e6> - 80008740: 00a866b3 or a3,a6,a0 - 80008744: e285 bnez a3,80008764 <__subtf3+0x18c> - 80008746: 62e89d63 bne a7,a4,80008d80 <__subtf3+0x7a8> - 8000874a: 00c5e7b3 or a5,a1,a2 - 8000874e: 62078c63 beqz a5,80008d86 <__subtf3+0x7ae> - 80008752: 0325d793 srli a5,a1,0x32 - 80008756: 8b85 andi a5,a5,1 - 80008758: 0017c793 xori a5,a5,1 - 8000875c: 0047979b slliw a5,a5,0x4 - 80008760: 84c6 mv s1,a7 - 80008762: a8f9 j 80008840 <__subtf3+0x268> - 80008764: fff7c793 not a5,a5 - 80008768: 2781 sext.w a5,a5 - 8000876a: eb89 bnez a5,8000877c <__subtf3+0x1a4> - 8000876c: 962a add a2,a2,a0 - 8000876e: 982e add a6,a6,a1 - 80008770: 00a63533 sltu a0,a2,a0 - 80008774: 00a805b3 add a1,a6,a0 - 80008778: 84c6 mv s1,a7 - 8000877a: bdd5 j 8000866e <__subtf3+0x96> - 8000877c: fce887e3 beq a7,a4,8000874a <__subtf3+0x172> - 80008780: 07400713 li a4,116 - 80008784: 06f74a63 blt a4,a5,800087f8 <__subtf3+0x220> - 80008788: 03f00713 li a4,63 - 8000878c: 04f74263 blt a4,a5,800087d0 <__subtf3+0x1f8> - 80008790: 04000693 li a3,64 - 80008794: 9e9d subw a3,a3,a5 - 80008796: 00d81733 sll a4,a6,a3 - 8000879a: 00f55333 srl t1,a0,a5 - 8000879e: 00d516b3 sll a3,a0,a3 - 800087a2: 00676733 or a4,a4,t1 - 800087a6: 00d036b3 snez a3,a3 - 800087aa: 8f55 or a4,a4,a3 - 800087ac: 00f857b3 srl a5,a6,a5 - 800087b0: 963a add a2,a2,a4 - 800087b2: 97ae add a5,a5,a1 - 800087b4: 00e63733 sltu a4,a2,a4 - 800087b8: 00e785b3 add a1,a5,a4 - 800087bc: bf75 j 80008778 <__subtf3+0x1a0> - 800087be: f8e886e3 beq a7,a4,8000874a <__subtf3+0x172> - 800087c2: 4705 li a4,1 - 800087c4: 174e slli a4,a4,0x33 - 800087c6: 40f007bb negw a5,a5 - 800087ca: 00e86833 or a6,a6,a4 - 800087ce: bf4d j 80008780 <__subtf3+0x1a8> - 800087d0: fc07871b addiw a4,a5,-64 - 800087d4: 04000313 li t1,64 - 800087d8: 00e85733 srl a4,a6,a4 - 800087dc: 4681 li a3,0 - 800087de: 00678763 beq a5,t1,800087ec <__subtf3+0x214> - 800087e2: 08000693 li a3,128 - 800087e6: 9e9d subw a3,a3,a5 - 800087e8: 00d816b3 sll a3,a6,a3 - 800087ec: 8ec9 or a3,a3,a0 - 800087ee: 00d036b3 snez a3,a3 - 800087f2: 8f55 or a4,a4,a3 - 800087f4: 4781 li a5,0 - 800087f6: bf6d j 800087b0 <__subtf3+0x1d8> - 800087f8: 00a86733 or a4,a6,a0 - 800087fc: 00e03733 snez a4,a4 - 80008800: bfd5 j 800087f4 <__subtf3+0x21c> - 80008802: 00130493 addi s1,t1,1 - 80008806: 03149693 slli a3,s1,0x31 - 8000880a: 92c9 srli a3,a3,0x32 - 8000880c: e2e1 bnez a3,800088cc <__subtf3+0x2f4> - 8000880e: 00a86733 or a4,a6,a0 - 80008812: 06031e63 bnez t1,8000888e <__subtf3+0x2b6> - 80008816: 42070a63 beqz a4,80008c4a <__subtf3+0x672> - 8000881a: 00c5e733 or a4,a1,a2 - 8000881e: 4e070563 beqz a4,80008d08 <__subtf3+0x730> - 80008822: 962a add a2,a2,a0 - 80008824: 982e add a6,a6,a1 - 80008826: 00a63533 sltu a0,a2,a0 - 8000882a: 00a805b3 add a1,a6,a0 - 8000882e: 00c59713 slli a4,a1,0xc - 80008832: 40075c63 bgez a4,80008c4a <__subtf3+0x672> - 80008836: 577d li a4,-1 - 80008838: 174e slli a4,a4,0x33 - 8000883a: 177d addi a4,a4,-1 - 8000883c: 8df9 and a1,a1,a4 - 8000883e: 4485 li s1,1 - 80008840: 6721 lui a4,0x8 - 80008842: 03d59513 slli a0,a1,0x3d - 80008846: 820d srli a2,a2,0x3 - 80008848: 177d addi a4,a4,-1 # 7fff - 8000884a: 8d51 or a0,a0,a2 - 8000884c: 818d srli a1,a1,0x3 - 8000884e: 00e49963 bne s1,a4,80008860 <__subtf3+0x288> - 80008852: 8d4d or a0,a0,a1 - 80008854: 4581 li a1,0 - 80008856: c509 beqz a0,80008860 <__subtf3+0x288> - 80008858: 4585 li a1,1 - 8000885a: 15be slli a1,a1,0x2f - 8000885c: 4501 li a0,0 - 8000885e: 4981 li s3,0 - 80008860: 14c6 slli s1,s1,0x31 - 80008862: 0019f993 andi s3,s3,1 - 80008866: 90c5 srli s1,s1,0x31 - 80008868: 09be slli s3,s3,0xf - 8000886a: 0099e9b3 or s3,s3,s1 - 8000886e: 05c2 slli a1,a1,0x10 - 80008870: 19c2 slli s3,s3,0x30 - 80008872: 81c1 srli a1,a1,0x10 - 80008874: 0135e5b3 or a1,a1,s3 - 80008878: c399 beqz a5,8000887e <__subtf3+0x2a6> - 8000887a: 0017a073 csrs fflags,a5 - 8000887e: 70a2 ld ra,40(sp) - 80008880: 7402 ld s0,32(sp) - 80008882: 64e2 ld s1,24(sp) - 80008884: 6942 ld s2,16(sp) - 80008886: 69a2 ld s3,8(sp) - 80008888: 6a02 ld s4,0(sp) - 8000888a: 6145 addi sp,sp,48 - 8000888c: 8082 ret - 8000888e: cb01 beqz a4,8000889e <__subtf3+0x2c6> - 80008890: 03285793 srli a5,a6,0x32 - 80008894: 8b85 andi a5,a5,1 - 80008896: 0017c793 xori a5,a5,1 - 8000889a: 0047979b slliw a5,a5,0x4 - 8000889e: 66a1 lui a3,0x8 - 800088a0: 16fd addi a3,a3,-1 # 7fff - 800088a2: 00d89a63 bne a7,a3,800088b6 <__subtf3+0x2de> - 800088a6: 00c5e6b3 or a3,a1,a2 - 800088aa: c691 beqz a3,800088b6 <__subtf3+0x2de> - 800088ac: 00d59693 slli a3,a1,0xd - 800088b0: 0006c363 bltz a3,800088b6 <__subtf3+0x2de> - 800088b4: 47c1 li a5,16 - 800088b6: cb01 beqz a4,800088c6 <__subtf3+0x2ee> - 800088b8: 8dd1 or a1,a1,a2 - 800088ba: 50058663 beqz a1,80008dc6 <__subtf3+0x7ee> - 800088be: 4585 li a1,1 - 800088c0: 4981 li s3,0 - 800088c2: 15ca slli a1,a1,0x32 - 800088c4: 4601 li a2,0 - 800088c6: 64a1 lui s1,0x8 - 800088c8: 14fd addi s1,s1,-1 # 7fff - 800088ca: bf9d j 80008840 <__subtf3+0x268> - 800088cc: 00e48f63 beq s1,a4,800088ea <__subtf3+0x312> - 800088d0: 962a add a2,a2,a0 - 800088d2: 982e add a6,a6,a1 - 800088d4: 00a63533 sltu a0,a2,a0 - 800088d8: 982a add a6,a6,a0 - 800088da: 03f81713 slli a4,a6,0x3f - 800088de: 8205 srli a2,a2,0x1 - 800088e0: 8e59 or a2,a2,a4 - 800088e2: 00185593 srli a1,a6,0x1 - 800088e6: 4701 li a4,0 - 800088e8: a66d j 80008c92 <__subtf3+0x6ba> - 800088ea: 06090563 beqz s2,80008954 <__subtf3+0x37c> - 800088ee: 470d li a4,3 - 800088f0: 02e91a63 bne s2,a4,80008924 <__subtf3+0x34c> - 800088f4: 06098063 beqz s3,80008954 <__subtf3+0x37c> - 800088f8: 64a1 lui s1,0x8 - 800088fa: 567d li a2,-1 - 800088fc: 14f9 addi s1,s1,-2 # 7ffe - 800088fe: 85b2 mv a1,a2 - 80008900: 4715 li a4,5 - 80008902: 468d li a3,3 - 80008904: 42d90563 beq s2,a3,80008d2e <__subtf3+0x756> - 80008908: 42091b63 bnez s2,80008d3e <__subtf3+0x766> - 8000890c: 00f67693 andi a3,a2,15 - 80008910: 4511 li a0,4 - 80008912: 42a68663 beq a3,a0,80008d3e <__subtf3+0x766> - 80008916: 00a606b3 add a3,a2,a0 - 8000891a: 00c6b533 sltu a0,a3,a2 - 8000891e: 95aa add a1,a1,a0 - 80008920: 8636 mv a2,a3 - 80008922: a931 j 80008d3e <__subtf3+0x766> - 80008924: 4789 li a5,2 - 80008926: 04f90663 beq s2,a5,80008972 <__subtf3+0x39a> - 8000892a: 64a1 lui s1,0x8 - 8000892c: 55fd li a1,-1 - 8000892e: 14f9 addi s1,s1,-2 # 7ffe - 80008930: 862e mv a2,a1 - 80008932: 4795 li a5,5 - 80008934: 00c59713 slli a4,a1,0xc - 80008938: f00754e3 bgez a4,80008840 <__subtf3+0x268> - 8000893c: 6721 lui a4,0x8 - 8000893e: 0485 addi s1,s1,1 - 80008940: 177d addi a4,a4,-1 # 7fff - 80008942: 40e48663 beq s1,a4,80008d4e <__subtf3+0x776> - 80008946: 577d li a4,-1 - 80008948: 174e slli a4,a4,0x33 - 8000894a: 177d addi a4,a4,-1 - 8000894c: 8df9 and a1,a1,a4 - 8000894e: bdcd j 80008840 <__subtf3+0x268> - 80008950: 00091663 bnez s2,8000895c <__subtf3+0x384> - 80008954: 4581 li a1,0 - 80008956: 4601 li a2,0 - 80008958: 4795 li a5,5 - 8000895a: b5dd j 80008840 <__subtf3+0x268> - 8000895c: 478d li a5,3 - 8000895e: fcf913e3 bne s2,a5,80008924 <__subtf3+0x34c> - 80008962: fe0989e3 beqz s3,80008954 <__subtf3+0x37c> - 80008966: 64a1 lui s1,0x8 - 80008968: 567d li a2,-1 - 8000896a: 14f9 addi s1,s1,-2 # 7ffe - 8000896c: 85b2 mv a1,a2 - 8000896e: 4781 li a5,0 - 80008970: bf41 j 80008900 <__subtf3+0x328> - 80008972: fe0991e3 bnez s3,80008954 <__subtf3+0x37c> - 80008976: 64a1 lui s1,0x8 - 80008978: 567d li a2,-1 - 8000897a: 14f9 addi s1,s1,-2 # 7ffe - 8000897c: 85b2 mv a1,a2 - 8000897e: 4715 li a4,5 - 80008980: 87ba mv a5,a4 - 80008982: bf4d j 80008934 <__subtf3+0x35c> - 80008984: 0af05d63 blez a5,80008a3e <__subtf3+0x466> - 80008988: 06089c63 bnez a7,80008a00 <__subtf3+0x428> - 8000898c: 00c5e6b3 or a3,a1,a2 - 80008990: cc0681e3 beqz a3,80008652 <__subtf3+0x7a> - 80008994: 37fd addiw a5,a5,-1 - 80008996: e395 bnez a5,800089ba <__subtf3+0x3e2> - 80008998: 40c50633 sub a2,a0,a2 - 8000899c: 40b80833 sub a6,a6,a1 - 800089a0: 00c53533 sltu a0,a0,a2 - 800089a4: 40a805b3 sub a1,a6,a0 - 800089a8: 00c59793 slli a5,a1,0xc - 800089ac: ce07d7e3 bgez a5,8000869a <__subtf3+0xc2> - 800089b0: 00d59413 slli s0,a1,0xd - 800089b4: 8035 srli s0,s0,0xd - 800089b6: 8a32 mv s4,a2 - 800089b8: a489 j 80008bfa <__subtf3+0x622> - 800089ba: cee304e3 beq t1,a4,800086a2 <__subtf3+0xca> - 800089be: 07400713 li a4,116 - 800089c2: 06f74963 blt a4,a5,80008a34 <__subtf3+0x45c> - 800089c6: 03f00713 li a4,63 - 800089ca: 04f74163 blt a4,a5,80008a0c <__subtf3+0x434> - 800089ce: 04000693 li a3,64 - 800089d2: 9e9d subw a3,a3,a5 - 800089d4: 00d59733 sll a4,a1,a3 - 800089d8: 00f658b3 srl a7,a2,a5 - 800089dc: 00d616b3 sll a3,a2,a3 - 800089e0: 01176733 or a4,a4,a7 - 800089e4: 00d036b3 snez a3,a3 - 800089e8: 8f55 or a4,a4,a3 - 800089ea: 00f5d7b3 srl a5,a1,a5 - 800089ee: 40e50633 sub a2,a0,a4 - 800089f2: 40f807b3 sub a5,a6,a5 - 800089f6: 00c53533 sltu a0,a0,a2 - 800089fa: 40a785b3 sub a1,a5,a0 - 800089fe: b76d j 800089a8 <__subtf3+0x3d0> - 80008a00: cae301e3 beq t1,a4,800086a2 <__subtf3+0xca> - 80008a04: 4705 li a4,1 - 80008a06: 174e slli a4,a4,0x33 - 80008a08: 8dd9 or a1,a1,a4 - 80008a0a: bf55 j 800089be <__subtf3+0x3e6> - 80008a0c: fc07871b addiw a4,a5,-64 - 80008a10: 04000893 li a7,64 - 80008a14: 00e5d733 srl a4,a1,a4 - 80008a18: 4681 li a3,0 - 80008a1a: 01178763 beq a5,a7,80008a28 <__subtf3+0x450> - 80008a1e: 08000693 li a3,128 - 80008a22: 9e9d subw a3,a3,a5 - 80008a24: 00d596b3 sll a3,a1,a3 - 80008a28: 8ed1 or a3,a3,a2 - 80008a2a: 00d036b3 snez a3,a3 - 80008a2e: 8f55 or a4,a4,a3 - 80008a30: 4781 li a5,0 - 80008a32: bf75 j 800089ee <__subtf3+0x416> - 80008a34: 00c5e733 or a4,a1,a2 - 80008a38: 00e03733 snez a4,a4 - 80008a3c: bfd5 j 80008a30 <__subtf3+0x458> - 80008a3e: c3f5 beqz a5,80008b22 <__subtf3+0x54a> - 80008a40: 08031c63 bnez t1,80008ad8 <__subtf3+0x500> - 80008a44: 00a86333 or t1,a6,a0 - 80008a48: 02031263 bnez t1,80008a6c <__subtf3+0x494> - 80008a4c: 89b6 mv s3,a3 - 80008a4e: 32e89963 bne a7,a4,80008d80 <__subtf3+0x7a8> - 80008a52: 00c5e7b3 or a5,a1,a2 - 80008a56: 32078763 beqz a5,80008d84 <__subtf3+0x7ac> - 80008a5a: 0325d793 srli a5,a1,0x32 - 80008a5e: 8b85 andi a5,a5,1 - 80008a60: 0017c793 xori a5,a5,1 - 80008a64: 0047979b slliw a5,a5,0x4 - 80008a68: 89b6 mv s3,a3 - 80008a6a: b9dd j 80008760 <__subtf3+0x188> - 80008a6c: fff7c793 not a5,a5 - 80008a70: 2781 sext.w a5,a5 - 80008a72: ef89 bnez a5,80008a8c <__subtf3+0x4b4> - 80008a74: 40a60533 sub a0,a2,a0 - 80008a78: 00a637b3 sltu a5,a2,a0 - 80008a7c: 41058833 sub a6,a1,a6 - 80008a80: 862a mv a2,a0 - 80008a82: 40f805b3 sub a1,a6,a5 - 80008a86: 84c6 mv s1,a7 - 80008a88: 89b6 mv s3,a3 - 80008a8a: bf39 j 800089a8 <__subtf3+0x3d0> - 80008a8c: fce883e3 beq a7,a4,80008a52 <__subtf3+0x47a> - 80008a90: 07400713 li a4,116 - 80008a94: 08f74263 blt a4,a5,80008b18 <__subtf3+0x540> - 80008a98: 03f00713 li a4,63 - 80008a9c: 04f74763 blt a4,a5,80008aea <__subtf3+0x512> - 80008aa0: 04000313 li t1,64 - 80008aa4: 40f3033b subw t1,t1,a5 - 80008aa8: 00681733 sll a4,a6,t1 - 80008aac: 00f55e33 srl t3,a0,a5 - 80008ab0: 00651333 sll t1,a0,t1 - 80008ab4: 01c76733 or a4,a4,t3 - 80008ab8: 00603333 snez t1,t1 - 80008abc: 00676733 or a4,a4,t1 - 80008ac0: 00f857b3 srl a5,a6,a5 - 80008ac4: 40e60733 sub a4,a2,a4 - 80008ac8: 00e63533 sltu a0,a2,a4 - 80008acc: 40f587b3 sub a5,a1,a5 - 80008ad0: 863a mv a2,a4 - 80008ad2: 40a785b3 sub a1,a5,a0 - 80008ad6: bf45 j 80008a86 <__subtf3+0x4ae> - 80008ad8: f6e88de3 beq a7,a4,80008a52 <__subtf3+0x47a> - 80008adc: 4705 li a4,1 - 80008ade: 174e slli a4,a4,0x33 - 80008ae0: 40f007bb negw a5,a5 - 80008ae4: 00e86833 or a6,a6,a4 - 80008ae8: b765 j 80008a90 <__subtf3+0x4b8> - 80008aea: fc07871b addiw a4,a5,-64 - 80008aee: 04000e13 li t3,64 - 80008af2: 00e85733 srl a4,a6,a4 - 80008af6: 4301 li t1,0 - 80008af8: 01c78863 beq a5,t3,80008b08 <__subtf3+0x530> - 80008afc: 08000313 li t1,128 - 80008b00: 40f3033b subw t1,t1,a5 - 80008b04: 00681333 sll t1,a6,t1 - 80008b08: 00a36333 or t1,t1,a0 - 80008b0c: 00603333 snez t1,t1 - 80008b10: 00676733 or a4,a4,t1 - 80008b14: 4781 li a5,0 - 80008b16: b77d j 80008ac4 <__subtf3+0x4ec> - 80008b18: 00a86733 or a4,a6,a0 - 80008b1c: 00e03733 snez a4,a4 - 80008b20: bfd5 j 80008b14 <__subtf3+0x53c> - 80008b22: 00130e13 addi t3,t1,1 - 80008b26: 031e1e93 slli t4,t3,0x31 - 80008b2a: 032ede93 srli t4,t4,0x32 - 80008b2e: 0a0e9163 bnez t4,80008bd0 <__subtf3+0x5f8> - 80008b32: 00c5ee33 or t3,a1,a2 - 80008b36: 00a86eb3 or t4,a6,a0 - 80008b3a: 06031063 bnez t1,80008b9a <__subtf3+0x5c2> - 80008b3e: 000e9b63 bnez t4,80008b54 <__subtf3+0x57c> - 80008b42: 040e1063 bnez t3,80008b82 <__subtf3+0x5aa> - 80008b46: ffe90993 addi s3,s2,-2 - 80008b4a: 0019b993 seqz s3,s3 - 80008b4e: 4581 li a1,0 - 80008b50: 4601 li a2,0 - 80008b52: b1fd j 80008840 <__subtf3+0x268> - 80008b54: 1a0e0a63 beqz t3,80008d08 <__subtf3+0x730> - 80008b58: 40c508b3 sub a7,a0,a2 - 80008b5c: 01153333 sltu t1,a0,a7 - 80008b60: 40b80733 sub a4,a6,a1 - 80008b64: 40670733 sub a4,a4,t1 - 80008b68: 00c71313 slli t1,a4,0xc - 80008b6c: 00035d63 bgez t1,80008b86 <__subtf3+0x5ae> - 80008b70: 40a60533 sub a0,a2,a0 - 80008b74: 00a637b3 sltu a5,a2,a0 - 80008b78: 41058833 sub a6,a1,a6 - 80008b7c: 862a mv a2,a0 - 80008b7e: 40f805b3 sub a1,a6,a5 - 80008b82: 89b6 mv s3,a3 - 80008b84: a0d9 j 80008c4a <__subtf3+0x672> - 80008b86: 00e8e633 or a2,a7,a4 - 80008b8a: 18061263 bnez a2,80008d0e <__subtf3+0x736> - 80008b8e: ffe90993 addi s3,s2,-2 - 80008b92: 0019b993 seqz s3,s3 - 80008b96: 4581 li a1,0 - 80008b98: b165 j 80008840 <__subtf3+0x268> - 80008b9a: 200e8863 beqz t4,80008daa <__subtf3+0x7d2> - 80008b9e: 03285793 srli a5,a6,0x32 - 80008ba2: 8b85 andi a5,a5,1 - 80008ba4: 0017c793 xori a5,a5,1 - 80008ba8: 0047979b slliw a5,a5,0x4 - 80008bac: 00e89c63 bne a7,a4,80008bc4 <__subtf3+0x5ec> - 80008bb0: 200e0963 beqz t3,80008dc2 <__subtf3+0x7ea> - 80008bb4: 00d59713 slli a4,a1,0xd - 80008bb8: 20075a63 bgez a4,80008dcc <__subtf3+0x7f4> - 80008bbc: 89b6 mv s3,a3 - 80008bbe: d00e84e3 beqz t4,800088c6 <__subtf3+0x2ee> - 80008bc2: b9f5 j 800088be <__subtf3+0x2e6> - 80008bc4: 1c0e1463 bnez t3,80008d8c <__subtf3+0x7b4> - 80008bc8: 85c2 mv a1,a6 - 80008bca: 862a mv a2,a0 - 80008bcc: 84ba mv s1,a4 - 80008bce: b98d j 80008840 <__subtf3+0x268> - 80008bd0: 40c50733 sub a4,a0,a2 - 80008bd4: 00e538b3 sltu a7,a0,a4 - 80008bd8: 40b80433 sub s0,a6,a1 - 80008bdc: 41140433 sub s0,s0,a7 - 80008be0: 00c41893 slli a7,s0,0xc - 80008be4: 8a3a mv s4,a4 - 80008be6: 0a08de63 bgez a7,80008ca2 <__subtf3+0x6ca> - 80008bea: 40a60a33 sub s4,a2,a0 - 80008bee: 41058433 sub s0,a1,a6 - 80008bf2: 01463633 sltu a2,a2,s4 - 80008bf6: 8c11 sub s0,s0,a2 - 80008bf8: 89b6 mv s3,a3 - 80008bfa: cc55 beqz s0,80008cb6 <__subtf3+0x6de> - 80008bfc: 8522 mv a0,s0 - 80008bfe: 3dc000ef jal 80008fda <__clzdi2> - 80008c02: ff45061b addiw a2,a0,-12 - 80008c06: 04000593 li a1,64 - 80008c0a: 9d91 subw a1,a1,a2 - 80008c0c: 00c41433 sll s0,s0,a2 - 80008c10: 00ba55b3 srl a1,s4,a1 - 80008c14: 8dc1 or a1,a1,s0 - 80008c16: 00ca1433 sll s0,s4,a2 - 80008c1a: 0e964063 blt a2,s1,80008cfa <__subtf3+0x722> - 80008c1e: 9e05 subw a2,a2,s1 - 80008c20: 0016071b addiw a4,a2,1 - 80008c24: 03f00793 li a5,63 - 80008c28: 0ae7c563 blt a5,a4,80008cd2 <__subtf3+0x6fa> - 80008c2c: 04000793 li a5,64 - 80008c30: 9f99 subw a5,a5,a4 - 80008c32: 00f59633 sll a2,a1,a5 - 80008c36: 00e456b3 srl a3,s0,a4 - 80008c3a: 00f417b3 sll a5,s0,a5 - 80008c3e: 8e55 or a2,a2,a3 - 80008c40: 00f037b3 snez a5,a5 - 80008c44: 8e5d or a2,a2,a5 - 80008c46: 00e5d5b3 srl a1,a1,a4 - 80008c4a: 00c5e7b3 or a5,a1,a2 - 80008c4e: 14078463 beqz a5,80008d96 <__subtf3+0x7be> - 80008c52: 00161693 slli a3,a2,0x1 - 80008c56: 03f65713 srli a4,a2,0x3f - 80008c5a: 00159793 slli a5,a1,0x1 - 80008c5e: 0076f513 andi a0,a3,7 - 80008c62: 97ba add a5,a5,a4 - 80008c64: 4701 li a4,0 - 80008c66: c10d beqz a0,80008c88 <__subtf3+0x6b0> - 80008c68: 4709 li a4,2 - 80008c6a: 0ae90e63 beq s2,a4,80008d26 <__subtf3+0x74e> - 80008c6e: 470d li a4,3 - 80008c70: 0ae90263 beq s2,a4,80008d14 <__subtf3+0x73c> - 80008c74: 4705 li a4,1 - 80008c76: 00091963 bnez s2,80008c88 <__subtf3+0x6b0> - 80008c7a: 00f6f513 andi a0,a3,15 - 80008c7e: 4811 li a6,4 - 80008c80: ffc6b693 sltiu a3,a3,-4 - 80008c84: 09051d63 bne a0,a6,80008d1e <__subtf3+0x746> - 80008c88: 93d1 srli a5,a5,0x34 - 80008c8a: 8b85 andi a5,a5,1 - 80008c8c: 0017c793 xori a5,a5,1 - 80008c90: 4481 li s1,0 - 80008c92: 00767693 andi a3,a2,7 - 80008c96: c6c5 beqz a3,80008d3e <__subtf3+0x766> - 80008c98: 4709 li a4,2 - 80008c9a: 08e90f63 beq s2,a4,80008d38 <__subtf3+0x760> - 80008c9e: 4705 li a4,1 - 80008ca0: b18d j 80008902 <__subtf3+0x32a> - 80008ca2: 00876633 or a2,a4,s0 - 80008ca6: fa31 bnez a2,80008bfa <__subtf3+0x622> - 80008ca8: ffe90993 addi s3,s2,-2 - 80008cac: 0019b993 seqz s3,s3 - 80008cb0: 4581 li a1,0 - 80008cb2: 4481 li s1,0 - 80008cb4: b671 j 80008840 <__subtf3+0x268> - 80008cb6: 8552 mv a0,s4 - 80008cb8: 322000ef jal 80008fda <__clzdi2> - 80008cbc: 0345061b addiw a2,a0,52 - 80008cc0: 03f00793 li a5,63 - 80008cc4: f4c7d1e3 bge a5,a2,80008c06 <__subtf3+0x62e> - 80008cc8: ff45059b addiw a1,a0,-12 - 80008ccc: 00ba15b3 sll a1,s4,a1 - 80008cd0: b7a9 j 80008c1a <__subtf3+0x642> - 80008cd2: fc16061b addiw a2,a2,-63 - 80008cd6: 04000693 li a3,64 - 80008cda: 00c5d633 srl a2,a1,a2 - 80008cde: 4781 li a5,0 - 80008ce0: 00d70763 beq a4,a3,80008cee <__subtf3+0x716> - 80008ce4: 08000793 li a5,128 - 80008ce8: 9f99 subw a5,a5,a4 - 80008cea: 00f597b3 sll a5,a1,a5 - 80008cee: 8fc1 or a5,a5,s0 - 80008cf0: 00f037b3 snez a5,a5 - 80008cf4: 8e5d or a2,a2,a5 - 80008cf6: 4581 li a1,0 - 80008cf8: bf89 j 80008c4a <__subtf3+0x672> - 80008cfa: 57fd li a5,-1 - 80008cfc: 17ce slli a5,a5,0x33 - 80008cfe: 17fd addi a5,a5,-1 - 80008d00: 8c91 sub s1,s1,a2 - 80008d02: 8dfd and a1,a1,a5 - 80008d04: 8622 mv a2,s0 - 80008d06: ba51 j 8000869a <__subtf3+0xc2> - 80008d08: 85c2 mv a1,a6 - 80008d0a: 862a mv a2,a0 - 80008d0c: bf3d j 80008c4a <__subtf3+0x672> - 80008d0e: 85ba mv a1,a4 - 80008d10: 8646 mv a2,a7 - 80008d12: bf25 j 80008c4a <__subtf3+0x672> - 80008d14: 4705 li a4,1 - 80008d16: f60999e3 bnez s3,80008c88 <__subtf3+0x6b0> - 80008d1a: ff86b693 sltiu a3,a3,-8 - 80008d1e: 0016b693 seqz a3,a3 - 80008d22: 97b6 add a5,a5,a3 - 80008d24: b795 j 80008c88 <__subtf3+0x6b0> - 80008d26: 4705 li a4,1 - 80008d28: f60980e3 beqz s3,80008c88 <__subtf3+0x6b0> - 80008d2c: b7fd j 80008d1a <__subtf3+0x742> - 80008d2e: 00099863 bnez s3,80008d3e <__subtf3+0x766> - 80008d32: 00860693 addi a3,a2,8 - 80008d36: b6d5 j 8000891a <__subtf3+0x342> - 80008d38: 4705 li a4,1 - 80008d3a: fe099ce3 bnez s3,80008d32 <__subtf3+0x75a> - 80008d3e: c40781e3 beqz a5,80008980 <__subtf3+0x3a8> - 80008d42: 00177793 andi a5,a4,1 - 80008d46: 0017979b slliw a5,a5,0x1 - 80008d4a: 8fd9 or a5,a5,a4 - 80008d4c: b6e5 j 80008934 <__subtf3+0x35c> - 80008d4e: 4601 li a2,0 - 80008d50: 02090163 beqz s2,80008d72 <__subtf3+0x79a> - 80008d54: 470d li a4,3 - 80008d56: 00e91863 bne s2,a4,80008d66 <__subtf3+0x78e> - 80008d5a: 00098c63 beqz s3,80008d72 <__subtf3+0x79a> - 80008d5e: 64a1 lui s1,0x8 - 80008d60: 567d li a2,-1 - 80008d62: 14f9 addi s1,s1,-2 # 7ffe - 80008d64: a039 j 80008d72 <__subtf3+0x79a> - 80008d66: ffe90713 addi a4,s2,-2 - 80008d6a: fb75 bnez a4,80008d5e <__subtf3+0x786> - 80008d6c: 0019f713 andi a4,s3,1 - 80008d70: d77d beqz a4,80008d5e <__subtf3+0x786> - 80008d72: 0057e793 ori a5,a5,5 - 80008d76: 2781 sext.w a5,a5 - 80008d78: 85b2 mv a1,a2 - 80008d7a: b4d9 j 80008840 <__subtf3+0x268> - 80008d7c: 4581 li a1,0 - 80008d7e: b8f1 j 8000865a <__subtf3+0x82> - 80008d80: 84c6 mv s1,a7 - 80008d82: b8e1 j 8000865a <__subtf3+0x82> - 80008d84: 89b6 mv s3,a3 - 80008d86: 4581 li a1,0 - 80008d88: 4601 li a2,0 - 80008d8a: bad9 j 80008760 <__subtf3+0x188> - 80008d8c: 4585 li a1,1 - 80008d8e: 4981 li s3,0 - 80008d90: 15ca slli a1,a1,0x32 - 80008d92: 4601 li a2,0 - 80008d94: bd25 j 80008bcc <__subtf3+0x5f4> - 80008d96: 4581 li a1,0 - 80008d98: 4601 li a2,0 - 80008d9a: bf21 j 80008cb2 <__subtf3+0x6da> - 80008d9c: 4585 li a1,1 - 80008d9e: 64a1 lui s1,0x8 - 80008da0: 4981 li s3,0 - 80008da2: 15ca slli a1,a1,0x32 - 80008da4: 4601 li a2,0 - 80008da6: 14fd addi s1,s1,-1 # 7fff - 80008da8: a819 j 80008dbe <__subtf3+0x7e6> - 80008daa: e0e883e3 beq a7,a4,80008bb0 <__subtf3+0x5d8> - 80008dae: 89b6 mv s3,a3 - 80008db0: e00e1ee3 bnez t3,80008bcc <__subtf3+0x5f4> - 80008db4: 4585 li a1,1 - 80008db6: 4981 li s3,0 - 80008db8: 15ca slli a1,a1,0x32 - 80008dba: 4601 li a2,0 - 80008dbc: 84ba mv s1,a4 - 80008dbe: 47c1 li a5,16 - 80008dc0: b441 j 80008840 <__subtf3+0x268> - 80008dc2: fc0e8de3 beqz t4,80008d9c <__subtf3+0x7c4> - 80008dc6: 85c2 mv a1,a6 - 80008dc8: 862a mv a2,a0 - 80008dca: bcf5 j 800088c6 <__subtf3+0x2ee> - 80008dcc: 47c1 li a5,16 - 80008dce: b3fd j 80008bbc <__subtf3+0x5e4> +0000000080008cc0 <__subtf3>: + 80008cc0: 7179 addi sp,sp,-48 + 80008cc2: f406 sd ra,40(sp) + 80008cc4: f022 sd s0,32(sp) + 80008cc6: ec26 sd s1,24(sp) + 80008cc8: e84a sd s2,16(sp) + 80008cca: e44e sd s3,8(sp) + 80008ccc: e052 sd s4,0(sp) + 80008cce: 00202773 frrm a4 + 80008cd2: 00159793 slli a5,a1,0x1 + 80008cd6: 0317d313 srli t1,a5,0x31 + 80008cda: 03f5d993 srli s3,a1,0x3f + 80008cde: 00169793 slli a5,a3,0x1 + 80008ce2: 05c2 slli a1,a1,0x10 + 80008ce4: 81b5 srli a1,a1,0xd + 80008ce6: 03d55813 srli a6,a0,0x3d + 80008cea: 0317d893 srli a7,a5,0x31 + 80008cee: 01069793 slli a5,a3,0x10 + 80008cf2: 83b5 srli a5,a5,0xd + 80008cf4: 00b86833 or a6,a6,a1 + 80008cf8: 03d65593 srli a1,a2,0x3d + 80008cfc: 8ddd or a1,a1,a5 + 80008cfe: 67a1 lui a5,0x8 + 80008d00: 17fd addi a5,a5,-1 # 7fff + 80008d02: 0007091b sext.w s2,a4 + 80008d06: 849a mv s1,t1 + 80008d08: 050e slli a0,a0,0x3 + 80008d0a: 03f6d713 srli a4,a3,0x3f + 80008d0e: 060e slli a2,a2,0x3 + 80008d10: 00f89663 bne a7,a5,80008d1c <__subtf3+0x5c> + 80008d14: 00c5e7b3 or a5,a1,a2 + 80008d18: 86ba mv a3,a4 + 80008d1a: e399 bnez a5,80008d20 <__subtf3+0x60> + 80008d1c: 00174693 xori a3,a4,1 + 80008d20: 6721 lui a4,0x8 + 80008d22: 411307bb subw a5,t1,a7 + 80008d26: 177d addi a4,a4,-1 # 7fff + 80008d28: 35369263 bne a3,s3,8000906c <__subtf3+0x3ac> + 80008d2c: 0ef05b63 blez a5,80008e22 <__subtf3+0x162> + 80008d30: 06089b63 bnez a7,80008da6 <__subtf3+0xe6> + 80008d34: 00c5e6b3 or a3,a1,a2 + 80008d38: e699 bnez a3,80008d46 <__subtf3+0x86> + 80008d3a: 04e30863 beq t1,a4,80008d8a <__subtf3+0xca> + 80008d3e: 85c2 mv a1,a6 + 80008d40: 862a mv a2,a0 + 80008d42: 4781 li a5,0 + 80008d44: a2d5 j 80008f28 <__subtf3+0x268> + 80008d46: 37fd addiw a5,a5,-1 + 80008d48: ef9d bnez a5,80008d86 <__subtf3+0xc6> + 80008d4a: 962a add a2,a2,a0 + 80008d4c: 982e add a6,a6,a1 + 80008d4e: 00a63533 sltu a0,a2,a0 + 80008d52: 00a805b3 add a1,a6,a0 + 80008d56: 00c59793 slli a5,a1,0xc + 80008d5a: 0207d463 bgez a5,80008d82 <__subtf3+0xc2> + 80008d5e: 67a1 lui a5,0x8 + 80008d60: 0485 addi s1,s1,1 + 80008d62: 17fd addi a5,a5,-1 # 7fff + 80008d64: 2cf48a63 beq s1,a5,80009038 <__subtf3+0x378> + 80008d68: 57fd li a5,-1 + 80008d6a: 17ce slli a5,a5,0x33 + 80008d6c: 17fd addi a5,a5,-1 + 80008d6e: 8fed and a5,a5,a1 + 80008d70: 00165713 srli a4,a2,0x1 + 80008d74: 8a05 andi a2,a2,1 + 80008d76: 8f51 or a4,a4,a2 + 80008d78: 03f79613 slli a2,a5,0x3f + 80008d7c: 8e59 or a2,a2,a4 + 80008d7e: 0017d593 srli a1,a5,0x1 + 80008d82: 4781 li a5,0 + 80008d84: a4a9 j 80008fce <__subtf3+0x30e> + 80008d86: 02e31563 bne t1,a4,80008db0 <__subtf3+0xf0> + 80008d8a: 00a86633 or a2,a6,a0 + 80008d8e: 6c060b63 beqz a2,80009464 <__subtf3+0x7a4> + 80008d92: 03285793 srli a5,a6,0x32 + 80008d96: 8b85 andi a5,a5,1 + 80008d98: 0017c793 xori a5,a5,1 + 80008d9c: 0047979b slliw a5,a5,0x4 + 80008da0: 85c2 mv a1,a6 + 80008da2: 862a mv a2,a0 + 80008da4: a251 j 80008f28 <__subtf3+0x268> + 80008da6: fee302e3 beq t1,a4,80008d8a <__subtf3+0xca> + 80008daa: 4705 li a4,1 + 80008dac: 174e slli a4,a4,0x33 + 80008dae: 8dd9 or a1,a1,a4 + 80008db0: 07400713 li a4,116 + 80008db4: 06f74263 blt a4,a5,80008e18 <__subtf3+0x158> + 80008db8: 03f00713 li a4,63 + 80008dbc: 02f74a63 blt a4,a5,80008df0 <__subtf3+0x130> + 80008dc0: 04000693 li a3,64 + 80008dc4: 9e9d subw a3,a3,a5 + 80008dc6: 00d59733 sll a4,a1,a3 + 80008dca: 00f658b3 srl a7,a2,a5 + 80008dce: 00d616b3 sll a3,a2,a3 + 80008dd2: 01176733 or a4,a4,a7 + 80008dd6: 00d036b3 snez a3,a3 + 80008dda: 8f55 or a4,a4,a3 + 80008ddc: 00f5d7b3 srl a5,a1,a5 + 80008de0: 00a70633 add a2,a4,a0 + 80008de4: 97c2 add a5,a5,a6 + 80008de6: 00e63733 sltu a4,a2,a4 + 80008dea: 00e785b3 add a1,a5,a4 + 80008dee: b7a5 j 80008d56 <__subtf3+0x96> + 80008df0: fc07871b addiw a4,a5,-64 + 80008df4: 04000893 li a7,64 + 80008df8: 00e5d733 srl a4,a1,a4 + 80008dfc: 4681 li a3,0 + 80008dfe: 01178763 beq a5,a7,80008e0c <__subtf3+0x14c> + 80008e02: 08000693 li a3,128 + 80008e06: 9e9d subw a3,a3,a5 + 80008e08: 00d596b3 sll a3,a1,a3 + 80008e0c: 8ed1 or a3,a3,a2 + 80008e0e: 00d036b3 snez a3,a3 + 80008e12: 8f55 or a4,a4,a3 + 80008e14: 4781 li a5,0 + 80008e16: b7e9 j 80008de0 <__subtf3+0x120> + 80008e18: 00c5e733 or a4,a1,a2 + 80008e1c: 00e03733 snez a4,a4 + 80008e20: bfd5 j 80008e14 <__subtf3+0x154> + 80008e22: c7e1 beqz a5,80008eea <__subtf3+0x22a> + 80008e24: 08031163 bnez t1,80008ea6 <__subtf3+0x1e6> + 80008e28: 00a866b3 or a3,a6,a0 + 80008e2c: e285 bnez a3,80008e4c <__subtf3+0x18c> + 80008e2e: 62e89d63 bne a7,a4,80009468 <__subtf3+0x7a8> + 80008e32: 00c5e7b3 or a5,a1,a2 + 80008e36: 62078c63 beqz a5,8000946e <__subtf3+0x7ae> + 80008e3a: 0325d793 srli a5,a1,0x32 + 80008e3e: 8b85 andi a5,a5,1 + 80008e40: 0017c793 xori a5,a5,1 + 80008e44: 0047979b slliw a5,a5,0x4 + 80008e48: 84c6 mv s1,a7 + 80008e4a: a8f9 j 80008f28 <__subtf3+0x268> + 80008e4c: fff7c793 not a5,a5 + 80008e50: 2781 sext.w a5,a5 + 80008e52: eb89 bnez a5,80008e64 <__subtf3+0x1a4> + 80008e54: 962a add a2,a2,a0 + 80008e56: 982e add a6,a6,a1 + 80008e58: 00a63533 sltu a0,a2,a0 + 80008e5c: 00a805b3 add a1,a6,a0 + 80008e60: 84c6 mv s1,a7 + 80008e62: bdd5 j 80008d56 <__subtf3+0x96> + 80008e64: fce887e3 beq a7,a4,80008e32 <__subtf3+0x172> + 80008e68: 07400713 li a4,116 + 80008e6c: 06f74a63 blt a4,a5,80008ee0 <__subtf3+0x220> + 80008e70: 03f00713 li a4,63 + 80008e74: 04f74263 blt a4,a5,80008eb8 <__subtf3+0x1f8> + 80008e78: 04000693 li a3,64 + 80008e7c: 9e9d subw a3,a3,a5 + 80008e7e: 00d81733 sll a4,a6,a3 + 80008e82: 00f55333 srl t1,a0,a5 + 80008e86: 00d516b3 sll a3,a0,a3 + 80008e8a: 00676733 or a4,a4,t1 + 80008e8e: 00d036b3 snez a3,a3 + 80008e92: 8f55 or a4,a4,a3 + 80008e94: 00f857b3 srl a5,a6,a5 + 80008e98: 963a add a2,a2,a4 + 80008e9a: 97ae add a5,a5,a1 + 80008e9c: 00e63733 sltu a4,a2,a4 + 80008ea0: 00e785b3 add a1,a5,a4 + 80008ea4: bf75 j 80008e60 <__subtf3+0x1a0> + 80008ea6: f8e886e3 beq a7,a4,80008e32 <__subtf3+0x172> + 80008eaa: 4705 li a4,1 + 80008eac: 174e slli a4,a4,0x33 + 80008eae: 40f007bb negw a5,a5 + 80008eb2: 00e86833 or a6,a6,a4 + 80008eb6: bf4d j 80008e68 <__subtf3+0x1a8> + 80008eb8: fc07871b addiw a4,a5,-64 + 80008ebc: 04000313 li t1,64 + 80008ec0: 00e85733 srl a4,a6,a4 + 80008ec4: 4681 li a3,0 + 80008ec6: 00678763 beq a5,t1,80008ed4 <__subtf3+0x214> + 80008eca: 08000693 li a3,128 + 80008ece: 9e9d subw a3,a3,a5 + 80008ed0: 00d816b3 sll a3,a6,a3 + 80008ed4: 8ec9 or a3,a3,a0 + 80008ed6: 00d036b3 snez a3,a3 + 80008eda: 8f55 or a4,a4,a3 + 80008edc: 4781 li a5,0 + 80008ede: bf6d j 80008e98 <__subtf3+0x1d8> + 80008ee0: 00a86733 or a4,a6,a0 + 80008ee4: 00e03733 snez a4,a4 + 80008ee8: bfd5 j 80008edc <__subtf3+0x21c> + 80008eea: 00130493 addi s1,t1,1 + 80008eee: 03149693 slli a3,s1,0x31 + 80008ef2: 92c9 srli a3,a3,0x32 + 80008ef4: e2e1 bnez a3,80008fb4 <__subtf3+0x2f4> + 80008ef6: 00a86733 or a4,a6,a0 + 80008efa: 06031e63 bnez t1,80008f76 <__subtf3+0x2b6> + 80008efe: 42070a63 beqz a4,80009332 <__subtf3+0x672> + 80008f02: 00c5e733 or a4,a1,a2 + 80008f06: 4e070563 beqz a4,800093f0 <__subtf3+0x730> + 80008f0a: 962a add a2,a2,a0 + 80008f0c: 982e add a6,a6,a1 + 80008f0e: 00a63533 sltu a0,a2,a0 + 80008f12: 00a805b3 add a1,a6,a0 + 80008f16: 00c59713 slli a4,a1,0xc + 80008f1a: 40075c63 bgez a4,80009332 <__subtf3+0x672> + 80008f1e: 577d li a4,-1 + 80008f20: 174e slli a4,a4,0x33 + 80008f22: 177d addi a4,a4,-1 + 80008f24: 8df9 and a1,a1,a4 + 80008f26: 4485 li s1,1 + 80008f28: 6721 lui a4,0x8 + 80008f2a: 03d59513 slli a0,a1,0x3d + 80008f2e: 820d srli a2,a2,0x3 + 80008f30: 177d addi a4,a4,-1 # 7fff + 80008f32: 8d51 or a0,a0,a2 + 80008f34: 818d srli a1,a1,0x3 + 80008f36: 00e49963 bne s1,a4,80008f48 <__subtf3+0x288> + 80008f3a: 8d4d or a0,a0,a1 + 80008f3c: 4581 li a1,0 + 80008f3e: c509 beqz a0,80008f48 <__subtf3+0x288> + 80008f40: 4585 li a1,1 + 80008f42: 15be slli a1,a1,0x2f + 80008f44: 4501 li a0,0 + 80008f46: 4981 li s3,0 + 80008f48: 14c6 slli s1,s1,0x31 + 80008f4a: 0019f993 andi s3,s3,1 + 80008f4e: 90c5 srli s1,s1,0x31 + 80008f50: 09be slli s3,s3,0xf + 80008f52: 0099e9b3 or s3,s3,s1 + 80008f56: 05c2 slli a1,a1,0x10 + 80008f58: 19c2 slli s3,s3,0x30 + 80008f5a: 81c1 srli a1,a1,0x10 + 80008f5c: 0135e5b3 or a1,a1,s3 + 80008f60: c399 beqz a5,80008f66 <__subtf3+0x2a6> + 80008f62: 0017a073 csrs fflags,a5 + 80008f66: 70a2 ld ra,40(sp) + 80008f68: 7402 ld s0,32(sp) + 80008f6a: 64e2 ld s1,24(sp) + 80008f6c: 6942 ld s2,16(sp) + 80008f6e: 69a2 ld s3,8(sp) + 80008f70: 6a02 ld s4,0(sp) + 80008f72: 6145 addi sp,sp,48 + 80008f74: 8082 ret + 80008f76: cb01 beqz a4,80008f86 <__subtf3+0x2c6> + 80008f78: 03285793 srli a5,a6,0x32 + 80008f7c: 8b85 andi a5,a5,1 + 80008f7e: 0017c793 xori a5,a5,1 + 80008f82: 0047979b slliw a5,a5,0x4 + 80008f86: 66a1 lui a3,0x8 + 80008f88: 16fd addi a3,a3,-1 # 7fff + 80008f8a: 00d89a63 bne a7,a3,80008f9e <__subtf3+0x2de> + 80008f8e: 00c5e6b3 or a3,a1,a2 + 80008f92: c691 beqz a3,80008f9e <__subtf3+0x2de> + 80008f94: 00d59693 slli a3,a1,0xd + 80008f98: 0006c363 bltz a3,80008f9e <__subtf3+0x2de> + 80008f9c: 47c1 li a5,16 + 80008f9e: cb01 beqz a4,80008fae <__subtf3+0x2ee> + 80008fa0: 8dd1 or a1,a1,a2 + 80008fa2: 50058663 beqz a1,800094ae <__subtf3+0x7ee> + 80008fa6: 4585 li a1,1 + 80008fa8: 4981 li s3,0 + 80008faa: 15ca slli a1,a1,0x32 + 80008fac: 4601 li a2,0 + 80008fae: 64a1 lui s1,0x8 + 80008fb0: 14fd addi s1,s1,-1 # 7fff + 80008fb2: bf9d j 80008f28 <__subtf3+0x268> + 80008fb4: 00e48f63 beq s1,a4,80008fd2 <__subtf3+0x312> + 80008fb8: 962a add a2,a2,a0 + 80008fba: 982e add a6,a6,a1 + 80008fbc: 00a63533 sltu a0,a2,a0 + 80008fc0: 982a add a6,a6,a0 + 80008fc2: 03f81713 slli a4,a6,0x3f + 80008fc6: 8205 srli a2,a2,0x1 + 80008fc8: 8e59 or a2,a2,a4 + 80008fca: 00185593 srli a1,a6,0x1 + 80008fce: 4701 li a4,0 + 80008fd0: a66d j 8000937a <__subtf3+0x6ba> + 80008fd2: 06090563 beqz s2,8000903c <__subtf3+0x37c> + 80008fd6: 470d li a4,3 + 80008fd8: 02e91a63 bne s2,a4,8000900c <__subtf3+0x34c> + 80008fdc: 06098063 beqz s3,8000903c <__subtf3+0x37c> + 80008fe0: 64a1 lui s1,0x8 + 80008fe2: 567d li a2,-1 + 80008fe4: 14f9 addi s1,s1,-2 # 7ffe + 80008fe6: 85b2 mv a1,a2 + 80008fe8: 4715 li a4,5 + 80008fea: 468d li a3,3 + 80008fec: 42d90563 beq s2,a3,80009416 <__subtf3+0x756> + 80008ff0: 42091b63 bnez s2,80009426 <__subtf3+0x766> + 80008ff4: 00f67693 andi a3,a2,15 + 80008ff8: 4511 li a0,4 + 80008ffa: 42a68663 beq a3,a0,80009426 <__subtf3+0x766> + 80008ffe: 00a606b3 add a3,a2,a0 + 80009002: 00c6b533 sltu a0,a3,a2 + 80009006: 95aa add a1,a1,a0 + 80009008: 8636 mv a2,a3 + 8000900a: a931 j 80009426 <__subtf3+0x766> + 8000900c: 4789 li a5,2 + 8000900e: 04f90663 beq s2,a5,8000905a <__subtf3+0x39a> + 80009012: 64a1 lui s1,0x8 + 80009014: 55fd li a1,-1 + 80009016: 14f9 addi s1,s1,-2 # 7ffe + 80009018: 862e mv a2,a1 + 8000901a: 4795 li a5,5 + 8000901c: 00c59713 slli a4,a1,0xc + 80009020: f00754e3 bgez a4,80008f28 <__subtf3+0x268> + 80009024: 6721 lui a4,0x8 + 80009026: 0485 addi s1,s1,1 + 80009028: 177d addi a4,a4,-1 # 7fff + 8000902a: 40e48663 beq s1,a4,80009436 <__subtf3+0x776> + 8000902e: 577d li a4,-1 + 80009030: 174e slli a4,a4,0x33 + 80009032: 177d addi a4,a4,-1 + 80009034: 8df9 and a1,a1,a4 + 80009036: bdcd j 80008f28 <__subtf3+0x268> + 80009038: 00091663 bnez s2,80009044 <__subtf3+0x384> + 8000903c: 4581 li a1,0 + 8000903e: 4601 li a2,0 + 80009040: 4795 li a5,5 + 80009042: b5dd j 80008f28 <__subtf3+0x268> + 80009044: 478d li a5,3 + 80009046: fcf913e3 bne s2,a5,8000900c <__subtf3+0x34c> + 8000904a: fe0989e3 beqz s3,8000903c <__subtf3+0x37c> + 8000904e: 64a1 lui s1,0x8 + 80009050: 567d li a2,-1 + 80009052: 14f9 addi s1,s1,-2 # 7ffe + 80009054: 85b2 mv a1,a2 + 80009056: 4781 li a5,0 + 80009058: bf41 j 80008fe8 <__subtf3+0x328> + 8000905a: fe0991e3 bnez s3,8000903c <__subtf3+0x37c> + 8000905e: 64a1 lui s1,0x8 + 80009060: 567d li a2,-1 + 80009062: 14f9 addi s1,s1,-2 # 7ffe + 80009064: 85b2 mv a1,a2 + 80009066: 4715 li a4,5 + 80009068: 87ba mv a5,a4 + 8000906a: bf4d j 8000901c <__subtf3+0x35c> + 8000906c: 0af05d63 blez a5,80009126 <__subtf3+0x466> + 80009070: 06089c63 bnez a7,800090e8 <__subtf3+0x428> + 80009074: 00c5e6b3 or a3,a1,a2 + 80009078: cc0681e3 beqz a3,80008d3a <__subtf3+0x7a> + 8000907c: 37fd addiw a5,a5,-1 + 8000907e: e395 bnez a5,800090a2 <__subtf3+0x3e2> + 80009080: 40c50633 sub a2,a0,a2 + 80009084: 40b80833 sub a6,a6,a1 + 80009088: 00c53533 sltu a0,a0,a2 + 8000908c: 40a805b3 sub a1,a6,a0 + 80009090: 00c59793 slli a5,a1,0xc + 80009094: ce07d7e3 bgez a5,80008d82 <__subtf3+0xc2> + 80009098: 00d59413 slli s0,a1,0xd + 8000909c: 8035 srli s0,s0,0xd + 8000909e: 8a32 mv s4,a2 + 800090a0: a489 j 800092e2 <__subtf3+0x622> + 800090a2: cee304e3 beq t1,a4,80008d8a <__subtf3+0xca> + 800090a6: 07400713 li a4,116 + 800090aa: 06f74963 blt a4,a5,8000911c <__subtf3+0x45c> + 800090ae: 03f00713 li a4,63 + 800090b2: 04f74163 blt a4,a5,800090f4 <__subtf3+0x434> + 800090b6: 04000693 li a3,64 + 800090ba: 9e9d subw a3,a3,a5 + 800090bc: 00d59733 sll a4,a1,a3 + 800090c0: 00f658b3 srl a7,a2,a5 + 800090c4: 00d616b3 sll a3,a2,a3 + 800090c8: 01176733 or a4,a4,a7 + 800090cc: 00d036b3 snez a3,a3 + 800090d0: 8f55 or a4,a4,a3 + 800090d2: 00f5d7b3 srl a5,a1,a5 + 800090d6: 40e50633 sub a2,a0,a4 + 800090da: 40f807b3 sub a5,a6,a5 + 800090de: 00c53533 sltu a0,a0,a2 + 800090e2: 40a785b3 sub a1,a5,a0 + 800090e6: b76d j 80009090 <__subtf3+0x3d0> + 800090e8: cae301e3 beq t1,a4,80008d8a <__subtf3+0xca> + 800090ec: 4705 li a4,1 + 800090ee: 174e slli a4,a4,0x33 + 800090f0: 8dd9 or a1,a1,a4 + 800090f2: bf55 j 800090a6 <__subtf3+0x3e6> + 800090f4: fc07871b addiw a4,a5,-64 + 800090f8: 04000893 li a7,64 + 800090fc: 00e5d733 srl a4,a1,a4 + 80009100: 4681 li a3,0 + 80009102: 01178763 beq a5,a7,80009110 <__subtf3+0x450> + 80009106: 08000693 li a3,128 + 8000910a: 9e9d subw a3,a3,a5 + 8000910c: 00d596b3 sll a3,a1,a3 + 80009110: 8ed1 or a3,a3,a2 + 80009112: 00d036b3 snez a3,a3 + 80009116: 8f55 or a4,a4,a3 + 80009118: 4781 li a5,0 + 8000911a: bf75 j 800090d6 <__subtf3+0x416> + 8000911c: 00c5e733 or a4,a1,a2 + 80009120: 00e03733 snez a4,a4 + 80009124: bfd5 j 80009118 <__subtf3+0x458> + 80009126: c3f5 beqz a5,8000920a <__subtf3+0x54a> + 80009128: 08031c63 bnez t1,800091c0 <__subtf3+0x500> + 8000912c: 00a86333 or t1,a6,a0 + 80009130: 02031263 bnez t1,80009154 <__subtf3+0x494> + 80009134: 89b6 mv s3,a3 + 80009136: 32e89963 bne a7,a4,80009468 <__subtf3+0x7a8> + 8000913a: 00c5e7b3 or a5,a1,a2 + 8000913e: 32078763 beqz a5,8000946c <__subtf3+0x7ac> + 80009142: 0325d793 srli a5,a1,0x32 + 80009146: 8b85 andi a5,a5,1 + 80009148: 0017c793 xori a5,a5,1 + 8000914c: 0047979b slliw a5,a5,0x4 + 80009150: 89b6 mv s3,a3 + 80009152: b9dd j 80008e48 <__subtf3+0x188> + 80009154: fff7c793 not a5,a5 + 80009158: 2781 sext.w a5,a5 + 8000915a: ef89 bnez a5,80009174 <__subtf3+0x4b4> + 8000915c: 40a60533 sub a0,a2,a0 + 80009160: 00a637b3 sltu a5,a2,a0 + 80009164: 41058833 sub a6,a1,a6 + 80009168: 862a mv a2,a0 + 8000916a: 40f805b3 sub a1,a6,a5 + 8000916e: 84c6 mv s1,a7 + 80009170: 89b6 mv s3,a3 + 80009172: bf39 j 80009090 <__subtf3+0x3d0> + 80009174: fce883e3 beq a7,a4,8000913a <__subtf3+0x47a> + 80009178: 07400713 li a4,116 + 8000917c: 08f74263 blt a4,a5,80009200 <__subtf3+0x540> + 80009180: 03f00713 li a4,63 + 80009184: 04f74763 blt a4,a5,800091d2 <__subtf3+0x512> + 80009188: 04000313 li t1,64 + 8000918c: 40f3033b subw t1,t1,a5 + 80009190: 00681733 sll a4,a6,t1 + 80009194: 00f55e33 srl t3,a0,a5 + 80009198: 00651333 sll t1,a0,t1 + 8000919c: 01c76733 or a4,a4,t3 + 800091a0: 00603333 snez t1,t1 + 800091a4: 00676733 or a4,a4,t1 + 800091a8: 00f857b3 srl a5,a6,a5 + 800091ac: 40e60733 sub a4,a2,a4 + 800091b0: 00e63533 sltu a0,a2,a4 + 800091b4: 40f587b3 sub a5,a1,a5 + 800091b8: 863a mv a2,a4 + 800091ba: 40a785b3 sub a1,a5,a0 + 800091be: bf45 j 8000916e <__subtf3+0x4ae> + 800091c0: f6e88de3 beq a7,a4,8000913a <__subtf3+0x47a> + 800091c4: 4705 li a4,1 + 800091c6: 174e slli a4,a4,0x33 + 800091c8: 40f007bb negw a5,a5 + 800091cc: 00e86833 or a6,a6,a4 + 800091d0: b765 j 80009178 <__subtf3+0x4b8> + 800091d2: fc07871b addiw a4,a5,-64 + 800091d6: 04000e13 li t3,64 + 800091da: 00e85733 srl a4,a6,a4 + 800091de: 4301 li t1,0 + 800091e0: 01c78863 beq a5,t3,800091f0 <__subtf3+0x530> + 800091e4: 08000313 li t1,128 + 800091e8: 40f3033b subw t1,t1,a5 + 800091ec: 00681333 sll t1,a6,t1 + 800091f0: 00a36333 or t1,t1,a0 + 800091f4: 00603333 snez t1,t1 + 800091f8: 00676733 or a4,a4,t1 + 800091fc: 4781 li a5,0 + 800091fe: b77d j 800091ac <__subtf3+0x4ec> + 80009200: 00a86733 or a4,a6,a0 + 80009204: 00e03733 snez a4,a4 + 80009208: bfd5 j 800091fc <__subtf3+0x53c> + 8000920a: 00130e13 addi t3,t1,1 + 8000920e: 031e1e93 slli t4,t3,0x31 + 80009212: 032ede93 srli t4,t4,0x32 + 80009216: 0a0e9163 bnez t4,800092b8 <__subtf3+0x5f8> + 8000921a: 00c5ee33 or t3,a1,a2 + 8000921e: 00a86eb3 or t4,a6,a0 + 80009222: 06031063 bnez t1,80009282 <__subtf3+0x5c2> + 80009226: 000e9b63 bnez t4,8000923c <__subtf3+0x57c> + 8000922a: 040e1063 bnez t3,8000926a <__subtf3+0x5aa> + 8000922e: ffe90993 addi s3,s2,-2 + 80009232: 0019b993 seqz s3,s3 + 80009236: 4581 li a1,0 + 80009238: 4601 li a2,0 + 8000923a: b1fd j 80008f28 <__subtf3+0x268> + 8000923c: 1a0e0a63 beqz t3,800093f0 <__subtf3+0x730> + 80009240: 40c508b3 sub a7,a0,a2 + 80009244: 01153333 sltu t1,a0,a7 + 80009248: 40b80733 sub a4,a6,a1 + 8000924c: 40670733 sub a4,a4,t1 + 80009250: 00c71313 slli t1,a4,0xc + 80009254: 00035d63 bgez t1,8000926e <__subtf3+0x5ae> + 80009258: 40a60533 sub a0,a2,a0 + 8000925c: 00a637b3 sltu a5,a2,a0 + 80009260: 41058833 sub a6,a1,a6 + 80009264: 862a mv a2,a0 + 80009266: 40f805b3 sub a1,a6,a5 + 8000926a: 89b6 mv s3,a3 + 8000926c: a0d9 j 80009332 <__subtf3+0x672> + 8000926e: 00e8e633 or a2,a7,a4 + 80009272: 18061263 bnez a2,800093f6 <__subtf3+0x736> + 80009276: ffe90993 addi s3,s2,-2 + 8000927a: 0019b993 seqz s3,s3 + 8000927e: 4581 li a1,0 + 80009280: b165 j 80008f28 <__subtf3+0x268> + 80009282: 200e8863 beqz t4,80009492 <__subtf3+0x7d2> + 80009286: 03285793 srli a5,a6,0x32 + 8000928a: 8b85 andi a5,a5,1 + 8000928c: 0017c793 xori a5,a5,1 + 80009290: 0047979b slliw a5,a5,0x4 + 80009294: 00e89c63 bne a7,a4,800092ac <__subtf3+0x5ec> + 80009298: 200e0963 beqz t3,800094aa <__subtf3+0x7ea> + 8000929c: 00d59713 slli a4,a1,0xd + 800092a0: 20075a63 bgez a4,800094b4 <__subtf3+0x7f4> + 800092a4: 89b6 mv s3,a3 + 800092a6: d00e84e3 beqz t4,80008fae <__subtf3+0x2ee> + 800092aa: b9f5 j 80008fa6 <__subtf3+0x2e6> + 800092ac: 1c0e1463 bnez t3,80009474 <__subtf3+0x7b4> + 800092b0: 85c2 mv a1,a6 + 800092b2: 862a mv a2,a0 + 800092b4: 84ba mv s1,a4 + 800092b6: b98d j 80008f28 <__subtf3+0x268> + 800092b8: 40c50733 sub a4,a0,a2 + 800092bc: 00e538b3 sltu a7,a0,a4 + 800092c0: 40b80433 sub s0,a6,a1 + 800092c4: 41140433 sub s0,s0,a7 + 800092c8: 00c41893 slli a7,s0,0xc + 800092cc: 8a3a mv s4,a4 + 800092ce: 0a08de63 bgez a7,8000938a <__subtf3+0x6ca> + 800092d2: 40a60a33 sub s4,a2,a0 + 800092d6: 41058433 sub s0,a1,a6 + 800092da: 01463633 sltu a2,a2,s4 + 800092de: 8c11 sub s0,s0,a2 + 800092e0: 89b6 mv s3,a3 + 800092e2: cc55 beqz s0,8000939e <__subtf3+0x6de> + 800092e4: 8522 mv a0,s0 + 800092e6: 3dc000ef jal 800096c2 <__clzdi2> + 800092ea: ff45061b addiw a2,a0,-12 + 800092ee: 04000593 li a1,64 + 800092f2: 9d91 subw a1,a1,a2 + 800092f4: 00c41433 sll s0,s0,a2 + 800092f8: 00ba55b3 srl a1,s4,a1 + 800092fc: 8dc1 or a1,a1,s0 + 800092fe: 00ca1433 sll s0,s4,a2 + 80009302: 0e964063 blt a2,s1,800093e2 <__subtf3+0x722> + 80009306: 9e05 subw a2,a2,s1 + 80009308: 0016071b addiw a4,a2,1 + 8000930c: 03f00793 li a5,63 + 80009310: 0ae7c563 blt a5,a4,800093ba <__subtf3+0x6fa> + 80009314: 04000793 li a5,64 + 80009318: 9f99 subw a5,a5,a4 + 8000931a: 00f59633 sll a2,a1,a5 + 8000931e: 00e456b3 srl a3,s0,a4 + 80009322: 00f417b3 sll a5,s0,a5 + 80009326: 8e55 or a2,a2,a3 + 80009328: 00f037b3 snez a5,a5 + 8000932c: 8e5d or a2,a2,a5 + 8000932e: 00e5d5b3 srl a1,a1,a4 + 80009332: 00c5e7b3 or a5,a1,a2 + 80009336: 14078463 beqz a5,8000947e <__subtf3+0x7be> + 8000933a: 00161693 slli a3,a2,0x1 + 8000933e: 03f65713 srli a4,a2,0x3f + 80009342: 00159793 slli a5,a1,0x1 + 80009346: 0076f513 andi a0,a3,7 + 8000934a: 97ba add a5,a5,a4 + 8000934c: 4701 li a4,0 + 8000934e: c10d beqz a0,80009370 <__subtf3+0x6b0> + 80009350: 4709 li a4,2 + 80009352: 0ae90e63 beq s2,a4,8000940e <__subtf3+0x74e> + 80009356: 470d li a4,3 + 80009358: 0ae90263 beq s2,a4,800093fc <__subtf3+0x73c> + 8000935c: 4705 li a4,1 + 8000935e: 00091963 bnez s2,80009370 <__subtf3+0x6b0> + 80009362: 00f6f513 andi a0,a3,15 + 80009366: 4811 li a6,4 + 80009368: ffc6b693 sltiu a3,a3,-4 + 8000936c: 09051d63 bne a0,a6,80009406 <__subtf3+0x746> + 80009370: 93d1 srli a5,a5,0x34 + 80009372: 8b85 andi a5,a5,1 + 80009374: 0017c793 xori a5,a5,1 + 80009378: 4481 li s1,0 + 8000937a: 00767693 andi a3,a2,7 + 8000937e: c6c5 beqz a3,80009426 <__subtf3+0x766> + 80009380: 4709 li a4,2 + 80009382: 08e90f63 beq s2,a4,80009420 <__subtf3+0x760> + 80009386: 4705 li a4,1 + 80009388: b18d j 80008fea <__subtf3+0x32a> + 8000938a: 00876633 or a2,a4,s0 + 8000938e: fa31 bnez a2,800092e2 <__subtf3+0x622> + 80009390: ffe90993 addi s3,s2,-2 + 80009394: 0019b993 seqz s3,s3 + 80009398: 4581 li a1,0 + 8000939a: 4481 li s1,0 + 8000939c: b671 j 80008f28 <__subtf3+0x268> + 8000939e: 8552 mv a0,s4 + 800093a0: 322000ef jal 800096c2 <__clzdi2> + 800093a4: 0345061b addiw a2,a0,52 + 800093a8: 03f00793 li a5,63 + 800093ac: f4c7d1e3 bge a5,a2,800092ee <__subtf3+0x62e> + 800093b0: ff45059b addiw a1,a0,-12 + 800093b4: 00ba15b3 sll a1,s4,a1 + 800093b8: b7a9 j 80009302 <__subtf3+0x642> + 800093ba: fc16061b addiw a2,a2,-63 + 800093be: 04000693 li a3,64 + 800093c2: 00c5d633 srl a2,a1,a2 + 800093c6: 4781 li a5,0 + 800093c8: 00d70763 beq a4,a3,800093d6 <__subtf3+0x716> + 800093cc: 08000793 li a5,128 + 800093d0: 9f99 subw a5,a5,a4 + 800093d2: 00f597b3 sll a5,a1,a5 + 800093d6: 8fc1 or a5,a5,s0 + 800093d8: 00f037b3 snez a5,a5 + 800093dc: 8e5d or a2,a2,a5 + 800093de: 4581 li a1,0 + 800093e0: bf89 j 80009332 <__subtf3+0x672> + 800093e2: 57fd li a5,-1 + 800093e4: 17ce slli a5,a5,0x33 + 800093e6: 17fd addi a5,a5,-1 + 800093e8: 8c91 sub s1,s1,a2 + 800093ea: 8dfd and a1,a1,a5 + 800093ec: 8622 mv a2,s0 + 800093ee: ba51 j 80008d82 <__subtf3+0xc2> + 800093f0: 85c2 mv a1,a6 + 800093f2: 862a mv a2,a0 + 800093f4: bf3d j 80009332 <__subtf3+0x672> + 800093f6: 85ba mv a1,a4 + 800093f8: 8646 mv a2,a7 + 800093fa: bf25 j 80009332 <__subtf3+0x672> + 800093fc: 4705 li a4,1 + 800093fe: f60999e3 bnez s3,80009370 <__subtf3+0x6b0> + 80009402: ff86b693 sltiu a3,a3,-8 + 80009406: 0016b693 seqz a3,a3 + 8000940a: 97b6 add a5,a5,a3 + 8000940c: b795 j 80009370 <__subtf3+0x6b0> + 8000940e: 4705 li a4,1 + 80009410: f60980e3 beqz s3,80009370 <__subtf3+0x6b0> + 80009414: b7fd j 80009402 <__subtf3+0x742> + 80009416: 00099863 bnez s3,80009426 <__subtf3+0x766> + 8000941a: 00860693 addi a3,a2,8 + 8000941e: b6d5 j 80009002 <__subtf3+0x342> + 80009420: 4705 li a4,1 + 80009422: fe099ce3 bnez s3,8000941a <__subtf3+0x75a> + 80009426: c40781e3 beqz a5,80009068 <__subtf3+0x3a8> + 8000942a: 00177793 andi a5,a4,1 + 8000942e: 0017979b slliw a5,a5,0x1 + 80009432: 8fd9 or a5,a5,a4 + 80009434: b6e5 j 8000901c <__subtf3+0x35c> + 80009436: 4601 li a2,0 + 80009438: 02090163 beqz s2,8000945a <__subtf3+0x79a> + 8000943c: 470d li a4,3 + 8000943e: 00e91863 bne s2,a4,8000944e <__subtf3+0x78e> + 80009442: 00098c63 beqz s3,8000945a <__subtf3+0x79a> + 80009446: 64a1 lui s1,0x8 + 80009448: 567d li a2,-1 + 8000944a: 14f9 addi s1,s1,-2 # 7ffe + 8000944c: a039 j 8000945a <__subtf3+0x79a> + 8000944e: ffe90713 addi a4,s2,-2 + 80009452: fb75 bnez a4,80009446 <__subtf3+0x786> + 80009454: 0019f713 andi a4,s3,1 + 80009458: d77d beqz a4,80009446 <__subtf3+0x786> + 8000945a: 0057e793 ori a5,a5,5 + 8000945e: 2781 sext.w a5,a5 + 80009460: 85b2 mv a1,a2 + 80009462: b4d9 j 80008f28 <__subtf3+0x268> + 80009464: 4581 li a1,0 + 80009466: b8f1 j 80008d42 <__subtf3+0x82> + 80009468: 84c6 mv s1,a7 + 8000946a: b8e1 j 80008d42 <__subtf3+0x82> + 8000946c: 89b6 mv s3,a3 + 8000946e: 4581 li a1,0 + 80009470: 4601 li a2,0 + 80009472: bad9 j 80008e48 <__subtf3+0x188> + 80009474: 4585 li a1,1 + 80009476: 4981 li s3,0 + 80009478: 15ca slli a1,a1,0x32 + 8000947a: 4601 li a2,0 + 8000947c: bd25 j 800092b4 <__subtf3+0x5f4> + 8000947e: 4581 li a1,0 + 80009480: 4601 li a2,0 + 80009482: bf21 j 8000939a <__subtf3+0x6da> + 80009484: 4585 li a1,1 + 80009486: 64a1 lui s1,0x8 + 80009488: 4981 li s3,0 + 8000948a: 15ca slli a1,a1,0x32 + 8000948c: 4601 li a2,0 + 8000948e: 14fd addi s1,s1,-1 # 7fff + 80009490: a819 j 800094a6 <__subtf3+0x7e6> + 80009492: e0e883e3 beq a7,a4,80009298 <__subtf3+0x5d8> + 80009496: 89b6 mv s3,a3 + 80009498: e00e1ee3 bnez t3,800092b4 <__subtf3+0x5f4> + 8000949c: 4585 li a1,1 + 8000949e: 4981 li s3,0 + 800094a0: 15ca slli a1,a1,0x32 + 800094a2: 4601 li a2,0 + 800094a4: 84ba mv s1,a4 + 800094a6: 47c1 li a5,16 + 800094a8: b441 j 80008f28 <__subtf3+0x268> + 800094aa: fc0e8de3 beqz t4,80009484 <__subtf3+0x7c4> + 800094ae: 85c2 mv a1,a6 + 800094b0: 862a mv a2,a0 + 800094b2: bcf5 j 80008fae <__subtf3+0x2ee> + 800094b4: 47c1 li a5,16 + 800094b6: b3fd j 800092a4 <__subtf3+0x5e4> -0000000080008dd0 <__unordtf2>: - 80008dd0: 002027f3 frrm a5 - 80008dd4: 00159793 slli a5,a1,0x1 - 80008dd8: 00169813 slli a6,a3,0x1 - 80008ddc: 01059713 slli a4,a1,0x10 - 80008de0: 0317d593 srli a1,a5,0x31 - 80008de4: 01069793 slli a5,a3,0x10 - 80008de8: 03185693 srli a3,a6,0x31 - 80008dec: 6821 lui a6,0x8 - 80008dee: 187d addi a6,a6,-1 # 7fff - 80008df0: 8341 srli a4,a4,0x10 - 80008df2: 83c1 srli a5,a5,0x10 - 80008df4: 01059663 bne a1,a6,80008e00 <__unordtf2+0x30> - 80008df8: 00a768b3 or a7,a4,a0 - 80008dfc: 00089c63 bnez a7,80008e14 <__unordtf2+0x44> - 80008e00: 01068463 beq a3,a6,80008e08 <__unordtf2+0x38> - 80008e04: 4501 li a0,0 - 80008e06: 8082 ret - 80008e08: 00c7e833 or a6,a5,a2 - 80008e0c: fe080ce3 beqz a6,80008e04 <__unordtf2+0x34> - 80008e10: 00d59a63 bne a1,a3,80008e24 <__unordtf2+0x54> - 80008e14: 8d59 or a0,a0,a4 - 80008e16: c119 beqz a0,80008e1c <__unordtf2+0x4c> - 80008e18: 933d srli a4,a4,0x2f - 80008e1a: cb09 beqz a4,80008e2c <__unordtf2+0x5c> - 80008e1c: 6721 lui a4,0x8 - 80008e1e: 177d addi a4,a4,-1 # 7fff - 80008e20: 00e69863 bne a3,a4,80008e30 <__unordtf2+0x60> - 80008e24: 8e5d or a2,a2,a5 - 80008e26: c609 beqz a2,80008e30 <__unordtf2+0x60> - 80008e28: 93bd srli a5,a5,0x2f - 80008e2a: e399 bnez a5,80008e30 <__unordtf2+0x60> - 80008e2c: 00186073 csrsi fflags,16 - 80008e30: 4505 li a0,1 - 80008e32: 8082 ret +00000000800094b8 <__unordtf2>: + 800094b8: 002027f3 frrm a5 + 800094bc: 00159793 slli a5,a1,0x1 + 800094c0: 00169813 slli a6,a3,0x1 + 800094c4: 01059713 slli a4,a1,0x10 + 800094c8: 0317d593 srli a1,a5,0x31 + 800094cc: 01069793 slli a5,a3,0x10 + 800094d0: 03185693 srli a3,a6,0x31 + 800094d4: 6821 lui a6,0x8 + 800094d6: 187d addi a6,a6,-1 # 7fff + 800094d8: 8341 srli a4,a4,0x10 + 800094da: 83c1 srli a5,a5,0x10 + 800094dc: 01059663 bne a1,a6,800094e8 <__unordtf2+0x30> + 800094e0: 00a768b3 or a7,a4,a0 + 800094e4: 00089c63 bnez a7,800094fc <__unordtf2+0x44> + 800094e8: 01068463 beq a3,a6,800094f0 <__unordtf2+0x38> + 800094ec: 4501 li a0,0 + 800094ee: 8082 ret + 800094f0: 00c7e833 or a6,a5,a2 + 800094f4: fe080ce3 beqz a6,800094ec <__unordtf2+0x34> + 800094f8: 00d59a63 bne a1,a3,8000950c <__unordtf2+0x54> + 800094fc: 8d59 or a0,a0,a4 + 800094fe: c119 beqz a0,80009504 <__unordtf2+0x4c> + 80009500: 933d srli a4,a4,0x2f + 80009502: cb09 beqz a4,80009514 <__unordtf2+0x5c> + 80009504: 6721 lui a4,0x8 + 80009506: 177d addi a4,a4,-1 # 7fff + 80009508: 00e69863 bne a3,a4,80009518 <__unordtf2+0x60> + 8000950c: 8e5d or a2,a2,a5 + 8000950e: c609 beqz a2,80009518 <__unordtf2+0x60> + 80009510: 93bd srli a5,a5,0x2f + 80009512: e399 bnez a5,80009518 <__unordtf2+0x60> + 80009514: 00186073 csrsi fflags,16 + 80009518: 4505 li a0,1 + 8000951a: 8082 ret -0000000080008e34 <__fixtfsi>: - 80008e34: 862a mv a2,a0 - 80008e36: 002027f3 frrm a5 - 80008e3a: 00159513 slli a0,a1,0x1 - 80008e3e: 03155693 srli a3,a0,0x31 - 80008e42: 6511 lui a0,0x4 - 80008e44: 01059713 slli a4,a1,0x10 - 80008e48: 1579 addi a0,a0,-2 # 3ffe - 80008e4a: 01075793 srli a5,a4,0x10 - 80008e4e: 91fd srli a1,a1,0x3f - 80008e50: 00d54763 blt a0,a3,80008e5e <__fixtfsi+0x2a> - 80008e54: e6a5 bnez a3,80008ebc <__fixtfsi+0x88> - 80008e56: 8e5d or a2,a2,a5 - 80008e58: 4501 li a0,0 - 80008e5a: ee39 bnez a2,80008eb8 <__fixtfsi+0x84> - 80008e5c: 8082 ret - 80008e5e: 6511 lui a0,0x4 - 80008e60: 0575 addi a0,a0,29 # 401d - 80008e62: 02d55563 bge a0,a3,80008e8c <__fixtfsi+0x58> - 80008e66: 80000537 lui a0,0x80000 - 80008e6a: c9b9 beqz a1,80008ec0 <__fixtfsi+0x8c> - 80008e6c: 6591 lui a1,0x4 - 80008e6e: 05f9 addi a1,a1,30 # 401e - 80008e70: 00b68863 beq a3,a1,80008e80 <__fixtfsi+0x4c> - 80008e74: 80000537 lui a0,0x80000 - 80008e78: 47c1 li a5,16 - 80008e7a: 0017a073 csrs fflags,a5 - 80008e7e: 8082 ret - 80008e80: 9305 srli a4,a4,0x21 - 80008e82: fb6d bnez a4,80008e74 <__fixtfsi+0x40> - 80008e84: 17be slli a5,a5,0x2f - 80008e86: 8fd1 or a5,a5,a2 - 80008e88: eb85 bnez a5,80008eb8 <__fixtfsi+0x84> - 80008e8a: 8082 ret - 80008e8c: 4705 li a4,1 - 80008e8e: 1742 slli a4,a4,0x30 - 80008e90: 8fd9 or a5,a5,a4 - 80008e92: 7771 lui a4,0xffffc - 80008e94: 2745 addiw a4,a4,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> - 80008e96: 9f35 addw a4,a4,a3 - 80008e98: 00e79733 sll a4,a5,a4 - 80008e9c: 8f51 or a4,a4,a2 - 80008e9e: 6611 lui a2,0x4 - 80008ea0: 02f6061b addiw a2,a2,47 # 402f - 80008ea4: 40d606bb subw a3,a2,a3 - 80008ea8: 00d7d7b3 srl a5,a5,a3 - 80008eac: 0007851b sext.w a0,a5 - 80008eb0: c199 beqz a1,80008eb6 <__fixtfsi+0x82> - 80008eb2: 40a0053b negw a0,a0 - 80008eb6: d761 beqz a4,80008e7e <__fixtfsi+0x4a> - 80008eb8: 4785 li a5,1 - 80008eba: b7c1 j 80008e7a <__fixtfsi+0x46> - 80008ebc: 4501 li a0,0 - 80008ebe: bfed j 80008eb8 <__fixtfsi+0x84> - 80008ec0: fff54513 not a0,a0 - 80008ec4: bf55 j 80008e78 <__fixtfsi+0x44> +000000008000951c <__fixtfsi>: + 8000951c: 862a mv a2,a0 + 8000951e: 002027f3 frrm a5 + 80009522: 00159513 slli a0,a1,0x1 + 80009526: 03155693 srli a3,a0,0x31 + 8000952a: 6511 lui a0,0x4 + 8000952c: 01059713 slli a4,a1,0x10 + 80009530: 1579 addi a0,a0,-2 # 3ffe + 80009532: 01075793 srli a5,a4,0x10 + 80009536: 91fd srli a1,a1,0x3f + 80009538: 00d54763 blt a0,a3,80009546 <__fixtfsi+0x2a> + 8000953c: e6a5 bnez a3,800095a4 <__fixtfsi+0x88> + 8000953e: 8e5d or a2,a2,a5 + 80009540: 4501 li a0,0 + 80009542: ee39 bnez a2,800095a0 <__fixtfsi+0x84> + 80009544: 8082 ret + 80009546: 6511 lui a0,0x4 + 80009548: 0575 addi a0,a0,29 # 401d + 8000954a: 02d55563 bge a0,a3,80009574 <__fixtfsi+0x58> + 8000954e: 80000537 lui a0,0x80000 + 80009552: c9b9 beqz a1,800095a8 <__fixtfsi+0x8c> + 80009554: 6591 lui a1,0x4 + 80009556: 05f9 addi a1,a1,30 # 401e + 80009558: 00b68863 beq a3,a1,80009568 <__fixtfsi+0x4c> + 8000955c: 80000537 lui a0,0x80000 + 80009560: 47c1 li a5,16 + 80009562: 0017a073 csrs fflags,a5 + 80009566: 8082 ret + 80009568: 9305 srli a4,a4,0x21 + 8000956a: fb6d bnez a4,8000955c <__fixtfsi+0x40> + 8000956c: 17be slli a5,a5,0x2f + 8000956e: 8fd1 or a5,a5,a2 + 80009570: eb85 bnez a5,800095a0 <__fixtfsi+0x84> + 80009572: 8082 ret + 80009574: 4705 li a4,1 + 80009576: 1742 slli a4,a4,0x30 + 80009578: 8fd9 or a5,a5,a4 + 8000957a: 7771 lui a4,0xffffc + 8000957c: 2745 addiw a4,a4,17 # ffffffffffffc011 <_stack_top+0xffffffff7fefc011> + 8000957e: 9f35 addw a4,a4,a3 + 80009580: 00e79733 sll a4,a5,a4 + 80009584: 8f51 or a4,a4,a2 + 80009586: 6611 lui a2,0x4 + 80009588: 02f6061b addiw a2,a2,47 # 402f + 8000958c: 40d606bb subw a3,a2,a3 + 80009590: 00d7d7b3 srl a5,a5,a3 + 80009594: 0007851b sext.w a0,a5 + 80009598: c199 beqz a1,8000959e <__fixtfsi+0x82> + 8000959a: 40a0053b negw a0,a0 + 8000959e: d761 beqz a4,80009566 <__fixtfsi+0x4a> + 800095a0: 4785 li a5,1 + 800095a2: b7c1 j 80009562 <__fixtfsi+0x46> + 800095a4: 4501 li a0,0 + 800095a6: bfed j 800095a0 <__fixtfsi+0x84> + 800095a8: fff54513 not a0,a0 + 800095ac: bf55 j 80009560 <__fixtfsi+0x44> -0000000080008ec6 <__floatsitf>: - 80008ec6: 1101 addi sp,sp,-32 - 80008ec8: ec06 sd ra,24(sp) - 80008eca: e822 sd s0,16(sp) - 80008ecc: e426 sd s1,8(sp) - 80008ece: c129 beqz a0,80008f10 <__floatsitf+0x4a> - 80008ed0: 41f5579b sraiw a5,a0,0x1f - 80008ed4: 00f54433 xor s0,a0,a5 - 80008ed8: 9c1d subw s0,s0,a5 - 80008eda: 1402 slli s0,s0,0x20 - 80008edc: 9001 srli s0,s0,0x20 - 80008ede: 01f5549b srliw s1,a0,0x1f - 80008ee2: 8522 mv a0,s0 - 80008ee4: 0f6000ef jal 80008fda <__clzdi2> - 80008ee8: 6791 lui a5,0x4 - 80008eea: 03e7879b addiw a5,a5,62 # 403e - 80008eee: 9f89 subw a5,a5,a0 - 80008ef0: 3545 addiw a0,a0,-15 # 7ffffff1 <__dtim_size+0x7feffff1> - 80008ef2: 00a41433 sll s0,s0,a0 - 80008ef6: 00f4959b slliw a1,s1,0xf - 80008efa: 8ddd or a1,a1,a5 - 80008efc: 0442 slli s0,s0,0x10 - 80008efe: 8041 srli s0,s0,0x10 - 80008f00: 15c2 slli a1,a1,0x30 - 80008f02: 60e2 ld ra,24(sp) - 80008f04: 8dc1 or a1,a1,s0 - 80008f06: 6442 ld s0,16(sp) - 80008f08: 64a2 ld s1,8(sp) - 80008f0a: 4501 li a0,0 - 80008f0c: 6105 addi sp,sp,32 - 80008f0e: 8082 ret - 80008f10: 4481 li s1,0 - 80008f12: 4401 li s0,0 - 80008f14: 4781 li a5,0 - 80008f16: b7c5 j 80008ef6 <__floatsitf+0x30> +00000000800095ae <__floatsitf>: + 800095ae: 1101 addi sp,sp,-32 + 800095b0: ec06 sd ra,24(sp) + 800095b2: e822 sd s0,16(sp) + 800095b4: e426 sd s1,8(sp) + 800095b6: c129 beqz a0,800095f8 <__floatsitf+0x4a> + 800095b8: 41f5579b sraiw a5,a0,0x1f + 800095bc: 00f54433 xor s0,a0,a5 + 800095c0: 9c1d subw s0,s0,a5 + 800095c2: 1402 slli s0,s0,0x20 + 800095c4: 9001 srli s0,s0,0x20 + 800095c6: 01f5549b srliw s1,a0,0x1f + 800095ca: 8522 mv a0,s0 + 800095cc: 0f6000ef jal 800096c2 <__clzdi2> + 800095d0: 6791 lui a5,0x4 + 800095d2: 03e7879b addiw a5,a5,62 # 403e + 800095d6: 9f89 subw a5,a5,a0 + 800095d8: 3545 addiw a0,a0,-15 # 7ffffff1 <__dtim_size+0x7feffff1> + 800095da: 00a41433 sll s0,s0,a0 + 800095de: 00f4959b slliw a1,s1,0xf + 800095e2: 8ddd or a1,a1,a5 + 800095e4: 0442 slli s0,s0,0x10 + 800095e6: 8041 srli s0,s0,0x10 + 800095e8: 15c2 slli a1,a1,0x30 + 800095ea: 60e2 ld ra,24(sp) + 800095ec: 8dc1 or a1,a1,s0 + 800095ee: 6442 ld s0,16(sp) + 800095f0: 64a2 ld s1,8(sp) + 800095f2: 4501 li a0,0 + 800095f4: 6105 addi sp,sp,32 + 800095f6: 8082 ret + 800095f8: 4481 li s1,0 + 800095fa: 4401 li s0,0 + 800095fc: 4781 li a5,0 + 800095fe: b7c5 j 800095de <__floatsitf+0x30> -0000000080008f18 <__extenddftf2>: - 80008f18: 1101 addi sp,sp,-32 - 80008f1a: e20506d3 fmv.x.d a3,fa0 - 80008f1e: ec06 sd ra,24(sp) - 80008f20: e822 sd s0,16(sp) - 80008f22: e426 sd s1,8(sp) - 80008f24: 002027f3 frrm a5 - 80008f28: 0346d513 srli a0,a3,0x34 - 80008f2c: 7ff57513 andi a0,a0,2047 - 80008f30: 00150713 addi a4,a0,1 - 80008f34: 00c69793 slli a5,a3,0xc - 80008f38: 7fe77713 andi a4,a4,2046 - 80008f3c: 00c7d413 srli s0,a5,0xc - 80008f40: 03f6d493 srli s1,a3,0x3f - 80008f44: cb09 beqz a4,80008f56 <__extenddftf2+0x3e> - 80008f46: 6711 lui a4,0x4 - 80008f48: c0070713 addi a4,a4,-1024 # 3c00 - 80008f4c: 953a add a0,a0,a4 - 80008f4e: 83c1 srli a5,a5,0x10 - 80008f50: 1472 slli s0,s0,0x3c - 80008f52: 4701 li a4,0 - 80008f54: a8b1 j 80008fb0 <__extenddftf2+0x98> - 80008f56: ed1d bnez a0,80008f94 <__extenddftf2+0x7c> - 80008f58: 4781 li a5,0 - 80008f5a: dc65 beqz s0,80008f52 <__extenddftf2+0x3a> - 80008f5c: 8522 mv a0,s0 - 80008f5e: 07c000ef jal 80008fda <__clzdi2> - 80008f62: 0005071b sext.w a4,a0 - 80008f66: 47b9 li a5,14 - 80008f68: 02e7c063 blt a5,a4,80008f88 <__extenddftf2+0x70> - 80008f6c: 47bd li a5,15 - 80008f6e: 9f89 subw a5,a5,a0 - 80008f70: 0315071b addiw a4,a0,49 - 80008f74: 00f457b3 srl a5,s0,a5 - 80008f78: 00e41433 sll s0,s0,a4 - 80008f7c: 6711 lui a4,0x4 - 80008f7e: c0c7071b addiw a4,a4,-1012 # 3c0c - 80008f82: 40a7053b subw a0,a4,a0 - 80008f86: b7f1 j 80008f52 <__extenddftf2+0x3a> - 80008f88: ff15079b addiw a5,a0,-15 - 80008f8c: 00f417b3 sll a5,s0,a5 - 80008f90: 4401 li s0,0 - 80008f92: b7ed j 80008f7c <__extenddftf2+0x64> - 80008f94: cc1d beqz s0,80008fd2 <__extenddftf2+0xba> - 80008f96: 4605 li a2,1 - 80008f98: 03361713 slli a4,a2,0x33 - 80008f9c: 00e43733 sltu a4,s0,a4 - 80008fa0: 83c1 srli a5,a5,0x10 - 80008fa2: 163e slli a2,a2,0x2f - 80008fa4: 6521 lui a0,0x8 - 80008fa6: 0047171b slliw a4,a4,0x4 - 80008faa: 1472 slli s0,s0,0x3c - 80008fac: 8fd1 or a5,a5,a2 - 80008fae: 157d addi a0,a0,-1 # 7fff - 80008fb0: 00f4969b slliw a3,s1,0xf - 80008fb4: 8ec9 or a3,a3,a0 - 80008fb6: 01079593 slli a1,a5,0x10 - 80008fba: 16c2 slli a3,a3,0x30 - 80008fbc: 81c1 srli a1,a1,0x10 - 80008fbe: 8dd5 or a1,a1,a3 - 80008fc0: c319 beqz a4,80008fc6 <__extenddftf2+0xae> - 80008fc2: 00186073 csrsi fflags,16 - 80008fc6: 60e2 ld ra,24(sp) - 80008fc8: 8522 mv a0,s0 - 80008fca: 6442 ld s0,16(sp) - 80008fcc: 64a2 ld s1,8(sp) - 80008fce: 6105 addi sp,sp,32 - 80008fd0: 8082 ret - 80008fd2: 6521 lui a0,0x8 - 80008fd4: 4781 li a5,0 - 80008fd6: 157d addi a0,a0,-1 # 7fff - 80008fd8: bfad j 80008f52 <__extenddftf2+0x3a> +0000000080009600 <__extenddftf2>: + 80009600: 1101 addi sp,sp,-32 + 80009602: e20506d3 fmv.x.d a3,fa0 + 80009606: ec06 sd ra,24(sp) + 80009608: e822 sd s0,16(sp) + 8000960a: e426 sd s1,8(sp) + 8000960c: 002027f3 frrm a5 + 80009610: 0346d513 srli a0,a3,0x34 + 80009614: 7ff57513 andi a0,a0,2047 + 80009618: 00150713 addi a4,a0,1 + 8000961c: 00c69793 slli a5,a3,0xc + 80009620: 7fe77713 andi a4,a4,2046 + 80009624: 00c7d413 srli s0,a5,0xc + 80009628: 03f6d493 srli s1,a3,0x3f + 8000962c: cb09 beqz a4,8000963e <__extenddftf2+0x3e> + 8000962e: 6711 lui a4,0x4 + 80009630: c0070713 addi a4,a4,-1024 # 3c00 + 80009634: 953a add a0,a0,a4 + 80009636: 83c1 srli a5,a5,0x10 + 80009638: 1472 slli s0,s0,0x3c + 8000963a: 4701 li a4,0 + 8000963c: a8b1 j 80009698 <__extenddftf2+0x98> + 8000963e: ed1d bnez a0,8000967c <__extenddftf2+0x7c> + 80009640: 4781 li a5,0 + 80009642: dc65 beqz s0,8000963a <__extenddftf2+0x3a> + 80009644: 8522 mv a0,s0 + 80009646: 07c000ef jal 800096c2 <__clzdi2> + 8000964a: 0005071b sext.w a4,a0 + 8000964e: 47b9 li a5,14 + 80009650: 02e7c063 blt a5,a4,80009670 <__extenddftf2+0x70> + 80009654: 47bd li a5,15 + 80009656: 9f89 subw a5,a5,a0 + 80009658: 0315071b addiw a4,a0,49 + 8000965c: 00f457b3 srl a5,s0,a5 + 80009660: 00e41433 sll s0,s0,a4 + 80009664: 6711 lui a4,0x4 + 80009666: c0c7071b addiw a4,a4,-1012 # 3c0c + 8000966a: 40a7053b subw a0,a4,a0 + 8000966e: b7f1 j 8000963a <__extenddftf2+0x3a> + 80009670: ff15079b addiw a5,a0,-15 + 80009674: 00f417b3 sll a5,s0,a5 + 80009678: 4401 li s0,0 + 8000967a: b7ed j 80009664 <__extenddftf2+0x64> + 8000967c: cc1d beqz s0,800096ba <__extenddftf2+0xba> + 8000967e: 4605 li a2,1 + 80009680: 03361713 slli a4,a2,0x33 + 80009684: 00e43733 sltu a4,s0,a4 + 80009688: 83c1 srli a5,a5,0x10 + 8000968a: 163e slli a2,a2,0x2f + 8000968c: 6521 lui a0,0x8 + 8000968e: 0047171b slliw a4,a4,0x4 + 80009692: 1472 slli s0,s0,0x3c + 80009694: 8fd1 or a5,a5,a2 + 80009696: 157d addi a0,a0,-1 # 7fff + 80009698: 00f4969b slliw a3,s1,0xf + 8000969c: 8ec9 or a3,a3,a0 + 8000969e: 01079593 slli a1,a5,0x10 + 800096a2: 16c2 slli a3,a3,0x30 + 800096a4: 81c1 srli a1,a1,0x10 + 800096a6: 8dd5 or a1,a1,a3 + 800096a8: c319 beqz a4,800096ae <__extenddftf2+0xae> + 800096aa: 00186073 csrsi fflags,16 + 800096ae: 60e2 ld ra,24(sp) + 800096b0: 8522 mv a0,s0 + 800096b2: 6442 ld s0,16(sp) + 800096b4: 64a2 ld s1,8(sp) + 800096b6: 6105 addi sp,sp,32 + 800096b8: 8082 ret + 800096ba: 6521 lui a0,0x8 + 800096bc: 4781 li a5,0 + 800096be: 157d addi a0,a0,-1 # 7fff + 800096c0: bfad j 8000963a <__extenddftf2+0x3a> -0000000080008fda <__clzdi2>: - 80008fda: 03800793 li a5,56 - 80008fde: 00f55733 srl a4,a0,a5 - 80008fe2: 0ff77693 zext.b a3,a4 - 80008fe6: e28d bnez a3,80009008 <__clzdi2+0x2e> - 80008fe8: 17e1 addi a5,a5,-8 - 80008fea: fbf5 bnez a5,80008fde <__clzdi2+0x4> - 80008fec: 04000713 li a4,64 - 80008ff0: 40f707b3 sub a5,a4,a5 - 80008ff4: 00001717 auipc a4,0x1 - 80008ff8: 9ec70713 addi a4,a4,-1556 # 800099e0 <__clz_tab> - 80008ffc: 972a add a4,a4,a0 - 80008ffe: 00074503 lbu a0,0(a4) - 80009002: 40a7853b subw a0,a5,a0 - 80009006: 8082 ret - 80009008: 853a mv a0,a4 - 8000900a: b7cd j 80008fec <__clzdi2+0x12> - 8000900c: 0000 unimp - 8000900e: 0000 unimp - 80009010: 490a lw s2,128(sp) - 80009012: 342d4d43 .insn 4, 0x342d4d43 - 80009016: 3632 fld fa2,296(sp) - 80009018: 3638 fld fa4,104(a2) - 8000901a: 502d c.li zero,-21 - 8000901c: 4d43492f .insn 4, 0x4d43492f - 80009020: 342d addiw s0,s0,-21 - 80009022: 3632 fld fa2,296(sp) - 80009024: 3838 fld fa4,112(s0) - 80009026: 502d c.li zero,-21 - 80009028: 5020 lw s0,96(s0) - 8000902a: 4f4d li t5,19 - 8000902c: 2044 fld fs1,128(s0) - 8000902e: 20495053 .insn 4, 0x20495053 - 80009032: 6574 ld a3,200(a0) - 80009034: 000a7473 csrrci s0,ustatus,20 - 80009038: 20495053 .insn 4, 0x20495053 - 8000903c: 4d4d li s10,19 - 8000903e: 4f49 li t5,18 - 80009040: 203a fld ft0,392(sp) - 80009042: 7830 ld a2,112(s0) - 80009044: 3025 .insn 2, 0x3025 - 80009046: 6c38 ld a4,88(s0) - 80009048: 2c78 fld fa4,216(s0) - 8000904a: 4720 lw s0,72(a4) - 8000904c: 6e65 lui t3,0x19 - 8000904e: 7365 lui t1,0xffff9 - 80009050: 7379 lui t1,0xffffe - 80009052: 2032 fld ft0,264(sp) - 80009054: 4d50 lw a2,28(a0) - 80009056: 4a20444f fnmadd.d fs0,ft0,ft2,fs1,rmm - 8000905a: 00000a43 fmadd.s fs4,ft0,ft0,ft0,rne - 8000905e: 0000 unimp - 80009060: 6970 ld a2,208(a0) - 80009062: 736e ld t1,248(sp) - 80009064: 203a fld ft0,392(sp) - 80009066: 4a3d5343 fmadd.d ft6,fs10,ft3,fs1,unknown - 8000906a: 4d203143 .insn 4, 0x4d203143 - 8000906e: 3d49534f .insn 4, 0x3d49534f - 80009072: 434a lw t1,144(sp) - 80009074: 2032 fld ft0,264(sp) - 80009076: 494d li s2,19 - 80009078: 4a3d4f53 .insn 4, 0x4a3d4f53 - 8000907c: 53203343 fmadd.d ft6,ft0,fs2,fa0,rup - 80009080: 4a3d4b43 fmadd.d fs6,fs10,ft3,fs1,rmm - 80009084: 000a3443 fmadd.s fs0,fs4,ft0,ft0,rup - 80009088: 5f4f4857 .insn 4, 0x5f4f4857 - 8000908c: 4d41 li s10,16 - 8000908e: 495f 7220 6165 .insn 6, 0x61657220495f - 80009094: 7364 ld s1,224(a4) - 80009096: 003a c.slli zero,0xe - 80009098: 2520 fld fs0,72(a0) - 8000909a: 3230 fld fa2,96(a2) - 8000909c: 0078 addi a4,sp,12 - 8000909e: 0000 unimp - 800090a0: 4544 lw s1,12(a0) - 800090a2: 4956 lw s2,84(sp) - 800090a4: 435f4543 fmadd.d fa0,ft10,fs5,fs0,rmm - 800090a8: 49464e4f fnmadd.s ft8,fa2,fs4,fs1,rmm - 800090ac: 78303d47 fmsub.s fs10,ft0,ft3,fa5,rup - 800090b0: 3025 .insn 2, 0x3025 - 800090b2: 7832 ld a6,296(sp) - 800090b4: 2820 fld fs0,80(s0) - 800090b6: 7865 lui a6,0xffff9 - 800090b8: 6570 ld a2,200(a0) - 800090ba: 64657463 bgeu a0,t1,80009702 <__mprec_tens+0x7a> - 800090be: 3020 fld fs0,96(s0) - 800090c0: 3078 fld fa4,224(s0) - 800090c2: 2930 fld fa2,80(a0) - 800090c4: 000a c.slli zero,0x2 - 800090c6: 0000 unimp - 800090c8: 5f4f4857 .insn 4, 0x5f4f4857 - 800090cc: 4d41 li s10,16 - 800090ce: 495f 303d 2578 .insn 6, 0x2578303d495f - 800090d4: 3230 fld fa2,96(a2) - 800090d6: 3a78 fld fa4,240(a2) - 800090d8: 4920 lw s0,80(a0) - 800090da: 342d4d43 .insn 4, 0x342d4d43 - 800090de: 3632 fld fa2,296(sp) - 800090e0: 3638 fld fa4,104(a2) - 800090e2: 502d c.li zero,-21 - 800090e4: 5020 lw s0,96(s0) - 800090e6: 5341 li t1,-16 - 800090e8: 00000a53 fadd.s fs4,ft0,ft0,rne - 800090ec: 0000 unimp - 800090ee: 0000 unimp - 800090f0: 5f4f4857 .insn 4, 0x5f4f4857 - 800090f4: 4d41 li s10,16 - 800090f6: 495f 303d 2578 .insn 6, 0x2578303d495f - 800090fc: 3230 fld fa2,96(a2) - 800090fe: 3a78 fld fa4,240(a2) - 80009100: 4920 lw s0,80(a0) - 80009102: 342d4d43 .insn 4, 0x342d4d43 - 80009106: 3632 fld fa2,296(sp) - 80009108: 3838 fld fa4,112(s0) - 8000910a: 502d c.li zero,-21 - 8000910c: 5020 lw s0,96(s0) - 8000910e: 5341 li t1,-16 - 80009110: 00000a53 fadd.s fs4,ft0,ft0,rne - 80009114: 0000 unimp - 80009116: 0000 unimp - 80009118: 5f4f4857 .insn 4, 0x5f4f4857 - 8000911c: 4d41 li s10,16 - 8000911e: 495f 303d 2578 .insn 6, 0x2578303d495f - 80009124: 3230 fld fa2,96(a2) - 80009126: 3a78 fld fa4,240(a2) - 80009128: 4620 lw s0,72(a2) - 8000912a: 4941 li s2,16 - 8000912c: 204c fld fa1,128(s0) - 8000912e: 6528 ld a0,72(a0) - 80009130: 7078 ld a4,224(s0) - 80009132: 6365 lui t1,0x19 - 80009134: 6574 ld a3,200(a0) - 80009136: 2064 fld fs1,192(s0) - 80009138: 7830 ld a2,112(s0) - 8000913a: 3434 fld fa3,104(s0) - 8000913c: 6f20 ld s0,88(a4) - 8000913e: 2072 fld ft0,280(sp) - 80009140: 7830 ld a2,112(s0) - 80009142: 3734 fld fa3,104(a4) - 80009144: 0a29 addi s4,s4,10 - 80009146: 0000 unimp - 80009148: 20495053 .insn 4, 0x20495053 - 8000914c: 6d6d6f63 bltu s10,s6,8000982a <_ctype_+0xda> - 80009150: 6e75 lui t3,0x1d - 80009152: 6369 lui t1,0x1a - 80009154: 7461 lui s0,0xffff8 - 80009156: 6f69 lui t5,0x1a - 80009158: 206e fld ft0,216(sp) - 8000915a: 6166 ld sp,88(sp) - 8000915c: 6c69 lui s8,0x1a - 8000915e: 6465 lui s0,0x19 - 80009160: 202e fld ft0,200(sp) - 80009162: 4b44 lw s1,20(a4) - 80009164: 4a20 lw s0,80(a2) - 80009166: 3a34 fld fa3,112(a2) - 80009168: 4320 lw s0,64(a4) - 8000916a: 20313d53 .insn 4, 0x20313d53 - 8000916e: 3d4b4353 .insn 4, 0x3d4b4353 - 80009172: 2032 fld ft0,264(sp) - 80009174: 4f4d li t5,19 - 80009176: 333d4953 .insn 4, 0x333d4953 - 8000917a: 4d20 lw s0,88(a0) - 8000917c: 5349 li t1,-14 - 8000917e: 20343d4f fnmadd.s fs10,fs0,ft3,ft4,rup - 80009182: 3d444e47 .insn 4, 0x3d444e47 - 80009186: 000a2e37 lui t3,0xa2 - 8000918a: 0000 unimp - 8000918c: 0000 unimp - 8000918e: 0000 unimp - 80009190: 6f48 ld a0,152(a4) - 80009192: 646c ld a1,200(s0) - 80009194: 7420 ld s0,104(s0) - 80009196: 6568 ld a0,200(a0) - 80009198: 4420 lw s0,72(s0) - 8000919a: 4153204b fnmsub.s ft0,ft6,fs5,fs0,rdn - 8000919e: 474d li a4,19 - 800091a0: 3535 addiw a0,a0,-19 - 800091a2: 6920 ld s0,80(a0) - 800091a4: 206e fld ft0,216(sp) - 800091a6: 6572 ld a0,280(sp) - 800091a8: 20746573 csrrsi a0,0x207,8 - 800091ac: 69206f73 csrrsi t5,0x692,0 - 800091b0: 2074 fld fa3,192(s0) - 800091b2: 6e6e6163 bltu t3,t1,80009894 <_ctype_+0x144> - 800091b6: 6320746f jal s0,800107e8 <__heap_start+0x5ea8> - 800091ba: 65746e6f jal t3,80050010 <__heap_start+0x456d0> - 800091be: 646e ld s0,216(sp) - 800091c0: 6620 ld s0,72(a2) - 800091c2: 7420726f jal tp,80010904 <__heap_start+0x5fc4> - 800091c6: 6568 ld a0,200(a0) - 800091c8: 7320 ld s0,96(a4) - 800091ca: 6e65 lui t3,0x19 - 800091cc: 20726f73 csrrsi t5,0x207,4 - 800091d0: 20495053 .insn 4, 0x20495053 - 800091d4: 7562 ld a0,56(sp) - 800091d6: 000a2e73 csrrs t3,ustatus,s4 - 800091da: 0000 unimp - 800091dc: 0000 unimp - 800091de: 0000 unimp - 800091e0: 5750 lw a2,44(a4) - 800091e2: 5f52 lw t5,52(sp) - 800091e4: 474d li a4,19 - 800091e6: 544d li s0,-13 - 800091e8: 3d30 fld fa2,120(a0) - 800091ea: 7830 ld a2,112(s0) - 800091ec: 3025 .insn 2, 0x3025 - 800091ee: 7832 ld a6,296(sp) - 800091f0: 4720 lw s0,72(a4) - 800091f2: 5259 li tp,-10 - 800091f4: 4f435f4f .insn 4, 0x4f435f4f - 800091f8: 464e lw a2,208(sp) - 800091fa: 4749 li a4,18 - 800091fc: 3d30 fld fa2,120(a0) - 800091fe: 7830 ld a2,112(s0) - 80009200: 3025 .insn 2, 0x3025 - 80009202: 7832 ld a6,296(sp) - 80009204: 4120 lw s0,64(a0) - 80009206: 4c454343 .insn 4, 0x4c454343 - 8000920a: 435f 4e4f 4946 .insn 6, 0x49464e4f435f - 80009210: 303d3047 fmsub.s ft0,fs10,ft3,ft6,rup - 80009214: 2578 fld fa4,200(a0) - 80009216: 3230 fld fa2,96(a2) - 80009218: 0a78 addi a4,sp,284 - 8000921a: 0000 unimp - 8000921c: 0000 unimp - 8000921e: 0000 unimp - 80009220: 6e75 lui t3,0x1d - 80009222: 7469 lui s0,0xffffa - 80009224: 74203a73 csrrc s4,mncause,zero - 80009228: 6d65 lui s10,0x19 - 8000922a: 6570 ld a2,200(a0) - 8000922c: 6172 ld sp,280(sp) - 8000922e: 7574 ld a3,232(a0) - 80009230: 6572 ld a0,280(sp) - 80009232: 6d3d lui s10,0xf - 80009234: 63612043 fmadd.d ft0,ft2,fs6,fa2,rdn - 80009238: 3d6c6563 bltu s8,s6,80009602 - 8000923c: 676d lui a4,0x1b - 8000923e: 6720 ld s0,72(a4) - 80009240: 7279 lui tp,0xffffe - 80009242: 646d3d6f jal s10,800dc888 <__heap_start+0xd1f48> - 80009246: 7370 ld a2,224(a4) - 80009248: 000a c.slli zero,0x2 - 8000924a: 0000 unimp - 8000924c: 0000 unimp - 8000924e: 0000 unimp - 80009250: 3025 .insn 2, 0x3025 - 80009252: 7532 ld a0,296(sp) - 80009254: 7320 ld s0,96(a4) - 80009256: 3d74 fld fa3,248(a0) - 80009258: 3025 .insn 2, 0x3025 - 8000925a: 7832 ld a6,296(sp) - 8000925c: 5420 lw s0,104(s0) - 8000925e: 253d addiw a0,a0,15 - 80009260: 646c ld a1,200(s0) - 80009262: 4120 lw s0,64(a0) - 80009264: 253d addiw a0,a0,15 - 80009266: 646c ld a1,200(s0) - 80009268: 252c fld fa1,72(a0) - 8000926a: 646c ld a1,200(s0) - 8000926c: 252c fld fa1,72(a0) - 8000926e: 646c ld a1,200(s0) - 80009270: 4720 lw s0,72(a4) - 80009272: 253d addiw a0,a0,15 - 80009274: 646c ld a1,200(s0) - 80009276: 252c fld fa1,72(a0) - 80009278: 646c ld a1,200(s0) - 8000927a: 252c fld fa1,72(a0) - 8000927c: 646c ld a1,200(s0) - 8000927e: 000a c.slli zero,0x2 - 80009280: 4d49 li s10,18 - 80009282: 2055 .insn 2, 0x2055 - 80009284: 6572 ld a0,280(sp) - 80009286: 6461 lui s0,0x18 - 80009288: 6320 ld s0,64(a4) - 8000928a: 6c706d6f jal s10,80010150 <__heap_start+0x5810> - 8000928e: 7465 lui s0,0xffff9 - 80009290: 0a65 addi s4,s4,25 - 80009292: 0000 unimp - 80009294: 0000 unimp - 80009296: 0000 unimp - 80009298: 4e49 li t3,18 - 8000929a: 0046 c.slli zero,0x11 - 8000929c: 0000 unimp - 8000929e: 0000 unimp - 800092a0: 6e69 lui t3,0x1a - 800092a2: 0066 c.slli zero,0x19 - 800092a4: 0000 unimp - 800092a6: 0000 unimp - 800092a8: 414e lw sp,208(sp) - 800092aa: 004e c.slli zero,0x13 - 800092ac: 0000 unimp - 800092ae: 0000 unimp - 800092b0: 616e ld sp,216(sp) - 800092b2: 006e c.slli zero,0x1b - 800092b4: 0000 unimp - 800092b6: 0000 unimp - 800092b8: 3130 fld fa2,96(a0) - 800092ba: 3332 fld ft6,296(sp) - 800092bc: 3534 fld fa3,104(a0) - 800092be: 3736 fld fa4,360(sp) - 800092c0: 3938 fld fa4,112(a0) - 800092c2: 6261 lui tp,0x18 - 800092c4: 66656463 bltu a0,t1,8000992c <_ctype_+0x1dc> +00000000800096c2 <__clzdi2>: + 800096c2: 03800793 li a5,56 + 800096c6: 00f55733 srl a4,a0,a5 + 800096ca: 0ff77693 zext.b a3,a4 + 800096ce: e28d bnez a3,800096f0 <__clzdi2+0x2e> + 800096d0: 17e1 addi a5,a5,-8 + 800096d2: fbf5 bnez a5,800096c6 <__clzdi2+0x4> + 800096d4: 04000713 li a4,64 + 800096d8: 40f707b3 sub a5,a4,a5 + 800096dc: 00001717 auipc a4,0x1 + 800096e0: c9470713 addi a4,a4,-876 # 8000a370 <__clz_tab> + 800096e4: 972a add a4,a4,a0 + 800096e6: 00074503 lbu a0,0(a4) + 800096ea: 40a7853b subw a0,a5,a0 + 800096ee: 8082 ret + 800096f0: 853a mv a0,a4 + 800096f2: b7cd j 800096d4 <__clzdi2+0x12> + 800096f4: 0000 unimp + 800096f6: 0000 unimp + 800096f8: 4150 lw a2,4(a0) + 800096fa: 00005353 fadd.s ft6,ft0,ft0,unknown + 800096fe: 0000 unimp + 80009700: 4f4d li t5,19 + 80009702: 4956 lw s2,84(sp) + 80009704: 474e lw a4,208(sp) + 80009706: 534e552f .insn 4, 0x534e552f + 8000970a: 4154 lw a3,4(a0) + 8000970c: 4c42 lw s8,16(sp) + 8000970e: 0045 c.nop 17 + 80009710: 490a lw s2,128(sp) + 80009712: 50204d43 fmadd.s fs10,ft0,ft2,fa0,rmm + 80009716: 4f4d li t5,19 + 80009718: 2044 fld fs1,128(s0) + 8000971a: 3035 .insn 2, 0x3035 + 8000971c: 2030 fld fa2,64(s0) + 8000971e: 7a48 ld a0,176(a2) + 80009720: 5320 lw s0,96(a4) + 80009722: 4950 lw a2,20(a0) + 80009724: 7020 ld s0,96(s0) + 80009726: 696c6c6f jal s8,800cfdbc <__heap_start+0xc49ec> + 8000972a: 676e ld a4,216(sp) + 8000972c: 7420 ld s0,104(s0) + 8000972e: 7365 lui t1,0xffff9 + 80009730: 0a74 addi a3,sp,284 + 80009732: 0000 unimp + 80009734: 0000 unimp + 80009736: 0000 unimp + 80009738: 3d495053 .insn 4, 0x3d495053 + 8000973c: 7830 ld a2,112(s0) + 8000973e: 3025 .insn 2, 0x3025 + 80009740: 6c38 ld a4,88(s0) + 80009742: 2078 fld fa4,192(s0) + 80009744: 656e6547 .insn 4, 0x656e6547 + 80009748: 32737973 csrrci s2,mhpmevent7,6 + 8000974c: 5020 lw s0,96(s0) + 8000974e: 4f4d li t5,19 + 80009750: 2044 fld fs1,128(s0) + 80009752: 434a lw t1,144(sp) + 80009754: 000a c.slli zero,0x2 + 80009756: 0000 unimp + 80009758: 20495053 .insn 4, 0x20495053 + 8000975c: 6970 ld a2,208(a0) + 8000975e: 736e ld t1,248(sp) + 80009760: 203a fld ft0,392(sp) + 80009762: 4a3d5343 fmadd.d ft6,fs10,ft3,fs1,unknown + 80009766: 4d203143 .insn 4, 0x4d203143 + 8000976a: 3d49534f .insn 4, 0x3d49534f + 8000976e: 434a lw t1,144(sp) + 80009770: 2032 fld ft0,264(sp) + 80009772: 494d li s2,19 + 80009774: 4a3d4f53 .insn 4, 0x4a3d4f53 + 80009778: 53203343 fmadd.d ft6,ft0,fs2,fa0,rup + 8000977c: 4a3d4b43 fmadd.d fs6,fs10,ft3,fs1,rmm + 80009780: 000a3443 fmadd.s fs0,fs4,ft0,ft0,rup + 80009784: 0000 unimp + 80009786: 0000 unimp + 80009788: 4e49 li t3,18 + 8000978a: 3154 fld fa3,160(a0) + 8000978c: 39434a2f .insn 4, 0x39434a2f + 80009790: 6920 ld s0,80(a0) + 80009792: 6f6e2073 csrs 0x6f6,t3 + 80009796: 2074 fld fa3,192(s0) + 80009798: 7375 lui t1,0xffffd + 8000979a: 6465 lui s0,0x19 + 8000979c: 6173203b .insn 4, 0x6173203b + 800097a0: 706d c.lui zero,0xffffb + 800097a2: 656c ld a1,200(a0) + 800097a4: 72612073 csrs mhpmevent6h,sp + 800097a8: 2065 .insn 2, 0x2065 + 800097aa: 6572 ld a0,280(sp) + 800097ac: 6461 lui s0,0x18 + 800097ae: 6220 ld s0,64(a2) + 800097b0: 2079 .insn 2, 0x2079 + 800097b2: 6f70 ld a2,216(a4) + 800097b4: 6c6c ld a1,216(s0) + 800097b6: 6e69 lui t3,0x1a + 800097b8: 4e492067 .insn 4, 0x4e492067 + 800097bc: 5f54 lw a3,60(a4) + 800097be: 54415453 .insn 4, 0x54415453 + 800097c2: 5355 li t1,-11 + 800097c4: 0a2e slli s4,s4,0xb + 800097c6: 0000 unimp + 800097c8: 5f4f4857 .insn 4, 0x5f4f4857 + 800097cc: 4d41 li s10,16 + 800097ce: 495f 303d 2578 .insn 6, 0x2578303d495f + 800097d4: 3230 fld fa2,96(a2) + 800097d6: 2078 fld fa4,192(s0) + 800097d8: 4349 li t1,18 + 800097da: 2d4d addiw s10,s10,19 + 800097dc: 3234 fld fa3,96(a2) + 800097de: 3836 fld fa6,360(sp) + 800097e0: 2d38 fld fa4,88(a0) + 800097e2: 0a50 addi a2,sp,276 + 800097e4: 0000 unimp + 800097e6: 0000 unimp + 800097e8: 5f4f4857 .insn 4, 0x5f4f4857 + 800097ec: 4d41 li s10,16 + 800097ee: 495f 303d 2578 .insn 6, 0x2578303d495f + 800097f4: 3230 fld fa2,96(a2) + 800097f6: 2078 fld fa4,192(s0) + 800097f8: 4349 li t1,18 + 800097fa: 2d4d addiw s10,s10,19 + 800097fc: 3234 fld fa3,96(a2) + 800097fe: 3836 fld fa6,360(sp) + 80009800: 2d36 fld fs10,328(sp) + 80009802: 0a50 addi a2,sp,276 + 80009804: 0000 unimp + 80009806: 0000 unimp + 80009808: 5f4f4857 .insn 4, 0x5f4f4857 + 8000980c: 4d41 li s10,16 + 8000980e: 495f 303d 2578 .insn 6, 0x2578303d495f + 80009814: 3230 fld fa2,96(a2) + 80009816: 2078 fld fa4,192(s0) + 80009818: 4146 lw sp,80(sp) + 8000981a: 4c49 li s8,18 + 8000981c: 2820 fld fs0,80(s0) + 8000981e: 7865 lui a6,0xffff9 + 80009820: 6570 ld a2,200(a0) + 80009822: 64657463 bgeu a0,t1,80009e6a <__clzdi2+0x7a8> + 80009826: 3020 fld fs0,96(s0) + 80009828: 3478 fld fa4,232(s0) + 8000982a: 2034 fld fa3,64(s0) + 8000982c: 3020726f jal tp,80010b2e <__heap_start+0x575e> + 80009830: 3478 fld fa4,232(s0) + 80009832: 000a2937 lui s2,0xa2 + 80009836: 0000 unimp + 80009838: 4544 lw s1,12(a0) + 8000983a: 4956 lw s2,84(sp) + 8000983c: 435f4543 fmadd.d fa0,ft10,fs5,fs0,rmm + 80009840: 49464e4f fnmadd.s ft8,fa2,fs4,fs1,rmm + 80009844: 78303d47 fmsub.s fs10,ft0,ft3,fa5,rup + 80009848: 3025 .insn 2, 0x3025 + 8000984a: 7832 ld a6,296(sp) + 8000984c: 4620 lw s0,72(a2) + 8000984e: 4941 li s2,16 + 80009850: 204c fld fa1,128(s0) + 80009852: 5328 lw a0,96(a4) + 80009854: 4950 lw a2,20(a0) + 80009856: 6d20 ld s0,88(a0) + 80009858: 2065646f jal s0,8005fa5e <__heap_start+0x5468e> + 8000985c: 756d lui a0,0xffffb + 8000985e: 72207473 csrrci s0,minstretcfgh,0 + 80009862: 6d65 lui s10,0x19 + 80009864: 6961 lui s2,0x18 + 80009866: 206e fld ft0,216(sp) + 80009868: 2930 fld fa2,80(a0) + 8000986a: 000a c.slli zero,0x2 + 8000986c: 0000 unimp + 8000986e: 0000 unimp + 80009870: 20474643 fmadd.s fa2,fa4,ft4,ft4,rmm + 80009874: 5750 lw a2,44(a4) + 80009876: 3d52 fld fs10,304(sp) + 80009878: 3025 .insn 2, 0x3025 + 8000987a: 7832 ld a6,296(sp) + 8000987c: 4720 lw s0,72(a4) + 8000987e: 5259 li tp,-10 + 80009880: 30253d4f fnmadd.s fs10,fa0,ft2,ft6,rup + 80009884: 7832 ld a6,296(sp) + 80009886: 4120 lw s0,64(a0) + 80009888: 4c454343 .insn 4, 0x4c454343 + 8000988c: 253d addiw a0,a0,15 # ffffffffffffb00f <_stack_top+0xffffffff7fefb00f> + 8000988e: 3230 fld fa2,96(a2) + 80009890: 2078 fld fa4,192(s0) + 80009892: 4946 lw s2,80(sp) + 80009894: 544c lw a1,44(s0) + 80009896: 253d addiw a0,a0,15 + 80009898: 3230 fld fa2,96(a2) + 8000989a: 2078 fld fa4,192(s0) + 8000989c: 253d3147 .insn 4, 0x253d3147 + 800098a0: 3230 fld fa2,96(a2) + 800098a2: 2078 fld fa4,192(s0) + 800098a4: 3141 addiw sp,sp,-16 + 800098a6: 253d addiw a0,a0,15 + 800098a8: 3230 fld fa2,96(a2) + 800098aa: 0a78 addi a4,sp,284 + 800098ac: 0000 unimp + 800098ae: 0000 unimp + 800098b0: 4f50 lw a2,28(a4) + 800098b2: 4c4c lw a1,28(s0) + 800098b4: 4920 lw s0,80(a0) + 800098b6: 544e lw s0,240(sp) + 800098b8: 535f 554f 4352 .insn 6, 0x4352554f535f + 800098be: 3045 .insn 2, 0x3045 + 800098c0: 253d addiw a0,a0,15 + 800098c2: 3230 fld fa2,96(a2) + 800098c4: 2078 fld fa4,192(s0) + 800098c6: 6528 ld a0,72(a0) + 800098c8: 7078 ld a4,224(s0) + 800098ca: 6365 lui t1,0x19 + 800098cc: 6574 ld a3,200(a0) + 800098ce: 2064 fld fs1,192(s0) + 800098d0: 3030 fld fa2,96(s0) + 800098d2: 203a fld ft0,392(sp) + 800098d4: 4e49 li t3,18 + 800098d6: 3154 fld fa3,160(a0) + 800098d8: 6420 ld s0,72(s0) + 800098da: 7369 lui t1,0xffffa + 800098dc: 6261 lui tp,0x18 + 800098de: 656c ld a1,200(a0) + 800098e0: 2964 fld fs1,208(a0) + 800098e2: 000a c.slli zero,0x2 + 800098e4: 0000 unimp + 800098e6: 0000 unimp + 800098e8: 736e6553 .insn 4, 0x736e6553 + 800098ec: 6320726f jal tp,80010f1e <__heap_start+0x5b4e> + 800098f0: 69666e6f jal t3,8006ff86 <__heap_start+0x64bb6> + 800098f4: 61727567 .insn 4, 0x61727567 + 800098f8: 6974 ld a3,208(a0) + 800098fa: 72206e6f jal t3,8001001c <__heap_start+0x4c4c> + 800098fe: 6165 addi sp,sp,112 + 80009900: 2d64 fld fs1,216(a0) + 80009902: 6162 ld sp,24(sp) + 80009904: 66206b63 bltu zero,sp,80009f7a + 80009908: 6961 lui s2,0x18 + 8000990a: 656c ld a1,200(a0) + 8000990c: 0a64 addi s1,sp,284 + 8000990e: 0000 unimp + 80009910: 7065654b fnmsub.s fa0,fa0,ft6,fa4,unknown + 80009914: 7420 ld s0,104(s0) + 80009916: 6568 ld a0,200(a0) + 80009918: 6220 ld s0,64(a2) + 8000991a: 6472616f jal sp,80030760 <__heap_start+0x25390> + 8000991e: 6d20 ld s0,88(a0) + 80009920: 6f69746f jal s0,800a1016 <__heap_start+0x95c46> + 80009924: 6c6e ld s8,216(sp) + 80009926: 7365 lui t1,0xffff9 + 80009928: 6f662073 csrs 0x6f6,a2 + 8000992c: 2072 fld ft0,280(sp) + 8000992e: 696c6163 bltu s8,s6,80009fb0 + 80009932: 7262 ld tp,56(sp) + 80009934: 7461 lui s0,0xffff8 + 80009936: 6f69 lui t5,0x1a + 80009938: 3b6e fld fs6,248(sp) + 8000993a: 7320 ld s0,96(a4) + 8000993c: 6174 ld a3,192(a0) + 8000993e: 7472 ld s0,312(sp) + 80009940: 6e69 lui t3,0x1a + 80009942: 6e692067 .insn 4, 0x6e692067 + 80009946: 3320 fld fs0,96(a4) + 80009948: 7320 ld s0,96(a4) + 8000994a: 6365 lui t1,0x19 + 8000994c: 73646e6f jal t3,80050082 <__heap_start+0x44cb2> + 80009950: 0a2e slli s4,s4,0xb + 80009952: 0000 unimp + 80009954: 0000 unimp + 80009956: 0000 unimp + 80009958: 696c6143 fmadd.s ft2,fs8,fs6,fa3,unknown + 8000995c: 7262 ld tp,56(sp) + 8000995e: 7461 lui s0,0xffff8 + 80009960: 6f69 lui t5,0x1a + 80009962: 206e fld ft0,216(sp) + 80009964: 7525 lui a0,0xfffe9 + 80009966: 3a75252f .insn 4, 0x3a75252f + 8000996a: 6320 ld s0,64(a4) + 8000996c: 656c6c6f jal s8,800cffc2 <__heap_start+0xc4bf2> + 80009970: 6e697463 bgeu s2,t1,8000a058 <__mprec_tens+0x40> + 80009974: 75252067 .insn 4, 0x75252067 + 80009978: 7320 ld s0,96(a4) + 8000997a: 6d61 lui s10,0x18 + 8000997c: 6c70 ld a2,216(s0) + 8000997e: 7365 lui t1,0xffff9 + 80009980: 2820 fld fs0,80(s0) + 80009982: 2035 .insn 2, 0x2035 + 80009984: 2e2e2973 csrrs s2,0x2e2,t3 + 80009988: 0a2e slli s4,s4,0xb + 8000998a: 0000 unimp + 8000998c: 0000 unimp + 8000998e: 0000 unimp + 80009990: 696c6143 fmadd.s ft2,fs8,fs6,fa3,unknown + 80009994: 7262 ld tp,56(sp) + 80009996: 7461 lui s0,0xffff8 + 80009998: 6f69 lui t5,0x1a + 8000999a: 206e fld ft0,216(sp) + 8000999c: 6974 ld a3,208(a0) + 8000999e: 656d lui a0,0x1b + 800099a0: 3a74756f jal a0,80051546 <__heap_start+0x46176> + 800099a4: 6720 ld s0,72(a4) + 800099a6: 2520746f jal s0,80010bf8 <__heap_start+0x5828> + 800099aa: 2f75 addiw t5,t5,29 # 1a01d + 800099ac: 7525 lui a0,0xfffe9 + 800099ae: 7020 ld s0,96(s0) + 800099b0: 696c6c6f jal s8,800d0046 <__heap_start+0xc4c76> + 800099b4: 676e ld a4,216(sp) + 800099b6: 7320 ld s0,96(a4) + 800099b8: 6d61 lui s10,0x18 + 800099ba: 6c70 ld a2,216(s0) + 800099bc: 7365 lui t1,0xffff9 + 800099be: 0a2e slli s4,s4,0xb ... - 800092d0: 3130 fld fa2,96(a0) - 800092d2: 3332 fld ft6,296(sp) - 800092d4: 3534 fld fa3,104(a0) - 800092d6: 3736 fld fa4,360(sp) - 800092d8: 3938 fld fa4,112(a0) - 800092da: 4241 li tp,16 - 800092dc: 46454443 .insn 4, 0x46454443 + 800099c8: 4944 lw s1,20(a0) + 800099ca: 4741 li a4,16 + 800099cc: 4920 lw s0,80(a0) + 800099ce: 544e lw s0,240(sp) + 800099d0: 535f 4154 5554 .insn 6, 0x55544154535f + 800099d6: 30253d53 .insn 4, 0x30253d53 + 800099da: 7832 ld a6,296(sp) + 800099dc: 5020 lw s0,96(s0) + 800099de: 253d5257 .insn 4, 0x253d5257 + 800099e2: 3230 fld fa2,96(a2) + 800099e4: 0a78 addi a4,sp,284 + 800099e6: 0000 unimp + 800099e8: 206c6163 bltu s8,t1,80009bea <__clzdi2+0x528> + 800099ec: 6172 ld sp,280(sp) + 800099ee: 656d2077 .insn 4, 0x656d2077 + 800099f2: 6e61 lui t3,0x18 + 800099f4: 4120 lw s0,64(a0) + 800099f6: 253d addiw a0,a0,15 # fffffffffffe900f <_stack_top+0xffffffff7fee900f> + 800099f8: 646c ld a1,200(s0) + 800099fa: 252c fld fa1,72(a0) + 800099fc: 646c ld a1,200(s0) + 800099fe: 252c fld fa1,72(a0) + 80009a00: 646c ld a1,200(s0) + 80009a02: 4720 lw s0,72(a4) + 80009a04: 253d addiw a0,a0,15 + 80009a06: 646c ld a1,200(s0) + 80009a08: 252c fld fa1,72(a0) + 80009a0a: 646c ld a1,200(s0) + 80009a0c: 252c fld fa1,72(a0) + 80009a0e: 646c ld a1,200(s0) + 80009a10: 6e20 ld s0,88(a2) + 80009a12: 3d6d726f jal tp,800e0de8 <__heap_start+0xd5a18> + 80009a16: 6c25 lui s8,0x9 + 80009a18: 0a75 addi s4,s4,29 + 80009a1a: 0000 unimp + 80009a1c: 0000 unimp + 80009a1e: 0000 unimp + 80009a20: 206c6163 bltu s8,t1,80009c22 <__clzdi2+0x560> + 80009a24: 6172 ld sp,280(sp) + 80009a26: 69732077 .insn 4, 0x69732077 + 80009a2a: 20616d67 .insn 4, 0x20616d67 + 80009a2e: 3d41 addiw s10,s10,-16 # 17ff0 + 80009a30: 6c25 lui s8,0x9 + 80009a32: 2c75 addiw s8,s8,29 # 901d + 80009a34: 6c25 lui s8,0x9 + 80009a36: 2c75 addiw s8,s8,29 # 901d + 80009a38: 6c25 lui s8,0x9 + 80009a3a: 2075 .insn 2, 0x2075 + 80009a3c: 6c253d47 .insn 4, 0x6c253d47 + 80009a40: 2c75 addiw s8,s8,29 # 901d + 80009a42: 6c25 lui s8,0x9 + 80009a44: 2c75 addiw s8,s8,29 # 901d + 80009a46: 6c25 lui s8,0x9 + 80009a48: 3a75 addiw s4,s4,-3 + 80009a4a: 2520 fld fs0,72(a0) + 80009a4c: 00000a73 .insn 4, 0x0a73 + 80009a50: 206c6163 bltu s8,t1,80009c52 <__clzdi2+0x590> + 80009a54: 6962 ld s2,24(sp) + 80009a56: 7361 lui t1,0xffff8 + 80009a58: 7220 ld s0,96(a2) + 80009a5a: 7761 lui a4,0xffff8 + 80009a5c: 4120 lw s0,64(a0) + 80009a5e: 253d addiw a0,a0,15 + 80009a60: 646c ld a1,200(s0) + 80009a62: 252c fld fa1,72(a0) + 80009a64: 646c ld a1,200(s0) + 80009a66: 252c fld fa1,72(a0) + 80009a68: 646c ld a1,200(s0) + 80009a6a: 4720 lw s0,72(a4) + 80009a6c: 253d addiw a0,a0,15 + 80009a6e: 646c ld a1,200(s0) + 80009a70: 252c fld fa1,72(a0) + 80009a72: 646c ld a1,200(s0) + 80009a74: 252c fld fa1,72(a0) + 80009a76: 646c ld a1,200(s0) + 80009a78: 000a c.slli zero,0x2 + 80009a7a: 0000 unimp + 80009a7c: 0000 unimp + 80009a7e: 0000 unimp + 80009a80: 696c6143 fmadd.s ft2,fs8,fs6,fa3,unknown + 80009a84: 7262 ld tp,56(sp) + 80009a86: 7461 lui s0,0xffff8 + 80009a88: 6f69 lui t5,0x1a + 80009a8a: 206e fld ft0,216(sp) + 80009a8c: 6166 ld sp,88(sp) + 80009a8e: 6c69 lui s8,0x1a + 80009a90: 6465 lui s0,0x19 + 80009a92: 656b203b .insn 4, 0x656b203b + 80009a96: 7065 c.lui zero,0xffff9 + 80009a98: 7420 ld s0,104(s0) + 80009a9a: 6568 ld a0,200(a0) + 80009a9c: 6b20 ld s0,80(a4) + 80009a9e: 7469 lui s0,0xffffa + 80009aa0: 7320 ld s0,96(a4) + 80009aa2: 6974 ld a3,208(a0) + 80009aa4: 6c6c ld a1,216(s0) + 80009aa6: 6120 ld s0,64(a0) + 80009aa8: 646e ld s0,216(sp) + 80009aaa: 7220 ld s0,96(a2) + 80009aac: 7365 lui t1,0xffff9 + 80009aae: 6174 ld a3,192(a0) + 80009ab0: 7472 ld s0,312(sp) + 80009ab2: 7420 ld s0,104(s0) + 80009ab4: 6568 ld a0,200(a0) + 80009ab6: 7420 ld s0,104(s0) + 80009ab8: 7365 lui t1,0xffff9 + 80009aba: 2e74 fld fa3,216(a2) + 80009abc: 000a c.slli zero,0x2 + 80009abe: 0000 unimp + 80009ac0: 72617453 .insn 4, 0x72617453 + 80009ac4: 6974 ld a3,208(a0) + 80009ac6: 676e ld a4,216(sp) + 80009ac8: 2520 fld fs0,72(a0) + 80009aca: 2075 .insn 2, 0x2075 + 80009acc: 61632073 csrs 0x616,t1 + 80009ad0: 7470 ld a2,232(s0) + 80009ad2: 7275 lui tp,0xffffd + 80009ad4: 3a65 addiw s4,s4,-7 + 80009ad6: 3520 fld fs0,104(a0) + 80009ad8: 3030 fld fa2,96(s0) + 80009ada: 4820 lw s0,80(s0) + 80009adc: 207a fld ft0,408(sp) + 80009ade: 20495053 .insn 4, 0x20495053 + 80009ae2: 6f70 ld a2,216(a4) + 80009ae4: 6c6c ld a1,216(s0) + 80009ae6: 6e69 lui t3,0x1a + 80009ae8: 55202c67 .insn 4, 0x55202c67 + 80009aec: 5241 li tp,-16 + 80009aee: 2054 fld fa3,128(s0) + 80009af0: 7665 lui a2,0xffff9 + 80009af2: 7265 lui tp,0xffff9 + 80009af4: 2079 .insn 2, 0x2079 + 80009af6: 3035 .insn 2, 0x3035 + 80009af8: 2030 fld fa2,64(s0) + 80009afa: 736d lui t1,0xffffb + 80009afc: 0a2e slli s4,s4,0xb + 80009afe: 0000 unimp + 80009b00: 6145 addi sp,sp,48 + 80009b02: 6c206863 bltu zero,sp,8000a1d2 <_ctype_+0xf2> + 80009b06: 6e69 lui t3,0x1a + 80009b08: 2065 .insn 2, 0x2065 + 80009b0a: 7369 lui t1,0xffffa + 80009b0c: 7420 ld s0,104(s0) + 80009b0e: 6568 ld a0,200(a0) + 80009b10: 6120 ld s0,64(a0) + 80009b12: 6576 ld a0,344(sp) + 80009b14: 6172 ld sp,280(sp) + 80009b16: 6f206567 .insn 4, 0x6f206567 + 80009b1a: 2066 fld ft0,88(sp) + 80009b1c: 706d6173 csrrsi sp,0x706,26 + 80009b20: 656c ld a1,200(a0) + 80009b22: 65722073 csrs hviprio2h,tp + 80009b26: 6461 lui s0,0x18 + 80009b28: 6920 ld s0,80(a0) + 80009b2a: 206e fld ft0,216(sp) + 80009b2c: 6874 ld a3,208(s0) + 80009b2e: 7461 lui s0,0xffff8 + 80009b30: 3520 fld fs0,104(a0) + 80009b32: 3030 fld fa2,96(s0) + 80009b34: 6d20 ld s0,88(a0) + 80009b36: 69772073 csrs 0x697,a4 + 80009b3a: 646e ld s0,216(sp) + 80009b3c: 0a2e776f jal a4,800f0bde <__heap_start+0xe580e> ... - 800092e8: 6e28 ld a0,88(a2) - 800092ea: 6c75 lui s8,0x1d - 800092ec: 296c fld fa1,208(a0) - 800092ee: 0000 unimp - 800092f0: 0030 addi a2,sp,8 - 800092f2: 0000 unimp - 800092f4: 0000 unimp - 800092f6: 0000 unimp - 800092f8: 6e49 lui t3,0x12 - 800092fa: 6966 ld s2,88(sp) - 800092fc: 696e ld s2,216(sp) - 800092fe: 7974 ld a3,240(a0) + 80009b48: 3025 .insn 2, 0x3025 + 80009b4a: 7532 ld a0,296(sp) + 80009b4c: 252e fld fa0,200(sp) + 80009b4e: 3330 fld fa2,96(a4) + 80009b50: 7375 lui t1,0xffffd + 80009b52: 6e20 ld s0,88(a2) + 80009b54: 303d .insn 2, 0x303d + 80009b56: 7420 ld s0,104(s0) + 80009b58: 6c61746f jal s0,8002121e <__heap_start+0x15e4e> + 80009b5c: 253d addiw a0,a0,15 + 80009b5e: 2075 .insn 2, 0x2075 + 80009b60: 4f4e lw t5,208(sp) + 80009b62: 5020 lw s0,96(s0) + 80009b64: 494c4c4f fnmadd.s fs8,fs8,fs4,fs1,rmm + 80009b68: 474e lw a4,208(sp) + 80009b6a: 4420 lw s0,72(s0) + 80009b6c: 5441 li s0,-16 + 80009b6e: 0a41 addi s4,s4,16 ... - 80009308: 614e ld sp,208(sp) - 8000930a: 004e c.slli zero,0x13 - 8000930c: 0000 unimp - 8000930e: 0000 unimp - 80009310: 6142 ld sp,16(sp) - 80009312: 6c6c ld a1,216(s0) - 80009314: 7320636f jal t1,8000fa46 <__heap_start+0x5106> - 80009318: 6375 lui t1,0x1d - 8000931a: 64656563 bltu a0,t1,80009964 <_ctype_+0x214> - 8000931e: 6465 lui s0,0x19 + 80009b78: 3025 .insn 2, 0x3025 + 80009b7a: 7532 ld a0,296(sp) + 80009b7c: 252e fld fa0,200(sp) + 80009b7e: 3330 fld fa2,96(a4) + 80009b80: 2075 .insn 2, 0x2075 + 80009b82: 207c2073 csrs 0x207,s8 + 80009b86: 706d6173 csrrsi sp,0x706,26 + 80009b8a: 656c ld a1,200(a0) + 80009b8c: 33253d73 csrrc s10,mhpmevent18,a0 + 80009b90: 2075 .insn 2, 0x2075 + 80009b92: 6f74 ld a3,216(a4) + 80009b94: 6174 ld a3,192(a0) + 80009b96: 3d6c fld fa1,248(a0) + 80009b98: 3525 addiw a0,a0,-23 + 80009b9a: 2075 .insn 2, 0x2075 + 80009b9c: 207c fld fa5,192(s0) + 80009b9e: 6554 ld a3,136(a0) + 80009ba0: 706d c.lui zero,0xffffb + 80009ba2: 253d addiw a0,a0,15 + 80009ba4: 2e36 fld ft8,328(sp) + 80009ba6: 43206633 .insn 4, 0x43206633 + 80009baa: 7c20 ld s0,120(s0) + 80009bac: 4120 lw s0,64(a0) + 80009bae: 6c656363 bltu a0,t1,8000a274 <_ctype_+0x194> + 80009bb2: 205d675b .insn 4, 0x205d675b + 80009bb6: 3d58 fld fa4,184(a0) + 80009bb8: 2025 .insn 2, 0x2025 + 80009bba: 332e fld ft6,232(sp) + 80009bbc: 2066 fld ft0,88(sp) + 80009bbe: 3d59 addiw s10,s10,-10 + 80009bc0: 2025 .insn 2, 0x2025 + 80009bc2: 332e fld ft6,232(sp) + 80009bc4: 2066 fld ft0,88(sp) + 80009bc6: 3d5a fld fs10,432(sp) + 80009bc8: 2025 .insn 2, 0x2025 + 80009bca: 332e fld ft6,232(sp) + 80009bcc: 2066 fld ft0,88(sp) + 80009bce: 207c fld fa5,192(s0) + 80009bd0: 6f727947 .insn 4, 0x6f727947 + 80009bd4: 7370645b .insn 4, 0x7370645b + 80009bd8: 205d .insn 2, 0x205d + 80009bda: 3d58 fld fa4,184(a0) + 80009bdc: 2025 .insn 2, 0x2025 + 80009bde: 332e fld ft6,232(sp) + 80009be0: 2066 fld ft0,88(sp) + 80009be2: 3d59 addiw s10,s10,-10 + 80009be4: 2025 .insn 2, 0x2025 + 80009be6: 332e fld ft6,232(sp) + 80009be8: 2066 fld ft0,88(sp) + 80009bea: 3d5a fld fs10,432(sp) + 80009bec: 2025 .insn 2, 0x2025 + 80009bee: 332e fld ft6,232(sp) + 80009bf0: 0a66 slli s4,s4,0x19 + 80009bf2: 0000 unimp + 80009bf4: 0000 unimp + 80009bf6: 0000 unimp + 80009bf8: 706d6f43 fmadd.s ft10,fs10,ft6,fa4,unknown + 80009bfc: 656c ld a1,200(a0) + 80009bfe: 6574 ld a3,200(a0) + 80009c00: 203a fld ft0,392(sp) + 80009c02: 706d6173 csrrsi sp,0x706,26 + 80009c06: 656c ld a1,200(a0) + 80009c08: 75253d73 csrrc s10,0x752,a0 + 80009c0c: 6520 ld s0,72(a0) + 80009c0e: 7078 ld a4,224(s0) + 80009c10: 6365 lui t1,0x19 + 80009c12: 6574 ld a3,200(a0) + 80009c14: 3c64 fld fs1,248(s0) + 80009c16: 253d addiw a0,a0,15 + 80009c18: 2075 .insn 2, 0x2075 + 80009c1a: 6e69 lui t3,0x1a + 80009c1c: 6176 ld sp,344(sp) + 80009c1e: 696c ld a1,208(a0) + 80009c20: 3d64 fld fs1,248(a0) + 80009c22: 7525 lui a0,0xfffe9 + 80009c24: 000a c.slli zero,0x2 + 80009c26: 0000 unimp + 80009c28: 4e49 li t3,18 + 80009c2a: 0046 c.slli zero,0x11 + 80009c2c: 0000 unimp + 80009c2e: 0000 unimp + 80009c30: 6e69 lui t3,0x1a + 80009c32: 0066 c.slli zero,0x19 + 80009c34: 0000 unimp + 80009c36: 0000 unimp + 80009c38: 414e lw sp,208(sp) + 80009c3a: 004e c.slli zero,0x13 + 80009c3c: 0000 unimp + 80009c3e: 0000 unimp + 80009c40: 616e ld sp,216(sp) + 80009c42: 006e c.slli zero,0x1b + 80009c44: 0000 unimp + 80009c46: 0000 unimp + 80009c48: 3130 fld fa2,96(a0) + 80009c4a: 3332 fld ft6,296(sp) + 80009c4c: 3534 fld fa3,104(a0) + 80009c4e: 3736 fld fa4,360(sp) + 80009c50: 3938 fld fa4,112(a0) + 80009c52: 6261 lui tp,0x18 + 80009c54: 66656463 bltu a0,t1,8000a2bc <_ctype_+0x1dc> ... - 80009328: 6d6f682f .insn 4, 0x6d6f682f - 8000932c: 2f65 addiw t5,t5,25 # 1a019 - 8000932e: 72756e6f jal t3,80060254 <__heap_start+0x55914> - 80009332: 7365442f .insn 4, 0x7365442f - 80009336: 706f746b .insn 4, 0x706f746b - 8000933a: 636f722f .insn 4, 0x636f722f - 8000933e: 2f74656b .insn 4, 0x2f74656b - 80009342: 6f74 ld a3,216(a4) - 80009344: 68636c6f jal s8,8003f9ca <__heap_start+0x3508a> - 80009348: 6961 lui s2,0x18 - 8000934a: 2d6e fld fs10,216(sp) - 8000934c: 2f637273 csrrci tp,0x2f6,6 - 80009350: 6972 ld s2,280(sp) - 80009352: 2d766373 csrrsi t1,0x2d7,12 - 80009356: 2d756e67 .insn 4, 0x2d756e67 - 8000935a: 6f74 ld a3,216(a4) - 8000935c: 68636c6f jal s8,8003f9e2 <__heap_start+0x350a2> - 80009360: 6961 lui s2,0x18 - 80009362: 2f6e fld ft10,216(sp) - 80009364: 656e ld a0,216(sp) - 80009366: 62696c77 .insn 4, 0x62696c77 - 8000936a: 77656e2f .insn 4, 0x77656e2f - 8000936e: 696c ld a1,208(a0) - 80009370: 2f62 fld ft10,24(sp) - 80009372: 696c ld a1,208(a0) - 80009374: 6362 ld t1,24(sp) - 80009376: 6474732f .insn 4, 0x6474732f - 8000937a: 696c ld a1,208(a0) - 8000937c: 2f62 fld ft10,24(sp) - 8000937e: 6f746467 .insn 4, 0x6f746467 - 80009382: 2d61 addiw s10,s10,24 # f018 - 80009384: 6d64 ld s1,216(a0) - 80009386: 7369 lui t1,0xffffa - 80009388: 00632e63 .insn 4, 0x00632e63 - 8000938c: 0000 unimp - 8000938e: 0000 unimp - 80009390: 6d6f682f .insn 4, 0x6d6f682f - 80009394: 2f65 addiw t5,t5,25 - 80009396: 72756e6f jal t3,800602bc <__heap_start+0x5597c> - 8000939a: 7365442f .insn 4, 0x7365442f - 8000939e: 706f746b .insn 4, 0x706f746b - 800093a2: 636f722f .insn 4, 0x636f722f - 800093a6: 2f74656b .insn 4, 0x2f74656b - 800093aa: 6f74 ld a3,216(a4) - 800093ac: 68636c6f jal s8,8003fa32 <__heap_start+0x350f2> - 800093b0: 6961 lui s2,0x18 - 800093b2: 2d6e fld fs10,216(sp) - 800093b4: 2f637273 csrrci tp,0x2f6,6 - 800093b8: 6972 ld s2,280(sp) - 800093ba: 2d766373 csrrsi t1,0x2d7,12 - 800093be: 2d756e67 .insn 4, 0x2d756e67 - 800093c2: 6f74 ld a3,216(a4) - 800093c4: 68636c6f jal s8,8003fa4a <__heap_start+0x3510a> - 800093c8: 6961 lui s2,0x18 - 800093ca: 2f6e fld ft10,216(sp) - 800093cc: 656e ld a0,216(sp) - 800093ce: 62696c77 .insn 4, 0x62696c77 - 800093d2: 77656e2f .insn 4, 0x77656e2f - 800093d6: 696c ld a1,208(a0) - 800093d8: 2f62 fld ft10,24(sp) - 800093da: 696c ld a1,208(a0) - 800093dc: 6362 ld t1,24(sp) - 800093de: 6474732f .insn 4, 0x6474732f - 800093e2: 696c ld a1,208(a0) - 800093e4: 2f62 fld ft10,24(sp) - 800093e6: 706d c.lui zero,0xffffb - 800093e8: 6572 ld a0,280(sp) - 800093ea: 00632e63 .insn 4, 0x00632e63 - 800093ee: 0000 unimp - 800093f0: 00000043 fmadd.s ft0,ft0,ft0,ft0,rne - 800093f4: 0000 unimp - 800093f6: 0000 unimp - 800093f8: 4f50 lw a2,28(a4) - 800093fa: 00584953 fadd.s fs2,fa6,ft5,rmm - 800093fe: 0000 unimp - 80009400: 002e c.slli zero,0xb - 80009402: 0000 unimp - 80009404: 0000 unimp - 80009406: 0000 unimp - 80009408: 202c fld fa1,64(s0) - 8000940a: 7566 ld a0,120(sp) - 8000940c: 636e ld t1,216(sp) - 8000940e: 6974 ld a3,208(a0) - 80009410: 203a6e6f jal t3,800afe12 <__heap_start+0xa54d2> - 80009414: 0000 unimp - 80009416: 0000 unimp - 80009418: 7361 lui t1,0xffff8 - 8000941a: 74726573 csrrsi a0,0x747,4 - 8000941e: 6f69 lui t5,0x1a - 80009420: 206e fld ft0,216(sp) - 80009422: 2522 fld fa0,8(sp) - 80009424: 66202273 csrr tp,0x662 - 80009428: 6961 lui s2,0x18 - 8000942a: 656c ld a1,200(a0) - 8000942c: 3a64 fld fs1,240(a2) - 8000942e: 6620 ld s0,72(a2) - 80009430: 6c69 lui s8,0x1a - 80009432: 2065 .insn 2, 0x2065 - 80009434: 2522 fld fa0,8(sp) - 80009436: 202c2273 csrrs tp,0x202,s8 - 8000943a: 696c ld a1,208(a0) - 8000943c: 656e ld a0,216(sp) - 8000943e: 2520 fld fs0,72(a0) - 80009440: 2564 fld fs1,200(a0) - 80009442: 0a732573 csrrs a0,0xa7,t1 - 80009446: 0000 unimp - 80009448: 7f30 ld a2,120(a4) - 8000944a: ffff .insn 2, 0xffff - 8000944c: 759e ld a1,480(sp) - 8000944e: ffff .insn 2, 0xffff - 80009450: 759e ld a1,480(sp) - 80009452: ffff .insn 2, 0xffff - 80009454: 7f24 ld s1,120(a4) - 80009456: ffff .insn 2, 0xffff - 80009458: 759e ld a1,480(sp) - 8000945a: ffff .insn 2, 0xffff - 8000945c: 759e ld a1,480(sp) - 8000945e: ffff .insn 2, 0xffff - 80009460: 759e ld a1,480(sp) - 80009462: ffff .insn 2, 0xffff - 80009464: 7ee0 ld s0,248(a3) - 80009466: ffff .insn 2, 0xffff - 80009468: 759e ld a1,480(sp) - 8000946a: ffff .insn 2, 0xffff - 8000946c: 759e ld a1,480(sp) - 8000946e: ffff .insn 2, 0xffff - 80009470: 7e14 ld a3,56(a2) - 80009472: ffff .insn 2, 0xffff - 80009474: 7e74 ld a3,248(a2) - 80009476: ffff .insn 2, 0xffff - 80009478: 759e ld a1,480(sp) - 8000947a: ffff .insn 2, 0xffff - 8000947c: 7e28 ld a0,120(a2) - 8000947e: ffff .insn 2, 0xffff - 80009480: 7e90 ld a2,56(a3) - 80009482: ffff .insn 2, 0xffff - 80009484: 759e ld a1,480(sp) - 80009486: ffff .insn 2, 0xffff - 80009488: 7e84 ld s1,56(a3) - 8000948a: ffff .insn 2, 0xffff - 8000948c: 756c ld a1,232(a0) - 8000948e: ffff .insn 2, 0xffff - 80009490: 756c ld a1,232(a0) - 80009492: ffff .insn 2, 0xffff - 80009494: 756c ld a1,232(a0) - 80009496: ffff .insn 2, 0xffff - 80009498: 756c ld a1,232(a0) - 8000949a: ffff .insn 2, 0xffff - 8000949c: 756c ld a1,232(a0) - 8000949e: ffff .insn 2, 0xffff - 800094a0: 756c ld a1,232(a0) - 800094a2: ffff .insn 2, 0xffff - 800094a4: 756c ld a1,232(a0) - 800094a6: ffff .insn 2, 0xffff - 800094a8: 756c ld a1,232(a0) - 800094aa: ffff .insn 2, 0xffff - 800094ac: 756c ld a1,232(a0) - 800094ae: ffff .insn 2, 0xffff - 800094b0: 759e ld a1,480(sp) - 800094b2: ffff .insn 2, 0xffff - 800094b4: 759e ld a1,480(sp) - 800094b6: ffff .insn 2, 0xffff - 800094b8: 759e ld a1,480(sp) - 800094ba: ffff .insn 2, 0xffff - 800094bc: 759e ld a1,480(sp) - 800094be: ffff .insn 2, 0xffff - 800094c0: 759e ld a1,480(sp) - 800094c2: ffff .insn 2, 0xffff - 800094c4: 759e ld a1,480(sp) - 800094c6: ffff .insn 2, 0xffff - 800094c8: 759e ld a1,480(sp) - 800094ca: ffff .insn 2, 0xffff - 800094cc: 76d6 ld a3,368(sp) - 800094ce: ffff .insn 2, 0xffff - 800094d0: 759e ld a1,480(sp) - 800094d2: ffff .insn 2, 0xffff - 800094d4: 7a94 ld a3,48(a3) - 800094d6: ffff .insn 2, 0xffff - 800094d8: 7cf2 ld s9,312(sp) - 800094da: ffff .insn 2, 0xffff - 800094dc: 76d6 ld a3,368(sp) - 800094de: ffff .insn 2, 0xffff - 800094e0: 76d6 ld a3,368(sp) - 800094e2: ffff .insn 2, 0xffff - 800094e4: 76d6 ld a3,368(sp) - 800094e6: ffff .insn 2, 0xffff - 800094e8: 759e ld a1,480(sp) - 800094ea: ffff .insn 2, 0xffff - 800094ec: 759e ld a1,480(sp) - 800094ee: ffff .insn 2, 0xffff - 800094f0: 759e ld a1,480(sp) - 800094f2: ffff .insn 2, 0xffff - 800094f4: 759e ld a1,480(sp) - 800094f6: ffff .insn 2, 0xffff - 800094f8: 7f48 ld a0,184(a4) - 800094fa: ffff .insn 2, 0xffff - 800094fc: 759e ld a1,480(sp) - 800094fe: ffff .insn 2, 0xffff - 80009500: 759e ld a1,480(sp) - 80009502: ffff .insn 2, 0xffff - 80009504: 7f54 ld a3,184(a4) - 80009506: ffff .insn 2, 0xffff - 80009508: 759e ld a1,480(sp) - 8000950a: ffff .insn 2, 0xffff - 8000950c: 759e ld a1,480(sp) - 8000950e: ffff .insn 2, 0xffff - 80009510: 759e ld a1,480(sp) - 80009512: ffff .insn 2, 0xffff - 80009514: 7aaa ld s5,168(sp) - 80009516: ffff .insn 2, 0xffff - 80009518: 759e ld a1,480(sp) - 8000951a: ffff .insn 2, 0xffff - 8000951c: 7e34 ld a3,120(a2) - 8000951e: ffff .insn 2, 0xffff - 80009520: 759e ld a1,480(sp) - 80009522: ffff .insn 2, 0xffff - 80009524: 759e ld a1,480(sp) - 80009526: ffff .insn 2, 0xffff - 80009528: 863c .insn 2, 0x863c - 8000952a: ffff .insn 2, 0xffff - 8000952c: 759e ld a1,480(sp) - 8000952e: ffff .insn 2, 0xffff - 80009530: 759e ld a1,480(sp) - 80009532: ffff .insn 2, 0xffff - 80009534: 759e ld a1,480(sp) - 80009536: ffff .insn 2, 0xffff - 80009538: 759e ld a1,480(sp) - 8000953a: ffff .insn 2, 0xffff - 8000953c: 759e ld a1,480(sp) - 8000953e: ffff .insn 2, 0xffff - 80009540: 759e ld a1,480(sp) - 80009542: ffff .insn 2, 0xffff - 80009544: 759e ld a1,480(sp) - 80009546: ffff .insn 2, 0xffff - 80009548: 759e ld a1,480(sp) - 8000954a: ffff .insn 2, 0xffff - 8000954c: 76d6 ld a3,368(sp) - 8000954e: ffff .insn 2, 0xffff - 80009550: 759e ld a1,480(sp) - 80009552: ffff .insn 2, 0xffff - 80009554: 7a94 ld a3,48(a3) - 80009556: ffff .insn 2, 0xffff - 80009558: 7c98 ld a4,56(s1) - 8000955a: ffff .insn 2, 0xffff - 8000955c: 76d6 ld a3,368(sp) - 8000955e: ffff .insn 2, 0xffff - 80009560: 76d6 ld a3,368(sp) - 80009562: ffff .insn 2, 0xffff - 80009564: 76d6 ld a3,368(sp) - 80009566: ffff .insn 2, 0xffff - 80009568: 7fa2 ld t6,40(sp) - 8000956a: ffff .insn 2, 0xffff - 8000956c: 7c98 ld a4,56(s1) - 8000956e: ffff .insn 2, 0xffff - 80009570: 7674 ld a3,232(a2) - 80009572: ffff .insn 2, 0xffff - 80009574: 759e ld a1,480(sp) - 80009576: ffff .insn 2, 0xffff - 80009578: 7fda ld t6,432(sp) - 8000957a: ffff .insn 2, 0xffff - 8000957c: 759e ld a1,480(sp) - 8000957e: ffff .insn 2, 0xffff - 80009580: 7fb6 ld t6,360(sp) - 80009582: ffff .insn 2, 0xffff - 80009584: 807a c.mv zero,t5 - 80009586: ffff .insn 2, 0xffff - 80009588: 8038 .insn 2, 0x8038 - 8000958a: ffff .insn 2, 0xffff - 8000958c: 802c .insn 2, 0x802c - 8000958e: ffff .insn 2, 0xffff - 80009590: 759e ld a1,480(sp) - 80009592: ffff .insn 2, 0xffff - 80009594: 7aaa ld s5,168(sp) - 80009596: ffff .insn 2, 0xffff - 80009598: 7674 ld a3,232(a2) - 8000959a: ffff .insn 2, 0xffff - 8000959c: 7fee ld t6,248(sp) - 8000959e: ffff .insn 2, 0xffff - 800095a0: 759e ld a1,480(sp) - 800095a2: ffff .insn 2, 0xffff - 800095a4: 759e ld a1,480(sp) - 800095a6: ffff .insn 2, 0xffff - 800095a8: 867a mv a2,t5 - 800095aa: ffff .insn 2, 0xffff - 800095ac: 759e ld a1,480(sp) - 800095ae: ffff .insn 2, 0xffff - 800095b0: 7674 ld a3,232(a2) - 800095b2: ffff .insn 2, 0xffff - 800095b4: 0000 unimp + 80009c60: 3130 fld fa2,96(a0) + 80009c62: 3332 fld ft6,296(sp) + 80009c64: 3534 fld fa3,104(a0) + 80009c66: 3736 fld fa4,360(sp) + 80009c68: 3938 fld fa4,112(a0) + 80009c6a: 4241 li tp,16 + 80009c6c: 46454443 .insn 4, 0x46454443 + ... + 80009c78: 6e28 ld a0,88(a2) + 80009c7a: 6c75 lui s8,0x1d + 80009c7c: 296c fld fa1,208(a0) + 80009c7e: 0000 unimp + 80009c80: 0030 addi a2,sp,8 + 80009c82: 0000 unimp + 80009c84: 0000 unimp + 80009c86: 0000 unimp + 80009c88: 6e49 lui t3,0x12 + 80009c8a: 6966 ld s2,88(sp) + 80009c8c: 696e ld s2,216(sp) + 80009c8e: 7974 ld a3,240(a0) + ... + 80009c98: 614e ld sp,208(sp) + 80009c9a: 004e c.slli zero,0x13 + 80009c9c: 0000 unimp + 80009c9e: 0000 unimp + 80009ca0: 6142 ld sp,16(sp) + 80009ca2: 6c6c ld a1,216(s0) + 80009ca4: 7320636f jal t1,800103d6 <__heap_start+0x5006> + 80009ca8: 6375 lui t1,0x1d + 80009caa: 64656563 bltu a0,t1,8000a2f4 <_ctype_+0x214> + 80009cae: 6465 lui s0,0x19 + ... + 80009cb8: 6d6f682f .insn 4, 0x6d6f682f + 80009cbc: 2f65 addiw t5,t5,25 # 1a019 + 80009cbe: 72756e6f jal t3,80060be4 <__heap_start+0x55814> + 80009cc2: 7365442f .insn 4, 0x7365442f + 80009cc6: 706f746b .insn 4, 0x706f746b + 80009cca: 636f722f .insn 4, 0x636f722f + 80009cce: 2f74656b .insn 4, 0x2f74656b + 80009cd2: 6f74 ld a3,216(a4) + 80009cd4: 68636c6f jal s8,8004035a <__heap_start+0x34f8a> + 80009cd8: 6961 lui s2,0x18 + 80009cda: 2d6e fld fs10,216(sp) + 80009cdc: 2f637273 csrrci tp,0x2f6,6 + 80009ce0: 6972 ld s2,280(sp) + 80009ce2: 2d766373 csrrsi t1,0x2d7,12 + 80009ce6: 2d756e67 .insn 4, 0x2d756e67 + 80009cea: 6f74 ld a3,216(a4) + 80009cec: 68636c6f jal s8,80040372 <__heap_start+0x34fa2> + 80009cf0: 6961 lui s2,0x18 + 80009cf2: 2f6e fld ft10,216(sp) + 80009cf4: 656e ld a0,216(sp) + 80009cf6: 62696c77 .insn 4, 0x62696c77 + 80009cfa: 77656e2f .insn 4, 0x77656e2f + 80009cfe: 696c ld a1,208(a0) + 80009d00: 2f62 fld ft10,24(sp) + 80009d02: 696c ld a1,208(a0) + 80009d04: 6362 ld t1,24(sp) + 80009d06: 6474732f .insn 4, 0x6474732f + 80009d0a: 696c ld a1,208(a0) + 80009d0c: 2f62 fld ft10,24(sp) + 80009d0e: 6f746467 .insn 4, 0x6f746467 + 80009d12: 2d61 addiw s10,s10,24 + 80009d14: 6d64 ld s1,216(a0) + 80009d16: 7369 lui t1,0xffffa + 80009d18: 00632e63 .insn 4, 0x00632e63 + 80009d1c: 0000 unimp + 80009d1e: 0000 unimp + 80009d20: 6d6f682f .insn 4, 0x6d6f682f + 80009d24: 2f65 addiw t5,t5,25 + 80009d26: 72756e6f jal t3,80060c4c <__heap_start+0x5587c> + 80009d2a: 7365442f .insn 4, 0x7365442f + 80009d2e: 706f746b .insn 4, 0x706f746b + 80009d32: 636f722f .insn 4, 0x636f722f + 80009d36: 2f74656b .insn 4, 0x2f74656b + 80009d3a: 6f74 ld a3,216(a4) + 80009d3c: 68636c6f jal s8,800403c2 <__heap_start+0x34ff2> + 80009d40: 6961 lui s2,0x18 + 80009d42: 2d6e fld fs10,216(sp) + 80009d44: 2f637273 csrrci tp,0x2f6,6 + 80009d48: 6972 ld s2,280(sp) + 80009d4a: 2d766373 csrrsi t1,0x2d7,12 + 80009d4e: 2d756e67 .insn 4, 0x2d756e67 + 80009d52: 6f74 ld a3,216(a4) + 80009d54: 68636c6f jal s8,800403da <__heap_start+0x3500a> + 80009d58: 6961 lui s2,0x18 + 80009d5a: 2f6e fld ft10,216(sp) + 80009d5c: 656e ld a0,216(sp) + 80009d5e: 62696c77 .insn 4, 0x62696c77 + 80009d62: 77656e2f .insn 4, 0x77656e2f + 80009d66: 696c ld a1,208(a0) + 80009d68: 2f62 fld ft10,24(sp) + 80009d6a: 696c ld a1,208(a0) + 80009d6c: 6362 ld t1,24(sp) + 80009d6e: 6474732f .insn 4, 0x6474732f + 80009d72: 696c ld a1,208(a0) + 80009d74: 2f62 fld ft10,24(sp) + 80009d76: 706d c.lui zero,0xffffb + 80009d78: 6572 ld a0,280(sp) + 80009d7a: 00632e63 .insn 4, 0x00632e63 + 80009d7e: 0000 unimp + 80009d80: 00000043 fmadd.s ft0,ft0,ft0,ft0,rne + 80009d84: 0000 unimp + 80009d86: 0000 unimp + 80009d88: 4f50 lw a2,28(a4) + 80009d8a: 00584953 fadd.s fs2,fa6,ft5,rmm + 80009d8e: 0000 unimp + 80009d90: 002e c.slli zero,0xb + 80009d92: 0000 unimp + 80009d94: 0000 unimp + 80009d96: 0000 unimp + 80009d98: 202c fld fa1,64(s0) + 80009d9a: 7566 ld a0,120(sp) + 80009d9c: 636e ld t1,216(sp) + 80009d9e: 6974 ld a3,208(a0) + 80009da0: 203a6e6f jal t3,800b07a2 <__heap_start+0xa53d2> + 80009da4: 0000 unimp + 80009da6: 0000 unimp + 80009da8: 7361 lui t1,0xffff8 + 80009daa: 74726573 csrrsi a0,0x747,4 + 80009dae: 6f69 lui t5,0x1a + 80009db0: 206e fld ft0,216(sp) + 80009db2: 2522 fld fa0,8(sp) + 80009db4: 66202273 csrr tp,0x662 + 80009db8: 6961 lui s2,0x18 + 80009dba: 656c ld a1,200(a0) + 80009dbc: 3a64 fld fs1,240(a2) + 80009dbe: 6620 ld s0,72(a2) + 80009dc0: 6c69 lui s8,0x1a + 80009dc2: 2065 .insn 2, 0x2065 + 80009dc4: 2522 fld fa0,8(sp) + 80009dc6: 202c2273 csrrs tp,0x202,s8 + 80009dca: 696c ld a1,208(a0) + 80009dcc: 656e ld a0,216(sp) + 80009dce: 2520 fld fs0,72(a0) + 80009dd0: 2564 fld fs1,200(a0) + 80009dd2: 0a732573 csrrs a0,0xa7,t1 + 80009dd6: 0000 unimp + 80009dd8: 7c88 ld a0,56(s1) + 80009dda: ffff .insn 2, 0xffff + 80009ddc: 72f6 ld t0,376(sp) + 80009dde: ffff .insn 2, 0xffff + 80009de0: 72f6 ld t0,376(sp) + 80009de2: ffff .insn 2, 0xffff + 80009de4: 7c7c ld a5,248(s0) + 80009de6: ffff .insn 2, 0xffff + 80009de8: 72f6 ld t0,376(sp) + 80009dea: ffff .insn 2, 0xffff + 80009dec: 72f6 ld t0,376(sp) + 80009dee: ffff .insn 2, 0xffff + 80009df0: 72f6 ld t0,376(sp) + 80009df2: ffff .insn 2, 0xffff + 80009df4: 7c38 ld a4,120(s0) + 80009df6: ffff .insn 2, 0xffff + 80009df8: 72f6 ld t0,376(sp) + 80009dfa: ffff .insn 2, 0xffff + 80009dfc: 72f6 ld t0,376(sp) + 80009dfe: ffff .insn 2, 0xffff + 80009e00: 7b6c ld a1,240(a4) + 80009e02: ffff .insn 2, 0xffff + 80009e04: 7bcc ld a1,176(a5) + 80009e06: ffff .insn 2, 0xffff + 80009e08: 72f6 ld t0,376(sp) + 80009e0a: ffff .insn 2, 0xffff + 80009e0c: 7b80 ld s0,48(a5) + 80009e0e: ffff .insn 2, 0xffff + 80009e10: 7be8 ld a0,240(a5) + 80009e12: ffff .insn 2, 0xffff + 80009e14: 72f6 ld t0,376(sp) + 80009e16: ffff .insn 2, 0xffff + 80009e18: 7bdc ld a5,176(a5) + 80009e1a: ffff .insn 2, 0xffff + 80009e1c: 72c4 ld s1,160(a3) + 80009e1e: ffff .insn 2, 0xffff + 80009e20: 72c4 ld s1,160(a3) + 80009e22: ffff .insn 2, 0xffff + 80009e24: 72c4 ld s1,160(a3) + 80009e26: ffff .insn 2, 0xffff + 80009e28: 72c4 ld s1,160(a3) + 80009e2a: ffff .insn 2, 0xffff + 80009e2c: 72c4 ld s1,160(a3) + 80009e2e: ffff .insn 2, 0xffff + 80009e30: 72c4 ld s1,160(a3) + 80009e32: ffff .insn 2, 0xffff + 80009e34: 72c4 ld s1,160(a3) + 80009e36: ffff .insn 2, 0xffff + 80009e38: 72c4 ld s1,160(a3) + 80009e3a: ffff .insn 2, 0xffff + 80009e3c: 72c4 ld s1,160(a3) + 80009e3e: ffff .insn 2, 0xffff + 80009e40: 72f6 ld t0,376(sp) + 80009e42: ffff .insn 2, 0xffff + 80009e44: 72f6 ld t0,376(sp) + 80009e46: ffff .insn 2, 0xffff + 80009e48: 72f6 ld t0,376(sp) + 80009e4a: ffff .insn 2, 0xffff + 80009e4c: 72f6 ld t0,376(sp) + 80009e4e: ffff .insn 2, 0xffff + 80009e50: 72f6 ld t0,376(sp) + 80009e52: ffff .insn 2, 0xffff + 80009e54: 72f6 ld t0,376(sp) + 80009e56: ffff .insn 2, 0xffff + 80009e58: 72f6 ld t0,376(sp) + 80009e5a: ffff .insn 2, 0xffff + 80009e5c: 742e ld s0,232(sp) + 80009e5e: ffff .insn 2, 0xffff + 80009e60: 72f6 ld t0,376(sp) + 80009e62: ffff .insn 2, 0xffff + 80009e64: 77ec ld a1,232(a5) + 80009e66: ffff .insn 2, 0xffff + 80009e68: 7a4a ld s4,176(sp) + 80009e6a: ffff .insn 2, 0xffff + 80009e6c: 742e ld s0,232(sp) + 80009e6e: ffff .insn 2, 0xffff + 80009e70: 742e ld s0,232(sp) + 80009e72: ffff .insn 2, 0xffff + 80009e74: 742e ld s0,232(sp) + 80009e76: ffff .insn 2, 0xffff + 80009e78: 72f6 ld t0,376(sp) + 80009e7a: ffff .insn 2, 0xffff + 80009e7c: 72f6 ld t0,376(sp) + 80009e7e: ffff .insn 2, 0xffff + 80009e80: 72f6 ld t0,376(sp) + 80009e82: ffff .insn 2, 0xffff + 80009e84: 72f6 ld t0,376(sp) + 80009e86: ffff .insn 2, 0xffff + 80009e88: 7ca0 ld s0,120(s1) + 80009e8a: ffff .insn 2, 0xffff + 80009e8c: 72f6 ld t0,376(sp) + 80009e8e: ffff .insn 2, 0xffff + 80009e90: 72f6 ld t0,376(sp) + 80009e92: ffff .insn 2, 0xffff + 80009e94: 7cac ld a1,120(s1) + 80009e96: ffff .insn 2, 0xffff + 80009e98: 72f6 ld t0,376(sp) + 80009e9a: ffff .insn 2, 0xffff + 80009e9c: 72f6 ld t0,376(sp) + 80009e9e: ffff .insn 2, 0xffff + 80009ea0: 72f6 ld t0,376(sp) + 80009ea2: ffff .insn 2, 0xffff + 80009ea4: 7802 ld a6,32(sp) + 80009ea6: ffff .insn 2, 0xffff + 80009ea8: 72f6 ld t0,376(sp) + 80009eaa: ffff .insn 2, 0xffff + 80009eac: 7b8c ld a1,48(a5) + 80009eae: ffff .insn 2, 0xffff + 80009eb0: 72f6 ld t0,376(sp) + 80009eb2: ffff .insn 2, 0xffff + 80009eb4: 72f6 ld t0,376(sp) + 80009eb6: ffff .insn 2, 0xffff + 80009eb8: 8394 .insn 2, 0x8394 + 80009eba: ffff .insn 2, 0xffff + 80009ebc: 72f6 ld t0,376(sp) + 80009ebe: ffff .insn 2, 0xffff + 80009ec0: 72f6 ld t0,376(sp) + 80009ec2: ffff .insn 2, 0xffff + 80009ec4: 72f6 ld t0,376(sp) + 80009ec6: ffff .insn 2, 0xffff + 80009ec8: 72f6 ld t0,376(sp) + 80009eca: ffff .insn 2, 0xffff + 80009ecc: 72f6 ld t0,376(sp) + 80009ece: ffff .insn 2, 0xffff + 80009ed0: 72f6 ld t0,376(sp) + 80009ed2: ffff .insn 2, 0xffff + 80009ed4: 72f6 ld t0,376(sp) + 80009ed6: ffff .insn 2, 0xffff + 80009ed8: 72f6 ld t0,376(sp) + 80009eda: ffff .insn 2, 0xffff + 80009edc: 742e ld s0,232(sp) + 80009ede: ffff .insn 2, 0xffff + 80009ee0: 72f6 ld t0,376(sp) + 80009ee2: ffff .insn 2, 0xffff + 80009ee4: 77ec ld a1,232(a5) + 80009ee6: ffff .insn 2, 0xffff + 80009ee8: 79f0 ld a2,240(a1) + 80009eea: ffff .insn 2, 0xffff + 80009eec: 742e ld s0,232(sp) + 80009eee: ffff .insn 2, 0xffff + 80009ef0: 742e ld s0,232(sp) + 80009ef2: ffff .insn 2, 0xffff + 80009ef4: 742e ld s0,232(sp) + 80009ef6: ffff .insn 2, 0xffff + 80009ef8: 7cfa ld s9,440(sp) + 80009efa: ffff .insn 2, 0xffff + 80009efc: 79f0 ld a2,240(a1) + 80009efe: ffff .insn 2, 0xffff + 80009f00: 73cc ld a1,160(a5) + 80009f02: ffff .insn 2, 0xffff + 80009f04: 72f6 ld t0,376(sp) + 80009f06: ffff .insn 2, 0xffff + 80009f08: 7d32 ld s10,296(sp) + 80009f0a: ffff .insn 2, 0xffff + 80009f0c: 72f6 ld t0,376(sp) + 80009f0e: ffff .insn 2, 0xffff + 80009f10: 7d0e ld s10,224(sp) + 80009f12: ffff .insn 2, 0xffff + 80009f14: 7dd2 ld s11,304(sp) + 80009f16: ffff .insn 2, 0xffff + 80009f18: 7d90 ld a2,56(a1) + 80009f1a: ffff .insn 2, 0xffff + 80009f1c: 7d84 ld s1,56(a1) + 80009f1e: ffff .insn 2, 0xffff + 80009f20: 72f6 ld t0,376(sp) + 80009f22: ffff .insn 2, 0xffff + 80009f24: 7802 ld a6,32(sp) + 80009f26: ffff .insn 2, 0xffff + 80009f28: 73cc ld a1,160(a5) + 80009f2a: ffff .insn 2, 0xffff + 80009f2c: 7d46 ld s10,112(sp) + 80009f2e: ffff .insn 2, 0xffff + 80009f30: 72f6 ld t0,376(sp) + 80009f32: ffff .insn 2, 0xffff + 80009f34: 72f6 ld t0,376(sp) + 80009f36: ffff .insn 2, 0xffff + 80009f38: 83d2 mv t2,s4 + 80009f3a: ffff .insn 2, 0xffff + 80009f3c: 72f6 ld t0,376(sp) + 80009f3e: ffff .insn 2, 0xffff + 80009f40: 73cc ld a1,160(a5) + 80009f42: ffff .insn 2, 0xffff + 80009f44: 0000 unimp ... -00000000800095b8 : - 800095b8: 3030 3030 3030 3030 3030 3030 3030 3030 0000000000000000 +0000000080009f48 : + 80009f48: 3030 3030 3030 3030 3030 3030 3030 3030 0000000000000000 -00000000800095c8 : - 800095c8: 2020 2020 2020 2020 2020 2020 2020 2020 +0000000080009f58 : + 80009f58: 2020 2020 2020 2020 2020 2020 2020 2020 ... - 800095ec: 0000 3ffc 0000 0000 0000 0000 0000 0000 ...?............ - 800095fc: 0000 4003 0000 0000 0000 0000 0000 0000 ...@............ - 8000960c: 0000 3ffe 0000 0000 0000 0000 0000 0000 ...?............ - 8000961c: 0000 4071 ffff ffff ffff ffff ffff ffff ..q@............ - 8000962c: ffff 7ffe 0000 0000 0000 0000 0000 0000 ................ - 8000963c: 0000 0001 a4fc ffff a4f0 ffff a4e4 ffff ................ - 8000964c: a4d8 ffff a4cc ffff a4c0 ffff a4b4 ffff ................ - 8000965c: a4a8 ffff 0071 0000 bf92 ffff 3f8f 0000 ....q........?.. - 8000966c: 0001 0000 0000 0000 0000 0000 ............ + 80009f7c: 0000 3ffc 0000 0000 0000 0000 0000 0000 ...?............ + 80009f8c: 0000 4003 0000 0000 0000 0000 0000 0000 ...@............ + 80009f9c: 0000 3ffe 0000 0000 0000 0000 0000 0000 ...?............ + 80009fac: 0000 4071 ffff ffff ffff ffff ffff ffff ..q@............ + 80009fbc: ffff 7ffe 0000 0000 0000 0000 0000 0000 ................ + 80009fcc: 0000 0001 a254 ffff a248 ffff a23c ffff ....T...H...<... + 80009fdc: a230 ffff a224 ffff a218 ffff a20c ffff 0...$........... + 80009fec: a200 ffff 0071 0000 bf92 ffff 3f8f 0000 ....q........?.. + 80009ffc: 0001 0000 0000 0000 0000 0000 ............ -0000000080009678 : - 80009678: 0005 0000 0019 0000 007d 0000 0000 0000 ........}....... +000000008000a008 : + 8000a008: 0005 0000 0019 0000 007d 0000 0000 0000 ........}....... -0000000080009688 <__mprec_tens>: - 80009688: 0000 0000 0000 3ff0 0000 0000 0000 4024 .......?......$@ - 80009698: 0000 0000 0000 4059 0000 0000 4000 408f ......Y@.....@.@ - 800096a8: 0000 0000 8800 40c3 0000 0000 6a00 40f8 .......@.....j.@ - 800096b8: 0000 0000 8480 412e 0000 0000 12d0 4163 .......A......cA - 800096c8: 0000 0000 d784 4197 0000 0000 cd65 41cd .......A....e..A - 800096d8: 0000 2000 a05f 4202 0000 e800 4876 4237 ... _..B....vH7B - 800096e8: 0000 a200 1a94 426d 0000 e540 309c 42a2 ......mB..@..0.B - 800096f8: 0000 1e90 bcc4 42d6 0000 2634 6bf5 430c .......B..4&.k.C - 80009708: 8000 37e0 c379 4341 a000 85d8 3457 4376 ...7y.AC....W4vC - 80009718: c800 674e c16d 43ab 3d00 6091 58e4 43e1 ..Ngm..C.=.`.X.C - 80009728: 8c40 78b5 af1d 4415 ef50 d6e2 1ae4 444b @..x...DP.....KD - 80009738: d592 064d f0cf 4480 4af6 c7e1 2d02 44b5 ..M....D.J...-.D - 80009748: 9db4 79d9 7843 44ea ...yCx.D +000000008000a018 <__mprec_tens>: + 8000a018: 0000 0000 0000 3ff0 0000 0000 0000 4024 .......?......$@ + 8000a028: 0000 0000 0000 4059 0000 0000 4000 408f ......Y@.....@.@ + 8000a038: 0000 0000 8800 40c3 0000 0000 6a00 40f8 .......@.....j.@ + 8000a048: 0000 0000 8480 412e 0000 0000 12d0 4163 .......A......cA + 8000a058: 0000 0000 d784 4197 0000 0000 cd65 41cd .......A....e..A + 8000a068: 0000 2000 a05f 4202 0000 e800 4876 4237 ... _..B....vH7B + 8000a078: 0000 a200 1a94 426d 0000 e540 309c 42a2 ......mB..@..0.B + 8000a088: 0000 1e90 bcc4 42d6 0000 2634 6bf5 430c .......B..4&.k.C + 8000a098: 8000 37e0 c379 4341 a000 85d8 3457 4376 ...7y.AC....W4vC + 8000a0a8: c800 674e c16d 43ab 3d00 6091 58e4 43e1 ..Ngm..C.=.`.X.C + 8000a0b8: 8c40 78b5 af1d 4415 ef50 d6e2 1ae4 444b @..x...DP.....KD + 8000a0c8: d592 064d f0cf 4480 4af6 c7e1 2d02 44b5 ..M....D.J...-.D + 8000a0d8: 9db4 79d9 7843 44ea ...yCx.D -0000000080009750 <_ctype_>: - 80009750: 2000 2020 2020 2020 2020 2828 2828 2028 . ((((( - 80009760: 2020 2020 2020 2020 2020 2020 2020 2020 - 80009770: 8820 1010 1010 1010 1010 1010 1010 1010 ............... - 80009780: 0410 0404 0404 0404 0404 1004 1010 1010 ................ - 80009790: 1010 4141 4141 4141 0101 0101 0101 0101 ..AAAAAA........ - 800097a0: 0101 0101 0101 0101 0101 0101 1010 1010 ................ - 800097b0: 1010 4242 4242 4242 0202 0202 0202 0202 ..BBBBBB........ - 800097c0: 0202 0202 0202 0202 0202 0202 1010 1010 ................ - 800097d0: 0020 0000 0000 0000 0000 0000 0000 0000 ............... +000000008000a0e0 <_ctype_>: + 8000a0e0: 2000 2020 2020 2020 2020 2828 2828 2028 . ((((( + 8000a0f0: 2020 2020 2020 2020 2020 2020 2020 2020 + 8000a100: 8820 1010 1010 1010 1010 1010 1010 1010 ............... + 8000a110: 0410 0404 0404 0404 0404 1004 1010 1010 ................ + 8000a120: 1010 4141 4141 4141 0101 0101 0101 0101 ..AAAAAA........ + 8000a130: 0101 0101 0101 0101 0101 0101 1010 1010 ................ + 8000a140: 1010 4242 4242 4242 0202 0202 0202 0202 ..BBBBBB........ + 8000a150: 0202 0202 0202 0202 0202 0202 1010 1010 ................ + 8000a160: 0020 0000 0000 0000 0000 0000 0000 0000 ............... ... - 80009854: dcbc ffff d768 ffff d768 ffff dcb2 ffff ....h...h....... - 80009864: d768 ffff d768 ffff d768 ffff dc74 ffff h...h...h...t... - 80009874: d768 ffff d768 ffff dab4 ffff dacc ffff h...h........... - 80009884: d768 ffff dac2 ffff dcdc ffff d768 ffff h...........h... - 80009894: dcd2 ffff d732 ffff d732 ffff d732 ffff ....2...2...2... - 800098a4: d732 ffff d732 ffff d732 ffff d732 ffff 2...2...2...2... - 800098b4: d732 ffff d732 ffff d768 ffff d768 ffff 2...2...h...h... - 800098c4: d768 ffff d768 ffff d768 ffff d768 ffff h...h...h...h... - 800098d4: d768 ffff d768 ffff d768 ffff da2c ffff h...h...h...,... - 800098e4: da48 ffff d768 ffff d768 ffff d768 ffff H...h...h...h... - 800098f4: d768 ffff d768 ffff d768 ffff d768 ffff h...h...h...h... - 80009904: d768 ffff d768 ffff d768 ffff dc24 ffff h...h...h...$... - 80009914: d768 ffff d768 ffff d768 ffff d9e6 ffff h...h...h....... - 80009924: d768 ffff dd24 ffff d768 ffff d768 ffff h...$...h...h... - 80009934: e13c ffff d768 ffff d768 ffff d768 ffff <...h...h...h... - 80009944: d768 ffff d768 ffff d768 ffff d768 ffff h...h...h...h... - 80009954: d768 ffff d768 ffff d768 ffff da2c ffff h...h...h...,... - 80009964: d8da ffff d768 ffff d768 ffff d768 ffff ....h...h...h... - 80009974: dc62 ffff d8da ffff d822 ffff d768 ffff b......."...h... - 80009984: dc12 ffff d768 ffff dbd6 ffff dbae ffff ....h........... - 80009994: db3a ffff db30 ffff d768 ffff d9e6 ffff :...0...h....... - 800099a4: d822 ffff dada ffff d768 ffff d768 ffff ".......h...h... - 800099b4: e182 ffff d768 ffff d822 ffff ....h..."... + 8000a1e4: da14 ffff d4c0 ffff d4c0 ffff da0a ffff ................ + 8000a1f4: d4c0 ffff d4c0 ffff d4c0 ffff d9cc ffff ................ + 8000a204: d4c0 ffff d4c0 ffff d80c ffff d824 ffff ............$... + 8000a214: d4c0 ffff d81a ffff da34 ffff d4c0 ffff ........4....... + 8000a224: da2a ffff d48a ffff d48a ffff d48a ffff *............... + 8000a234: d48a ffff d48a ffff d48a ffff d48a ffff ................ + 8000a244: d48a ffff d48a ffff d4c0 ffff d4c0 ffff ................ + 8000a254: d4c0 ffff d4c0 ffff d4c0 ffff d4c0 ffff ................ + 8000a264: d4c0 ffff d4c0 ffff d4c0 ffff d784 ffff ................ + 8000a274: d7a0 ffff d4c0 ffff d4c0 ffff d4c0 ffff ................ + 8000a284: d4c0 ffff d4c0 ffff d4c0 ffff d4c0 ffff ................ + 8000a294: d4c0 ffff d4c0 ffff d4c0 ffff d97c ffff ............|... + 8000a2a4: d4c0 ffff d4c0 ffff d4c0 ffff d73e ffff ............>... + 8000a2b4: d4c0 ffff da7c ffff d4c0 ffff d4c0 ffff ....|........... + 8000a2c4: de94 ffff d4c0 ffff d4c0 ffff d4c0 ffff ................ + 8000a2d4: d4c0 ffff d4c0 ffff d4c0 ffff d4c0 ffff ................ + 8000a2e4: d4c0 ffff d4c0 ffff d4c0 ffff d784 ffff ................ + 8000a2f4: d632 ffff d4c0 ffff d4c0 ffff d4c0 ffff 2............... + 8000a304: d9ba ffff d632 ffff d57a ffff d4c0 ffff ....2...z....... + 8000a314: d96a ffff d4c0 ffff d92e ffff d906 ffff j............... + 8000a324: d892 ffff d888 ffff d4c0 ffff d73e ffff ............>... + 8000a334: d57a ffff d832 ffff d4c0 ffff d4c0 ffff z...2........... + 8000a344: deda ffff d4c0 ffff d57a ffff ........z... -00000000800099c0 : - 800099c0: 3030 3030 3030 3030 3030 3030 3030 3030 0000000000000000 +000000008000a350 : + 8000a350: 3030 3030 3030 3030 3030 3030 3030 3030 0000000000000000 -00000000800099d0 : - 800099d0: 2020 2020 2020 2020 2020 2020 2020 2020 +000000008000a360 : + 8000a360: 2020 2020 2020 2020 2020 2020 2020 2020 -00000000800099e0 <__clz_tab>: - 800099e0: 0100 0202 0303 0303 0404 0404 0404 0404 ................ - 800099f0: 0505 0505 0505 0505 0505 0505 0505 0505 ................ - 80009a00: 0606 0606 0606 0606 0606 0606 0606 0606 ................ - 80009a10: 0606 0606 0606 0606 0606 0606 0606 0606 ................ - 80009a20: 0707 0707 0707 0707 0707 0707 0707 0707 ................ - 80009a30: 0707 0707 0707 0707 0707 0707 0707 0707 ................ - 80009a40: 0707 0707 0707 0707 0707 0707 0707 0707 ................ - 80009a50: 0707 0707 0707 0707 0707 0707 0707 0707 ................ - 80009a60: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009a70: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009a80: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009a90: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009aa0: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009ab0: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009ac0: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009ad0: 0808 0808 0808 0808 0808 0808 0808 0808 ................ - 80009ae0: cccd cccc cccc cccc 0000 0000 0000 3ff8 ...............? - 80009af0: 4361 636f 87a7 3fd2 c8b3 8b60 8a28 3fc6 aCoc...?..`.(..? - 80009b00: 79fb 509f 4413 3fd3 fa04 9d7d 2d16 3c94 .y.P.D.?..}..-.< - 80009b10: 5a32 5547 4413 3fd3 0000 0000 0000 3ff0 2ZGU.D.?.......? - 80009b20: 0000 0000 0000 4000 0000 0000 0000 401c .......@.......@ - 80009b30: 0000 0000 0000 4024 0000 0000 0000 4008 ......$@.......@ - 80009b40: 0000 0000 0000 4014 0000 0000 0000 3fe0 .......@.......? +000000008000a370 <__clz_tab>: + 8000a370: 0100 0202 0303 0303 0404 0404 0404 0404 ................ + 8000a380: 0505 0505 0505 0505 0505 0505 0505 0505 ................ + 8000a390: 0606 0606 0606 0606 0606 0606 0606 0606 ................ + 8000a3a0: 0606 0606 0606 0606 0606 0606 0606 0606 ................ + 8000a3b0: 0707 0707 0707 0707 0707 0707 0707 0707 ................ + 8000a3c0: 0707 0707 0707 0707 0707 0707 0707 0707 ................ + 8000a3d0: 0707 0707 0707 0707 0707 0707 0707 0707 ................ + 8000a3e0: 0707 0707 0707 0707 0707 0707 0707 0707 ................ + 8000a3f0: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a400: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a410: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a420: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a430: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a440: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a450: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a460: 0808 0808 0808 0808 0808 0808 0808 0808 ................ + 8000a470: 0000 0000 4000 408f 0000 0000 0000 3f10 .....@.@.......? + 8000a480: c28f 28f5 8f5c 4060 0000 0000 0000 4039 ...(\.`@......9@ + 8000a490: 0000 0000 0000 3f00 cccd cccc cccc cccc .......?........ + 8000a4a0: 0000 0000 0000 3ff8 4361 636f 87a7 3fd2 .......?aCoc...? + 8000a4b0: c8b3 8b60 8a28 3fc6 79fb 509f 4413 3fd3 ..`.(..?.y.P.D.? + 8000a4c0: fa04 9d7d 2d16 3c94 5a32 5547 4413 3fd3 ..}..-.<2ZGU.D.? + 8000a4d0: 0000 0000 0000 3ff0 0000 0000 0000 4000 .......?.......@ + 8000a4e0: 0000 0000 0000 401c 0000 0000 0000 4024 .......@......$@ + 8000a4f0: 0000 0000 0000 4008 0000 0000 0000 4014 .......@.......@ + 8000a500: 0000 0000 0000 3fe0 .......? diff --git a/soc/software/pmod_spi_test/build/pmod_spi_test.elf b/soc/software/pmod_spi_test/build/pmod_spi_test.elf index 9dd74599b826ed25dce4510f8d8b4c66a1a71bf4..12a44a21c33ab18cb27bc277b5422edda2db436a 100755 GIT binary patch delta 17598 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 delta 14430 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 delta 6830 zcmb`Jdsx#)y2odJAqk?^AV{pB`~dNSs417gp+$*Y0w|bD0qtWY7$V@|k{YzuT}?s) zC~Aw2HMpo;BQ{sI^fM*e)&6Vyk`Z=FE@ZjHT)6?ms8b zGtXzf@4WBKJMYXS>2WaiA2TMSEJ4w{%-G2&?9BimOMcX$^~NSfA%`;H11@DyxBU)Kc}x07fObcV_Rs2ob3f%S*=G%6ntr#hUCFRp_uWW}>o&G% z+wjo#Y!$3D?<%~0uF~ui9SthYLTLAkE!z8!$HmFio?t+0;oOOL?u${CnDr5hW#|?7 zp$UH6br~?$(={$;+D$p!SFfA)>g}?Qe~>We*+;w7@(ut(7XPrPMH`a~WdRrXh3(j8 z?daH}@(y-L`o(IW(Jq(H_YUysSA!>ajyRV-696~RO zeM~c7l)r`#TwL`=_3%|k%TRlN=A%^)az^oG3Gd2=GGR3IO{^CP{W~W|fFle~_sQ5^ zd;XZBtWs8=<}>`vM{Hh#M;;2E7qMr;Jnu9lc24mTYo_2-zi;pmgD_irmEh54dUN}~ zjQ}v`cHo3Zf~o2~tV4wm*#w;HcMW1O5XO>U#}kGiX@ZB&cQl}dOrn1y#y1``7mNUN zkdKE)9kO}!yr1kNc6i__4?m^H*9+I&+UJV)! zR)gq9YYv3|(>-B>T?&1AiS?+zp9K2nNK}y$rD*R4R4sYNUoM3W*F07Jt36c>pG#H# zxl$Fkb0lyA+iioSRGm%m| z!(CR3xWA@~B2#fwt3}Fw_h5;NkGonWp3lcA9fxol)iX{V^sn{;xI&)!eCaphI$T3i zGjluO;V`KnzD+=ikE9uzlJ^})QiF%idz7K)8M;5lHVf>-=h^Ln&odRD=g_qG>6N*- zAKw8Hndmiq=45{t>#;w?SM0Djc|e;|&|V-ZzV-65Z7thE@tc(+{L&*ukuzV6c%Xc= zX!Kpj2mR-VE)Ao3Qv#uaOP!Jq8TAS7fb0o|x!i(Ur-p=7;}>2%r`$&>lbm+wu-YS#?b7f1}JmKW6@C+=jqP$lTeDzGiEg zHXGU!6qB`?f7;2WD_xefRGnLfevC+E&Sjva$XG8+Vo=JMbv3GvjAC%y znaG7u$$cI9z6bmRcRY4Gd{T*jD!aeB{!^|_av!v4g&!Dehee5�AQgBi&2?$yng0 zza4k>>aWK*N8Bw5bMZ9yq3UhO%&kW|5}$$$>P%ce)w0I22le{`kHPdR%c~)0?yg3& zlVU_?npdNBN&fIY+Lja#@1eJojPUO$Joy}qMc*cK@+@3ak#(bJsR&q?SOKp^A=ZuP z?UYxgx%~Z@yB1}tONIVmHaf2^VWgRyBGm|?6}6_#^|#my@vAzFFGg-p0nllM8QECld=|7tXMqdIqdwG{%kv@ z^mKm?I1y4PnEt00R9d^B(0}`; zl8e*UL+rtQmj8rEcIjDurKXAUXnv(TtGRmxMNpO!$6GbNf>p2LHf|V#vP&~~E9*ym zgV6e-c4jacc@-;V0~5zbh<%P}ilJ=aN8ad|DFlcaPP_447?yHl%yl-I{0{!g{+(Tk zH&NYwogXoT2qPD7b4ew0p){6%vqKxWO{L#J(b+t@v8oC+;J-57BcOAKFxtUQtMG&HKT-JRPUhbaayK@gW&(~? z>OTESx^B3)|H!g!Ln+RCj_+&jPvh|26D?fl)_agiadNHOK4E5Dh}3DY=TNWX$jX%A zO-}5$fcIM-f%a^#oo=14TW1sJRIeMlRm%?xgA3-NMLYWaF3iw9zgL_yd}KKu9Fm9Q zvz@f(Np7A=2AP3_D9)VDv?Ek)PGTzO~%S3HcOMnR_KitUV!gqWTdT(V-;IN6|p5-!&$YyOmBSI z7$LZ(CwlSop|$pTrrgw(d8&-OG$vJ6>$$5z@GgH#k@%%&) zTiJQ~tp>fWLSKMqRw(B4v(R|r635cSaFVP>m6bKN)NlF)DPzZW@Y{|^UeB8NE$PZj zOE;Gl>+&m#%gfje`Nbvrf<slW_#8H~#)|l{^LQ>kw4?y7{llzj zX&KpLC&*XHP@=EU^Zs1uVGf!UCYS5zW}(d<*XM1H9Y2rx;(i6u^Dyg3--cO&eg9RX zYq-%gws`LrVW9)tT&{b+ce!{?n_GY@bzG9qjqCG%CvZH^D3ToCf2R89O}Ni>bTgS? zd;;}u3AA7z-c~`9>?1L!F}Imru2|f{aiaQGI6*m^n zderK2IdSX9?HX<$;nt1YTeux><-TqF9-7Wvce#o_7uu+mTfGPGfbyGtO^(BY2c?r}N^nFN zr<4&*$r4SeAeu6PXi5#ygeIUR21*0blxCtS>xiaoBAT+3Xv%J)DSL<(Xac}N43tiy zDZx=v0YaG@S)wTwL{laZO{pPzjCg&ZB?d|Z(UfMQDeH))Y$BSnlW59rqA7cb=E<)Q z9K=BBB$^U5k_r&Y+{hA5sUVs%foMt%(U>MPpMaJaC=EnYnu(^YBbu^_Xv$8aDZ7cL z>>;|R(L`=PF*pdFZUjxF0)#R*vP4rVh^9;+no>iw#zZ<=HyVhhG!so(M>J&<(UhG; zQ+5+g*+aC6b{xb&=_HyGG?NMt%G}5jO{pN7GJ$AHji60{bbyvPP#TD)G!so(M>J&< z(UhG;Q+5+g*)yi`{TDj;6%YqXC()Fkg;ao0=0=uiN(IrB2}DzBc+J1Ru@3(Vhy$g8 zXi78DlyyW?HW5wPNi=0Q(Ud({kG+4sgVzTRH#&)?1jk4P2xV?$iKbK#O_@M6rRErU z|F|=jfYyx$qAATpQ`Qkp*+evDC()GML{s)0Bk#Y53^?5AB$^Vmk_r&Y+{hA5sUVs% zfoMvNi5N75S~nVqrZf{xSw}Qw6Va5NL{oMXP3hf343vrZUqK-H>&b4@^fFtemperature = be16(&raw[0]); + sample->accel[0] = be16(&raw[2]); + sample->accel[1] = be16(&raw[4]); + sample->accel[2] = be16(&raw[6]); + sample->gyro[0] = be16(&raw[8]); + sample->gyro[1] = be16(&raw[10]); + sample->gyro[2] = be16(&raw[12]); +} + +static int sample_valid(const imu_raw_sample_t *sample) +{ + if (sample->temperature == INT16_MIN) { + return 0; + } + + for (unsigned i = 0; i < 3u; ++i) { + if ((sample->accel[i] == INT16_MIN) || + (sample->gyro[i] == INT16_MIN)) { + return 0; + } + } + return 1; +} + +static void capture_sample(const imu_raw_sample_t *sample) +{ + if (!sample_valid(sample)) { + invalid_sample_count++; + return; + } + + if (capture_mode == CAPTURE_CALIBRATION) { + if (calibration_discard != 0u) { + calibration_discard--; + return; + } + + if (calibration_count < CALIBRATION_SAMPLES) { + const int32_t values[IMU_AXIS_COUNT] = { + sample->accel[0], sample->accel[1], sample->accel[2], + sample->gyro[0], sample->gyro[1], sample->gyro[2] + }; + + for (unsigned i = 0; i < IMU_AXIS_COUNT; ++i) { + calibration_sum[i] += values[i]; + calibration_sum_sq[i] += (uint64_t)((int64_t)values[i] * values[i]); + } + calibration_count++; + } + return; + } + + if (capture_mode == CAPTURE_RUN) { + run_window_sum[0] += sample->temperature; + run_window_sum[1] += sample->accel[0]; + run_window_sum[2] += sample->accel[1]; + run_window_sum[3] += sample->accel[2]; + run_window_sum[4] += sample->gyro[0]; + run_window_sum[5] += sample->gyro[1]; + run_window_sum[6] += sample->gyro[2]; + run_window_count++; + run_total_count++; + } +} + +static int poll_data_ready(void) +{ + if ((icm_read_reg(ICM_INT_STATUS) & ICM_DATA_READY) == 0u) { + return 0; + } + + imu_raw_sample_t sample; + icm_read_sample(&sample); + capture_sample(&sample); + return 1; +} + +static int64_t divide_round_nearest(int64_t numerator, int64_t denominator) +{ + if (numerator >= 0) { + return (numerator + denominator / 2) / denominator; + } + return -((-numerator + denominator / 2) / denominator); +} + +static uint64_t integer_sqrt(uint64_t value) +{ + uint64_t result = 0u; + uint64_t bit = UINT64_C(1) << 62; + + while (bit > value) { + bit >>= 2; + } + while (bit != 0u) { + if (value >= result + bit) { + value -= result + bit; + result = (result >> 1) + bit; + } else { + result >>= 1; + } + bit >>= 2; + } + return result; +} + +static void reset_calibration_capture(void) +{ + capture_mode = CAPTURE_IDLE; + calibration_discard = CALIBRATION_DISCARD; + calibration_count = 0u; + for (unsigned i = 0; i < IMU_AXIS_COUNT; ++i) { + calibration_sum[i] = 0; + calibration_sum_sq[i] = 0u; + } + capture_mode = CAPTURE_CALIBRATION; +} + +static int wait_for_calibration(void) +{ + const uint64_t timeout_ticks = + (uint64_t)BSP_CLINT_TIMEBASE_HZ * CALIBRATION_TIMEOUT_S; + const uint64_t start = time_now(); + + while (calibration_count < CALIBRATION_SAMPLES) { + (void)poll_data_ready(); + if ((time_now() - start) >= timeout_ticks) { + return 0; + } + } + return 1; +} + +static int calculate_calibration(void) +{ + int64_t sum[IMU_AXIS_COUNT]; + uint64_t sum_sq[IMU_AXIS_COUNT]; + int64_t mean[IMU_AXIS_COUNT]; + uint64_t sigma[IMU_AXIS_COUNT]; + const int64_t accel_counts_per_g = 16384; + + capture_mode = CAPTURE_IDLE; + for (unsigned i = 0; i < IMU_AXIS_COUNT; ++i) { + sum[i] = calibration_sum[i]; + sum_sq[i] = calibration_sum_sq[i]; + } + for (unsigned i = 0; i < IMU_AXIS_COUNT; ++i) { + mean[i] = divide_round_nearest(sum[i], CALIBRATION_SAMPLES); + const uint64_t mean_square = sum_sq[i] / CALIBRATION_SAMPLES; + const uint64_t square_of_mean = (uint64_t)(mean[i] * mean[i]); + const uint64_t variance = + mean_square > square_of_mean ? mean_square - square_of_mean : 0u; + sigma[i] = integer_sqrt(variance); + } + + const uint64_t accel_norm = integer_sqrt( + (uint64_t)(mean[0] * mean[0]) + + (uint64_t)(mean[1] * mean[1]) + + (uint64_t)(mean[2] * mean[2])); + const uint64_t accel_sigma_limit = (uint64_t)accel_counts_per_g / 50u; + const uint64_t gyro_sigma_limit = + (uint64_t)divide_round_nearest((int64_t)32768 * 1000, + gyro_full_scale_mdps); + const int64_t gyro_mean_limit = + divide_round_nearest((int64_t)32768 * 2000, gyro_full_scale_mdps); + + int stable = + (accel_norm >= (uint64_t)(accel_counts_per_g * 8 / 10)) && + (accel_norm <= (uint64_t)(accel_counts_per_g * 12 / 10)); + + for (unsigned i = 0; i < 3u; ++i) { + if ((sigma[i] > accel_sigma_limit) || + (sigma[i + 3u] > gyro_sigma_limit) || + (mean[i + 3u] < -gyro_mean_limit) || + (mean[i + 3u] > gyro_mean_limit)) { + stable = 0; + } + } + + printf("cal raw mean A=%ld,%ld,%ld G=%ld,%ld,%ld norm=%lu\n", + (long)mean[0], (long)mean[1], (long)mean[2], + (long)mean[3], (long)mean[4], (long)mean[5], + (unsigned long)accel_norm); + printf("cal raw sigma A=%lu,%lu,%lu G=%lu,%lu,%lu: %s\n", + (unsigned long)sigma[0], (unsigned long)sigma[1], + (unsigned long)sigma[2], (unsigned long)sigma[3], + (unsigned long)sigma[4], (unsigned long)sigma[5], + stable ? "PASS" : "MOVING/UNSTABLE"); + + if (!stable || (accel_norm == 0u)) { + return 0; + } + + for (unsigned i = 0; i < 3u; ++i) { + const int64_t expected_gravity = divide_round_nearest( + mean[i] * accel_counts_per_g, (int64_t)accel_norm); + accel_bias_raw[i] = (int32_t)(mean[i] - expected_gravity); + gyro_bias_raw[i] = (int32_t)mean[i + 3u]; + } + + printf("cal bias raw A=%ld,%ld,%ld G=%ld,%ld,%ld\n", + (long)accel_bias_raw[0], (long)accel_bias_raw[1], + (long)accel_bias_raw[2], (long)gyro_bias_raw[0], + (long)gyro_bias_raw[1], (long)gyro_bias_raw[2]); + return 1; +} + +static void reset_run_capture(void) +{ + capture_mode = CAPTURE_IDLE; + run_window_count = 0u; + run_total_count = 0u; + for (unsigned i = 0; i < IMU_FIELD_COUNT; ++i) { + run_window_sum[i] = 0; + } + capture_mode = CAPTURE_RUN; +} + +static uint32_t take_run_window(int64_t sum[IMU_FIELD_COUNT], + uint32_t *total_count) +{ + const uint32_t count = run_window_count; + + for (unsigned i = 0; i < IMU_FIELD_COUNT; ++i) { + sum[i] = run_window_sum[i]; + run_window_sum[i] = 0; + } + run_window_count = 0u; + *total_count = run_total_count; + return count; +} + +static void print_run_window(unsigned report_index) +{ + int64_t sum[IMU_FIELD_COUNT]; + uint32_t total_count; + const uint32_t count = take_run_window(sum, &total_count); + + if (count == 0u) { + printf("%02u.%03us n=0 total=%u NO POLLING DATA\n", + (report_index * REPORT_PERIOD_MS) / 1000u, + (report_index * REPORT_PERIOD_MS) % 1000u, + total_count); + return; + } + + double mean[IMU_FIELD_COUNT]; + for (unsigned i = 0; i < IMU_FIELD_COUNT; ++i) { + mean[i] = (double)sum[i] / (double)count; + } + + const double temperature_c = 25.0 + mean[0] / 132.48; + const double ax_g = (mean[1] - (double)accel_bias_raw[0]) / 16384.0; + const double ay_g = (mean[2] - (double)accel_bias_raw[1]) / 16384.0; + const double az_g = (mean[3] - (double)accel_bias_raw[2]) / 16384.0; + const double gyro_scale_dps = (double)gyro_full_scale_mdps / 1000.0; + const double gx_dps = + (mean[4] - (double)gyro_bias_raw[0]) * gyro_scale_dps / 32768.0; + const double gy_dps = + (mean[5] - (double)gyro_bias_raw[1]) * gyro_scale_dps / 32768.0; + const double gz_dps = + (mean[6] - (double)gyro_bias_raw[2]) * gyro_scale_dps / 32768.0; + + printf("%02u.%03u s | samples=%3u total=%5u | " + "Temp=%6.3f C | " + "Accel[g] X=% .3f Y=% .3f Z=% .3f | " + "Gyro[dps] X=% .3f Y=% .3f Z=% .3f\n", + (report_index * REPORT_PERIOD_MS) / 1000u, + (report_index * REPORT_PERIOD_MS) % 1000u, + count, total_count, temperature_c, + ax_g, ay_g, az_g, gx_dps, gy_dps, gz_dps); +} + +int main(void) +{ + uint8_t gyro_config0; + uint8_t accel_config0; + + printf("\nICM PMOD 500 Hz SPI polling test\n"); + printf("SPI=0x%08lx Genesys2 PMOD JC\n", (unsigned long)BSP_PMOD_SPI_BASE); - printf("pins: CS=JC1 MOSI=JC2 MISO=JC3 SCK=JC4\n"); + printf("SPI pins: CS=JC1 MOSI=JC2 MISO=JC3 SCK=JC4\n"); + printf("INT1/JC9 is not used; samples are read by polling INT_STATUS.\n"); bsp_pmod_spi_init(); bsp_pmod_spi_set_mode(BSP_PMOD_SPI_MODE_SINGLE); bsp_pmod_spi_set_timing(10u, 10u, 10u, 10u); delay_us(1000u); - printf("WHO_AM_I reads:"); - uint8_t who_am_i = 0u; - for (unsigned attempt = 0; attempt < 4u; ++attempt) { - who_am_i = icm_read_reg(ICM_WHO_AM_I); - printf(" %02x", who_am_i); - } - printf("\n"); - - /* - * Keep DEVICE_CONFIG.SPI_MODE at its reset value. Although the RTL shifts - * and samples on the falling edge, board propagation makes it interoperate - * with the sensor's default mode-0 timing. Switching the sensor to mode 1 - * breaks this working timing relationship on the current bitstream. - */ + const uint8_t who_am_i = icm_read_reg(ICM_WHO_AM_I); const uint8_t device_config = icm_read_reg(ICM_DEVICE_CONFIG); - printf("DEVICE_CONFIG=0x%02x (expected 0x00)\n", device_config); - - if (who_am_i == ICM42686_WHO_AM_I) { - accel_full_scale_mg = 32000l; - gyro_full_scale_mdps = 4000000l; - printf("WHO_AM_I=0x%02x: ICM-42686-P PASS\n", who_am_i); - } else if (who_am_i == ICM42688_WHO_AM_I) { - accel_full_scale_mg = 16000l; - gyro_full_scale_mdps = 2000000l; - printf("WHO_AM_I=0x%02x: ICM-42688-P PASS\n", who_am_i); + if (who_am_i == ICM42688_WHO_AM_I) { + gyro_config0 = (7u << 5) | ICM_ODR_500HZ; + accel_config0 = (3u << 5) | ICM_ODR_500HZ; + gyro_full_scale_mdps = 15625; + printf("WHO_AM_I=0x%02x ICM-42688-P\n", who_am_i); + } else if (who_am_i == ICM42686_WHO_AM_I) { + gyro_config0 = (7u << 5) | ICM_ODR_500HZ; + accel_config0 = (4u << 5) | ICM_ODR_500HZ; + gyro_full_scale_mdps = 31250; + printf("WHO_AM_I=0x%02x ICM-42686-P\n", who_am_i); } else { - printf("WHO_AM_I=0x%02x: FAIL (expected 0x44 or 0x47)\n", who_am_i); - printf("SPI communication failed. DK J4: CS=1 SCK=2 MOSI=3 MISO=4 GND=7.\n"); - printf("Hold the DK SAMG55 in reset so it cannot contend for the sensor SPI bus.\n"); + printf("WHO_AM_I=0x%02x FAIL (expected 0x44 or 0x47)\n", who_am_i); bsp_uart_wait_tx_idle(); return 1; } - /* Enable accelerometer and gyroscope in low-noise mode. */ - icm_write_reg(ICM_PWR_MGMT0, 0x0fu); - delay_us(50000u); - - const uint8_t pwr = icm_read_reg(ICM_PWR_MGMT0); - const uint8_t gyro_cfg = icm_read_reg(ICM_GYRO_CONFIG0); - const uint8_t accel_cfg = icm_read_reg(ICM_ACCEL_CONFIG0); - printf("PWR_MGMT0=0x%02x GYRO_CONFIG0=0x%02x ACCEL_CONFIG0=0x%02x\n", - pwr, gyro_cfg, accel_cfg); - printf("units: temperature=mC accel=mg gyro=mdps\n"); - - for (unsigned sample = 0; sample < 40u; ++sample) { - const uint8_t status = icm_read_reg(ICM_INT_STATUS); - bsp_pmod_spi_read_regs(ICM_TEMP_DATA1 | ICM_SPI_READ, - ICM_SPI_DUMMY, - raw, - sizeof(raw)); - - const int16_t temp = be16(&raw[0]); - const int16_t ax = be16(&raw[2]); - const int16_t ay = be16(&raw[4]); - const int16_t az = be16(&raw[6]); - const int16_t gx = be16(&raw[8]); - const int16_t gy = be16(&raw[10]); - const int16_t gz = be16(&raw[12]); - - const long temp_mc = 25000l + (long)(((int64_t)temp * 100000) / 13248); - const long ax_mg = (long)(((int64_t)ax * accel_full_scale_mg) / 32768); - const long ay_mg = (long)(((int64_t)ay * accel_full_scale_mg) / 32768); - const long az_mg = (long)(((int64_t)az * accel_full_scale_mg) / 32768); - const long gx_mdps = (long)(((int64_t)gx * gyro_full_scale_mdps) / 32768); - const long gy_mdps = (long)(((int64_t)gy * gyro_full_scale_mdps) / 32768); - const long gz_mdps = (long)(((int64_t)gz * gyro_full_scale_mdps) / 32768); - - printf("%02u st=%02x T=%ld A=%ld,%ld,%ld G=%ld,%ld,%ld\n", - sample, status, temp_mc, - ax_mg, ay_mg, az_mg, gx_mdps, gy_mdps, gz_mdps); - delay_us(100000u); + if (device_config != 0x00u) { + printf("DEVICE_CONFIG=0x%02x FAIL (SPI mode must remain 0)\n", + device_config); + bsp_uart_wait_tx_idle(); + return 1; } - printf("IMU read complete\n"); + /* Configuration registers are changed while accel and gyro are off. */ + delay_ms(50u); + icm_write_reg(ICM_PWR_MGMT0, 0x00u); + delay_ms(1u); + icm_write_reg(ICM_INT_SOURCE0, 0x00u); + + icm_write_reg(ICM_GYRO_CONFIG0, gyro_config0); + icm_write_reg(ICM_ACCEL_CONFIG0, accel_config0); + + /* Third-order UI/DEC2 filters and 12.5 Hz LPF at a 500 Hz ODR. */ + const uint8_t gyro_config1 = + (icm_read_reg(ICM_GYRO_CONFIG1) & 0x10u) | 0xcau; + const uint8_t accel_config1 = + (icm_read_reg(ICM_ACCEL_CONFIG1) & 0xe1u) | 0x14u; + icm_write_reg(ICM_GYRO_CONFIG1, gyro_config1); + icm_write_reg(ICM_ACCEL_CONFIG1, accel_config1); + icm_write_reg(ICM_GYRO_ACCEL_CONFIG0, ICM_FILTER_BW_12P5HZ); + + /* Do not route data-ready to INT1; this test uses SPI polling only. */ + icm_write_reg(ICM_INT_SOURCE0, 0x00u); + + icm_write_reg(ICM_PWR_MGMT0, ICM_PWR_LOW_NOISE); + delay_ms(50u); + + printf("CFG PWR=%02x GYRO=%02x ACCEL=%02x FILT=%02x G1=%02x A1=%02x\n", + icm_read_reg(ICM_PWR_MGMT0), icm_read_reg(ICM_GYRO_CONFIG0), + icm_read_reg(ICM_ACCEL_CONFIG0), + icm_read_reg(ICM_GYRO_ACCEL_CONFIG0), + icm_read_reg(ICM_GYRO_CONFIG1), icm_read_reg(ICM_ACCEL_CONFIG1)); + printf("POLL INT_SOURCE0=%02x (expected 00: INT1 disabled)\n", + icm_read_reg(ICM_INT_SOURCE0)); + + if ((icm_read_reg(ICM_PWR_MGMT0) != ICM_PWR_LOW_NOISE) || + (icm_read_reg(ICM_GYRO_CONFIG0) != gyro_config0) || + (icm_read_reg(ICM_ACCEL_CONFIG0) != accel_config0) || + (icm_read_reg(ICM_GYRO_ACCEL_CONFIG0) != ICM_FILTER_BW_12P5HZ) || + (icm_read_reg(ICM_INT_SOURCE0) != 0x00u)) { + printf("Sensor configuration read-back failed\n"); + bsp_uart_wait_tx_idle(); + return 1; + } + + /* Clear any stale data-ready status before polling starts. */ + (void)icm_read_reg(ICM_INT_STATUS); + capture_mode = CAPTURE_IDLE; + + printf("Keep the board motionless for calibration; starting in 3 seconds.\n"); + delay_ms(3000u); + + int calibrated = 0; + for (unsigned attempt = 1u; + (attempt <= CALIBRATION_ATTEMPTS) && !calibrated; + ++attempt) { + printf("Calibration %u/%u: collecting %u samples (5 s)...\n", + attempt, CALIBRATION_ATTEMPTS, CALIBRATION_SAMPLES); + reset_calibration_capture(); + if (!wait_for_calibration()) { + printf("Calibration timeout: got %u/%u polling samples.\n", + calibration_count, CALIBRATION_SAMPLES); + const uint8_t status = icm_read_reg(ICM_INT_STATUS); + printf("DIAG INT_STATUS=%02x PWR=%02x\n", status, + icm_read_reg(ICM_PWR_MGMT0)); + break; + } + calibrated = calculate_calibration(); + } + + if (!calibrated) { + capture_mode = CAPTURE_IDLE; + icm_write_reg(ICM_PWR_MGMT0, 0x00u); + delay_ms(1u); + icm_write_reg(ICM_INT_SOURCE0, 0x00u); + printf("Calibration failed; keep the kit still and restart the test.\n"); + bsp_uart_wait_tx_idle(); + return 1; + } + + printf("Starting %u s capture: 500 Hz SPI polling, UART every 500 ms.\n", + (unsigned)REPORT_DURATION_S); + printf("Each line is the average of samples read in that 500 ms window.\n"); + reset_run_capture(); + + const uint64_t run_start = time_now(); + const uint64_t report_ticks = ticks_from_ms(REPORT_PERIOD_MS); + for (unsigned report = 1u; report <= REPORT_COUNT; ++report) { + const uint64_t deadline = run_start + (uint64_t)report * report_ticks; + while (time_now() < deadline) { + (void)poll_data_ready(); + } + print_run_window(report); + } + + capture_mode = CAPTURE_IDLE; + icm_write_reg(ICM_PWR_MGMT0, 0x00u); + delay_ms(1u); + icm_write_reg(ICM_INT_SOURCE0, 0x00u); + (void)icm_read_reg(ICM_INT_STATUS); + + printf("Complete: samples=%u expected<=%u invalid=%u\n", + run_total_count, 500u * REPORT_DURATION_S, + invalid_sample_count); bsp_uart_wait_tx_idle(); return 0; } diff --git a/targets/fpga/genesys2/flow/debug/gdb_load_and_run.gdb b/targets/fpga/genesys2/flow/debug/gdb_load_and_run.gdb index b17c6ea..c5b3f65 100644 --- a/targets/fpga/genesys2/flow/debug/gdb_load_and_run.gdb +++ b/targets/fpga/genesys2/flow/debug/gdb_load_and_run.gdb @@ -1,10 +1,9 @@ monitor reset halt +load + set $mie = 0 set $mstatus = 0x6000 set {unsigned long long}0x02004000 = 0xffffffffffffffff -load -set $mie = 0 -set $mstatus = 0x6000 set $sp = (unsigned long)&_stack_top set $pc = _start monitor resume diff --git a/targets/fpga/genesys2/tools/gen_genesys2_wrapper.py b/targets/fpga/genesys2/tools/gen_genesys2_wrapper.py index 75288a6..43aed83 100644 --- a/targets/fpga/genesys2/tools/gen_genesys2_wrapper.py +++ b/targets/fpga/genesys2/tools/gen_genesys2_wrapper.py @@ -275,7 +275,9 @@ def main(): rocket_bscan_dmi_tunnel u_rocket_bscan_dmi_tunnel ( .tck(bscan_tck), - .reset(fabric_reset | bscan_reset), + // Keep the transport TAP alive while the fabric is in reset. Otherwise + // OpenOCD cannot examine the target to diagnose a PLL/reset-ready failure. + .reset(bscan_reset), .bscan_capture(bscan_capture), .bscan_sel(bscan_sel), .bscan_shift(bscan_shift),