summaryrefslogtreecommitdiffstats
path: root/lib/Sema/SemaStmtAsm.cpp
diff options
context:
space:
mode:
authorChad Rosier <mcrosier@apple.com>2013-04-01 17:58:03 +0000
committerChad Rosier <mcrosier@apple.com>2013-04-01 17:58:03 +0000
commite3faa6ec8005f34b705cef363b071b933e111e1c (patch)
tree34a4edbbd2f25dd4b74942b5022c17fa2c02950a /lib/Sema/SemaStmtAsm.cpp
parentdd0a1f58a505ced9674f6d31a1ff65cb87774d67 (diff)
Cleanup. No functional change intended.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178481 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaStmtAsm.cpp')
-rw-r--r--lib/Sema/SemaStmtAsm.cpp35
1 files changed, 17 insertions, 18 deletions
diff --git a/lib/Sema/SemaStmtAsm.cpp b/lib/Sema/SemaStmtAsm.cpp
index 4ca8d69bf6..6b13f71c3a 100644
--- a/lib/Sema/SemaStmtAsm.cpp
+++ b/lib/Sema/SemaStmtAsm.cpp
@@ -515,21 +515,21 @@ NamedDecl *Sema::LookupInlineAsmIdentifier(StringRef Name, SourceLocation Loc,
return 0;
}
- NamedDecl *ND = Result.getFoundDecl();
- if (isa<VarDecl>(ND) || isa<FunctionDecl>(ND)) {
- if (VarDecl *Var = dyn_cast<VarDecl>(ND)) {
- Type = Context.getTypeInfo(Var->getType()).first;
- QualType Ty = Var->getType();
- if (Ty->isArrayType()) {
- const ArrayType *ATy = Context.getAsArrayType(Ty);
- Length = Type / Context.getTypeInfo(ATy->getElementType()).first;
- Type /= Length; // Type is in terms of a single element.
- }
- Type /= 8; // Type is in terms of bits, but we want bytes.
- Size = Length * Type;
- IsVarDecl = true;
+ NamedDecl *FoundDecl = Result.getFoundDecl();
+ if (isa<FunctionDecl>(FoundDecl))
+ return FoundDecl;
+ if (VarDecl *Var = dyn_cast<VarDecl>(FoundDecl)) {
+ Type = Context.getTypeInfo(Var->getType()).first;
+ QualType Ty = Var->getType();
+ if (Ty->isArrayType()) {
+ const ArrayType *ATy = Context.getAsArrayType(Ty);
+ Length = Type / Context.getTypeInfo(ATy->getElementType()).first;
+ Type /= Length; // Type is in terms of a single element.
}
- return ND;
+ Type /= 8; // Type is in terms of bits, but we want bytes.
+ Size = Length * Type;
+ IsVarDecl = true;
+ return FoundDecl;
}
// FIXME: Handle other kinds of results? (FieldDecl, etc.)
@@ -549,13 +549,12 @@ bool Sema::LookupInlineAsmField(StringRef Base, StringRef Member,
if (!BaseResult.isSingleResult())
return true;
- NamedDecl *FoundDecl = BaseResult.getFoundDecl();
const RecordType *RT = 0;
- if (VarDecl *VD = dyn_cast<VarDecl>(FoundDecl)) {
+ NamedDecl *FoundDecl = BaseResult.getFoundDecl();
+ if (VarDecl *VD = dyn_cast<VarDecl>(FoundDecl))
RT = VD->getType()->getAs<RecordType>();
- } else if (TypedefDecl *TD = dyn_cast<TypedefDecl>(FoundDecl)) {
+ else if (TypedefDecl *TD = dyn_cast<TypedefDecl>(FoundDecl))
RT = TD->getUnderlyingType()->getAs<RecordType>();
- }
if (!RT)
return true;