Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: fix DebugSymbolsTest.ReqWrapList on PPC64LE #44341

Closed
wants to merge 1 commit into from

Commits on Aug 24, 2022

  1. test: fix DebugSymbolsTest.ReqWrapList on PPC64LE

    Currently, DebugSymbolsTest.ReqWrapList fails on PPC64LE when Node has
    been configured with Link Time Optimization (LTO) and using RHEL 8.5
    and gcc:
    ```console
    $ . /opt/rh/gcc-toolset-11/enable
    $ export CC='ccache gcc'
    $ export CXX='ccache g++'
    $ ./configure --enable-lto
    $ make -j8 cctest
    ...
    21:52:27 [ RUN      ] DebugSymbolsTest.ReqWrapList
    21:52:27 ../test/cctest/test_node_postmortem_metadata.cc:203: Failure
    21:52:27 Expected equality of these values:
    21:52:27   expected
    21:52:27     Which is: 140736537072320
    21:52:27   calculated
    21:52:27     Which is: 1099680328560
    21:52:27 [  FAILED  ] DebugSymbolsTest.ReqWrapList (43 ms)
    ```
    
    After looking into this is seems that the compiler is tampering with the
    `last` variable when compiling with LTO enabled. This commit suggests
    adding volatile to this variable to prevent the compiler from tampering
    with it.
    danbev committed Aug 24, 2022
    Copy the full SHA
    7b76d54 View commit details
    Browse the repository at this point in the history