blob: 50a97de69b84ec43498b775e6087a46b87fbdd2c [file] [log] [blame]
/* PR target/94743 */
/* { dg-do compile } */
/* Thumb1 mode not supported for interrupt routines. */
/* { dg-require-effective-target arm32 } */
/* { dg-options "-mgeneral-regs-only" } */
/* Check that we do not emit a warning when compiling an IRQ handler
with -mgeneral-regs-only. */
typedef struct {
/* Do not use floating-point types, which are not compatible with
-mgeneral-regs-only under -mfloat-abi=hard */
int fpdata[32];
} dummy_t;
dummy_t global_d;
dummy_t global_d1;
/* This function does not clobber VFP registers. */
__attribute__ ((interrupt("IRQ"))) void IRQ_HDLR_Test(void)
{
global_d.fpdata[3] += global_d.fpdata[3] * global_d1.fpdata[3];
}