aboutsummaryrefslogtreecommitdiff
path: root/lib/std/Target/mips.zig
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std/Target/mips.zig')
-rw-r--r--lib/std/Target/mips.zig32
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/std/Target/mips.zig b/lib/std/Target/mips.zig
index bd507f290d..fb6bb1abab 100644
--- a/lib/std/Target/mips.zig
+++ b/lib/std/Target/mips.zig
@@ -17,6 +17,8 @@ pub const Feature = enum {
fpxx,
ginv,
gp64,
+ i6400,
+ i6500,
long_calls,
micromips,
mips1,
@@ -137,6 +139,22 @@ pub const all_features = blk: {
.description = "General Purpose Registers are 64-bit wide",
.dependencies = featureSet(&[_]Feature{}),
};
+ result[@intFromEnum(Feature.i6400)] = .{
+ .llvm_name = "i6400",
+ .description = "MIPS I6400 Processor",
+ .dependencies = featureSet(&[_]Feature{
+ .mips64r6,
+ .msa,
+ }),
+ };
+ result[@intFromEnum(Feature.i6500)] = .{
+ .llvm_name = "i6500",
+ .description = "MIPS I6500 Processor",
+ .dependencies = featureSet(&[_]Feature{
+ .mips64r6,
+ .msa,
+ }),
+ };
result[@intFromEnum(Feature.long_calls)] = .{
.llvm_name = "long-calls",
.description = "Disable use of the jal instruction",
@@ -408,6 +426,20 @@ pub const cpu = struct {
.mips32,
}),
};
+ pub const @"i6400": CpuModel = .{
+ .name = "i6400",
+ .llvm_name = "i6400",
+ .features = featureSet(&[_]Feature{
+ .i6400,
+ }),
+ };
+ pub const @"i6500": CpuModel = .{
+ .name = "i6500",
+ .llvm_name = "i6500",
+ .features = featureSet(&[_]Feature{
+ .i6500,
+ }),
+ };
pub const mips1: CpuModel = .{
.name = "mips1",
.llvm_name = "mips1",