blob: caf8a8703559ed4a48ba25ca984dcd3ee6d683c8 [file] [log] [blame]
/* Check that on SH2A the 4 byte mov.b displacement insn is generated to
handle larger displacements. If it is generated correctly, there should
be no base address adjustments outside the mov.b insns. */
/* { dg-do compile { target { sh2a } } } */
/* { dg-options "-O1" } */
/* { dg-final { scan-assembler-not "add|sub" } } */
void
testfunc_00 (const char* ap, char* bp)
{
bp[100] = ap[15];
bp[200] = ap[50];
bp[900] = ap[71];
bp[0] = ap[25];
}
void
testfunc_01 (volatile const char* ap, volatile char* bp)
{
bp[100] = ap[15];
bp[200] = ap[50];
bp[900] = ap[71];
bp[0] = ap[25];
}