Skip to content

Latest commit

 

History

History
114 lines (104 loc) · 6.31 KB

readme.md

File metadata and controls

114 lines (104 loc) · 6.31 KB

Asmc Macro Assembler Reference

Asmc Command-Line Reference

Assembles and links one or more assembly-language source files. The command-line options are case sensitive.

ASMC [[options]] filename [[ [[options]] filename]]

options

The options listed in the following table.

Option Meaning
-[0..10][p] Set CPU: 0=8086 (default), 1=80186, 2=80286, 3=80386, 4=80486, 5=Pentium,6=PPro,7=P2,8=P3,9=P4,10=x86-64. [p] allows privileged instructions.
-arch:AVX[[2][512]] Specifies the architecture for code generation on x64.
-assert Generate .assert(code).
-autostack Calculate required stack space for arguments.
-bin Generate plain binary file.
-Cs Push user registers before stack-frame is created in a proc.
-coff Generate COFF format object file.
-Cp Preserves case of all user identifiers.
-Cu Maps all identifiers to upper case (default).
-cui Link switch used with -pe -- subsystem:console (default).
-Cx Preserves case in public and extern symbols.
-Dsymbol[[=value]] Defines a text macro with the given name. If value is missing, it is blank. Multiple tokens separated by spaces must be enclosed in quotation marks.
-dotname Allows names of identifiers to begin with a period.
-enumber Set error limit number.
-elf Generate 32-bit ELF object file. Defines _LINUX(1).
-elf64 Generate 64-bit ELF object file. Defines _LINUX(2) and _WIN64.
-endbr Insert ENDBR instruction at function entry.
-EP Generates a preprocessed source listing (sent to STDOUT). See /Sf.
-eq Don't display error messages.
-Fd[file] Write import definition file.
-Fifile Force file to be included.
-Fl[[filename]] Generates an assembled code listing. See /Sf.
-Fofilename Names an object file. In case of wildcard '*' may be used for current file.
-fpc Disallow floating-point instructions.
-FPi Generates emulator fix-ups for floating-point arithmetic (mixed language only).
-FPi87 80x87 instructions (default).
-fpic, -fno-pic Enables or disables the generation of position-independent code for ELF64. Defualt is -fno-pic.
-fpn Set FPU: 0=8087, 2=80287, 3=80387.
-frame Auto generate unwind information.
-Fwfilename Set errors file name.
-Gc Specifies use of FORTRAN- or Pascal-style function calling and naming conventions. Same as OPTION LANGUAGE:PASCAL.
-Gd Specifies use of C-style function calling and naming conventions. Same as OPTION LANGUAGE:C.
-Gs Specifies use of SYSCALL (System V)-style function calling and naming conventions. Same as OPTION LANGUAGE:SYSCALL.
-Ge Emit a conditional _chkstk() inside the prologue.
-gui Link switch used with -pe -- subsystem:windows.
-Gv Specifies use of VECTORCALL-style function calling and naming conventions.
-Gz Specifies use of STDCALL-style function calling and naming conventions. Defines _STDCALL_SUPPORTED. Same as OPTION LANGUAGE:STDCALL.
-homeparams Forces parameters passed in registers to be written to their locations on the stack upon function entry.
-Ipathname Sets path for include file.
-logo Print logo string and exit.
-m[tscmlhf] Set memory model.
-mz Generate DOS MZ binary file.
-ncname Set class name of code segment.
-ndname Set name of data segment.
-nmname Set name of module.
-ntname Set name of text segment.
-nolib Ignore INCLUDELIB directive.
-nologo Suppresses messages for successful assembly.
-omf Generates object module file format (OMF) type of object module.
-pe Generate PE binary file, 32/64-bit.
-q Suppress copyright message.
-r Recurse subdirectories with use of wild args.
-Sa Turns on listing of all available information.
-safeseh Marks the object as either containing no exception handlers or containing exception handlers that are all declared with SAFESEH.
-Sf Adds first-pass listing to listing file.
-Sg Turns on listing of assembly-generated code.
-Sn Turns off symbol table when producing a listing.
-Sp[n] Set segment alignment.
-stackalign Align stack variables to 16-byte.
-Sx Turns on false conditionals in listing.
-w Same as /W0.
-Wlevel Sets the warning level, where level = 0, 1, 2, or 3.
-win64 Generate 64-bit COFF object. Defines _WIN64.
-ws[CodePage] Store quoted strings as Unicode. Defines _UNICODE.
-WX Returns an error code if warnings are generated.
-X Ignore INCLUDE environment path.
-Z7 Add full symbolic debugging information.
-zcw No decoration for C symbols.
-Zd Generates line-number information in object file.
-Zf Make all symbols public.
-zf[01] Set FASTCALL type: MS/OW.
-Zg Generate code to match Masm.
-Zi Add symbolic debugging information.
-zlc No OMF records of data in code.
-zld No OMF records of far call.
-zlf Suppress items in COFF: No file entry.
-zlp Suppress items in COFF: No static procs.
-zls Suppress items in COFF: No section aux entry.
-Zm Enable MASM 5.10 compatibility.
-Zne Disable non Masm extensions.
-Znk Disable non Masm keywords.
-Zp[[alignment]] Packs structures on the specified byte boundary.
-Zs Perform syntax check only.
-zt[012] Set STDCALL decoration.
-Zv8 Enable Masm v8+ PROC visibility.
-zze No export symbol decoration.
-zzs Store name of start address.
filename The name of the file.

Environment Variables

INCLUDE Specifies search path for include files.
ASMC Specifies default command-line options.
TEMP Specifies path for temporary files.

See Also

ASMC Error Messages | Predefined macros