blob: fd0368a55ae5c8b833209183a5d7e1db7d94f45e [file] [log] [blame]
/* Functional tests for the function hotpatching feature. */
/* { dg-do compile } */
/* { dg-options "-mzarch" } */
/* { dg-skip-if "" { *-*-* } { "*" } { "-O*" } } */
#include <stdio.h>
__attribute__ ((hotpatch(0,2)))
void hp1(void)
{
printf("hello, world!\n");
}
/* Check number of occurences of certain instructions. */
/* { dg-final { scan-assembler-not "pre-label NOPs" } } */
/* { dg-final { scan-assembler "^\[^.\].*:\n.*post-label.*(2 halfwords).*\n\(\(.L.*:\n\)\|\(\[\[:space:\]\]*.cfi_.*\n\)\)*\[\[:space:\]\]*nop\t0" } } */
/* { dg-final { scan-assembler-not "nopr\t%r0" } } */
/* { dg-final { scan-assembler-times "nop\t0" 1 } } */
/* { dg-final { scan-assembler-not "brcl\t0, 0" } } */
/* { dg-final { scan-assembler-not "alignment for hotpatch" } } */