mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 20:11:17 +00:00
Add macro arguments &foo $foo #foo.
C ABI compatibility aarch64, win64, x86, x64 Added debug info
This commit is contained in:
committed by
Christoffer Lerno
parent
4222f2731e
commit
3c15e495dd
@@ -44,40 +44,40 @@ func void testSimple()
|
||||
@ExtraSimple = linkonce_odr constant i8 1
|
||||
|
||||
entry:
|
||||
%a = alloca %pointer_access.ExtraSimple
|
||||
%literal = alloca %pointer_access.ExtraSimple
|
||||
%0 = bitcast %pointer_access.ExtraSimple* %literal to i8*
|
||||
call void @llvm.memset.p0i8.i64(i8* align 8 %0, i8 0, i64 72, i1 false)
|
||||
%c = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %literal, i32 0, i32 2
|
||||
%double = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c, i32 0, i32 4
|
||||
store double 3.300000e+00, double* %double
|
||||
%1 = load %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %literal
|
||||
store %pointer_access.ExtraSimple %1, %pointer_access.ExtraSimple* %a
|
||||
%c1 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%j = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c1, i32 0, i32 4
|
||||
store double 3.400000e+00, double* %j
|
||||
%a2 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 0
|
||||
%2 = load i32, i32* %a2
|
||||
%c3 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%e = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c3, i32 0, i32 0
|
||||
%3 = load double, double* %e
|
||||
%c4 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%f = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c4, i32 0, i32 3
|
||||
%4 = load double, double* %f
|
||||
%c5 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%j6 = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c5, i32 0, i32 4
|
||||
%5 = load double, double* %j6
|
||||
%g = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 5
|
||||
%6 = load i32, i32* %g
|
||||
%anon = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 4
|
||||
%o0 = bitcast %pointer_access.anon.0* %anon to double*
|
||||
%7 = load double, double* %o0
|
||||
%anon7 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 3
|
||||
%r = getelementptr inbounds %pointer_access.anon, %pointer_access.anon* %anon7, i32 0, i32 0
|
||||
%8 = load i32, i32* %r
|
||||
%anon8 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 3
|
||||
%s = getelementptr inbounds %pointer_access.anon, %pointer_access.anon* %anon8, i32 0, i32 1
|
||||
%9 = load i32, i32* %s
|
||||
call void (i8*, ...) @printf(i8* getelementptr inbounds ([71 x i8], [71 x i8]* @0, i32 0, i32 0), i32 %2, double %3, double %4, double %5, i32 %6, double %7, i32 %8, i32 %9)
|
||||
ret void
|
||||
}
|
||||
%a = alloca %pointer_access.ExtraSimple, align 8
|
||||
%literal = alloca %pointer_access.ExtraSimple, align 8
|
||||
%0 = bitcast %pointer_access.ExtraSimple* %literal to i8*
|
||||
call void @llvm.memset.p0i8.i64(i8* align 8 %0, i8 0, i64 72, i1 false)
|
||||
%c = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %literal, i32 0, i32 2
|
||||
%double = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c, i32 0, i32 4
|
||||
store double 3.300000e+00, double* %double
|
||||
%1 = bitcast %pointer_access.ExtraSimple* %a to i8*
|
||||
%2 = bitcast %pointer_access.ExtraSimple* %literal to i8*
|
||||
call void @llvm.memcpy.p0i8.p0i8.i32(i8* align 8 %1, i8* align 8 %2, i32 72, i1 false)
|
||||
%c1 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%j = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c1, i32 0, i32 4
|
||||
store double 3.400000e+00, double* %j, align 8
|
||||
%a2 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 0
|
||||
%3 = load i32, i32* %a2, align 4
|
||||
%c3 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%e = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c3, i32 0, i32 0
|
||||
%4 = load double, double* %e, align 8
|
||||
%c4 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%f = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c4, i32 0, i32 3
|
||||
%5 = load double, double* %f, align 8
|
||||
%c5 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 2
|
||||
%j6 = getelementptr inbounds %pointer_access.c, %pointer_access.c* %c5, i32 0, i32 4
|
||||
%6 = load double, double* %j6, align 8
|
||||
%g = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 5
|
||||
%7 = load i32, i32* %g, align 4
|
||||
%anon = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 4
|
||||
%o0 = bitcast %pointer_access.anon.0* %anon to double*
|
||||
%8 = load double, double* %o0, align 8
|
||||
%anon7 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 3
|
||||
%r = getelementptr inbounds %pointer_access.anon, %pointer_access.anon* %anon7, i32 0, i32 0
|
||||
%9 = load i32, i32* %r, align 4
|
||||
%anon8 = getelementptr inbounds %pointer_access.ExtraSimple, %pointer_access.ExtraSimple* %a, i32 0, i32 3
|
||||
%s = getelementptr inbounds %pointer_access.anon, %pointer_access.anon* %anon8, i32 0, i32 1
|
||||
%10 = load i32, i32* %s, align 4
|
||||
call void (i8*, ...) @printf(i8* getelementptr inbounds ([71 x i8], [71 x i8]* @0, i32 0, i32 0), i32 %3, double %4, double %5, double %6, i32 %7, double %8, i32 %9, i32 %10)
|
||||
ret void
|
||||
Reference in New Issue
Block a user