End-to-end tests were disabled due to a bug in ModelToHeader that caused
the decompiled C header with the types not to be recompilable in some
cases.
However, the commit that disabled the tests was too aggressive, because
the only part that needed to be disabled was the part of the tests that
actually recompiled the C code.
This commit re-enables the end-to-end tests except for the recompilation
part, that will be re-enabled after the bug in ModelToHeader is fixed.
With the new backend design we should never need to emit C code for
a llvm::GlobalVariable.
The new backend prints a warning in C if that happens.
This commit adds a check in our recompilation tests to ensure that never
happens.