1*c55dabc6SKajol Jain/* SPDX-License-Identifier: GPL-2.0-only */ 2*c55dabc6SKajol Jain/* 3*c55dabc6SKajol Jain * Copyright 2022, Kajol Jain, IBM Corp. 4*c55dabc6SKajol Jain */ 5*c55dabc6SKajol Jain 6*c55dabc6SKajol Jain#include <ppc-asm.h> 7*c55dabc6SKajol Jain 8*c55dabc6SKajol Jain .text 9*c55dabc6SKajol Jain 10*c55dabc6SKajol Jain#define ITER_SHIFT 31 11*c55dabc6SKajol Jain 12*c55dabc6SKajol JainFUNC_START(indirect_branch_loop) 13*c55dabc6SKajol Jain li r3, 1 14*c55dabc6SKajol Jain sldi r3, r3, ITER_SHIFT 15*c55dabc6SKajol Jain 16*c55dabc6SKajol Jain1: cmpdi r3, 0 17*c55dabc6SKajol Jain beqlr 18*c55dabc6SKajol Jain 19*c55dabc6SKajol Jain addi r3, r3, -1 20*c55dabc6SKajol Jain 21*c55dabc6SKajol Jain ld r4, 2f@got(%r2) 22*c55dabc6SKajol Jain mtctr r4 23*c55dabc6SKajol Jain bctr 24*c55dabc6SKajol Jain 25*c55dabc6SKajol Jain .balign 32 26*c55dabc6SKajol Jain2: b 1b 27*c55dabc6SKajol Jain 28*c55dabc6SKajol JainFUNC_END(indirect_branch_loop) 29