mirror of https://github.com/aamine/cbc
29 lines
732 B
Java
29 lines
732 B
Java
package net.loveruby.cflat.sysdep;
|
|
import net.loveruby.cflat.utils.ErrorHandler;
|
|
import net.loveruby.cflat.type.TypeTable;
|
|
import net.loveruby.cflat.asm.Type;
|
|
|
|
public class X86Linux implements Platform {
|
|
public TypeTable typeTable() {
|
|
return TypeTable.ilp32();
|
|
}
|
|
|
|
public CodeGenerator codeGenerator(
|
|
CodeGeneratorOptions opts, ErrorHandler h) {
|
|
return new net.loveruby.cflat.sysdep.x86.CodeGenerator(
|
|
opts, naturalType(), h);
|
|
}
|
|
|
|
private Type naturalType() {
|
|
return Type.INT32;
|
|
}
|
|
|
|
public Assembler assembler(ErrorHandler h) {
|
|
return new GNUAssembler(h);
|
|
}
|
|
|
|
public Linker linker(ErrorHandler h) {
|
|
return new GNULinker(h);
|
|
}
|
|
}
|