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:
http://llvm.org/docs/FAQ.html#can-i-compile-c-or-c-code-to-platform-independent-llvm-bitcode

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