]> git.ipfire.org Git - thirdparty/gcc.git/commit
GCN: Fix 'real_from_integer' usage
authorThomas Schwinge <tschwinge@baylibre.com>
Thu, 5 Dec 2024 13:28:26 +0000 (14:28 +0100)
committerThomas Schwinge <tschwinge@baylibre.com>
Mon, 9 Dec 2024 09:48:40 +0000 (10:48 +0100)
commit91c503431f675bf3c94bd23c2b1deecdd2df52b8
treee10d27c7735fd4c2c09efc80e5e9bce4d7899361
parentbe38c37fdc35e7f77dbab16736782cfe24769e77
GCN: Fix 'real_from_integer' usage

The recent commit b3f1b9e2aa079f8ec73e3cb48143a16645c49566
"build: Remove INCLUDE_MEMORY [PR117737]" exposed an issue in code added in
2020 GCN back end commit 95607c12363712c39345e1d97f2c1aee8025e188
"Zero-initialise masked load destinations"; compilation now fails:

    [...]
    In file included from ../../source-gcc/gcc/coretypes.h:507:0,
                     from ../../source-gcc/gcc/config/gcn/gcn.cc:24:
    ../../source-gcc/gcc/real.h: In instantiation of ‘format_helper::format_helper(const T&) [with T = std::nullptr_t]’:
    ../../source-gcc/gcc/config/gcn/gcn.cc:1178:46:   required from here
    ../../source-gcc/gcc/real.h:233:17: error: no match for ‘operator==’ (operand types are ‘std::nullptr_t’ and ‘machine_mode’)
       : m_format (m == VOIDmode ? 0 : REAL_MODE_FORMAT (m))
                     ^
    [...]

That's with 'g++ (GCC) 5.5.0', and seen similarly with
'g++ (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0', for example.

gcc/
* config/gcn/gcn.cc (gcn_vec_constant): Fix 'real_from_integer'
usage.
gcc/config/gcn/gcn.cc