tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] AArch64 status?


From: Christian Jullien
Subject: [Tinycc-devel] AArch64 status?
Date: Fri, 30 Oct 2015 07:06:48 +0100

Hi guys,

The 'GCC Compile Farm Project' recently added 4 (four) '8x2.4 GHz
aarch64 / 32 GB RAM / APM X-Gene Mustang board / Ubuntu 14.04.3 LTS'
machines.'
I can't resist any more to see how well tcc compiles and works on an AArch64
processor.

He is my first attempt. It compiles well and first tcc "Hello World" works
but first libtest test fails with tcc: error: R_AARCH64_(JUMP|CALL)26
relocation failed (val=2a4025f0, addr=401990).

Am I doing something wrong?

address@hidden:~/tinycc$ ./configure
Binary  directory   /usr/local/bin
TinyCC directory    /usr/local/lib/tcc
Library directory   /usr/local/lib
Include directory   /usr/local/include
Manual directory    /usr/local/share/man
Info directory      /usr/local/share/info
Doc directory       /usr/local/share/doc//usr/local/lib/tcc
Target root prefix
Source path      /home/jullien/tinycc
C compiler       gcc
cross compilers  no
Target CPU       aarch64
Host OS          Linux
Target OS        Linux
Big Endian       no
gprof enabled    no
use libgcc       no
Creating config.mak and config.h
address@hidden:~/tinycc$ make
gcc -o tcc.o -c tcc.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-result-Wno-uninitialized -fno-strict-aliasing
gcc -o libtcc.o -c libtcc.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-result -Wno-uninitialized -fno-strict-aliasing
gcc -o tccpp.o -c tccpp.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-result -Wno-uninitialized -fno-strict-aliasing
gcc -o tccgen.o -c tccgen.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-r
esult -Wno-uninitialized -fno-strict-aliasinggcc -o tccelf.o -c tccelf.c
-DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\"" -DTCC_TARGET_ARM64 -I.  -Wall
-g -O0 -Wdeclaration-after-statement -Wno-deprecated-declarations
-Wno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -Wno-unused-result
-Wno-uninitialized -fno-strict-aliasing
gcc -o tccasm.o -c tccasm.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-result -Wno-uninitialized -fno-strict-aliasing
gcc -o tccrun.o -c tccrun.c -DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""
-DTCC_TARGET_ARM64 -I.  -Wall -g -O0 -Wdeclaration-after-statement
-Wno-deprecated-declarations -Wno-strict-aliasing -Wno-pointer-sign
-Wno-sign-compare -Wno-unused-result -Wno-uninitialized -fno-strict-aliasing
gcc -o arm64-gen.o -c arm64-gen.c
-DCONFIG_MULTIARCHDIR="\"aarch64-linux-gnu\""-DTCC_TARGET_ARM64 -I.  -Wall
-g -O0 -Wdeclaration-after-statement -Wno-deprecated-declarations
-Wno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -Wno-unused-result
-Wno-uninitialized -fno-strict-aliasing
ar rcs libtcc.a libtcc.o tccpp.o tccgen.o tccelf.o tccasm.o tccrun.o
arm64-gen.o

gcc -o tcc tcc.o libtcc.a -lm -ldl -I.  -Wall -g -O0
-Wdeclaration-after-statement -Wno-deprecated-declarations
-Wno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -Wno-unused-result
-Wno-uninitialized -fno-strict-aliasing
make -C lib native
make[1]: Entering directory `/home/jullien/tinycc/lib'
mkdir -p arm64
../tcc -B.. -c lib-arm64.c -o arm64/lib-arm64.o -I..  -Wall -g -O0
-Wdeclaration-after-statement -Wno-deprecated-declarations
-Wno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -Wno-unused-result
-Wno-uninitialized -fno-strict-aliasing -fPIC -DTCC_TARGET_ARM64
ar rcs ../libtcc1.a arm64/lib-arm64.o
make[1]: Leaving directory `/home/jullien/tinycc/lib'
if test ! -d arm64; then mkdir arm64; fi
if test ! -L arm64/libtcc1.a; then ln -sf ../libtcc1.a arm64/libtcc1.a; fi
./texi2pod.pl tcc-doc.texi tcc.pod
pod2man --section=1 --center="Tiny C Compiler" --release=`cat ./VERSION`
tcc.pod
 > tcc.1
makeinfo --no-split --html --number-sections -o tcc-doc.html tcc-doc.texi
makeinfo tcc-doc.texi


address@hidden:~/tinycc$ make test
make -C tests test 'PROGS_CROSS=i386-linux-gnu-tcc x86_64-linux-gnu-tcc
i386-win-mingw32-tcc x86_64-win-mingw32-tcc arm-linux-fpa-tcc
arm-linux-fpa-ld-tcc arm-linux-gnu-tcc arm-linux-gnueabi-tcc c67-tcc
arm-win-mingw32ce-tcc'
make[1]: Entering directory `/home/jullien/tinycc/tests'
------------ hello-exe ------------
../tcc -B.. -I.. -I.. -I../include -L.. ../examples/ex1.c -o hello ||
(../tcc -v
v; exit 1) && ./hello
Hello World
------------ hello-run ------------
../tcc -B.. -I.. -I.. -I../include -L.. -run ../examples/ex1.c
Hello World
gcc -o libtcc_test libtcc_test.c ../libtcc.a -I..
-DCONFIG_MULTIARCHDIR="\"aar
ch64-linux-gnu\"" -DTCC_TARGET_ARM64 -lm -ldl   -I..
------------ libtest ------------
./libtcc_test -B.. -I.. -I.. -I../include -L..
tcc: error: R_AARCH64_(JUMP|CALL)26 relocation failed (val=2a4025f0,
addr=401990
)
make[1]: *** [libtest] Error 1
make[1]: Leaving directory `/home/jullien/tinycc/tests'
make: *** [test] Error 2
address@hidden:~/tinycc$




reply via email to

[Prev in Thread] Current Thread [Next in Thread]