Comments (4)
This looks like an extract on type level (although I am unable to match up the code with the thorin code without further investigation).
However, the simple solution seems to be to lower everything correctly (move mems, reshape types, ...).
This is all done by the closure plugin (and the closure conversion phase for higher order functions):
./build/bin/thorin -p clos [file] -o - --output-ll T.ll
Or adding
.plugin clos;
from thorin2.
Adding
.plugin clos;
produces valid llvm code, however, the generated llvm-code doesn't define the function map_reduce_test
. Is there an easy fix for that or should I open another issue?
from thorin2.
Adding
.plugin clos;
produces valid llvm code, however, the generated llvm-code doesn't define the functionmap_reduce_test
. Is there an easy fix for that or should I open another issue?
The function is named map_reduce_test _reshape.
This is a relict from when reshape renamed every function.
I changed it to not rename externals. But somehow I forgot to merge the change into master.
Solutions:
- expect _reshape
- manually rename in the ll file
- wait until I merge the change to not rename externals
Note: There are a few other things that appear weird (the three higher-order Pis without usage).
But if they do not make the compiler crash/produce incorrect code, they can be ignored for now.
from thorin2.
Alright, thanks a lot!
from thorin2.
Related Issues (20)
- Code generation for floating point casts HOT 2
- Scheduler returns wrong position dynamically
- Automatic Dialect Loading HOT 4
- Shadowing for variables HOT 1
- Association Dialect HOT 4
- Application Error with matching domain HOT 7
- Grammar Improvements HOT 1
- Add mem problem with dependent types
- Add mem adds too many mems HOT 2
- Backend Preparation: Nested Extract Splitting
- Float Infer Unification Issue
- Reshape phase messes up types
- cps2ds - wrong body type HOT 4
- one button to reproduce them all
- Parametrized packs fail for arity <= 1
- %affine.For breaks without scalerize pass HOT 2
- Invalid intermediate code HOT 3
- `%core.wrap.sub nuw (a, 1:(.Idx n))` incorrectly normalizes to `%core.wrap.add nuw (a, n - 1)`
- cps2ds sometimes introduces ownerless Vars HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from thorin2.