[x86_64] Unimplemented Backend Features
This issue tracks Mu specification coverage in x86_64 backend.
Types:
-
int<n>
: -
n = 1 (some arithmetic) -
* n <= 64 and n != 8, 16, 32, or 64 -
* n = 128, floating point conversions -
n > 64 and n != 128 -
struct
SSA variables -
hybrid
SSA variables -
array
SSA variables -
tagref64
-
threadref
-
`stackref`` -
framecursorref
-
irbuilderref
-
vector<t n>
Instruction Clauses:
-
keep Alive Clauses -
Exception clauses -
CALL -
binop (divison by zero) -
NEW/NEYHYBRID (allocation failure) -
LOAD/STORE/CMPXCHG (null referenced) -
CCALL (implementation defined)
Instructions:
-
TAILCALL
-
For unimplemented types: -
EXTRACTVALUE
/INSERTVALUE
-
EXTRACTELEMENT
/INSERTELEMENT
-
SHUFFLEVECTOR
-
-
Memory -
ALLOCA
/ALLOCAHYBRID
-
* CMPXCHG
-
* FENCE
-
ATOMICRMW
-
Traps/watchpoints -
TRAP
-
WATCHPOINT
-
WPBRANCH
-
Thread/stack instructions -
NEWTHREAD
-
SWAPTSTACK
Common Instructions
-
thread and stack things: -
current_stack -
thread_exit -
new_stack -
tr64.* -
futex.* -
kill_dependency -
native.* (except nativ.pin and nativ.unpnin) -
meta.* -
irbuilder.*