mirror of
https://github.com/kmc7468/cs420.git
synced 2025-12-15 23:18:48 +00:00
Update ir examples
This commit is contained in:
@@ -37,6 +37,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:len
|
||||
%b0:p1:i32*:p
|
||||
j b2(0:i32, 0:i32)
|
||||
|
||||
block b2:
|
||||
|
||||
@@ -6,6 +6,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:row
|
||||
%b0:p1:i32:col
|
||||
%b0:p2:[5 x i32]*:a
|
||||
j b2(0:i32)
|
||||
|
||||
block b2:
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32*:a
|
||||
ret %b0:p0:i32*
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:x
|
||||
%b0:p1:i32:y
|
||||
%b0:p2:i32:z
|
||||
%b0:i0:u1 = cmp eq %b0:p0:i32 %b0:p1:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i8:i
|
||||
%b0:p1:u8:j
|
||||
%b0:i0:i32 = typecast %b0:p0:i8 to i32
|
||||
%b0:i1:i32 = typecast %b0:p1:u8 to i32
|
||||
%b0:i2:u1 = cmp gt %b0:i0:i32 %b0:i1:i32
|
||||
@@ -25,6 +27,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:i
|
||||
%b0:p1:u32:j
|
||||
%b0:i0:u32 = typecast %b0:p0:i32 to u32
|
||||
%b0:i1:u1 = cmp gt %b0:i0:u32 %b0:p1:u32
|
||||
br %b0:i1:u1, b1(), b2()
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:len
|
||||
%b0:p1:i32*:a
|
||||
j b2(0:i32, 0:i32)
|
||||
|
||||
block b2:
|
||||
@@ -37,6 +39,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:f64:a
|
||||
%b0:i0:f64 = typecast 0:i32 to f64
|
||||
%b0:i1:u1 = cmp lt %b0:p0:f64 %b0:i0:f64
|
||||
br %b0:i1:u1, b1(), b2()
|
||||
@@ -60,6 +63,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:f64:a
|
||||
%b0:p1:f64:b
|
||||
%b0:i0:u1 = cmp gt %b0:p0:f64 %b0:p1:f64
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
@@ -81,6 +86,10 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:f64:a
|
||||
%b0:p1:f64:b
|
||||
%b0:p2:f64:rel_tol
|
||||
%b0:p3:f64:abs_tol
|
||||
%b0:i0:f64 = sub %b0:p0:f64 %b0:p1:f64
|
||||
%b0:i1:f64 = call @custom_abs:[ret:f64 params:(f64)]*(%b0:i0:f64)
|
||||
%b0:i2:f64 = call @custom_abs:[ret:f64 params:(f64)]*(%b0:p0:f64)
|
||||
|
||||
@@ -6,6 +6,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:x
|
||||
%b0:p1:i32:y
|
||||
%b0:p2:i32:z
|
||||
%b0:i0:u1 = cmp eq %b0:p0:i32 %b0:p1:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -7,6 +7,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:i
|
||||
%b0:p1:i32:j
|
||||
%b0:i0:i32 = add %b0:p0:i32 %b0:p1:i32
|
||||
%b0:i1:i32 = load @g:i32*
|
||||
%b0:i2:i32 = add %b0:i0:i32 %b0:i1:i32
|
||||
|
||||
@@ -6,6 +6,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:i
|
||||
%b0:p1:i32:j
|
||||
%b0:p2:i32:k
|
||||
%b0:i0:i32 = add %b0:p0:i32 %b0:p1:i32
|
||||
%b0:i1:i32 = add %b0:i0:i32 %b0:p2:i32
|
||||
ret %b0:i1:i32
|
||||
|
||||
@@ -6,6 +6,8 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:a
|
||||
%b0:p1:i32:b
|
||||
%b0:i0:u1 = cmp gt %b0:p0:i32 0:i32
|
||||
br %b0:i0:u1, b1(), b2()
|
||||
|
||||
|
||||
@@ -6,6 +6,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:x
|
||||
%b0:p1:i32:y
|
||||
%b0:p2:i32:z
|
||||
%b0:i0:u1 = cmp eq %b0:p0:i32 %b0:p1:i32
|
||||
%b0:i1:u1 = negate %b0:i0:u1
|
||||
br %b0:i1:u1, b1(), b2()
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32*:a
|
||||
ret %b0:p0:i32*
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:x
|
||||
%b0:i0:i32 = add %b0:p0:i32 8:i32
|
||||
ret %b0:i0:i32
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:u1 = cmp lt %b0:p0:i32 2:i32
|
||||
br %b0:i0:u1, b1(), b3(%b0:p0:i32)
|
||||
|
||||
|
||||
@@ -8,6 +8,9 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:row
|
||||
%b0:p1:i32:col
|
||||
%b0:p2:[5 x i32]*:arr
|
||||
j b2(0:i32)
|
||||
|
||||
block b2:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
struct Big : { m1:struct Sub, m2:struct Sub, m3:struct Sub }
|
||||
struct Sub : { m1:i64, m2:i64, m3:i64, m4:i64 }
|
||||
struct Big : { m1:struct Sub, m2:struct Sub, m3:struct Sub }
|
||||
|
||||
fun struct Big @foo (struct Big) {
|
||||
init:
|
||||
@@ -8,6 +8,7 @@ init:
|
||||
%l0:struct Big:r
|
||||
|
||||
block b0:
|
||||
%b0:p0:struct Big:p1
|
||||
%b0:i0:unit = store %b0:p0:struct Big %l0:struct Big*
|
||||
%b0:i1:struct Sub* = getelementptr %l0:struct Big* offset 0:i64
|
||||
%b0:i2:i64* = getelementptr %b0:i1:struct Sub* offset 0:i64
|
||||
|
||||
@@ -6,6 +6,7 @@ init:
|
||||
|
||||
|
||||
block b0:
|
||||
%b0:p0:i32:n
|
||||
%b0:i0:i32 = add %b0:p0:i32 %b0:p0:i32
|
||||
%b0:i1:u1 = cmp ne %b0:i0:i32 0:i32
|
||||
br %b0:i1:u1, b2(), b3()
|
||||
|
||||
Reference in New Issue
Block a user