Revision history for CompilerOptgen
No Differences
Additions:
##**gas**## for x86 GAS assembly, ##**gcc**## for GNU C, ##**gas64**## for x86_64 GAS assembly, ##**clang**## for clang, ##**llvm**## for LLVM IR.
{{fbdoc item="subsect" value="-gen clang"}}
The compiler will emit C code to a ##.c## file which will then be compiled to an .asm file using '##clang##' as a high level assembler.
{{fbdoc item="ver"}}
- ##-gen clang## added in fbc 1.20.0
{{fbdoc item="subsect" value="-gen clang"}}
The compiler will emit C code to a ##.c## file which will then be compiled to an .asm file using '##clang##' as a high level assembler.
{{fbdoc item="ver"}}
- ##-gen clang## added in fbc 1.20.0
Deletions:
Additions:
The ##-gen## compiler option sets the backend code emitter and assembler. If this option is not specified, the default is ##-gen gas## for x86 and ##-gen gcc## for x86_64.
Deletions:
Deletions:
- Since fbc 1.00.0
Additions:
{{fbdoc item="ver"}}
- Since fbc 1.00.0
- Since fbc 1.00.0
Additions:
##**gas**## for x86 GAS assembly, ##**gcc**## for GNU C, ##**gas64**## for x86_64 GAS assembly, ##**llvm**## for LLVM IR.
{{fbdoc item="subsect" value="-gen gas64"}}
The compiler will emit GAS assembler code (64-bit) to a ##.asm## file which will then be compiled to an object file using '##as##'.
{{fbdoc item="subsect" value="-gen gas64"}}
The compiler will emit GAS assembler code (64-bit) to a ##.asm## file which will then be compiled to an object file using '##as##'.
Deletions:
Additions:
Additions:
The compiler will emit C code to a ##.c## file which will then be compiled to an .asm file using '##gcc##' as a high level assembler. The C backend is intended to make FB portable to more platforms than just x86. This requires gcc to be installed so that fbc can invoke it to compile the C code, also see [[CompilerInstallingGcc|Installing gcc for -gen gcc]].
- [[CompilerTools|Tools used by fbc]]
- [[CompilerCmdLine|Using the Command Line]]
- [[CompilerTools|Tools used by fbc]]
- [[CompilerCmdLine|Using the Command Line]]
Deletions:
- [[CompilerTools Tools used by fbc]]
- [[CompilerCmdLine Using the Command Line]]
Additions:
The compiler will emit C code to a ##.c## file which will then be compiled to an .asm file using '##gcc##' as a high level assembler. The C backend is intended to make FB portable to more platforms than just x86. This requires gcc to be installed so that fbc can invoke it to compile the C code, also see [[CompilerInstallingGcc Installing gcc for -gen gcc]].
Deletions:
Additions:
##**gas**## for x86 GAS assembly, ##**gcc**## for GNU C, ##**llvm**## for LLVM IR.
Deletions:
Additions:
The compiler will emit GAS assembler code to a ##.asm## file which will then be compiled to an object file using '##as##'. This is fbc's original x86 code generation backend.
The compiler will emit C code to a ##.c## file which will then be compiled to an .asm file using '##gcc##' as a high level assembler. The C backend is intended to make FB portable to more platforms than just x86.
{{fbdoc item="subsect" value="-gen llvm"}}
The compiler will emit LLVM IR code to a ##.ll## file which will then be compiled to an .asm file using '##llc##'. The LLVM backend is still a work in progress. It is intended for the same purpose as the C backend, and could theoretically solve some of the C backend's problems, such as debugging meta data support.
Deletions:
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using '##gcc##' as a high level assembler. **Note**: the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make it possible to port ""FreeBASIC""-compiled programs (and ##fbc## itself) to other platforms.
Additions:
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using '##gcc##' as a high level assembler. **Note**: the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make it possible to port ""FreeBASIC""-compiled programs (and ##fbc## itself) to other platforms.
Deletions:
Additions:
The compiler will emit GAS assembler code to a ##.asm## file which will then be compiled to an object file using '##as##'.
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using '##gcc##' as a high level assembler. **Note:** the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make it possible to port ""FreeBASIC""-compiled programs (and ##fbc## itself) to other platforms.
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using '##gcc##' as a high level assembler. **Note:** the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make it possible to port ""FreeBASIC""-compiled programs (and ##fbc## itself) to other platforms.
Deletions:
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using 'gcc' as a high level assembler. **Note:** the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make porting FreeBASIC compiled programs (and ##fbc## itself) to other platforms.
Additions:
The compiler will emit C code to a ##.c## file which will then be compiled to an object file using 'gcc' as a high level assembler. **Note:** the C emitter is a work in progress, incomplete, and certainly not bug free. However, the goal of the C emitter (when complete) will be to make porting FreeBASIC compiled programs (and ##fbc## itself) to other platforms.