qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v2 05/15] tests/tcg/tricore: Add build infrastructure


From: Alex Bennée
Subject: Re: [PATCH v2 05/15] tests/tcg/tricore: Add build infrastructure
Date: Tue, 16 Jun 2020 18:22:34 +0100
User-agent: mu4e 1.5.3; emacs 28.0.50

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.softmmu-target | 17 +++++++
>  tests/tcg/tricore/link.ld                 | 60 +++++++++++++++++++++++
>  2 files changed, 77 insertions(+)
>  create mode 100644 tests/tcg/tricore/Makefile.softmmu-target
>  create mode 100644 tests/tcg/tricore/link.ld
>
> diff --git a/tests/tcg/tricore/Makefile.softmmu-target 
> b/tests/tcg/tricore/Makefile.softmmu-target
> new file mode 100644
> index 0000000000..4a2cd6f218
> --- /dev/null
> +++ b/tests/tcg/tricore/Makefile.softmmu-target
> @@ -0,0 +1,17 @@
> +HOST_CC = gcc

I guess you need HOST_CC to process the source file. You don't need to
define it though - it should be picked up by config-host.mak included by
the main tcg makefile.

> +
> +TESTS_PATH = $(SRC_PATH)/tests/tcg/tricore
> +
> +LDFLAGS = -T$(TESTS_PATH)/link.ld
> +ASFLAGS =
> +
> +QEMU_OPTS += -M tricore_testboard -nographic -kernel
> +
> +%.pS: $(TESTS_PATH)/%.S
> +     $(HOST_CC) -E -o $@ $<
> +
> +%.o: %.pS
> +     $(AS) $(ASFLAGS) -o $@ $<
> +
> +%.tst: %.o
> +     $(LD) $(LDFLAGS) $< -o $@
> 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") ;
> +
> +}

Now would also be a good time to update the MAINTAINERS entry for
tricore to include everything in tests/tcg/tricore ;-)

Otherwise:

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée



reply via email to

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