summaryrefslogtreecommitdiff
path: root/usr/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib')
-rw-r--r--usr/src/lib/libc/amd64/Makefile2
-rw-r--r--usr/src/lib/libc/i386/Makefile.com2
-rw-r--r--usr/src/lib/libc/sparc/Makefile.com2
-rw-r--r--usr/src/lib/libc/sparcv9/Makefile.com2
-rw-r--r--usr/src/lib/libm/Makefile.libm.com14
-rw-r--r--usr/src/lib/libm/amd64/src/libm_inlines.h26
-rw-r--r--usr/src/lib/libm/common/m9x/fenv_inlines.h136
-rw-r--r--usr/src/lib/libm/i386/src/libm_inlines.h70
-rw-r--r--usr/src/lib/libm/sparc/src/libm_inlines.h24
-rw-r--r--usr/src/lib/libm/sparcv9/src/libm_inlines.h24
-rw-r--r--usr/src/lib/libsqlite/Makefile.com2
11 files changed, 155 insertions, 149 deletions
diff --git a/usr/src/lib/libc/amd64/Makefile b/usr/src/lib/libc/amd64/Makefile
index 831d8f15e6..9da581df4e 100644
--- a/usr/src/lib/libc/amd64/Makefile
+++ b/usr/src/lib/libc/amd64/Makefile
@@ -1227,7 +1227,7 @@ $(ASSYMDEP_OBJS:%=pics/%): assym.h
GENASSYM_C = genassym.c
genassym: $(GENASSYM_C)
- $(NATIVECC) -Iinc -I$(LIBCDIR)/inc $(CPPFLAGS.native) \
+ $(NATIVECC) $(NATIVE_CFLAGS) -Iinc -I$(LIBCDIR)/inc $(CPPFLAGS.native) \
-o $@ $(GENASSYM_C)
OFFSETS = $(LIBCDIR)/$(MACH)/offsets.in
diff --git a/usr/src/lib/libc/i386/Makefile.com b/usr/src/lib/libc/i386/Makefile.com
index 68c2660a2e..62e6fe5d5e 100644
--- a/usr/src/lib/libc/i386/Makefile.com
+++ b/usr/src/lib/libc/i386/Makefile.com
@@ -1308,7 +1308,7 @@ $(ASSYMDEP_OBJS:%=pics/%): assym.h
GENASSYM_C = $(LIBCDIR)/$(MACH)/genassym.c
genassym: $(GENASSYM_C)
- $(NATIVECC) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
+ $(NATIVECC) $(NATIVE_CFLAGS) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
-D__EXTENSIONS__ $(CPPFLAGS.native) -o $@ $(GENASSYM_C)
OFFSETS = $(LIBCDIR)/$(MACH)/offsets.in
diff --git a/usr/src/lib/libc/sparc/Makefile.com b/usr/src/lib/libc/sparc/Makefile.com
index ce767f688c..6a0f6b6fe4 100644
--- a/usr/src/lib/libc/sparc/Makefile.com
+++ b/usr/src/lib/libc/sparc/Makefile.com
@@ -1386,7 +1386,7 @@ assym.h := CFLAGS += -g
GENASSYM_C = $(LIBCDIR)/$(MACH)/genassym.c
genassym: $(GENASSYM_C)
- $(NATIVECC) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
+ $(NATIVECC) $(NATIVE_CFLAGS) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
$(CPPFLAGS.native) -o $@ $(GENASSYM_C)
OFFSETS = $(LIBCDIR)/$(MACH)/offsets.in
diff --git a/usr/src/lib/libc/sparcv9/Makefile.com b/usr/src/lib/libc/sparcv9/Makefile.com
index e3731ab1e4..71d5b604b3 100644
--- a/usr/src/lib/libc/sparcv9/Makefile.com
+++ b/usr/src/lib/libc/sparcv9/Makefile.com
@@ -1300,7 +1300,7 @@ assym.h := CFLAGS64 += -g
GENASSYM_C = $(LIBCDIR)/$(MACH)/genassym.c
genassym: $(GENASSYM_C)
- $(NATIVECC) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
+ $(NATIVECC) $(NATIVE_CFLAGS) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
$(CPPFLAGS.native) -o $@ $(GENASSYM_C)
OFFSETS = $(LIBCDIR)/$(MACH)/offsets.in
diff --git a/usr/src/lib/libm/Makefile.libm.com b/usr/src/lib/libm/Makefile.libm.com
index 0a8904be2b..ffa6c888d4 100644
--- a/usr/src/lib/libm/Makefile.libm.com
+++ b/usr/src/lib/libm/Makefile.libm.com
@@ -23,13 +23,19 @@ ASSUFFIX_sparc = S
ASSUFFIX_i386 = s
ASSUFFIX = $(ASSUFFIX_$(MACH))
-# C99MODE of neither enabled nor disabled is "no_lib", whereby we expect
-# C99-the-language, but don't modify the behaviour of library routines. This
-# is VERY IMPORTANT, as -xc99=%all, for instance, would link us with
+# With studio C99MODE of neither enabled nor disabled is "no_lib", whereby we
+# expect C99-the-language, but don't modify the behaviour of library routines.
+# This is VERY IMPORTANT, as -xc99=%all, for instance, would link us with
# values-xpg6, which would introduce an __xpg6 to our object with the C99
# flags set, causing us to default C99 libm behaviour on, breaking
# compatibility.
+#
+# We must then, unfortunately, defeat the GNU compiler _defaulting_ to C99, by
+# in that case setting it back to gnu89, which _also_ accepts C99 syntax as
+# far as is important.
C99MODE =
+CFLAGS += -_gcc=-std=gnu89
+CFLAGS64 += -_gcc=-std=gnu89
M4FLAGS = -D__STDC__ -DPIC
@@ -49,7 +55,7 @@ CPPFLAGS += -I$(LIBMSRC)/C \
# GCC needs __C99FEATURES__ such that the implementations of isunordered,
# isgreaterequal, islessequal, etc, exist. This is basically equivalent to
# providing no -xc99 to Studio, in that it gets us the C99 language features,
-# but not values-xpg6, the reason for which is outline with C99MODE.
+# but not values-xpg6, the reason for which is outlined with C99MODE.
CFLAGS += -_gcc=-D__C99FEATURES__
CFLAGS64 += -_gcc=-D__C99FEATURES__
diff --git a/usr/src/lib/libm/amd64/src/libm_inlines.h b/usr/src/lib/libm/amd64/src/libm_inlines.h
index d69c79bfcb..b0dee03bdf 100644
--- a/usr/src/lib/libm/amd64/src/libm_inlines.h
+++ b/usr/src/lib/libm/amd64/src/libm_inlines.h
@@ -45,7 +45,7 @@ extern "C" {
#include <sys/types.h>
#include <sys/ieeefp.h>
-extern __inline__ float
+extern __GNU_INLINE float
__inline_sqrtf(float a)
{
float ret;
@@ -54,7 +54,7 @@ __inline_sqrtf(float a)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
__inline_sqrt(double a)
{
double ret;
@@ -63,7 +63,7 @@ __inline_sqrt(double a)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
__ieee754_sqrt(double a)
{
return (__inline_sqrt(a));
@@ -75,7 +75,7 @@ __ieee754_sqrt(double a)
* 10 - 53 bits
* 11 - 64 bits
*/
-extern __inline__ int
+extern __GNU_INLINE int
__swapRP(int i)
{
int ret;
@@ -97,7 +97,7 @@ __swapRP(int i)
* 10 - Round up
* 11 - Chop
*/
-extern __inline__ enum fp_direction_type
+extern __GNU_INLINE enum fp_direction_type
__swap87RD(enum fp_direction_type i)
{
int ret;
@@ -113,7 +113,7 @@ __swap87RD(enum fp_direction_type i)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
abs(int i)
{
int ret;
@@ -127,7 +127,7 @@ abs(int i)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
copysign(double d1, double d2)
{
double tmpd;
@@ -143,7 +143,7 @@ copysign(double d1, double d2)
return (d1);
}
-extern __inline__ double
+extern __GNU_INLINE double
fabs(double d)
{
double tmp;
@@ -157,7 +157,7 @@ fabs(double d)
return (d);
}
-extern __inline__ float
+extern __GNU_INLINE float
fabsf(float d)
{
__asm__ __volatile__(
@@ -168,7 +168,7 @@ fabsf(float d)
return (d);
}
-extern __inline__ int
+extern __GNU_INLINE int
finite(double d)
{
long ret = 0x7fffffffffffffff;
@@ -187,7 +187,7 @@ finite(double d)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
signbit(double d)
{
long ret;
@@ -200,13 +200,13 @@ signbit(double d)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
sqrt(double d)
{
return (__inline_sqrt(d));
}
-extern __inline__ float
+extern __GNU_INLINE float
sqrtf(float f)
{
return (__inline_sqrtf(f));
diff --git a/usr/src/lib/libm/common/m9x/fenv_inlines.h b/usr/src/lib/libm/common/m9x/fenv_inlines.h
index 945ec424d0..39056f7886 100644
--- a/usr/src/lib/libm/common/m9x/fenv_inlines.h
+++ b/usr/src/lib/libm/common/m9x/fenv_inlines.h
@@ -39,7 +39,7 @@ union fp_cwsw {
} words;
};
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_getcwsw(unsigned int *value)
{
union fp_cwsw *u = (union fp_cwsw *)value;
@@ -50,7 +50,7 @@ __fenv_getcwsw(unsigned int *value)
: "=m" (u->words.cw), "=m" (u->words.sw));
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_setcwsw(const unsigned int *value)
{
union fp_cwsw cwsw;
@@ -71,19 +71,19 @@ __fenv_setcwsw(const unsigned int *value)
"st(6)", "st(7)");
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_getmxcsr(unsigned int *value)
{
__asm__ __volatile__("stmxcsr %0" : "=m" (*value));
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_setmxcsr(const unsigned int *value)
{
__asm__ __volatile__("ldmxcsr %0" : : "m" (*value));
}
-extern __inline__ long double
+extern __GNU_INLINE long double
f2xm1(long double x)
{
long double ret;
@@ -92,7 +92,7 @@ f2xm1(long double x)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fyl2x(long double y, long double x)
{
long double ret;
@@ -104,7 +104,7 @@ fyl2x(long double y, long double x)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fptan(long double x)
{
/*
@@ -121,7 +121,7 @@ fptan(long double x)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fpatan(long double x, long double y)
{
long double ret;
@@ -133,28 +133,28 @@ fpatan(long double x, long double y)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fxtract(long double x)
{
__asm__ __volatile__("fxtract" : "+t" (x) : : "cc");
return (x);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fprem1(long double idend, long double div)
{
__asm__ __volatile__("fprem1" : "+t" (div) : "u" (idend) : "cc");
return (div);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fprem(long double idend, long double div)
{
__asm__ __volatile__("fprem" : "+t" (div) : "u" (idend) : "cc");
return (div);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fyl2xp1(long double y, long double x)
{
long double ret;
@@ -166,14 +166,14 @@ fyl2xp1(long double y, long double x)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fsqrt(long double x)
{
__asm__ __volatile__("fsqrt" : "+t" (x) : : "cc");
return (x);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fsincos(long double x)
{
long double dummy;
@@ -182,14 +182,14 @@ fsincos(long double x)
return (x);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
frndint(long double x)
{
__asm__ __volatile__("frndint" : "+t" (x) : : "cc");
return (x);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fscale(long double x, long double y)
{
long double ret;
@@ -198,21 +198,21 @@ fscale(long double x, long double y)
return (ret);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fsin(long double x)
{
__asm__ __volatile__("fsin" : "+t" (x) : : "cc");
return (x);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fcos(long double x)
{
__asm__ __volatile__("fcos" : "+t" (x) : : "cc");
return (x);
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpeqss(float *f1, float *f2, int *i1)
{
__asm__ __volatile__(
@@ -223,7 +223,7 @@ sse_cmpeqss(float *f1, float *f2, int *i1)
: "cc");
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpltss(float *f1, float *f2, int *i1)
{
__asm__ __volatile__(
@@ -234,7 +234,7 @@ sse_cmpltss(float *f1, float *f2, int *i1)
: "cc");
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpless(float *f1, float *f2, int *i1)
{
__asm__ __volatile__(
@@ -245,7 +245,7 @@ sse_cmpless(float *f1, float *f2, int *i1)
: "cc");
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpunordss(float *f1, float *f2, int *i1)
{
__asm__ __volatile__(
@@ -256,7 +256,7 @@ sse_cmpunordss(float *f1, float *f2, int *i1)
: "cc");
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_minss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -266,7 +266,7 @@ sse_minss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_maxss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -276,7 +276,7 @@ sse_maxss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_addss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -286,7 +286,7 @@ sse_addss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_subss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -296,7 +296,7 @@ sse_subss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_mulss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -306,7 +306,7 @@ sse_mulss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_divss(float *f1, float *f2, float *f3)
{
__asm__ __volatile__(
@@ -316,7 +316,7 @@ sse_divss(float *f1, float *f2, float *f3)
: "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_sqrtss(float *f1, float *f2)
{
double tmp;
@@ -328,20 +328,20 @@ sse_sqrtss(float *f1, float *f2)
: "m" (*f1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_ucomiss(float *f1, float *f2)
{
__asm__ __volatile__("ucomiss %1, %0" : : "x" (*f1), "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_comiss(float *f1, float *f2)
{
__asm__ __volatile__("comiss %1, %0" : : "x" (*f1), "x" (*f2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtss2sd(float *f1, double *d1)
{
double tmp;
@@ -353,7 +353,7 @@ sse_cvtss2sd(float *f1, double *d1)
: "m" (*f1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsi2ss(int *i1, float *f1)
{
double tmp;
@@ -365,7 +365,7 @@ sse_cvtsi2ss(int *i1, float *f1)
: "m" (*i1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvttss2si(float *f1, int *i1)
{
int tmp;
@@ -377,7 +377,7 @@ sse_cvttss2si(float *f1, int *i1)
: "m" (*f1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtss2si(float *f1, int *i1)
{
int tmp;
@@ -390,7 +390,7 @@ sse_cvtss2si(float *f1, int *i1)
}
#if defined(__amd64)
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsi2ssq(long long *ll1, float *f1)
{
double tmp;
@@ -402,7 +402,7 @@ sse_cvtsi2ssq(long long *ll1, float *f1)
: "m" (*ll1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvttss2siq(float *f1, long long *ll1)
{
uint64_t tmp;
@@ -414,7 +414,7 @@ sse_cvttss2siq(float *f1, long long *ll1)
: "m" (*f1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtss2siq(float *f1, long long *ll1)
{
uint64_t tmp;
@@ -428,7 +428,7 @@ sse_cvtss2siq(float *f1, long long *ll1)
#endif
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpeqsd(double *d1, double *d2, long long *ll1)
{
__asm__ __volatile__(
@@ -438,7 +438,7 @@ sse_cmpeqsd(double *d1, double *d2, long long *ll1)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpltsd(double *d1, double *d2, long long *ll1)
{
__asm__ __volatile__(
@@ -448,7 +448,7 @@ sse_cmpltsd(double *d1, double *d2, long long *ll1)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmplesd(double *d1, double *d2, long long *ll1)
{
__asm__ __volatile__(
@@ -458,7 +458,7 @@ sse_cmplesd(double *d1, double *d2, long long *ll1)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cmpunordsd(double *d1, double *d2, long long *ll1)
{
__asm__ __volatile__(
@@ -469,7 +469,7 @@ sse_cmpunordsd(double *d1, double *d2, long long *ll1)
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_minsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -479,7 +479,7 @@ sse_minsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_maxsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -489,7 +489,7 @@ sse_maxsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_addsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -499,7 +499,7 @@ sse_addsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_subsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -509,7 +509,7 @@ sse_subsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_mulsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -519,7 +519,7 @@ sse_mulsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_divsd(double *d1, double *d2, double *d3)
{
__asm__ __volatile__(
@@ -529,7 +529,7 @@ sse_divsd(double *d1, double *d2, double *d3)
: "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_sqrtsd(double *d1, double *d2)
{
double tmp;
@@ -541,19 +541,19 @@ sse_sqrtsd(double *d1, double *d2)
: "m" (*d1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_ucomisd(double *d1, double *d2)
{
__asm__ __volatile__("ucomisd %1, %0" : : "x" (*d1), "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_comisd(double *d1, double *d2)
{
__asm__ __volatile__("comisd %1, %0" : : "x" (*d1), "x" (*d2));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsd2ss(double *d1, float *f1)
{
double tmp;
@@ -565,7 +565,7 @@ sse_cvtsd2ss(double *d1, float *f1)
: "m" (*d1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsi2sd(int *i1, double *d1)
{
double tmp;
@@ -576,7 +576,7 @@ sse_cvtsi2sd(int *i1, double *d1)
: "m" (*i1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvttsd2si(double *d1, int *i1)
{
int tmp;
@@ -588,7 +588,7 @@ sse_cvttsd2si(double *d1, int *i1)
: "m" (*d1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsd2si(double *d1, int *i1)
{
int tmp;
@@ -601,7 +601,7 @@ sse_cvtsd2si(double *d1, int *i1)
}
#if defined(__amd64)
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsi2sdq(long long *ll1, double *d1)
{
double tmp;
@@ -613,7 +613,7 @@ sse_cvtsi2sdq(long long *ll1, double *d1)
: "m" (*ll1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvttsd2siq(double *d1, long long *ll1)
{
uint64_t tmp;
@@ -625,7 +625,7 @@ sse_cvttsd2siq(double *d1, long long *ll1)
: "m" (*d1));
}
-extern __inline__ void
+extern __GNU_INLINE void
sse_cvtsd2siq(double *d1, long long *ll1)
{
uint64_t tmp;
@@ -639,37 +639,37 @@ sse_cvtsd2siq(double *d1, long long *ll1)
#endif
#elif defined(__sparc)
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_getfsr(unsigned long *l)
{
__asm__ __volatile__(
#if defined(__sparcv9)
- "stx %%fsr,%0\n\t"
+ "stx %%fsr,%0\n\t"
#else
- "st %%fsr,%0\n\t"
+ "st %%fsr,%0\n\t"
#endif
- : "=m" (*l));
+ : "=m" (*l));
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_setfsr(const unsigned long *l)
{
__asm__ __volatile__(
#if defined(__sparcv9)
- "ldx %0,%%fsr\n\t"
+ "ldx %0,%%fsr\n\t"
#else
- "ld %0,%%fsr\n\t"
+ "ld %0,%%fsr\n\t"
#endif
- : : "m" (*l) : "cc");
+ : : "m" (*l) : "cc");
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_getfsr32(unsigned int *l)
{
__asm__ __volatile__("st %%fsr,%0\n\t" : "=m" (*l));
}
-extern __inline__ void
+extern __GNU_INLINE void
__fenv_setfsr32(const unsigned int *l)
{
__asm__ __volatile__("ld %0,%%fsr\n\t" : : "m" (*l));
diff --git a/usr/src/lib/libm/i386/src/libm_inlines.h b/usr/src/lib/libm/i386/src/libm_inlines.h
index e57ecbaded..309d40460e 100644
--- a/usr/src/lib/libm/i386/src/libm_inlines.h
+++ b/usr/src/lib/libm/i386/src/libm_inlines.h
@@ -46,7 +46,7 @@ extern "C" {
#define _HI_WORD(x) ((uint32_t *)&x)[1]
#define _HIER_WORD(x) ((uint32_t *)&x)[2]
-extern __inline__ double
+extern __GNU_INLINE double
__inline_sqrt(double a)
{
double ret;
@@ -55,13 +55,13 @@ __inline_sqrt(double a)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
__ieee754_sqrt(double a)
{
return (__inline_sqrt(a));
}
-extern __inline__ float
+extern __GNU_INLINE float
__inline_sqrtf(float a)
{
float ret;
@@ -70,7 +70,7 @@ __inline_sqrtf(float a)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
__inline_rint(double a)
{
__asm__ __volatile__(
@@ -92,7 +92,7 @@ __inline_rint(double a)
* 10 - 53 bits
* 11 - 64 bits
*/
-extern __inline__ int
+extern __GNU_INLINE int
__swapRP(int i)
{
int ret;
@@ -114,7 +114,7 @@ __swapRP(int i)
* 10 - Round up
* 11 - Chop
*/
-extern __inline__ enum fp_direction_type
+extern __GNU_INLINE enum fp_direction_type
__swap87RD(enum fp_direction_type i)
{
int ret;
@@ -130,7 +130,7 @@ __swap87RD(enum fp_direction_type i)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
ceil(double d)
{
/*
@@ -157,7 +157,7 @@ ceil(double d)
return (d);
}
-extern __inline__ double
+extern __GNU_INLINE double
copysign(double d1, double d2)
{
__asm__ __volatile__(
@@ -171,28 +171,28 @@ copysign(double d1, double d2)
return (d1);
}
-extern __inline__ double
+extern __GNU_INLINE double
fabs(double d)
{
__asm__ __volatile__("fabs\n\t" : "+t" (d) : : "cc");
return (d);
}
-extern __inline__ float
+extern __GNU_INLINE float
fabsf(float d)
{
__asm__ __volatile__("fabs\n\t" : "+t" (d) : : "cc");
return (d);
}
-extern __inline__ long double
+extern __GNU_INLINE long double
fabsl(long double d)
{
__asm__ __volatile__("fabs\n\t" : "+t" (d) : : "cc");
return (d);
}
-extern __inline__ int
+extern __GNU_INLINE int
finite(double d)
{
int ret = _HI_WORD(d);
@@ -208,7 +208,7 @@ finite(double d)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
floor(double d)
{
short rd = __swap87RD(fp_negative);
@@ -223,29 +223,29 @@ floor(double d)
* branchless __isnan
* ((0x7ff00000-[((lx|-lx)>>31)&1]|ahx)>>31)&1 = 1 iff x is NaN
*/
-extern __inline__ int
+extern __GNU_INLINE int
isnan(double d)
{
int ret;
__asm__ __volatile__(
- "movl %1,%%ecx\n\t"
- "negl %%ecx\n\t" /* ecx <-- -lo_32(x) */
- "orl %%ecx,%1\n\t"
- "shrl $31,%1\n\t" /* 1 iff lx != 0 */
- "andl $0x7fffffff,%2\n\t" /* ecx <-- hi_32(abs(x)) */
- "orl %2,%1\n\t"
- "subl $0x7ff00000,%1\n\t"
- "negl %1\n\t"
- "shrl $31,%1\n\t"
- : "=r" (ret)
- : "0" (_HI_WORD(d)), "r" (_LO_WORD(d))
- : "ecx");
+ "movl %1,%%ecx\n\t"
+ "negl %%ecx\n\t" /* ecx <-- -lo_32(x) */
+ "orl %%ecx,%1\n\t"
+ "shrl $31,%1\n\t" /* 1 iff lx != 0 */
+ "andl $0x7fffffff,%2\n\t" /* ecx <-- hi_32(abs(x)) */
+ "orl %2,%1\n\t"
+ "subl $0x7ff00000,%1\n\t"
+ "negl %1\n\t"
+ "shrl $31,%1\n\t"
+ : "=r" (ret)
+ : "0" (_HI_WORD(d)), "r" (_LO_WORD(d))
+ : "ecx");
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
isnanf(float f)
{
__asm__ __volatile__(
@@ -260,12 +260,12 @@ isnanf(float f)
return (f);
}
-extern __inline__ double
+extern __GNU_INLINE double
rint(double a) {
return (__inline_rint(a));
}
-extern __inline__ double
+extern __GNU_INLINE double
scalbn(double d, int n)
{
double dummy;
@@ -281,38 +281,38 @@ scalbn(double d, int n)
return (d);
}
-extern __inline__ int
+extern __GNU_INLINE int
signbit(double d)
{
return (_HI_WORD(d) >> 31);
}
-extern __inline__ int
+extern __GNU_INLINE int
signbitf(float f)
{
return ((*(uint32_t *)&f) >> 31);
}
-extern __inline__ double
+extern __GNU_INLINE double
sqrt(double d)
{
return (__inline_sqrt(d));
}
-extern __inline__ float
+extern __GNU_INLINE float
sqrtf(float f)
{
return (__inline_sqrtf(f));
}
-extern __inline__ long double
+extern __GNU_INLINE long double
sqrtl(long double ld)
{
__asm__ __volatile__("fsqrt" : "+t" (ld) : : "cc");
return (ld);
}
-extern __inline__ int
+extern __GNU_INLINE int
isnanl(long double ld)
{
int ret = _HIER_WORD(ld);
diff --git a/usr/src/lib/libm/sparc/src/libm_inlines.h b/usr/src/lib/libm/sparc/src/libm_inlines.h
index 93c9aa2302..964bf3d88a 100644
--- a/usr/src/lib/libm/sparc/src/libm_inlines.h
+++ b/usr/src/lib/libm/sparc/src/libm_inlines.h
@@ -42,7 +42,7 @@
extern "C" {
#endif
-extern __inline__ double
+extern __GNU_INLINE double
__inline_sqrt(double d)
{
double ret;
@@ -51,7 +51,7 @@ __inline_sqrt(double d)
return (ret);
}
-extern __inline__ float
+extern __GNU_INLINE float
__inline_sqrtf(float f)
{
float ret;
@@ -60,7 +60,7 @@ __inline_sqrtf(float f)
return (ret);
}
-extern __inline__ enum fp_class_type
+extern __GNU_INLINE enum fp_class_type
fp_classf(float f)
{
enum fp_class_type ret;
@@ -113,7 +113,7 @@ fp_classf(float f)
#define _HI_WORD(x) ((uint32_t *)&x)[0]
#define _LO_WORD(x) ((uint32_t *)&x)[1]
-extern __inline__ enum fp_class_type
+extern __GNU_INLINE enum fp_class_type
fp_class(double d)
{
enum fp_class_type ret;
@@ -169,7 +169,7 @@ fp_class(double d)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
__swapEX(int i)
{
int ret;
@@ -201,13 +201,13 @@ __swapEX(int i)
* compatibility
*/
/* ARGSUSED */
-extern __inline__ enum fp_precision_type
+extern __GNU_INLINE enum fp_precision_type
__swapRP(enum fp_precision_type i)
{
return (0);
}
-extern __inline__ enum fp_direction_type
+extern __GNU_INLINE enum fp_direction_type
__swapRD(enum fp_direction_type d)
{
enum fp_direction_type ret;
@@ -235,7 +235,7 @@ __swapRD(enum fp_direction_type d)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
__swapTE(int i)
{
int ret;
@@ -262,19 +262,19 @@ __swapTE(int i)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
sqrt(double d)
{
return (__inline_sqrt(d));
}
-extern __inline__ float
+extern __GNU_INLINE float
sqrtf(float f)
{
return (__inline_sqrtf(f));
}
-extern __inline__ double
+extern __GNU_INLINE double
fabs(double d)
{
double ret;
@@ -283,7 +283,7 @@ fabs(double d)
return (ret);
}
-extern __inline__ float
+extern __GNU_INLINE float
fabsf(float f)
{
float ret;
diff --git a/usr/src/lib/libm/sparcv9/src/libm_inlines.h b/usr/src/lib/libm/sparcv9/src/libm_inlines.h
index 916cc6ba87..74dba0b301 100644
--- a/usr/src/lib/libm/sparcv9/src/libm_inlines.h
+++ b/usr/src/lib/libm/sparcv9/src/libm_inlines.h
@@ -42,7 +42,7 @@
extern "C" {
#endif
-extern __inline__ enum fp_class_type
+extern __GNU_INLINE enum fp_class_type
fp_classf(float f)
{
enum fp_class_type ret;
@@ -92,7 +92,7 @@ fp_classf(float f)
return (ret);
}
-extern __inline__ enum fp_class_type
+extern __GNU_INLINE enum fp_class_type
fp_class(double d)
{
enum fp_class_type ret;
@@ -144,7 +144,7 @@ fp_class(double d)
return (ret);
}
-extern __inline__ float
+extern __GNU_INLINE float
__inline_sqrtf(float f)
{
float ret;
@@ -153,7 +153,7 @@ __inline_sqrtf(float f)
return (ret);
}
-extern __inline__ double
+extern __GNU_INLINE double
__inline_sqrt(double d)
{
double ret;
@@ -162,7 +162,7 @@ __inline_sqrt(double d)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
__swapEX(int i)
{
int ret;
@@ -194,13 +194,13 @@ __swapEX(int i)
* compatibility
*/
/* ARGSUSED */
-extern __inline__ enum fp_precision_type
+extern __GNU_INLINE enum fp_precision_type
__swapRP(enum fp_precision_type i)
{
return (0);
}
-extern __inline__ enum fp_direction_type
+extern __GNU_INLINE enum fp_direction_type
__swapRD(enum fp_direction_type d)
{
enum fp_direction_type ret;
@@ -229,7 +229,7 @@ __swapRD(enum fp_direction_type d)
return (ret);
}
-extern __inline__ int
+extern __GNU_INLINE int
__swapTE(int i)
{
int ret;
@@ -259,19 +259,19 @@ __swapTE(int i)
}
-extern __inline__ double
+extern __GNU_INLINE double
sqrt(double d)
{
return (__inline_sqrt(d));
}
-extern __inline__ float
+extern __GNU_INLINE float
sqrtf(float f)
{
return (__inline_sqrtf(f));
}
-extern __inline__ double
+extern __GNU_INLINE double
fabs(double d)
{
double ret;
@@ -280,7 +280,7 @@ fabs(double d)
return (ret);
}
-extern __inline__ float
+extern __GNU_INLINE float
fabsf(float f)
{
float ret;
diff --git a/usr/src/lib/libsqlite/Makefile.com b/usr/src/lib/libsqlite/Makefile.com
index b2712a24d6..5b6dcc424e 100644
--- a/usr/src/lib/libsqlite/Makefile.com
+++ b/usr/src/lib/libsqlite/Makefile.com
@@ -245,7 +245,7 @@ parse.h parse.c : $(SRCDIR)/parse.y $(TOOLDIR)/lemon.c $(TOOLDIR)/lempar.c
-$(RM) parse_tmp.y lempar.c
$(CP) $(SRCDIR)/parse.y parse_tmp.y
$(CP) $(TOOLDIR)/lempar.c lempar.c
- $(NATIVECC) -o lemon $(TOOLDIR)/lemon.c
+ $(NATIVECC) $(NATIVE_CFLAGS) -o lemon $(TOOLDIR)/lemon.c
./lemon parse_tmp.y
-$(RM) parse.c parse.h
$(CP) parse_tmp.h parse.h