From: "Alex Bennée" <alex.bennee@linaro.org>
To: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC PATCH 02/12] tests/tcg/tricore: Add build infrastructure
Date: Tue, 01 May 2018 16:40:01 +0100 [thread overview]
Message-ID: <87efiv9yge.fsf@linaro.org> (raw)
In-Reply-To: <20180501142222.19154-3-kbastian@mail.uni-paderborn.de>
Bastian Koppelmann <kbastian@mail.uni-paderborn.de> writes:
> this includes the Makefile and linker script to build all the tests.
>
> Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
> ---
> tests/tcg/tricore/Makefile | 30 +++++++++++++++++++++++
> tests/tcg/tricore/link.ld | 60 ++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 90 insertions(+)
> create mode 100644 tests/tcg/tricore/Makefile
> create mode 100644 tests/tcg/tricore/link.ld
>
> diff --git a/tests/tcg/tricore/Makefile b/tests/tcg/tricore/Makefile
> new file mode 100644
> index 0000000000..8c168d1062
> --- /dev/null
> +++ b/tests/tcg/tricore/Makefile
> @@ -0,0 +1,30 @@
> +AS := tricore-as
> +LD := tricore-ld
Where do these come from? Ideally we'd get these in a docker container
like the rest. It would actually be easier to use tricore-gcc if it
exists because at the moment my docker series only exposes a C compiler
to the make system.
> +HOST_CC = gcc
> +
> +LDFLAGS = -Tlink.ld
> +ASFLAGS =
> +
> +SIM = ../../../tricore-softmmu/qemu-system-tricore
> +SIMFLAGS = -M tricore_testboard -nographic -kernel
> +
> +all: build
> +
> +%.pS: %.S
> + $(HOST_CC) -E -o $@ $<
> +
> +%.o: %.pS
> + $(AS) $(ASFLAGS) -o $@ $<
> +
> +%.tst: %.o link.ld
> + $(LD) $(LDFLAGS) $< -o $@
> +
> +build: $(TESTCASES)
> +
> +check: $(addprefix run-, $(TESTCASES))
> +
> +run-%.tst: %.tst
> + $(SIM) $(SIMFLAGS) ./$<
> +
> +clean:
> + $(RM) -fr $(TESTCASES) linker.ld
> diff --git a/tests/tcg/tricore/link.ld b/tests/tcg/tricore/link.ld
> new file mode 100644
> index 0000000000..364bcdc00a
> --- /dev/null
> +++ b/tests/tcg/tricore/link.ld
> @@ -0,0 +1,60 @@
> +/* Default linker script, for normal executables */
> +OUTPUT_FORMAT("elf32-tricore")
> +OUTPUT_ARCH(tricore)
> +ENTRY(_start)
> +
> +/* the internal ram description */
> +MEMORY
> +{
> + text_ram (rx!p): org = 0x80000000, len = 15K
> + data_ram (w!xp): org = 0xd0000000, len = 130K
> +}
> +/*
> + * Define the sizes of the user and system stacks.
> + */
> +__USTACK_SIZE = DEFINED (__USTACK_SIZE) ? __USTACK_SIZE : 1K ;
> +/*
> + * Define the start address and the size of the context save area.
> + */
> +__CSA_BEGIN = 0xd0000000 ;
> +__CSA_SIZE = 8k ;
> +__CSA_END = __CSA_BEGIN + __CSA_SIZE ;
> +
> +SECTIONS
> +{
> + .text :
> + {
> + *(.text)
> + . = ALIGN(8);
> + } > text_ram
> +
> + .rodata :
> + {
> + *(.rodata)
> + *(.rodata1)
> + } > data_ram
> +
> + .data :
> + {
> + . = ALIGN(8) ;
> + *(.data)
> + *(.data.*)
> + . = ALIGN(8) ;
> + __USTACK = . + __USTACK_SIZE -768;
> +
> + } > data_ram
> + /*
> + * Allocate space for BSS sections.
> + */
> + .bss :
> + {
> + BSS_BASE = . ;
> + *(.bss)
> + *(COMMON)
> + . = ALIGN(8) ;
> + } > data_ram
> + /* Make sure CSA, stack and heap addresses are properly aligned. */
> + _. = ASSERT ((__CSA_BEGIN & 0x3f) == 0 , "illegal CSA start address") ;
> + _. = ASSERT ((__CSA_SIZE & 0x3f) == 0 , "illegal CSA size") ;
> +
> +}
--
Alex Bennée
next prev parent reply other threads:[~2018-05-01 15:40 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-01 14:22 [Qemu-devel] [RFC PATCH 00/12] tests/tcg: Add TriCore tests Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 01/12] hw/tricore: Add testdevice for tests in tests/tcg/ Bastian Koppelmann
2018-05-25 16:14 ` Alex Bennée
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 02/12] tests/tcg/tricore: Add build infrastructure Bastian Koppelmann
2018-05-01 15:40 ` Alex Bennée [this message]
[not found] ` <f24f7977-cd8b-f502-e3f1-2ae6b0f422d8@mail.uni-paderborn.de>
2018-05-02 9:42 ` Bastian Koppelmann
2018-05-02 13:05 ` Alex Bennée
2018-05-02 0:41 ` Philippe Mathieu-Daudé
2018-05-02 9:26 ` Bastian Koppelmann
2018-05-02 9:50 ` Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 03/12] tests/tcg/tricore: Add macros to easily create tests and first test 'abs' Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 04/12] tests/tcg/tricore: Add bmerge test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 05/12] tests/tcg/tricore: Add clz test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 06/12] tests/tcg/tricore: Add dvstep test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 07/12] tests/tcg/tricore: Add fadd test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 08/12] tests/tcg/tricore: Add fmul test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 09/12] tests/tcg/tricore: Add ftoi test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 10/12] tests/tcg/tricore: Add madd test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 11/12] tests/tcg/tricore: Add msub test Bastian Koppelmann
2018-05-01 14:22 ` [Qemu-devel] [RFC PATCH 12/12] tests/tcg/tricore: Add muls test Bastian Koppelmann
2018-05-01 14:35 ` [Qemu-devel] [RFC PATCH 00/12] tests/tcg: Add TriCore tests no-reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87efiv9yge.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=kbastian@mail.uni-paderborn.de \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).