Fixed errors in fmin and clmulh.
Updated simulator targets to have the same set of options.
PiperOrigin-RevId: 694530007
Change-Id: I53cd6178e11281e44fb5da233ed789381189c4f9
diff --git a/cheriot/cheriot_top.cc b/cheriot/cheriot_top.cc
index 8643188..798ccfe 100644
--- a/cheriot/cheriot_top.cc
+++ b/cheriot/cheriot_top.cc
@@ -437,8 +437,6 @@
while (!halted_) {
auto *inst = cheriot_decode_cache_->GetDecodedInstruction(pc);
SetPc(pc);
- // Set the PC destination operand to next_seq_pc. Any branch that is
- // executed will overwrite this.
next_pc = pc + inst->size();
bool executed = false;
if (icache_) ICacheFetch(pc);
@@ -462,7 +460,6 @@
counter_opcode_[inst->opcode()].Increment(1);
counter_num_instructions_.Increment(1);
// Get the next pc value.
- // Get the next pc value.
uint64_t pcc_val = pcc_->data_buffer()->Get<uint32_t>(0);
if (state_->branch()) {
state_->set_branch(false);
@@ -656,10 +653,10 @@
// Was the register found? If not try CSRs.
if (iter == state_->registers()->end()) {
auto result = state_->csr_set()->GetCsr(name);
- if (name == "$branch_trace_size") {
- return ResizeBranchTrace(value);
- }
if (!result.ok()) {
+ if (name == "$branch_trace_size") {
+ return ResizeBranchTrace(value);
+ }
return absl::NotFoundError(
absl::StrCat("Register '", name, "' not found"));
}