diff options
Diffstat (limited to 'vendor/modernc.org/libc/libc.go')
| -rw-r--r-- | vendor/modernc.org/libc/libc.go | 10 |
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)) +} |
