From 671611fba0c877b0a4ee2e2f1b0662c9e60d114a Mon Sep 17 00:00:00 2001 From: lkcl Date: Mon, 9 Aug 2021 11:16:30 +0100 Subject: [PATCH] --- openpower/sv/branches.mdwn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/openpower/sv/branches.mdwn b/openpower/sv/branches.mdwn index 447c33a41..2536558bb 100644 --- a/openpower/sv/branches.mdwn +++ b/openpower/sv/branches.mdwn @@ -269,7 +269,7 @@ if svstep_mode then SVSTATE.srcstep = new_srcstep ``` -v3.0B branch pseudocode: +v3.0B branch pseudocode including LRu ``` if (mode_is_64bit) then M <- 0 @@ -277,10 +277,12 @@ else M <- 32 if ¬BO[2] then CTR <- CTR - 1 ctr_ok <- BO[2] | ((CTR[M:63] != 0) ^ BO[3]) cond_ok <- BO[0] | ¬(CR[BI+32] ^ BO[1]) +lr_ok <- SVRMmode.LRu if ctr_ok & cond_ok then if AA then NIA <-iea EXTS(BD || 0b00) else NIA <-iea CIA + EXTS(BD || 0b00) -if LK then LR <-iea CIA + 4 + lr_ok <- 0b1 +if LK & lr_ok then LR <-iea CIA + 4 ``` # Example Shader code -- 2.30.2