-/* FIXME (1) this could probably be defined using something like
- * sizeof(lispobj)*floor(sizeof(struct simple_fun)/sizeof(lispobj))
- * - FUN_POINTER_LOWTAG
- * as I'm reasonably sure that simple_fun->code must always be the
- * last slot in the object
-
- * FIXME (2) it also appears in purify.c, and it has a different value
- * for SPARC users in that bit
- */
-
-#define FUN_RAW_ADDR_OFFSET (6*sizeof(lispobj) - FUN_POINTER_LOWTAG)
+#if defined(LISP_FEATURE_SPARC)
+#define FUN_RAW_ADDR_OFFSET 0
+#else
+#define FUN_RAW_ADDR_OFFSET (offsetof(struct simple_fun, code) - FUN_POINTER_LOWTAG)
+#endif