# Change log for the `llvm-extra` package
## 0.10
* `Memory`: Attention!
Memory layout is no longer compatible with `Foreign.Storable`.
E.g. `Bool` now takes 1 byte space like LLVM does,
but no longer 4 byte like `Foreign.Storable`.
A `Foreign.Storable`-compliant layout
is provided by `LLVM.Extra.Storable` now.
* `Marshal`: Now based on `Memory.load` and `Memory.store`.
Does not need `Proxy` anymore.
* `Class` -> `Tuple`,
`Tuple.Vector` class added.
Pro: `valueOf vector` is no longer restricted to `IsPrimitive` elements.
Cons: type inference works less well than before
## 0.9
* `Extension`: Move to new package `llvm-extension`.
We now implement advanced instructions using generic LLVM intrinsics.
## 0.8.1
* `FastMath`: support for simplified arithmetic primitives
under the assumption of the absence of corner cases.