Skip to content
STIMSMITH

Condition Codes

Concept

Condition codes are a three-bit programmer-visible state element in the Y86-64 processor model, denoted CC and consisting of ZF, SF, and OF. They are used to control conditional branches and are updated in the processor execute stage in formal UCLID5 models.

First seen 5/26/2026
Last seen 5/26/2026
Evidence 3 chunks
Wiki v1

WIKI

Overview

In the Y86-64 processor architecture, condition codes are part of the programmer-visible architectural state. They are denoted CC and consist of three bits: ZF, SF, and OF. The same architectural state also includes the program registers, program counter, data memory, and a status register used for exceptional conditions. [C1]

Role in instruction execution

READ FULL ARTICLE →

NEIGHBORHOOD

No graph connections found for this entity yet. It may appear in future ingestion runs.

explore full graph →

RELATIONSHIPS

2 connections
Y86-64 part of → 100% 1e
The Y86-64 ISA has three bits of condition codes for controlling conditional branches.
Instruction Set Architecture ← mentions 90% 1e
The ISA includes condition codes as part of the architectural state.

CITATIONS

5 sources
5 citations — click to expand
[1] In Y86-64, condition codes are programmer-visible architectural state, denoted CC, and consist of ZF, SF, and OF; the architectural state also includes program registers, PC, data memory, and status. Formal Verification of Pipelined Y86-64 Microprocessors with UCLID5
[2] Y86-64 uses condition codes to control conditional branches; jXX represents seven branch instructions, and branching is based on condition codes set by arithmetic instructions. Formal Verification of Pipelined Y86-64 Microprocessors with UCLID5
[3] In the UCLID5 model, branch-decision logic can be represented as an uninterpreted Boolean function with an enumerated function-code argument and an uninterpreted condition-code argument. Formal Verification of Pipelined Y86-64 Microprocessors with UCLID5
[4] In the modeled execute stage, e_valE is computed using ALU functions and the condition codes are updated according to the uninterpreted function common.cc_fun. Formal Verification of Pipelined Y86-64 Microprocessors with UCLID5
[5] A memory-to-execute pipeline dependency is used to disable updating of the condition-code register when a memory exception occurs. Formal Verification of Pipelined Y86-64 Microprocessors with UCLID5