ebassi / graphene

A thin layer of graphic data types

Home Page:http://ebassi.github.io/graphene

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Matrix test failed on windows with 32 bit builds

guruDanny67 opened this issue · comments

Experienced behavior

Building the library with vs2017 with gvsbuild (https://github.com/wingtk/gvsbuild) the matrix test fails in release mode:

The output from the failed tests:

4/18 matrix FAIL 1.54 s (exit status 2147483651 or signal 2147483523 SIGinvalid)

--- command ---
c:\gtk-build_bld\vs2017\build\Win32\release\graphene-meson\src\tests\matrix.exe --tap -k
--- stdout ---

random seed: R02Sa0c77baffa966696d089bc9fef6a4118

1..19

Start of matrix tests

ok 1 /matrix/identity
ok 2 /matrix/equal
ok 3 /matrix/scale
ok 4 /matrix/rotation
ok 5 /matrix/translation
ok 6 /matrix/neutral_element
ok 7 /matrix/look_at
ok 8 /matrix/invert
ok 9 /matrix/interpolate
ok 10 /matrix/interpolate-perspective
Bail out! Graphene-Test:ERROR:../graphene/src/tests/matrix.c:515:matrix_multiply_self: [0][0]: __m1[__idx] == __m2[__idx] (+/- 2.2250738585072014e-308): (4 == 4)
--- stderr ---
**
Graphene-Test:ERROR:../graphene/src/tests/matrix.c:515:matrix_multiply_self: [0][0]: __m1[__idx] == __m2[__idx] (+/- 2.2250738585072014e-308): (4 == 4)

With the same setup everything is ok in x64 mode and is also ok in debug mode with win32 platform.

Expected behavior

The test not to fail :)

Steps to reproduce

Try to build the graphene lib with the gvsbuild stack.

Operating system in use

Windows 10 professional, using Vs2017 community, update to the last 15.9.10 version, using meson 0.50.0 using the latest graphene from git.

SIMD implementation in use

Should be SSE intrinsics. The meson output is:

The Meson build system
Version: 0.50.0
Source dir: c:\gtk-build_bld\vs2017\build\Win32\release\graphene
Build dir: c:\gtk-build_bld\vs2017\build\Win32\release\graphene-meson
Build type: native build
Project name: graphene
Project version: 1.9.1
Native C compiler: cl (msvc 19.16.27027.1)
Build machine cpu family: x86
Build machine cpu: x86
Compiler for C supports arguments -we4002: YES
Compiler for C supports arguments -we4003: YES
Compiler for C supports arguments -w14010: YES
Compiler for C supports arguments -we4013: YES
Compiler for C supports arguments -w14016: YES
Compiler for C supports arguments -we4020: YES
Compiler for C supports arguments -we4021: YES
Compiler for C supports arguments -we4027: YES
Compiler for C supports arguments -we4029: YES
Compiler for C supports arguments -we4033: YES
Compiler for C supports arguments -we4035: YES
Compiler for C supports arguments -we4045: YES
Compiler for C supports arguments -we4047: YES
Compiler for C supports arguments -we4049: YES
Compiler for C supports arguments -we4053: YES
Compiler for C supports arguments -we4071: YES
Compiler for C supports arguments -we4244: YES
Compiler for C supports arguments -we4150: YES
Compiler for C supports arguments -we4819: YES
Library m found: NO
Dependency threads found: YES
Has header "stdlib.h" : YES
Has header "stdint.h" : YES
Has header "stdbool.h" : YES
Has header "memory.h" : YES
Has header "pthread.h" with dependency threads: NO
Checking for function "memalign" : NO
Checking for function "_aligned_malloc" : YES
Checking for function "sincosf" with dependency -lm: NO
Found pkg-config: c:\gtk-build_bld\vs2017\gtk\Win32\release\bin\pkg-config.EXE (1.4.0)
Dependency gobject-2.0 found: YES 2.60.0
Checking if "InitOnceExecuteOnce" compiles: YES
Checking if "SSE intrinsics" compiles: YES
Checking if "GCC vector intrinsics" compiles: NO
Checking if "ARM NEON intrinsics" compiles: NO
Configuring config.h using configuration
Configuring graphene-config.h using configuration
Configuring graphene-version.h using configuration
WARNING: Already generated a pkg-config file for graphene-1.0
Build targets in project: 37
Option buildtype is: release [default: debugoptimized]
Found ninja-1.8.2 at 'c:\gtk-build\tools\ninja\ninja.EXE'

Thanks in advance

Daniele Forghieri

This does not happen on the CI infrastructure, and I don't have a MSVC build machine at my disposal. I'm afraid you'll have to investigate this.

The 32 bit CI job using MSVC hasn't failed in 3 months, with that error.

Please, feel free to re-open if the failure reappears, and you can help debug it.