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

Side by Side Diff: src/trusted/validator_mips/validator.h

Issue 11090024: [MIPS] New pattern in validator to detect jumps/branches in delay slots. (Closed) Base URL: http://git.chromium.org/native_client/src/native_client.git@master
Patch Set: Two more test cases added. Created 8 years, 2 months 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 /* 1 /*
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H 7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H
8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H 8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H
9 9
10 /* 10 /*
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 "kProblemPatternCrossesBundle"; 384 "kProblemPatternCrossesBundle";
385 // A linking branch instruction is not in the last bundle slot. 385 // A linking branch instruction is not in the last bundle slot.
386 const char * const kProblemMisalignedCall = "kProblemMisalignedCall"; 386 const char * const kProblemMisalignedCall = "kProblemMisalignedCall";
387 // A data register is found in a branch delay slot. 387 // A data register is found in a branch delay slot.
388 const char * const kProblemDataRegInDelaySlot = "kProblemDataRegInDelaySlot"; 388 const char * const kProblemDataRegInDelaySlot = "kProblemDataRegInDelaySlot";
389 // A jump to trampoline instruction which is not a start of a bundle. 389 // A jump to trampoline instruction which is not a start of a bundle.
390 const char * const kProblemUnalignedJumpToTrampoline = 390 const char * const kProblemUnalignedJumpToTrampoline =
391 "kProblemUnalignedJumpToTrampoline"; 391 "kProblemUnalignedJumpToTrampoline";
392 // A jump register instruction is not guarded. 392 // A jump register instruction is not guarded.
393 const char * const kProblemUnsafeJumpRegister = "kProblemUnsafeJumpRegister"; 393 const char * const kProblemUnsafeJumpRegister = "kProblemUnsafeJumpRegister";
394 394 // Two consecutive branches/jumps. Branch/jump in the delay slot.
395 const char * const kProblemBranchInDelaySlot = "kProblemBranchInDelaySlot";
395 } // namespace 396 } // namespace
396 397
397 #endif // NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H 398 #endif // NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_MIPS_VALIDATOR_H
OLDNEW
« no previous file with comments | « src/trusted/validator_mips/validation-report.py ('k') | src/trusted/validator_mips/validator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698