summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--host/lib/convert/CMakeLists.txt2
-rw-r--r--host/lib/convert/convert_orc.orc10
2 files changed, 8 insertions, 4 deletions
diff --git a/host/lib/convert/CMakeLists.txt b/host/lib/convert/CMakeLists.txt
index 5b05bb72a..e8d933f34 100644
--- a/host/lib/convert/CMakeLists.txt
+++ b/host/lib/convert/CMakeLists.txt
@@ -67,6 +67,7 @@ FIND_PROGRAM(ORCC_EXECUTABLE orcc)
IF(ORC_FOUND AND ORCC_EXECUTABLE)
INCLUDE_DIRECTORIES(${ORC_INCLUDE_DIRS})
LINK_DIRECTORIES(${ORC_LIBRARY_DIRS})
+ ENABLE_LANGUAGE(C)
SET(orcc_src ${CMAKE_CURRENT_SOURCE_DIR}/convert_orc.orc)
@@ -81,6 +82,7 @@ IF(ORC_FOUND AND ORCC_EXECUTABLE)
LIBUHD_APPEND_SOURCES(
${CMAKE_CURRENT_SOURCE_DIR}/convert_with_orc.cpp
)
+ LIBUHD_APPEND_LIBS(${ORC_LIBRARIES})
ELSE()
MESSAGE(STATUS "Orc not found, disabling orc support...")
ENDIF(ORC_FOUND AND ORCC_EXECUTABLE)
diff --git a/host/lib/convert/convert_orc.orc b/host/lib/convert/convert_orc.orc
index 5704d4b58..c1c3d3c24 100644
--- a/host/lib/convert/convert_orc.orc
+++ b/host/lib/convert/convert_orc.orc
@@ -3,9 +3,11 @@
.dest 4 dst
.floatparam 4 scalar
.temp 8 scaled
-.temp 4 converted
+.temp 8 converted
+.temp 4 short
x2 mulf scaled, src, scalar
-x2 convfw converted, scaled
-swapl converted, converted
-x2 swapw dst, converted
+x2 convfl converted, scaled
+x2 convlw short, converted
+swapl short, short
+x2 swapw dst, short