mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 03:51:18 +00:00
23 lines
505 B
C
23 lines
505 B
C
module test;
|
|
|
|
fn void tester()
|
|
{
|
|
int *x;
|
|
short y = (short)((uptr)(x));
|
|
uptr z = (uptr)((short)((uptr)(x)));
|
|
}
|
|
|
|
/* #expect: test.ll
|
|
|
|
%x = alloca ptr, align 8
|
|
%y = alloca i16, align 2
|
|
%z = alloca i64, align 8
|
|
store ptr null, ptr %x, align 8
|
|
%0 = load ptr, ptr %x, align 8
|
|
%ptrxi = ptrtoint ptr %0 to i16
|
|
store i16 %ptrxi, ptr %y, align 2
|
|
%1 = load ptr, ptr %x, align 8
|
|
%ptrxi1 = ptrtoint ptr %1 to i16
|
|
%siuiext = sext i16 %ptrxi1 to i64
|
|
store i64 %siuiext, ptr %z, align 8
|