[Bug target/96566] [nvptx] Timeout in gcc.dg/builtin-object-size-21.c

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Aug 12 12:05:29 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96566

--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Tom de Vries <vries@gcc.gnu.org>:

https://gcc.gnu.org/g:fb9b3c0ff7d347934b364e3ab06d4cf56726df33

commit r11-2669-gfb9b3c0ff7d347934b364e3ab06d4cf56726df33
Author: Tom de Vries <tdevries@suse.de>
Date:   Tue Aug 11 18:20:17 2020 +0200

    [testsuite] Add effective target large_initializer

    When compiling builtin-object-size-21.c for nvptx, cc1 times out while
    emitting the initializer for global variable xm3_3.

    With x86_64, we are able to emit the initializer with a few lines of
assembly:
    ...
    xm3_3:
            .byte   0
            .zero   9223372036854775803
            .byte   1
            .byte   2
            .byte   3
    ...
    but with nvptx, we don't have some something similar available, and thus
    generate:
    ...
      .visible .global .align 1 .u32 xm3_3[2305843009213693952] =
      { 0, 0, 0, ...
    ...

    Introduce an effective target large_initializer, returning false for nvptx,
    and require it for test-cases with large initializers.

    Tested on nvptx with make check-gcc.

    gcc/testsuite/ChangeLog:

            PR testsuite/96566
            * lib/target-supports.exp
(check_effective_target_large_initializer):
            New proc.
            * gcc.dg/builtin-object-size-21.c: Require large_initializer.
            * gcc.dg/strlenopt-55.c: Same.


More information about the Gcc-bugs mailing list