[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]

Assembler Language Reference

icbi (Instruction Cache Block Invalidate) Instruction

Purpose

Invalidates a block containing the byte addressed in the instruction cache, causing subsequent references to retrieve the block from main memory.

Note: The icbi instruction is supported only in the PowerPC architecture.

Syntax

Bits Value
0-5 31
6-10 ///
11-15 RA
16-20 RB
21-30 982
31 /
PowerPC 
icbi RA, RB

Description

The icbi instruction invalidates a block containing the byte addressed in the instruction cache. If RA is not 0, the icbi instruction calculates an effective address (EA) by adding the contents of general-purpose register (GPR) RA to the contents of GPR RB.

Consider the following when using the icbi instruction:

The icbi instruction has one syntax form and does not affect Condition Register Field 0 or the Fixed-Point Exception Register.

Parameters

RA Specifies source general-purpose register for the EA calculation.
RB Specifies source general-purpose register for the EA calculation.

Examples

The following code ensures that modified instructions are available for execution:

# Assume GPR 3 contains a modified instruction.
# Assume GPR 4 contains the address of the memory location
# where the modified instruction will be stored.
stw     3,0(4)           # Store the modified instruction.
dcbf    0,4              # Copy the modified instruction to
                         # main memory.
sync                     # Ensure update is in main memory.
icbi    0,4              # Invalidate block with old instruction.
isync                    # Discard prefetched instructions.
b       newcode          # Go execute the new code.

Related Information

The clcs (Cache Line Compute Size) instruction, clf (Cache Line Flush) instruction, cli (Cache Line Invalidate) instruction, dcbf (Data Cache Block Flush) instruction, dcbi (Data Cache Block Invalidate) instruction, dcbst (Data Cache Block Store) instruction, dcbt (Data Cache Block Touch) instruction, dcbtst (Data Cache Block Touch for Store) instruction, dcbz or dclz (Data Cache Block Set to Zero) instruction, dclst (Data Cache Line Store) instruction, sync (Synchronize) or dcs (Data Cache Synchronize) instruction.

Processing and Storage

[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]