1*71d33794SRowan Hart /* 2*71d33794SRowan Hart * SPDX-License-Identifier: GPL-2.0-or-later 3*71d33794SRowan Hart * 4*71d33794SRowan Hart * This test target increments a value 100 times. The patcher converts the 5*71d33794SRowan Hart * inc instruction to a nop, so it only increments the value once. 6*71d33794SRowan Hart * 7*71d33794SRowan Hart */ 8*71d33794SRowan Hart #include <minilib.h> 9*71d33794SRowan Hart 10*71d33794SRowan Hart int main(void) 11*71d33794SRowan Hart { 12*71d33794SRowan Hart ml_printf("Running test...\n"); 13*71d33794SRowan Hart unsigned int x = 0; 14*71d33794SRowan Hart for (int i = 0; i < 100; i++) { 15*71d33794SRowan Hart asm volatile ( 16*71d33794SRowan Hart "inc %[x]" 17*71d33794SRowan Hart : [x] "+a" (x) 18*71d33794SRowan Hart ); 19*71d33794SRowan Hart } 20*71d33794SRowan Hart ml_printf("Value: %d\n", x); 21*71d33794SRowan Hart return 0; 22*71d33794SRowan Hart } 23