WIP
fix swap code
add swap macros for int and float
WIP