aboutsummaryrefslogtreecommitdiff
path: root/src/build_settings.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2025-08-10 18:29:08 +0100
committergingerBill <gingerBill@users.noreply.github.com>2025-08-10 18:29:08 +0100
commit8df69c95c3163562b6caf6c55651363c17c3f478 (patch)
treedf65019c482eb0bbf6d090475809f448147a5251 /src/build_settings.cpp
parentb6e0b4848116697fa86a46c0b06a5ceb3654d5c6 (diff)
Add `-integer-division-by-zero:all-bits`
Diffstat (limited to 'src/build_settings.cpp')
-rw-r--r--src/build_settings.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/build_settings.cpp b/src/build_settings.cpp
index fad4bedaa..4bee0ad4e 100644
--- a/src/build_settings.cpp
+++ b/src/build_settings.cpp
@@ -353,14 +353,18 @@ enum OptInFeatureFlags : u64 {
OptInFeatureFlag_NONE = 0,
OptInFeatureFlag_DynamicLiterals = 1u<<0,
- OptInFeatureFlag_IntegerDivisionByZero_Trap = 1u<<1,
- OptInFeatureFlag_IntegerDivisionByZero_Zero = 1u<<2,
- OptInFeatureFlag_IntegerDivisionByZero_Self = 1u<<3,
+ OptInFeatureFlag_GlobalContext = 1u<<1,
- OptInFeatureFlag_GlobalContext = 1u<<4,
+ OptInFeatureFlag_IntegerDivisionByZero_Trap = 1u<<2,
+ OptInFeatureFlag_IntegerDivisionByZero_Zero = 1u<<3,
+ OptInFeatureFlag_IntegerDivisionByZero_Self = 1u<<4,
+ OptInFeatureFlag_IntegerDivisionByZero_AllBits = 1u<<5,
- OptInFeatureFlag_IntegerDivisionByZero_ALL = OptInFeatureFlag_IntegerDivisionByZero_Trap|OptInFeatureFlag_IntegerDivisionByZero_Zero|OptInFeatureFlag_IntegerDivisionByZero_Self,
+ OptInFeatureFlag_IntegerDivisionByZero_ALL = OptInFeatureFlag_IntegerDivisionByZero_Trap|
+ OptInFeatureFlag_IntegerDivisionByZero_Zero|
+ OptInFeatureFlag_IntegerDivisionByZero_Self|
+ OptInFeatureFlag_IntegerDivisionByZero_AllBits,
};
@@ -377,6 +381,10 @@ u64 get_feature_flag_from_name(String const &name) {
if (name == "integer-division-by-zero:self") {
return OptInFeatureFlag_IntegerDivisionByZero_Self;
}
+ if (name == "integer-division-by-zero:all-bits") {
+ return OptInFeatureFlag_IntegerDivisionByZero_AllBits;
+ }
+
if (name == "global-context") {
return OptInFeatureFlag_GlobalContext;
@@ -431,6 +439,7 @@ enum IntegerDivisionByZeroKind : u8 {
IntegerDivisionByZero_Trap,
IntegerDivisionByZero_Zero,
IntegerDivisionByZero_Self,
+ IntegerDivisionByZero_AllBits,
};
// This stores the information for the specify architecture of this build