From 827558938b26e6781f0ec737d35354c01751ccaf Mon Sep 17 00:00:00 2001 From: Junhe Wu <2561075610@qq.com> Date: Fri, 1 May 2026 16:54:15 +0800 Subject: [PATCH] =?UTF-8?q?fix(sylib):=20=E4=BD=BF=E7=94=A8=E5=AE=98?= =?UTF-8?q?=E6=96=B9=E6=8F=90=E4=BE=9B=E7=9A=84=E5=BA=93=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sylib/libsysy_riscv.a | Bin 0 -> 19660 bytes sylib/sylib.c | 93 ++++++++++++++++++++++++++++++------------ sylib/sylib.h | 30 +++++++++----- 3 files changed, 87 insertions(+), 36 deletions(-) create mode 100644 sylib/libsysy_riscv.a diff --git a/sylib/libsysy_riscv.a b/sylib/libsysy_riscv.a new file mode 100644 index 0000000000000000000000000000000000000000..58c7fbdad833865cec009ed128cad3a4b90ad82f GIT binary patch literal 19660 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 +#include +#include #include"sylib.h" /* Input & output functions */ int getint(){int t; scanf("%d",&t); return t; } int getch(){char c; scanf("%c",&c); return (int)c; } +float getfloat(){ + float n; + scanf("%a", &n); + return n; +} + int getarray(int a[]){ + int n; + scanf("%d",&n); + for(int i=0;i /* Input & output functions */ int getint(),getch(),getarray(int a[]); -void putint(int a),putch(int a),putarray(int n,int a[]); float getfloat(); -void putfloat(float a); int getfarray(float a[]); -void putfarray(int n,float a[]); -/* Timing functions */ -void starttime(); -void stoptime(); + +void putint(int a),putch(int a),putarray(int n,int a[]); +void putfloat(float a); +void putfarray(int n, float a[]); + +void putf(char a[], ...); + +/* Timing function implementation */ +struct timeval _sysy_start,_sysy_end; +#define starttime() _sysy_starttime(__LINE__) +#define stoptime() _sysy_stoptime(__LINE__) +#define _SYSY_N 1024 +int _sysy_l1[_SYSY_N],_sysy_l2[_SYSY_N]; +int _sysy_h[_SYSY_N], _sysy_m[_SYSY_N],_sysy_s[_SYSY_N],_sysy_us[_SYSY_N]; +int _sysy_idx; +__attribute((constructor)) void before_main(); +__attribute((destructor)) void after_main(); +void _sysy_starttime(int lineno); +void _sysy_stoptime(int lineno); + #endif