ladystarbreeze / mina-isa Goto Github PK
View Code? Open in Web Editor NEWThe MINA Instruction Set Architecture.
The MINA Instruction Set Architecture.
Writing LLVM and/or GCC backends enables people to write code targeting MINA in languages other than assembly.
Generally a helpful instruction to have as, unlike a branch, it doesn't have any penalties or prediction requirements as it doesn't modify the instruction pointer. Good for producing branch-free output, and directly maps to a common compiler operation (LLVM has a SELECT instruction in it's IR that exactly matches ISEL/FSEL semantics, GCC has conditional execution in it's RTL)
If/when vectors are introduced, a vector version of this should ideally use a bitmask and select on a per-value basis.
Integer Select
ISEL rD, rS1, rS2
If T == 1, rS1 is moved to rD, else rS2 is moved to rD.
Float Select
FSEL fD, fS1, fS2
if T == 1, fS1 is moved to fD, else fS2 is moved to rD.
The current MINA32 ISA overview is a pretty basic Markdown file. Adding a proper document in LaTeX and/or enhancing the current manual would make it much less painful to look at.
There is still no reference interpreter for the MINA32 base integer ISA. Adding one will be helpful for people interested in running MINA code on software.
There is no README yet. Adding one would give people a brief idea of what MINA is.
Are there any architectural guarantees regarding self-modifying code or is this implementation defined? (e.g. separate i-cache/d-cache, length of pipieline / guaranteed pipeline flushing, icache flush instructions, &c.)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.