@@ -1972,10 +1972,15 @@ static bool SemaOpenCLBuiltinToAddr(Sema &S, unsigned BuiltinID,
1972
1972
}
1973
1973
1974
1974
namespace {
1975
- enum PointerAuthOpKind {
1976
- PAO_Strip, PAO_Sign, PAO_Auth, PAO_SignGeneric, PAO_Discriminator,
1977
- PAO_BlendPointer, PAO_BlendInteger
1978
- };
1975
+ enum PointerAuthOpKind {
1976
+ PAO_Strip,
1977
+ PAO_Sign,
1978
+ PAO_Auth,
1979
+ PAO_SignGeneric,
1980
+ PAO_Discriminator,
1981
+ PAO_BlendPointer,
1982
+ PAO_BlendInteger
1983
+ };
1979
1984
}
1980
1985
1981
1986
static bool checkPointerAuthEnabled(Sema &S, Expr *E) {
@@ -2010,7 +2015,8 @@ bool Sema::checkConstantPointerAuthKey(Expr *Arg, unsigned &Result) {
2010
2015
2011
2016
// Ask the target to validate the key parameter.
2012
2017
if (!Context.getTargetInfo().validatePointerAuthKey(*KeyValue)) {
2013
- llvm::SmallString<32> Value; {
2018
+ llvm::SmallString<32> Value;
2019
+ {
2014
2020
llvm::raw_svector_ostream Str(Value);
2015
2021
Str << *KeyValue;
2016
2022
}
@@ -2028,16 +2034,16 @@ static bool checkPointerAuthValue(Sema &S, Expr *&Arg,
2028
2034
PointerAuthOpKind OpKind) {
2029
2035
if (Arg->hasPlaceholderType()) {
2030
2036
ExprResult R = S.CheckPlaceholderExpr(Arg);
2031
- if (R.isInvalid()) return true;
2037
+ if (R.isInvalid())
2038
+ return true;
2032
2039
Arg = R.get();
2033
2040
}
2034
2041
2035
2042
auto AllowsPointer = [](PointerAuthOpKind OpKind) {
2036
2043
return OpKind != PAO_BlendInteger;
2037
2044
};
2038
2045
auto AllowsInteger = [](PointerAuthOpKind OpKind) {
2039
- return OpKind == PAO_Discriminator ||
2040
- OpKind == PAO_BlendInteger ||
2046
+ return OpKind == PAO_Discriminator || OpKind == PAO_BlendInteger ||
2041
2047
OpKind == PAO_SignGeneric;
2042
2048
};
2043
2049
@@ -2082,8 +2088,10 @@ static bool checkPointerAuthValue(Sema &S, Expr *&Arg,
2082
2088
}
2083
2089
2084
2090
static ExprResult SemaPointerAuthStrip(Sema &S, CallExpr *Call) {
2085
- if (checkArgCount(S, Call, 2)) return ExprError();
2086
- if (checkPointerAuthEnabled(S, Call)) return ExprError();
2091
+ if (checkArgCount(S, Call, 2))
2092
+ return ExprError();
2093
+ if (checkPointerAuthEnabled(S, Call))
2094
+ return ExprError();
2087
2095
if (checkPointerAuthValue(S, Call->getArgs()[0], PAO_Strip) ||
2088
2096
checkPointerAuthKey(S, Call->getArgs()[1]))
2089
2097
return ExprError();
@@ -2093,8 +2101,10 @@ static ExprResult SemaPointerAuthStrip(Sema &S, CallExpr *Call) {
2093
2101
}
2094
2102
2095
2103
static ExprResult SemaPointerAuthBlendDiscriminator(Sema &S, CallExpr *Call) {
2096
- if (checkArgCount(S, Call, 2)) return ExprError();
2097
- if (checkPointerAuthEnabled(S, Call)) return ExprError();
2104
+ if (checkArgCount(S, Call, 2))
2105
+ return ExprError();
2106
+ if (checkPointerAuthEnabled(S, Call))
2107
+ return ExprError();
2098
2108
if (checkPointerAuthValue(S, Call->getArgs()[0], PAO_BlendPointer) ||
2099
2109
checkPointerAuthValue(S, Call->getArgs()[1], PAO_BlendInteger))
2100
2110
return ExprError();
@@ -2104,8 +2114,10 @@ static ExprResult SemaPointerAuthBlendDiscriminator(Sema &S, CallExpr *Call) {
2104
2114
}
2105
2115
2106
2116
static ExprResult SemaPointerAuthSignGenericData(Sema &S, CallExpr *Call) {
2107
- if (checkArgCount(S, Call, 2)) return ExprError();
2108
- if (checkPointerAuthEnabled(S, Call)) return ExprError();
2117
+ if (checkArgCount(S, Call, 2))
2118
+ return ExprError();
2119
+ if (checkPointerAuthEnabled(S, Call))
2120
+ return ExprError();
2109
2121
if (checkPointerAuthValue(S, Call->getArgs()[0], PAO_SignGeneric) ||
2110
2122
checkPointerAuthValue(S, Call->getArgs()[1], PAO_Discriminator))
2111
2123
return ExprError();
@@ -2116,8 +2128,10 @@ static ExprResult SemaPointerAuthSignGenericData(Sema &S, CallExpr *Call) {
2116
2128
2117
2129
static ExprResult SemaPointerAuthSignOrAuth(Sema &S, CallExpr *Call,
2118
2130
PointerAuthOpKind OpKind) {
2119
- if (checkArgCount(S, Call, 3)) return ExprError();
2120
- if (checkPointerAuthEnabled(S, Call)) return ExprError();
2131
+ if (checkArgCount(S, Call, 3))
2132
+ return ExprError();
2133
+ if (checkPointerAuthEnabled(S, Call))
2134
+ return ExprError();
2121
2135
if (checkPointerAuthValue(S, Call->getArgs()[0], OpKind) ||
2122
2136
checkPointerAuthKey(S, Call->getArgs()[1]) ||
2123
2137
checkPointerAuthValue(S, Call->getArgs()[2], PAO_Discriminator))
@@ -2128,8 +2142,10 @@ static ExprResult SemaPointerAuthSignOrAuth(Sema &S, CallExpr *Call,
2128
2142
}
2129
2143
2130
2144
static ExprResult SemaPointerAuthAuthAndResign(Sema &S, CallExpr *Call) {
2131
- if (checkArgCount(S, Call, 5)) return ExprError();
2132
- if (checkPointerAuthEnabled(S, Call)) return ExprError();
2145
+ if (checkArgCount(S, Call, 5))
2146
+ return ExprError();
2147
+ if (checkPointerAuthEnabled(S, Call))
2148
+ return ExprError();
2133
2149
if (checkPointerAuthValue(S, Call->getArgs()[0], PAO_Auth) ||
2134
2150
checkPointerAuthKey(S, Call->getArgs()[1]) ||
2135
2151
checkPointerAuthValue(S, Call->getArgs()[2], PAO_Discriminator) ||
0 commit comments