1 X86-64 Assembler The minimum required OpenVMS version for this kit is OpenVMS V9.2-2. PLEASE NOTE: This release of X86ASM added the feature to prefix each compiler message with: %facility-severity-ident followed by the actual message text. Due to an oversight, X86ASM (SYS$SYSTEM:LLVM-MC.EXE) incorrectly reports itself as CXX instead of LLVMMC. The message is still correct and the generated code is still the same as before. It is just a cosmetic mistake. We will correct this in the next release. This kit includes the LLVM tool named "llvm-mc". This provides a native x86-64 assembler that is highly compatible with the gnu "gas" assembler. It needs to be activated as a "foreign command". Use the following command to create the foreign command: $ llvmmc :== $sys$system:llvm-mc The compiler version number is: $ llvmmc --version LLVM (http://llvm.org/): VSI version V10.1-3 LLVM version 10.0.1 Optimized build. Build date: 09-12-2025 Target: x86_64-OpenVMS A sample command is: $ llvmmc --filetype=obj -o=objectfilename.obj sourcefilename.s Some useful options: --help Display available options (help-hidden for more). -o Use as the output filename. See the summary above for more details. --filetype=[asm,null,obj] Sets the output filetype. Setting this flag to asm will make the tool output text assembly. Setting this flag to obj will make the tool output an object file. Setting it to null causes no output to be created and can be used for timing purposes. The default value is asm. --assemble Assemble assembly file (default), and print the result to assembly. This is useful to design and test instruction parsers, and can be a useful tool when combined with other llvm-mc flags. For example, this option may be useful to transcode assembly from different dialects, e.g. on Intel where you can use -output-asm-variant=1 to translate from AT&T to Intel assembly syntax. It can also be combined with show-encoding to understand how instructions are encoded. --disassemble Parse a series of hex bytes, and print the result out as assembly syntax. 1.1 Documentation Documentation for the assembler can be found at https://llvm.org/docs/CommandGuide/llvm-mc.html