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

Issue219 test fails for Intel compiler #614

Open
tueda opened this issue Jan 28, 2025 · 0 comments
Open

Issue219 test fails for Intel compiler #614

tueda opened this issue Jan 28, 2025 · 0 comments

Comments

@tueda
Copy link
Collaborator

tueda commented Jan 28, 2025

docker run -it --rm ubuntu:22.04
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y gpg wget
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor > /usr/share/keyrings/oneapi-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" > /etc/apt/sources.list.d/oneAPI.list
apt-get update
apt-get install -y automake git intel-basekit make libgmp-dev libmpfr-dev ruby zlib1g-dev
source /opt/intel/oneapi/setvars.sh
git clone https://github.com/vermaseren/form.git
cd form
autoreconf -i
CC=icx CXX=icpx ./configure
make
make check
===============================================================================
Issue219 (fixes.frm:2046) FAILED
===============================================================================
TFORM 5.0.0-beta.1 (Jan 24 2025, v5.0.0-beta.1-115-g1d5e40b) 4 workers  Run: Tue Jan 28 06:36:07 2025
    * Corrupted characters in {-9223372036854775808}
    #$n32  = -2^31;
    #$n64  = -2^63;
    #$n128 = -2^127;
    L F32  = {`$n32'};
    L F64  = {`$n64'}
Program terminating in thread 0 at 1.frm Line 6 -->
  0.00 sec + 0.00 sec: 0.00 sec out of 0.00 sec
===============================================================================

F
========================================================================================================================
/tmp/form_check_20250128-9693-ndao2u/fixes.rb:2061:in `test_Issue219'
./check.rb:388:in `do_test'
./check.rb:388:in `times'
./check.rb:421:in `block in do_test'
     2059:
     2060:
     2061: def test_Issue219; do_test {
  => 2062: assert(succeeded?, 'Failed for succeeded?')
     2063: } end; end
     2064: class Test_Issue211 < Test::Unit::TestCase; include FormTest
     2065:
/tmp/form_check_20250128-9693-ndao2u/fixes.rb:2062:in `block in test_Issue219'
Failure: test_Issue219(Test_Issue219):
  Failed for succeeded?.
  <false> is not true.
========================================================================================================================

./check/check.rb valgrind sources/form Issue219 with removing the -s flag from LINKFLAGS:

==10021== Memcheck, a memory error detector
==10021== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==10021== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==10021== Command: /form/sources/form 1.frm
==10021==
FORM 5.0.0-beta.1 (Jan 24 2025, v5.0.0-beta.1-115-g1d5e40b)  Run: Tue Jan 28 06:55:22 2025
    * Corrupted characters in {-9223372036854775808}
    #$n32  = -2^31;
    #$n64  = -2^63;
    #$n128 = -2^127;
    L F32  = {`$n32'};
==10021== Source and destination overlap in memcpy(0x4c9d6161, 0x4c9d6195, 4294967315)
==10021==    at 0x4851ABA: _intel_fast_memcpy (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x530CCC: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==
==10021== Invalid read of size 1
==10021==    at 0x4851BF0: _intel_fast_memcpy (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x530CCC: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==  Address 0x4c9d61b0 is 0 bytes after a block of size 80 alloc'd
==10021==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x5C9990: Malloc1 (in /form/sources/form)
==10021==    by 0x5309BA: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==
==10021== Invalid read of size 1
==10021==    at 0x4851BFD: _intel_fast_memcpy (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x530CCC: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==  Address 0x4c9d61b1 is 1 bytes after a block of size 80 alloc'd
==10021==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x5C9990: Malloc1 (in /form/sources/form)
==10021==    by 0x5309BA: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==
==10021== Invalid write of size 1
==10021==    at 0x4851BF3: _intel_fast_memcpy (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x530CCC: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==  Address 0x4c9d61b0 is 0 bytes after a block of size 80 alloc'd
==10021==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==10021==    by 0x5C9990: Malloc1 (in /form/sources/form)
==10021==    by 0x5309BA: PreCalc (in /form/sources/form)
==10021==    by 0x52FB1E: GetChar (in /form/sources/form)
==10021==    by 0x533936: LoadStatement (in /form/sources/form)
==10021==    by 0x53245F: PreProcessor (in /form/sources/form)
==10021==    by 0x5A6103: main (in /form/sources/form)
==10021==
    L F64  = {`$n64'}
Program terminating at 1.frm Line 6 -->
  0.84 sec out of 0.84 sec
==10021==
==10021== HEAP SUMMARY:
==10021==     in use at exit: 2,302,341,344 bytes in 170 blocks
==10021==   total heap usage: 224 allocs, 54 frees, 2,333,505,126 bytes allocated
==10021==
==10021== LEAK SUMMARY:
==10021==    definitely lost: 0 bytes in 0 blocks
==10021==    indirectly lost: 0 bytes in 0 blocks
==10021==      possibly lost: 0 bytes in 0 blocks
==10021==    still reachable: 2,302,341,344 bytes in 170 blocks
==10021==         suppressed: 0 bytes in 0 blocks
==10021== Reachable blocks (those to which a pointer was found) are not shown.
==10021== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==10021==
==10021== For lists of detected and suppressed errors, rerun with: -s
==10021== ERROR SUMMARY: 3298094 errors from 4 contexts (suppressed: 0 from 0)

vorm passes the test without any failure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant