summaryrefslogtreecommitdiff
path: root/vendor/modernc.org/libc/libc.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/modernc.org/libc/libc.go')
-rw-r--r--vendor/modernc.org/libc/libc.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/vendor/modernc.org/libc/libc.go b/vendor/modernc.org/libc/libc.go
index 3a38e7f6b..98d7c217f 100644
--- a/vendor/modernc.org/libc/libc.go
+++ b/vendor/modernc.org/libc/libc.go
@@ -161,6 +161,10 @@ func X_exit(_ *TLS, status int32) {
}
func SetEnviron(t *TLS, env []string) {
+ if environInitialized {
+ return
+ }
+
environInitialized = true
p := Xcalloc(t, 1, types.Size_t((len(env)+1)*(int(uintptrSize))))
if p == 0 {
@@ -232,6 +236,8 @@ func X__builtin_copysignl(t *TLS, x, y float64) float64 { return X
func X__builtin_exit(t *TLS, status int32) { Xexit(t, status) }
func X__builtin_expect(t *TLS, exp, c long) long { return exp }
func X__builtin_fabs(t *TLS, x float64) float64 { return Xfabs(t, x) }
+func X__builtin_fabsf(t *TLS, x float32) float32 { return Xfabsf(t, x) }
+func X__builtin_fabsl(t *TLS, x float64) float64 { return Xfabsl(t, x) }
func X__builtin_free(t *TLS, ptr uintptr) { Xfree(t, ptr) }
func X__builtin_getentropy(t *TLS, buf uintptr, n types.Size_t) int32 { return Xgetentropy(t, buf, n) }
func X__builtin_huge_val(t *TLS) float64 { return math.Inf(1) }
@@ -1405,3 +1411,7 @@ func Xrindex(t *TLS, s uintptr, c int32) uintptr {
func Xisascii(t *TLS, c int32) int32 {
return Bool32(c >= 0 && c <= 0x7f)
}
+
+func X__builtin_isunordered(t *TLS, a, b float64) int32 {
+ return Bool32(math.IsNaN(a) || math.IsNaN(b))
+}