diff --git a/readme.md b/readme.md
index bc6d6d9..3b362d9 100644
--- a/readme.md
+++ b/readme.md
@@ -1,5 +1,5 @@
 
-Xbyak 4.81 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
+Xbyak 4.82 ; JIT assembler for x86(IA32), x64(AMD64, x86-64) by C++
 =============
 
 Abstract
@@ -277,6 +277,7 @@
 
 History
 -------------
+* 2015/May/24 ver 4.82 support detection of F16C
 * 2015/Apr/25 ver 4.81 fix the condition to throw exception for setSize(thanks to whyisthisfieldhere)
 * 2015/Apr/22 ver 4.80 rip supports label(thanks to whyisthisfieldhere)
 * 2015/Jar/28 ver 4.71 support adcx, adox, cmpxchg, rdseed, stac
diff --git a/readme.txt b/readme.txt
index 33ca1b8..82835fd 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,5 +1,5 @@
 
-    C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 4.81
+    C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 4.82
 
 -----------------------------------------------------------------------------
 ◎概要
@@ -296,6 +296,7 @@
 -----------------------------------------------------------------------------
 ◎履歴
 
+2015/05/24 ver 4.82 F16Cが使えるかどうかの判定追加
 2015/04/25 ver 4.81 setSizeが例外を投げる条件を修正(thanks to whyisthisfieldhere)
 2015/04/22 ver 4.80 rip相対でLabelのサポート(thanks to whyisthisfieldhere)
 2015/01/28 ver 4.71 adcx, adox, cmpxchg, rdseed, stacのサポート
diff --git a/sample/test_util.cpp b/sample/test_util.cpp
index d60c435..794dc8a 100644
--- a/sample/test_util.cpp
+++ b/sample/test_util.cpp
@@ -53,6 +53,7 @@
 		{ Cpu::tSMAP, "smap" },
 		{ Cpu::tHLE, "hle" },
 		{ Cpu::tRTM, "rtm" },
+		{ Cpu::tF16C, "f16c" },
 	};
 	for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
 		if (cpu.has(tbl[i].type)) printf(" %s", tbl[i].str);
diff --git a/xbyak/xbyak.h b/xbyak/xbyak.h
index f81138c..008d6f0 100644
--- a/xbyak/xbyak.h
+++ b/xbyak/xbyak.h
@@ -96,7 +96,7 @@
 
 enum {
 	DEFAULT_MAX_CODE_SIZE = 4096,
-	VERSION = 0x4810 /* 0xABCD = A.BC(D) */
+	VERSION = 0x4820 /* 0xABCD = A.BC(D) */
 };
 
 #ifndef MIE_INTEGER_TYPE_DEFINED
diff --git a/xbyak/xbyak_mnemonic.h b/xbyak/xbyak_mnemonic.h
index 2005ad0..4763b46 100644
--- a/xbyak/xbyak_mnemonic.h
+++ b/xbyak/xbyak_mnemonic.h
@@ -1,4 +1,4 @@
-const char *getVersionString() const { return "4.81"; }
+const char *getVersionString() const { return "4.82"; }
 void packssdw(const Mmx& mmx, const Operand& op) { opMMX(mmx, op, 0x6B); }
 void packsswb(const Mmx& mmx, const Operand& op) { opMMX(mmx, op, 0x63); }
 void packuswb(const Mmx& mmx, const Operand& op) { opMMX(mmx, op, 0x67); }
diff --git a/xbyak/xbyak_util.h b/xbyak/xbyak_util.h
index 166f3e3..993252d 100644
--- a/xbyak/xbyak_util.h
+++ b/xbyak/xbyak_util.h
@@ -162,6 +162,7 @@
 	static const Type tSMAP = 1 << 30; // stac
 	static const Type tHLE = uint64(1) << 31; // xacquire, xrelease, xtest
 	static const Type tRTM = uint64(1) << 32; // xbegin, xend, xabort
+	static const Type tF16C = uint64(1) << 33; // vcvtph2ps, vcvtps2ph
 
 	Cpu()
 		: type_(NONE)
@@ -196,6 +197,7 @@
 		if (data[2] & (1U << 1)) type_ |= tPCLMULQDQ;
 		if (data[2] & (1U << 27)) type_ |= tOSXSAVE;
 		if (data[2] & (1U << 30)) type_ |= tRDRAND;
+		if (data[2] & (1U << 29)) type_ |= tF16C;
 
 		if (data[3] & (1U << 15)) type_ |= tCMOV;
 		if (data[3] & (1U << 23)) type_ |= tMMX;
