mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-02 07:11:49 +00:00
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3120 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
16470ec75b
commit
2c04779ba7
84
test/CFrontend/2002-07-29-Casts.c
Normal file
84
test/CFrontend/2002-07-29-Casts.c
Normal file
@ -0,0 +1,84 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
{
|
||||
char c1;
|
||||
short s1, ssf1, ssd1;
|
||||
uint8_t ubs0;
|
||||
int8_t bs0;
|
||||
unsigned char ubc0, uc2;
|
||||
unsigned short us2, usf1, usd1;
|
||||
int ic3, is3, sif1, sid1;
|
||||
uint uic4, uis4, uif1, uid1;
|
||||
long slf1, sld1;
|
||||
ulong ulf1, uld1;
|
||||
float f1;
|
||||
double d1;
|
||||
|
||||
/* Test integer to integer conversions */
|
||||
|
||||
c1 = (char) (argc >= 2)? atoi(argv[1]) : 0xff64; /* 100 = 'd' */
|
||||
s1 = (short) (argc >= 3)? atoi(argv[2]) : -769; /* 0xf7ff = -769 */
|
||||
|
||||
ubc0 = (unsigned char) c1; /* 100 = 'd' */
|
||||
ubs0 = (uint8_t) s1; /* 0xff = 255 */
|
||||
bs0 = (int8_t) s1; /* 0xff = -1 */
|
||||
|
||||
uc2 = (unsigned char) c1; /* 100 = 'd' */
|
||||
us2 = (unsigned short) s1; /* 0xf7ff = 64767 */
|
||||
|
||||
ic3 = (int) c1; /* 100 = 'd' */
|
||||
is3 = (int) s1; /* 0xfffff7ff = -769 */
|
||||
|
||||
uic4 = (unsigned int) c1; /* 100 = 'd' */
|
||||
uis4 = (unsigned int) s1; /* 0xfffff7ff = 4294966527 */
|
||||
|
||||
printf("ubc0 = '%c'\n", ubc0);
|
||||
printf("ubs0 = %u\n", ubs0);
|
||||
printf("bs0 = %d\n", bs0);
|
||||
printf("c1 = '%c'\n", c1);
|
||||
printf("s1 = %d\n", s1);
|
||||
printf("uc2 = '%c'\n", uc2);
|
||||
printf("us2 = %u\n", us2);
|
||||
printf("ic3 = '%c'\n", ic3);
|
||||
printf("is3 = %d\n", is3);
|
||||
printf("uic4 = '%c'\n", uic4);
|
||||
printf("uis4 = %u\n", uis4);
|
||||
|
||||
/* Test floating-point to integer conversions */
|
||||
f1 = (float) (argc >= 4)? atof(argv[3]) : 1.0;
|
||||
d1 = (argc >= 5)? atof(argv[4]) : 2.0;
|
||||
|
||||
usf1 = (unsigned short) f1;
|
||||
usd1 = (unsigned short) d1;
|
||||
uif1 = (unsigned int) f1;
|
||||
uid1 = (unsigned int) d1;
|
||||
ulf1 = (unsigned long) f1;
|
||||
uld1 = (unsigned long) d1;
|
||||
|
||||
ssf1 = (short) f1;
|
||||
ssd1 = (short) d1;
|
||||
sif1 = (int) f1;
|
||||
sid1 = (int) d1;
|
||||
slf1 = (long) f1;
|
||||
sld1 = (long) d1;
|
||||
|
||||
printf("usf1 = %u\n", usf1);
|
||||
printf("usd1 = %u\n", usd1);
|
||||
printf("uif1 = %u\n", uif1);
|
||||
printf("uid1 = %u\n", uid1);
|
||||
printf("ulf1 = %u\n", ulf1);
|
||||
printf("uld1 = %u\n", uld1);
|
||||
|
||||
printf("ssf1 = %d\n", ssf1);
|
||||
printf("ssd1 = %d\n", ssd1);
|
||||
printf("sif1 = %d\n", sif1);
|
||||
printf("sid1 = %d\n", sid1);
|
||||
printf("slf1 = %d\n", slf1);
|
||||
printf("sld1 = %d\n", sld1);
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user