diff --git a/releasenotes.md b/releasenotes.md
index b9f6143f4..713b59135 100644
--- a/releasenotes.md
+++ b/releasenotes.md
@@ -6,6 +6,7 @@
- Support `defer (catch err)`
- Added `print-input` command argument to print all files used for compilation
- Allow recursive function definitions as long as they are pointers. #1182
+- Default CPU to native if less than AVX, otherwise use AVX.
### Fixes
- Incorrect length passed to scratch buffer printf.
diff --git a/src/build/build.h b/src/build/build.h
index e87b915d8..323a3b1db 100644
--- a/src/build/build.h
+++ b/src/build/build.h
@@ -202,7 +202,7 @@ typedef enum
X86VECTOR_SSE = 2,
X86VECTOR_AVX = 3,
X86VECTOR_AVX512 = 4,
- X86VECTOR_NATIVE = 5,
+ X86VECTOR_CPU = 5,
} X86VectorCapability;
typedef enum
diff --git a/src/build/build_internal.h b/src/build/build_internal.h
index 57240dd70..a9fea1b2c 100644
--- a/src/build/build_internal.h
+++ b/src/build/build_internal.h
@@ -59,7 +59,7 @@ static const char *x86_vector_capability[6] = {
[X86VECTOR_SSE] = "sse",
[X86VECTOR_AVX] = "avx",
[X86VECTOR_AVX512] = "avx512",
- [X86VECTOR_NATIVE] = "native"
+ [X86VECTOR_CPU] = "default"
};
static const char *optlevels[4] = {
diff --git a/src/build/build_options.c b/src/build/build_options.c
index 219c2e4ba..d91aeea4f 100644
--- a/src/build/build_options.c
+++ b/src/build/build_options.c
@@ -142,7 +142,7 @@ static void usage(void)
OUTPUT("");
OUTPUT(" --reloc=