some work on x11 ext

This commit is contained in:
veclavtlica
2026-10-13 04:30:06 +03:00
parent 964e623644
commit 5789cafd4e
13 changed files with 262 additions and 144 deletions
+22 -17
View File
@@ -24,23 +24,28 @@ size_t strlen(char const *s) {
return p - s;
}
double com_std_sin(double v) {
double result;
__asm__ __volatile__("fldl %1\n\t"
"fsin\n\t"
"fstpl %0"
: "=g"(result)
: "m"(v)
: "st", "st(1)");
return result;
double sin(double v) {
double r;
__asm__ __volatile__("fsin" : "=t"(r) : "0"(v));
return r;
}
double com_std_cos(double v) {
double result;
__asm__ __volatile__("fldl %1\n\t"
"fcos\n\t"
"fstpl %0"
: "=g"(result)
: "m"(v));
return result;
double cos(double v) {
double r;
__asm__ __volatile__("fcos" : "=t"(r) : "0"(v));
return r;
}
void sincos(double v, double *s, double *c) {
double sv, cv;
__asm__ __volatile__("fsincos" : "=t"(cv), "=u"(sv) : "0"(v));
*s = sv;
*c = cv;
}
double sqrt(double v) {
double r;
__asm__ volatile("sqrtss %1, %0" : "=x"(r) : "x"(v));
return r;
}