Fix LLVM Code generation for float primitives yet again

- Was using the wrong opcodes (Add, Sub, Mul, SDiv) for arithmetic operations
  now uses FAdd, FSub, FMul, FDiv
- Don't attempt to sign extend floats