Message ID | 20230822165101.72695-1-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | tcg: Prohibit incomplete extr[lh]_i64_i32() implementation | expand |
On 8/22/23 09:51, Philippe Mathieu-Daudé wrote: > extrl_i64_i32() and extrh_i64_i32() work in pair. Backends > can not implement one without the other. Enforce that > assumption. > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > include/tcg/tcg.h | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h > index 0875971719..a6f51130aa 100644 > --- a/include/tcg/tcg.h > +++ b/include/tcg/tcg.h > @@ -172,6 +172,9 @@ typedef uint64_t TCGRegSet; > #define TCG_TARGET_HAS_v256 0 > #endif > > +QEMU_BUILD_BUG_MSG(TCG_TARGET_HAS_extrl_i64_i32 != TCG_TARGET_HAS_extrh_i64_i32, > + "Both extrl_i64_i32()/extrh_i64_i32() must exist"); Just rename them so they're the same symbol. r~
diff --git a/include/tcg/tcg.h b/include/tcg/tcg.h index 0875971719..a6f51130aa 100644 --- a/include/tcg/tcg.h +++ b/include/tcg/tcg.h @@ -172,6 +172,9 @@ typedef uint64_t TCGRegSet; #define TCG_TARGET_HAS_v256 0 #endif +QEMU_BUILD_BUG_MSG(TCG_TARGET_HAS_extrl_i64_i32 != TCG_TARGET_HAS_extrh_i64_i32, + "Both extrl_i64_i32()/extrh_i64_i32() must exist"); + typedef enum TCGOpcode { #define DEF(name, oargs, iargs, cargs, flags) INDEX_op_ ## name, #include "tcg/tcg-opc.h"
extrl_i64_i32() and extrh_i64_i32() work in pair. Backends can not implement one without the other. Enforce that assumption. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- include/tcg/tcg.h | 3 +++ 1 file changed, 3 insertions(+)