Is LLVM IR cross platform?

For example, can I use llc to compile same LLVM IR file on both linux and windows?

No, most LLVM IR has target-specific constructs, such as sizeof(int) or va_next handling, baked into it:

In special cases it is possible to construct LLVM IR that is portable. This is essentially what projects like PNaCl do.