summaryrefslogtreecommitdiff
path: root/src/cpu/o3/lsq_unit.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/o3/lsq_unit.hh')
-rw-r--r--src/cpu/o3/lsq_unit.hh14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/cpu/o3/lsq_unit.hh b/src/cpu/o3/lsq_unit.hh
index 2bb42cadc..bdc524dec 100644
--- a/src/cpu/o3/lsq_unit.hh
+++ b/src/cpu/o3/lsq_unit.hh
@@ -111,6 +111,12 @@ class LSQUnit {
/** Inserts a store instruction. */
void insertStore(DynInstPtr &store_inst);
+ /** Check for ordering violations in the LSQ
+ * @param load_idx index to start checking at
+ * @param inst the instruction to check
+ */
+ Fault checkViolations(int load_idx, DynInstPtr &inst);
+
/** Executes a load instruction. */
Fault executeLoad(DynInstPtr &inst);
@@ -366,6 +372,14 @@ class LSQUnit {
*/
unsigned SQEntries;
+ /** The number of places to shift addresses in the LSQ before checking
+ * for dependency violations
+ */
+ unsigned depCheckShift;
+
+ /** Should loads be checked for dependency issues */
+ bool checkLoads;
+
/** The number of load instructions in the LQ. */
int loads;
/** The number of store instructions in the SQ. */