summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2017-07-18 19:29:20 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2017-07-18 19:29:20 +0200
commit3a1570d0e6531e3f49e79bbbe4e24d6280e49b1a (patch)
treee3b45c9c6021992de0d7bf4dce8d642bb2a687ff
parent6e7dbde356daf614a5bf24c30fef4dc7e2c36025 (diff)
downloadabaos-3a1570d0e6531e3f49e79bbbe4e24d6280e49b1a.tar.gz
abaos-3a1570d0e6531e3f49e79bbbe4e24d6280e49b1a.tar.bz2
reverted clang --no-inline flag and readded bug, I can not make clang
consistently produce correct code with all combinations of hosts and cross targets!
-rw-r--r--BUGS6
-rw-r--r--tests/libc/Makefile4
2 files changed, 7 insertions, 3 deletions
diff --git a/BUGS b/BUGS
index dddc5d3..1e88503 100644
--- a/BUGS
+++ b/BUGS
@@ -17,3 +17,9 @@
library, not part of the kernel directory, get rid of kernel_panic
there (this requires the kernel_stub.c kernel_panic to exist in
libc tests)
+- clang and -O2/-O3 break test_printf.c and printf, va_arg macros
+ break. inlining va_arg functions should be possible. -Wno-inline,
+ attribute(used), attribute(noinline) have no effect (or not always,
+ depends on the host platform?).
+
+
diff --git a/tests/libc/Makefile b/tests/libc/Makefile
index cf78271..37c383a 100644
--- a/tests/libc/Makefile
+++ b/tests/libc/Makefile
@@ -2,9 +2,7 @@ CC := gcc
DEFINES = -DOS_LINUX
OPT := -O0
INCLUDES = -I. -I../../src/libc -I../../src/kernel -I/home/abaumann/cross-compilers/include
-# clang 4.0.1 needs -fno-inline, other va_ functions get inlined and
-# va_xxx macros segfault
-CFLAGS := -fno-inline -std=c99 -m32 -ffreestanding $(OPT) -g -Wall -Werror $(INCLUDES) $(DEFINES)
+CFLAGS := -std=c99 -m32 -ffreestanding $(OPT) -g -Wall -Werror $(INCLUDES) $(DEFINES)
LD := $(CC)
LDFLAGS :=
NASMFLAGS := -f elf32