diff options
author | MITSUNARI Shigeo <[email protected]> | 2016-09-29 21:02:21 +0900 |
---|---|---|
committer | MITSUNARI Shigeo <[email protected]> | 2016-09-29 21:02:21 +0900 |
commit | 00c034d973f20008971a5456ba27a5e5f6632f94 (patch) | |
tree | 2267de5c1c82f84e5106b563a5a77ecf6d048b4c | |
parent | ac4ead3f3487c36fd055510ebbeb79b949c111b4 (diff) | |
download | xbyak-00c034d973f20008971a5456ba27a5e5f6632f94.tar.gz xbyak-00c034d973f20008971a5456ba27a5e5f6632f94.zip |
remove some warnings
-rw-r--r-- | sample/memfunc.cpp | 14 | ||||
-rw-r--r-- | xbyak/xbyak.h | 10 |
2 files changed, 5 insertions, 19 deletions
diff --git a/sample/memfunc.cpp b/sample/memfunc.cpp index 3e69220..b97630b 100644 --- a/sample/memfunc.cpp +++ b/sample/memfunc.cpp @@ -1,5 +1,6 @@ #include <stdio.h> #include <stdlib.h> +#include <memory.h> #define XBYAK_NO_OP_NAMES #include <xbyak/xbyak.h> @@ -90,17 +91,8 @@ int main() try { Code code; int (A::*p)(int, int, int, int, int) const = 0; -#if defined(XBYAK32) && !defined(_WIN32) - // avoid breaking strict-aliasing rules for 32bit gcc - union { - int (A::*p)(int, int, int, int, int) const; - const Xbyak::uint8 *code; - } u; - u.code = code.getCode(); - p = u.p; -#else - *(void**)&p = code.getCode<void*>(); -#endif + const void *addr = code.getCode<void*>(); + memcpy(&p, &addr, sizeof(void*)); for (int i = 0; i < 10; i++) { A a; int t1, t2, t3, t4, t5, x, y; diff --git a/xbyak/xbyak.h b/xbyak/xbyak.h index f931156..f581f21 100644 --- a/xbyak/xbyak.h +++ b/xbyak/xbyak.h @@ -639,7 +639,7 @@ public: enum { es, cs, ss, ds, fs, gs }; - Segment(int idx) : idx_(idx) { assert(0 <= idx_ && idx_ < 6); } + explicit Segment(int idx) : idx_(idx) { assert(0 <= idx_ && idx_ < 6); } int getIdx() const { return idx_; } const char *toString() const { @@ -882,7 +882,7 @@ public: } putchar('\n'); remain -= disp; - if (remain <= 0) { + if (remain == 0) { break; } } @@ -1990,12 +1990,6 @@ private: addr.permitVsib(); opVex(x, 0, addr, type, code); } - void opClass(const Opmask& k, const Operand& op, int type, uint8 code, uint8 imm) - { - if (!op.isBit(128|256|512)) throw Error(ERR_BAD_MEM_SIZE); - Reg x = k; x.setBit(op.getBit()); - opVex(x, 0, op, type, code, imm); - } public: unsigned int getVersion() const { return VERSION; } using CodeArray::db; |