]> git.ipfire.org Git - thirdparty/open-vm-tools.git/commitdiff
Common header file change not applicable to open-vm-tools.
authorJohn Wolfe <jwolfe@vmware.com>
Fri, 29 Jul 2022 03:03:42 +0000 (20:03 -0700)
committerJohn Wolfe <jwolfe@vmware.com>
Fri, 29 Jul 2022 03:03:42 +0000 (20:03 -0700)
open-vm-tools/lib/include/vm_assert.h

index ad4405df3bff4afd2185d1240812525f8db1aada..b1c0719bfc16b8c81801ba62713e3f9ada1c5425 100644 (file)
@@ -352,13 +352,13 @@ void WarningThrottled(uint32 *count, const char *fmt, ...) PRINTF_DECL(2, 3);
  * compilation options will lead to different control-flow-derived
  * errors, causing some make targets to fail while others succeed.
  *
- * VC++ has the __assume() built-in function which we don't trust (see
- * bug 43485).  However, __assume() is used in the Windows ULM
- * implementation, because the newer compiler used for that project
- * generates correct code.
+ * VC++ has the __assume() built-in function which we don't trust
+ * (see bug 43485); gcc has no such construct; we just panic in
+ * userlevel code.  The monitor doesn't want to pay the size penalty
+ * (measured at 212 bytes for the release vmm for a minimal infinite
+ * loop; panic would cost even more) so it does without and lives
+ * with the inconsistency.
  *
- * With gcc, the __builtin_unreachable() extension is used when the
- * compiler is known to support it.
  */
 
 # if defined VMKPANIC
@@ -371,9 +371,6 @@ void WarningThrottled(uint32 *count, const char *fmt, ...) PRINTF_DECL(2, 3);
 # elif defined VMM || defined ULM_ESX
 #  undef  NOT_REACHED
 #  define NOT_REACHED() (__builtin_unreachable())
-# elif defined ULM_WIN
-#  undef  NOT_REACHED
-#  define NOT_REACHED() (__assume(0))
 # else
  // keep debug definition
 # endif