Skip to content

Commit

Permalink
LLVM14 dialect wrappers (had to be generated using Julia 1.9)
Browse files Browse the repository at this point in the history
  • Loading branch information
jumerckx committed Jun 6, 2024
1 parent e150d57 commit e622bf1
Show file tree
Hide file tree
Showing 29 changed files with 6,974 additions and 13,615 deletions.
316 changes: 98 additions & 218 deletions src/Dialects/14/AMX.jl

Large diffs are not rendered by default.

288 changes: 99 additions & 189 deletions src/Dialects/14/Affine.jl

Large diffs are not rendered by default.

819 changes: 298 additions & 521 deletions src/Dialects/14/Arithmetic.jl

Large diffs are not rendered by default.

59 changes: 23 additions & 36 deletions src/Dialects/14/ArmNeon.jl
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
module arm_neon

import ...IR:
IR, NamedAttribute, Value, Location, Block, Region, Attribute, context, IndexType
import ...IR: IR, NamedAttribute, Value, Location, Block, Region, Attribute, context, IndexType
import ..Dialects: namedattribute, operandsegmentsizes
import ...API


"""
`intr_smull`
Expand All @@ -17,21 +16,17 @@ Source:
https://developer.arm.com/architectures/instruction-sets/simd-isas/neon/intrinsics
"""
function intr_smull(a::Value, b::Value; res::IR.Type, location=Location())
results = IR.Type[res,]
operands = Value[a, b]
results = IR.Type[res, ]
operands = Value[a, b, ]
owned_regions = Region[]
successors = Block[]
attributes = NamedAttribute[]

return IR.create_operation(
"arm_neon.intr.smull",
location;
operands,
owned_regions,
successors,
attributes,

IR.create_operation(
"arm_neon.intr.smull", location;
operands, owned_regions, successors, attributes,
results=results,
result_inference=false,
result_inference=false
)
end

Expand All @@ -48,21 +43,17 @@ res[i] := a[i] + dot_product(b[i, ...], c[i, ...])
```
"""
function _2d_sdot(a::Value, b::Value, c::Value; res::IR.Type, location=Location())
results = IR.Type[res,]
operands = Value[a, b, c]
results = IR.Type[res, ]
operands = Value[a, b, c, ]
owned_regions = Region[]
successors = Block[]
attributes = NamedAttribute[]

return IR.create_operation(
"arm_neon.2d.sdot",
location;
operands,
owned_regions,
successors,
attributes,

IR.create_operation(
"arm_neon.2d.sdot", location;
operands, owned_regions, successors, attributes,
results=results,
result_inference=false,
result_inference=false
)
end

Expand All @@ -77,21 +68,17 @@ Source:
https://developer.arm.com/architectures/instruction-sets/simd-isas/neon/intrinsics
"""
function intr_sdot(a::Value, b::Value, c::Value; res::IR.Type, location=Location())
results = IR.Type[res,]
operands = Value[a, b, c]
results = IR.Type[res, ]
operands = Value[a, b, c, ]
owned_regions = Region[]
successors = Block[]
attributes = NamedAttribute[]

return IR.create_operation(
"arm_neon.intr.sdot",
location;
operands,
owned_regions,
successors,
attributes,

IR.create_operation(
"arm_neon.intr.sdot", location;
operands, owned_regions, successors, attributes,
results=results,
result_inference=false,
result_inference=false
)
end

Expand Down
Loading

0 comments on commit e622bf1

Please sign in to comment.