| ... | @@ -833,7 +833,17 @@ export fn stage2_target_details_get_builtin_str(target_details: ?*const Stage2Ta | ... | @@ -833,7 +833,17 @@ export fn stage2_target_details_get_builtin_str(target_details: ?*const Stage2Ta |
| 833 | return @as([*:0]const u8, null_terminated_empty_string); | 833 | return @as([*:0]const u8, null_terminated_empty_string); |
| 834 | } | 834 | } |
| 835 | | 835 | |
| 836 | const riscv_default_features: []*const std.target.Feature = &[_]*const std.target.Feature { | 836 | const riscv32_default_features: []*const std.target.Feature = &[_]*const std.target.Feature { |
| | 837 | &std.target.riscv.feature_a, |
| | 838 | &std.target.riscv.feature_c, |
| | 839 | &std.target.riscv.feature_d, |
| | 840 | &std.target.riscv.feature_f, |
| | 841 | &std.target.riscv.feature_m, |
| | 842 | &std.target.riscv.feature_relax, |
| | 843 | }; |
| | 844 | |
| | 845 | const riscv64_default_features: []*const std.target.Feature = &[_]*const std.target.Feature { |
| | 846 | &std.target.riscv.feature_bit64, |
| 837 | &std.target.riscv.feature_a, | 847 | &std.target.riscv.feature_a, |
| 838 | &std.target.riscv.feature_c, | 848 | &std.target.riscv.feature_c, |
| 839 | &std.target.riscv.feature_d, | 849 | &std.target.riscv.feature_d, |
| ... | @@ -880,9 +890,14 @@ fn createDefaultTargetDetails(arch: @TagType(std.Target.Arch), os: std.Target.Os | ... | @@ -880,9 +890,14 @@ fn createDefaultTargetDetails(arch: @TagType(std.Target.Arch), os: std.Target.Os |
| 880 | const allocator = std.heap.c_allocator; | 890 | const allocator = std.heap.c_allocator; |
| 881 | | 891 | |
| 882 | return switch (arch) { | 892 | return switch (arch) { |
| 883 | .riscv32, .riscv64 => blk: { | 893 | .riscv32 => blk: { |
| | 894 | const ptr = try allocator.create(Stage2TargetDetails); |
| | 895 | ptr.* = try Stage2TargetDetails.initFeatures(allocator, arch, riscv32_default_features); |
| | 896 | break :blk ptr; |
| | 897 | }, |
| | 898 | .riscv64 => blk: { |
| 884 | const ptr = try allocator.create(Stage2TargetDetails); | 899 | const ptr = try allocator.create(Stage2TargetDetails); |
| 885 | ptr.* = try Stage2TargetDetails.initFeatures(allocator, arch, riscv_default_features); | 900 | ptr.* = try Stage2TargetDetails.initFeatures(allocator, arch, riscv64_default_features); |
| 886 | break :blk ptr; | 901 | break :blk ptr; |
| 887 | }, | 902 | }, |
| 888 | .i386 => blk: { | 903 | .i386 => blk: { |