I think, you found inappropriate topic to ask such question.
AFAIK, compiler.exe is a tool intended for batch compiling all sp files located next to him. Just double-click it, and you found all smx in "compiled" subfolder.
spcomp.exe is a tool responsible for compiling process with ability to accept additional options via command line:
Spoiler
Code:
D:\dev\SourceMod\1.10-6454-windows\addons\sourcemod\scripting>spcomp
SourcePawn Compiler 1.10.0.6454
Copyright (c) 1997-2006 ITB CompuPhase
Copyright (c) 2004-2018 AlliedModders LLC
Usage: spcomp <filename> [filename...] [options]
Options:
-a output assembler code
-Dpath active directory path
-e<name> set name of error file (quiet compile)
-H<hwnd> window handle to send a notification message on finish
-h show included file paths
-i<name> path for include files
-l create list file (preprocess only)
-o<name> set base name of (P-code) output file
-O<num> optimization level (default=-O2)
0 no optimization
2 full optimizations
-p<name> set name of "prefix" file
-t<num> TAB indent size (in character positions, default=8)
-v<num> verbosity level; 0=quiet, 1=normal, 2=verbose (default=1)
-w<num> disable a specific warning by its number
-z<num> compression level, default=9 (0=none, 1=worst, 9=best)
-E treat warnings as errors
-\ use '\' for escape characters
-^ use '^' for escape characters
-;<+/-> require a semicolon to end each statement (default=-)
sym=val define constant "sym" with value "val"
sym= define constant "sym" with value 0
Options may start with a dash or a slash; the options "-d0" and "/d0" are
equivalent.
Options with a value may optionally separate the value from the option letter
with a colon (":"), an equal sign ("="), or a space (" "). That is, the options "-d0", "-d=0",
"-d:0", and "-d 0" are all equivalent. "-;" is an exception to this and cannot use a space.
__________________