Hello,

I took a look at this issue.
The reason of an illegal instruction is related to ldxc1 instruction.
> ldxc1 $f0,v0(a1)

> (gdb) p/x $a1
> $50 = 0xaaa8ae10
> (gdb) p/x $v0
> $51 = 0xaaaf0248

The address (a1+v0) seems to be valid and aligned to 8, but causes error anyway.
I will investigate this issue further.

This behavior is triggered by O2 optimization level. If O1 is used, this issue 
will not appear.

I have created patch that enables O1 flag for failing tests.

Also it was needed to mark ObjFunct_SvmLogisticInterpretation as slow as this 
test failed with timeout (1500) on my local build.

Both patches are attached.

Regards,
Dejan
--- shark-3.1.3+ds1.orig/Test/CMakeLists.txt
+++ shark-3.1.3+ds1/Test/CMakeLists.txt
@@ -280,6 +280,20 @@ if(HDF5_FOUND)
     )
 endif()
 
+if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "mips")
+    if ("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+        set_source_files_properties(LinAlg/BLAS/vector_proxy.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(LinAlg/sumRows.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(LinAlg/BLAS/transformations.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(Models/ConcatenatedModel.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(Models/LinearNorm.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(ObjectiveFunctions/SquaredEpsilonHingeLoss.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(ObjectiveFunctions/HuberLoss.cpp PROPERTIES COMPILE_FLAGS -O1)
+        set_source_files_properties(ObjectiveFunctions/TukeyBiweightLoss.cpp PROPERTIES COMPILE_FLAGS -O1)
+    endif()
+endif()
+
+
 # Create output dir
 add_custom_command(
     TARGET Data_Csv
--- shark-3.1.3+ds1.orig/src/CMakeLists.txt
+++ shark-3.1.3+ds1/src/CMakeLists.txt
@@ -2,6 +2,13 @@
 file( GLOB_RECURSE SHARK_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp)
 file(GLOB_RECURSE SHARK_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ../include/*.h ../include/*.hpp ../include/*.inl)
 
+if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "mips")
+    if ("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
+        set_source_files_properties(Models/Softmax.cpp PROPERTIES COMPILE_FLAGS -O1)
+    endif()
+endif()
+
+
 # Group the source for MSVC
 foreach(FILE ${SHARK_SRCS}) 
     # Get the directory of the source file
--- shark-3.1.3+ds1.orig/Test/CMakeLists.txt
+++ shark-3.1.3+ds1/Test/CMakeLists.txt
@@ -269,6 +269,8 @@ set_tests_properties( DirectSearch_MOCMA
 set_tests_properties( DirectSearch_SteadyStateMOCMA PROPERTIES LABELS "slow" )
 set_tests_properties( DirectSearch_RealCodedNSGAII PROPERTIES LABELS "slow" )
 set_tests_properties( DirectSearch_SMS-EMOA PROPERTIES LABELS "slow" )
+set_tests_properties( ObjFunct_SvmLogisticInterpretation PROPERTIES LABELS "slow" )
+
 
 # Copy test file
 if(HDF5_FOUND)
-- 
debian-science-maintainers mailing list
debian-science-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-science-maintainers

Reply via email to