Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: src/IceClFlags.cpp

Issue 1424923005: Add workaround to allow testing of ARM integrated assembler. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix nits. Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 //===- subzero/src/IceClFlags.cpp - Command line flags and parsing --------===// 1 //===- subzero/src/IceClFlags.cpp - Command line flags and parsing --------===//
2 // 2 //
3 // The Subzero Code Generator 3 // The Subzero Code Generator
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 /// 9 ///
10 /// \file 10 /// \file
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 cl::alias AllowExternDefinedSymbolsA( 43 cl::alias AllowExternDefinedSymbolsA(
44 "allow-extern", cl::desc("Alias for --allow-externally-defined-symbols"), 44 "allow-extern", cl::desc("Alias for --allow-externally-defined-symbols"),
45 cl::NotHidden, cl::aliasopt(AllowExternDefinedSymbols)); 45 cl::NotHidden, cl::aliasopt(AllowExternDefinedSymbols));
46 46
47 cl::opt<bool> AllowIacaMarks( 47 cl::opt<bool> AllowIacaMarks(
48 "allow-iaca-marks", 48 "allow-iaca-marks",
49 cl::desc("Allow IACA (Intel Architecture Code Analyzer) marks to be " 49 cl::desc("Allow IACA (Intel Architecture Code Analyzer) marks to be "
50 "inserted. These binaries are not executable."), 50 "inserted. These binaries are not executable."),
51 cl::init(false)); 51 cl::init(false));
52 52
53 cl::opt<bool> AllowUnsafeIas(
54 "unsafe-ias",
55 cl::desc("Convert (potentially broken) instructions to bytes in "
56 "integrated assembler."),
57 cl::init(false));
58
53 // This is currently needed by crosstest.py. 59 // This is currently needed by crosstest.py.
54 cl::opt<bool> AllowUninitializedGlobals( 60 cl::opt<bool> AllowUninitializedGlobals(
55 "allow-uninitialized-globals", 61 "allow-uninitialized-globals",
56 cl::desc("Allow global variables to be uninitialized")); 62 cl::desc("Allow global variables to be uninitialized"));
57 63
58 cl::opt<bool> 64 cl::opt<bool>
59 DataSections("fdata-sections", 65 DataSections("fdata-sections",
60 cl::desc("Emit (global) data into separate sections")); 66 cl::desc("Emit (global) data into separate sections"));
61 67
62 cl::opt<bool> DecorateAsm( 68 cl::opt<bool> DecorateAsm(
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after
375 void ClFlags::parseFlags(int argc, char **argv) { 381 void ClFlags::parseFlags(int argc, char **argv) {
376 cl::ParseCommandLineOptions(argc, argv); 382 cl::ParseCommandLineOptions(argc, argv);
377 AppName = IceString(argv[0]); 383 AppName = IceString(argv[0]);
378 } 384 }
379 385
380 void ClFlags::resetClFlags(ClFlags &OutFlags) { 386 void ClFlags::resetClFlags(ClFlags &OutFlags) {
381 // bool fields 387 // bool fields
382 OutFlags.AllowErrorRecovery = false; 388 OutFlags.AllowErrorRecovery = false;
383 OutFlags.AllowExternDefinedSymbols = false; 389 OutFlags.AllowExternDefinedSymbols = false;
384 OutFlags.AllowIacaMarks = false; 390 OutFlags.AllowIacaMarks = false;
391 OutFlags.AllowUnsafeIas = false;
385 OutFlags.AllowUninitializedGlobals = false; 392 OutFlags.AllowUninitializedGlobals = false;
386 OutFlags.DataSections = false; 393 OutFlags.DataSections = false;
387 OutFlags.DecorateAsm = false; 394 OutFlags.DecorateAsm = false;
388 OutFlags.DisableHybridAssembly = false; 395 OutFlags.DisableHybridAssembly = false;
389 OutFlags.DisableInternal = false; 396 OutFlags.DisableInternal = false;
390 OutFlags.DisableIRGeneration = false; 397 OutFlags.DisableIRGeneration = false;
391 OutFlags.DisableTranslation = false; 398 OutFlags.DisableTranslation = false;
392 OutFlags.DumpStats = false; 399 OutFlags.DumpStats = false;
393 OutFlags.EnableBlockProfile = false; 400 OutFlags.EnableBlockProfile = false;
394 OutFlags.ForceMemIntrinOpt = false; 401 OutFlags.ForceMemIntrinOpt = false;
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 OutFlags.setAllowUninitializedGlobals(::AllowUninitializedGlobals); 456 OutFlags.setAllowUninitializedGlobals(::AllowUninitializedGlobals);
450 OutFlags.setDataSections(::DataSections); 457 OutFlags.setDataSections(::DataSections);
451 OutFlags.setDecorateAsm(::DecorateAsm); 458 OutFlags.setDecorateAsm(::DecorateAsm);
452 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix); 459 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix);
453 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix); 460 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix);
454 OutFlags.setDisableHybridAssembly(::DisableHybridAssembly || 461 OutFlags.setDisableHybridAssembly(::DisableHybridAssembly ||
455 (::OutFileType != Ice::FT_Iasm)); 462 (::OutFileType != Ice::FT_Iasm));
456 OutFlags.setDisableInternal(::DisableInternal); 463 OutFlags.setDisableInternal(::DisableInternal);
457 OutFlags.setDisableIRGeneration(::DisableIRGeneration); 464 OutFlags.setDisableIRGeneration(::DisableIRGeneration);
458 OutFlags.setDisableTranslation(::DisableTranslation); 465 OutFlags.setDisableTranslation(::DisableTranslation);
466 OutFlags.setAllowUnsafeIas(::AllowUnsafeIas);
459 OutFlags.setDumpStats(::DumpStats); 467 OutFlags.setDumpStats(::DumpStats);
460 OutFlags.setEnableBlockProfile(::EnableBlockProfile); 468 OutFlags.setEnableBlockProfile(::EnableBlockProfile);
461 OutFlags.setForceMemIntrinOpt(::ForceMemIntrinOpt); 469 OutFlags.setForceMemIntrinOpt(::ForceMemIntrinOpt);
462 OutFlags.setFunctionSections(::FunctionSections); 470 OutFlags.setFunctionSections(::FunctionSections);
463 OutFlags.setNumTranslationThreads(::NumThreads); 471 OutFlags.setNumTranslationThreads(::NumThreads);
464 OutFlags.setOptLevel(::OLevel); 472 OutFlags.setOptLevel(::OLevel);
465 OutFlags.setMockBoundsCheck(::MockBoundsCheck); 473 OutFlags.setMockBoundsCheck(::MockBoundsCheck);
466 OutFlags.setPhiEdgeSplit(::EnablePhiEdgeSplit); 474 OutFlags.setPhiEdgeSplit(::EnablePhiEdgeSplit);
467 OutFlags.setRandomSeed(::RandomSeed); 475 OutFlags.setRandomSeed(::RandomSeed);
468 OutFlags.setRandomizeAndPoolImmediatesOption( 476 OutFlags.setRandomizeAndPoolImmediatesOption(
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts); 509 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts);
502 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors); 510 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors);
503 OutFlagsExtra.setAppName(AppName); 511 OutFlagsExtra.setAppName(AppName);
504 OutFlagsExtra.setInputFileFormat(InputFileFormat); 512 OutFlagsExtra.setInputFileFormat(InputFileFormat);
505 OutFlagsExtra.setIRFilename(IRFilename); 513 OutFlagsExtra.setIRFilename(IRFilename);
506 OutFlagsExtra.setLogFilename(LogFilename); 514 OutFlagsExtra.setLogFilename(LogFilename);
507 OutFlagsExtra.setOutputFilename(OutputFilename); 515 OutFlagsExtra.setOutputFilename(OutputFilename);
508 } 516 }
509 517
510 } // end of namespace Ice 518 } // end of namespace Ice
OLDNEW
« src/IceClFlags.h ('K') | « src/IceClFlags.h ('k') | src/IceInstARM32.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698