v6.69.1
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e064056..fbd0fbe 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,6 +1,6 @@
 cmake_minimum_required(VERSION 2.6...3.0.2)
 
-project(xbyak LANGUAGES CXX VERSION 6.69)
+project(xbyak LANGUAGES CXX VERSION 6.69.1)
 
 file(GLOB headers xbyak/*.h)
 
diff --git a/doc/changelog.md b/doc/changelog.md
index b97a3f0..de682d9 100644
--- a/doc/changelog.md
+++ b/doc/changelog.md
@@ -1,5 +1,6 @@
 # History
 
+* 2023/May/23 ver 6.69.1 add detection of xsave (thanks to Wunkolo)
 * 2023/Feb/20 ver 6.69 util::Cpu supports AMD CPUs. support UINTR
 * 2022/Dec/07 ver 6.68 support prefetchit{0,1}
 * 2022/Nov/30 ver 6.67 support CMPccXADD
diff --git a/meson.build b/meson.build
index 53cabfd..707da4e 100644
--- a/meson.build
+++ b/meson.build
@@ -5,7 +5,7 @@
 project(
 	'xbyak',
 	'cpp',
-	version: '6.69',
+	version: '6.69.1',
 	license: 'BSD-3-Clause',
 	default_options: 'b_ndebug=if-release'
 )
diff --git a/readme.md b/readme.md
index 963d995..0fc56f0 100644
--- a/readme.md
+++ b/readme.md
@@ -1,5 +1,5 @@
 
-# Xbyak 6.69 [![Badge Build]][Build Status]
+# Xbyak 6.69.1 [![Badge Build]][Build Status]
 
 *A C++ JIT assembler for x86 (IA32), x64 (AMD64, x86-64)*
 
diff --git a/readme.txt b/readme.txt
index a61afc7..4f08d0c 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,5 +1,5 @@
 

-    C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 6.69

+    C++用x86(IA-32), x64(AMD64, x86-64) JITアセンブラ Xbyak 6.69.1

 

 -----------------------------------------------------------------------------

 ◎概要

@@ -402,6 +402,7 @@
 -----------------------------------------------------------------------------

 ◎履歴

 

+2023/03/23 ver 6.69.1 xsave判定追加(thanks to Wunkolo)

 2023/02/20 ver 6.69 util::CpuがAMD対応 UINTR命令対応

 2022/12/07 ver 6.68 prefetchit{0,1}サポート

 2022/11/30 ver 6.67 CMPccXADDサポート

diff --git a/xbyak/xbyak.h b/xbyak/xbyak.h
index 8ed0d3f..fbfbb07 100644
--- a/xbyak/xbyak.h
+++ b/xbyak/xbyak.h
@@ -155,7 +155,7 @@
 
 enum {
 	DEFAULT_MAX_CODE_SIZE = 4096,
-	VERSION = 0x6690 /* 0xABCD = A.BC(.D) */
+	VERSION = 0x6691 /* 0xABCD = A.BC(.D) */
 };
 
 #ifndef MIE_INTEGER_TYPE_DEFINED
diff --git a/xbyak/xbyak_mnemonic.h b/xbyak/xbyak_mnemonic.h
index 4c4d655..d509155 100644
--- a/xbyak/xbyak_mnemonic.h
+++ b/xbyak/xbyak_mnemonic.h
@@ -1,4 +1,4 @@
-const char *getVersionString() const { return "6.69"; }
+const char *getVersionString() const { return "6.69.1"; }
 void aadd(const Address& addr, const Reg32e &reg) { opModM(addr, reg, 0x0F, 0x38, 0x0FC); }
 void aand(const Address& addr, const Reg32e &reg) { db(0x66); opModM(addr, reg, 0x0F, 0x38, 0x0FC); }
 void adc(const Operand& op, uint32_t imm) { opRM_I(op, imm, 0x10, 2); }