blob: 04deeb0f8f77d5fba8793d7b27a7821f537ca9b4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
/*
bug-2253.c was a bug in operand handling of operands that are outside the stack-pointer-offset range in code generation for wide division in the stm8 port.
*/
#include <testfwk.h>
/* Reduce array size for ports that can't handle large local variables */
#if !defined(__SDCC_mcs51) && !defined(__SDCC_ds390) && !defined(__SDCC_pic14) && !defined(__SDCC_pic16) && !defined(__SDCC_pdk14) && !defined(__SDCC_pdk15) && !defined(__SDCC_STACK_AUTO)
#define ARRAYSIZE 255
#else
#define ARRAYSIZE 2
#endif
char ad(char *p)
{
p;
}
unsigned int ss(unsigned int c, unsigned int d)
{
char s1[ARRAYSIZE];
ad(s1);
return c / d;
}
void testBug(void)
{
ASSERT(ss(4, 2) == 2);
}
|