Windows port: fix mysterious threading crash in creating llvm module and memory
manager. The cause of this is unclear, a mutex lock works around it.
Fix windows crash in FOREACH_PARAM, due to accessing non-existent element
in the vector.
Optimize warning() opcode
Add a max_warnings_per_thread attribute which makes the warning opcode cheaper by skipping all processing after warning has been called a certain number of times (regardless of the warning to be printed).
When this option is 0, the warning opcodes can be optimized away completely resulting in the fastest possible performance.
Fix for freebsd 8.2 compile