Use switch for readability.

llvm-svn: 206638
This commit is contained in:
Rui Ueyama 2014-04-18 19:59:33 +00:00
parent bb094f0669
commit a2b0334e93
1 changed files with 15 additions and 12 deletions

View File

@ -105,8 +105,9 @@ void Parser::error(const Token &tok, Twine msg) {
llvm::Optional<Directive *> Parser::parse() { llvm::Optional<Directive *> Parser::parse() {
consumeToken(); consumeToken();
// EXPORTS switch (_tok._kind) {
if (_tok._kind == Kind::kw_exports) { case Kind::kw_exports: {
// EXPORTS
std::vector<PECOFFLinkingContext::ExportDesc> exports; std::vector<PECOFFLinkingContext::ExportDesc> exports;
for (;;) { for (;;) {
PECOFFLinkingContext::ExportDesc desc; PECOFFLinkingContext::ExportDesc desc;
@ -116,37 +117,39 @@ llvm::Optional<Directive *> Parser::parse() {
} }
return new (_alloc) Exports(exports); return new (_alloc) Exports(exports);
} }
// HEAPSIZE case Kind::kw_heapsize: {
if (_tok._kind == Kind::kw_heapsize) { // HEAPSIZE
uint64_t reserve, commit; uint64_t reserve, commit;
if (!parseMemorySize(reserve, commit)) if (!parseMemorySize(reserve, commit))
return llvm::None; return llvm::None;
return new (_alloc) Heapsize(reserve, commit); return new (_alloc) Heapsize(reserve, commit);
} }
// STACKSIZE case Kind::kw_stacksize: {
if (_tok._kind == Kind::kw_stacksize) { // STACKSIZE
uint64_t reserve, commit; uint64_t reserve, commit;
if (!parseMemorySize(reserve, commit)) if (!parseMemorySize(reserve, commit))
return llvm::None; return llvm::None;
return new (_alloc) Stacksize(reserve, commit); return new (_alloc) Stacksize(reserve, commit);
} }
// NAME case Kind::kw_name: {
if (_tok._kind == Kind::kw_name) { // NAME
std::string outputPath; std::string outputPath;
uint64_t baseaddr; uint64_t baseaddr;
if (!parseName(outputPath, baseaddr)) if (!parseName(outputPath, baseaddr))
return llvm::None; return llvm::None;
return new (_alloc) Name(outputPath, baseaddr); return new (_alloc) Name(outputPath, baseaddr);
} }
// VERSION case Kind::kw_version: {
if (_tok._kind == Kind::kw_version) { // VERSION
int major, minor; int major, minor;
if (!parseVersion(major, minor)) if (!parseVersion(major, minor))
return llvm::None; return llvm::None;
return new (_alloc) Version(major, minor); return new (_alloc) Version(major, minor);
} }
error(_tok, Twine("Unknown directive: ") + _tok._range); default:
return llvm::None; error(_tok, Twine("Unknown directive: ") + _tok._range);
return llvm::None;
}
} }
bool Parser::parseExport(PECOFFLinkingContext::ExportDesc &result) { bool Parser::parseExport(PECOFFLinkingContext::ExportDesc &result) {