Index: uspace/lib/softfloat/comparison.c
===================================================================
--- uspace/lib/softfloat/comparison.c	(revision 565aaffff433c66e6585ca71e78f22a4de1b8257)
+++ uspace/lib/softfloat/comparison.c	(revision 3212921a1eccd711a490caff49e430b6d9502188)
@@ -637,4 +637,26 @@
 }
 
+int __aeabi_fcmple(float32_t a, float32_t b)
+{
+	float32_u ua;
+	ua.val = a;
+
+	float32_u ub;
+	ub.val = b;
+
+	if ((is_float32_nan(ua.data)) || (is_float32_nan(ub.data))) {
+		// TODO: sigNaNs
+		return 0;
+	}
+
+	if (is_float32_eq(ua.data, ub.data))
+		return 1;
+
+	if (is_float32_lt(ua.data, ub.data))
+		return 1;
+
+	return 0;
+}
+
 int __aeabi_fcmpeq(float32_t a, float32_t b)
 {
Index: uspace/lib/softfloat/comparison.h
===================================================================
--- uspace/lib/softfloat/comparison.h	(revision 565aaffff433c66e6585ca71e78f22a4de1b8257)
+++ uspace/lib/softfloat/comparison.h	(revision 3212921a1eccd711a490caff49e430b6d9502188)
@@ -91,4 +91,5 @@
 extern int __aeabi_fcmplt(float32_t, float32_t);
 extern int __aeabi_fcmpge(float32_t, float32_t);
+extern int __aeabi_fcmple(float32_t, float32_t);
 extern int __aeabi_fcmpeq(float32_t, float32_t);
 #endif
