Make clang happy with vdev_raidz_ code
The macros are used to generate code for conditions without a corresponding branch. This is not a problem in practice, but clang has no way of knowing that. Add a default branch with a VERIFY(0) to indicate that it "can't happen" ``` In file included from \ /usr/home/mmacy/devel/ZoF/module/zfs/vdev_raidz_math_sse2.c:607: /usr/home/mmacy/devel/ZoF/module/zfs/vdev_raidz_math_impl.h:281:3: \ error: no case matching constant switch condition '3' [-Werror] ``` Reviewed-by: George Melikov <mail@gmelikov.ru> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Matt Macy <mmacy@FreeBSD.org> Closes #9434
This commit is contained in:
parent
381d91de7d
commit
c5858ff946
|
@ -29,6 +29,7 @@
|
|||
|
||||
#include <sys/types.h>
|
||||
#include <sys/simd.h>
|
||||
#include <sys/debug.h>
|
||||
|
||||
#define __asm __asm__ __volatile__
|
||||
|
||||
|
@ -194,6 +195,8 @@ typedef struct v {
|
|||
"vpternlogd $0x6c,%zmm29, %zmm26, %" VR0(r) "\n" \
|
||||
"vpternlogd $0x6c,%zmm29, %zmm25, %" VR1(r)); \
|
||||
break; \
|
||||
default: \
|
||||
VERIFY(0); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
@ -370,6 +373,9 @@ gf_x2_mul_fns[256] = {
|
|||
COPY(R_23(r), _mul_x2_in); \
|
||||
gf_x2_mul_fns[c](); \
|
||||
COPY(_mul_x2_acc, R_23(r)); \
|
||||
break; \
|
||||
default: \
|
||||
VERIFY(0); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
|
||||
#include <sys/types.h>
|
||||
#include <sys/simd.h>
|
||||
#include <sys/debug.h>
|
||||
|
||||
#define __asm __asm__ __volatile__
|
||||
|
||||
|
@ -125,6 +126,8 @@ typedef struct v {
|
|||
__asm( \
|
||||
"movdqa %" VR0(r) ", %" VR1(r)); \
|
||||
break; \
|
||||
default: \
|
||||
VERIFY(0); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
@ -175,6 +178,8 @@ typedef struct v {
|
|||
"movdqa %%" VR0(r)", 0x00(%[DST])\n" \
|
||||
: : [DST] "r" (dst)); \
|
||||
break; \
|
||||
default: \
|
||||
VERIFY(0); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
@ -508,6 +513,8 @@ gf_x2_mul_fns[256] = {
|
|||
gf_x1_mul_fns[c](); \
|
||||
COPY(_mul_x1_acc, r); \
|
||||
break; \
|
||||
default: \
|
||||
VERIFY(0); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue