1include "llvm/Option/OptParser.td"
2
3// link.exe accepts options starting with either a dash or a slash.
4
5// Flag that takes no arguments.
6class F<string name> : Flag<["/", "-", "/?", "-?"], name>;
7
8// Flag that takes one argument after ":".
9class P<string name> :
10      Joined<["/", "-", "/?", "-?"], name#":">;
11
12// Boolean flag which can be suffixed by ":no". Using it unsuffixed turns the
13// flag on and using it suffixed by ":no" turns it off.
14multiclass B_priv<string name> {
15  def "" : F<name>;
16  def _no : F<name#":no">;
17}
18
19def export  : P<"export">;
20def alternatename : P<"alternatename">;
21def incl : Joined<["/", "-", "/?", "-?"], "include:">;