authorgravatar for me@tadeo.caTadeo Kondrak <me@tadeo.ca> 2020-10-06 22:29:29-06:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-10-07 04:31:20-04:00
log0a6863a267d88e73ec62aca2c157654020682b00
tree282697ef070d592623474502e02696c9b7d4011f
parentae161863db544e2db20ba7705bf0ada7d3ce5c94

Remove .Cold calling convention.

This isn't a stable, defined calling convention, so it shouldn't be grouped in with the others. Closes https://github.com/ziglang/zig/issues/6556

5 files changed, 12 insertions(+), 26 deletions(-)

lib/std/builtin.zig-1
......@@ -151,7 +151,6 @@ pub const Mode = enum {
151151pub const CallingConvention = enum {
152152 Unspecified,
153153 C,
154 Cold,
155154 Naked,
156155 Async,
157156 Interrupt,
src/stage1/all_types.hpp-1
......@@ -72,7 +72,6 @@ enum PtrLen {
7272enum CallingConvention {
7373 CallingConventionUnspecified,
7474 CallingConventionC,
75 CallingConventionCold,
7675 CallingConventionNaked,
7776 CallingConventionAsync,
7877 CallingConventionInterrupt,
src/stage1/analyze.cpp-3
......@@ -949,7 +949,6 @@ const char *calling_convention_name(CallingConvention cc) {
949949 switch (cc) {
950950 case CallingConventionUnspecified: return "Unspecified";
951951 case CallingConventionC: return "C";
952 case CallingConventionCold: return "Cold";
953952 case CallingConventionNaked: return "Naked";
954953 case CallingConventionAsync: return "Async";
955954 case CallingConventionInterrupt: return "Interrupt";
......@@ -971,7 +970,6 @@ bool calling_convention_allows_zig_types(CallingConvention cc) {
971970 case CallingConventionAsync:
972971 return true;
973972 case CallingConventionC:
974 case CallingConventionCold:
975973 case CallingConventionNaked:
976974 case CallingConventionInterrupt:
977975 case CallingConventionSignal:
......@@ -3603,7 +3601,6 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) {
36033601 tld_fn->base.resolution = TldResolutionInvalid;
36043602 return;
36053603 case CallingConventionC:
3606 case CallingConventionCold:
36073604 case CallingConventionNaked:
36083605 case CallingConventionInterrupt:
36093606 case CallingConventionSignal:
src/stage1/codegen.cpp+12-20
......@@ -160,12 +160,6 @@ static ZigLLVM_CallingConv get_llvm_cc(CodeGen *g, CallingConvention cc) {
160160 return ZigLLVM_Fast;
161161 case CallingConventionC:
162162 return ZigLLVM_C;
163 case CallingConventionCold:
164 if ((g->zig_target->arch == ZigLLVM_x86 ||
165 g->zig_target->arch == ZigLLVM_x86_64) &&
166 g->zig_target->os != OsWindows)
167 return ZigLLVM_Cold;
168 return ZigLLVM_C;
169163 case CallingConventionNaked:
170164 zig_unreachable();
171165 case CallingConventionStdcall:
......@@ -339,7 +333,6 @@ static bool cc_want_sret_attr(CallingConvention cc) {
339333 case CallingConventionNaked:
340334 zig_unreachable();
341335 case CallingConventionC:
342 case CallingConventionCold:
343336 case CallingConventionInterrupt:
344337 case CallingConventionSignal:
345338 case CallingConventionStdcall:
......@@ -448,7 +441,7 @@ static LLVMValueRef make_fn_llvm_value(CodeGen *g, ZigFn *fn) {
448441 ZigLLVMFunctionSetCallingConv(llvm_fn, get_llvm_cc(g, cc));
449442 }
450443
451 bool want_cold = fn->is_cold || cc == CallingConventionCold;
444 bool want_cold = fn->is_cold;
452445 if (want_cold) {
453446 ZigLLVMAddFunctionAttrCold(llvm_fn);
454447 }
......@@ -8818,18 +8811,17 @@ Buf *codegen_generate_builtin_source(CodeGen *g) {
88188811
88198812 static_assert(CallingConventionUnspecified == 0, "");
88208813 static_assert(CallingConventionC == 1, "");
8821 static_assert(CallingConventionCold == 2, "");
8822 static_assert(CallingConventionNaked == 3, "");
8823 static_assert(CallingConventionAsync == 4, "");
8824 static_assert(CallingConventionInterrupt == 5, "");
8825 static_assert(CallingConventionSignal == 6, "");
8826 static_assert(CallingConventionStdcall == 7, "");
8827 static_assert(CallingConventionFastcall == 8, "");
8828 static_assert(CallingConventionVectorcall == 9, "");
8829 static_assert(CallingConventionThiscall == 10, "");
8830 static_assert(CallingConventionAPCS == 11, "");
8831 static_assert(CallingConventionAAPCS == 12, "");
8832 static_assert(CallingConventionAAPCSVFP == 13, "");
8814 static_assert(CallingConventionNaked == 2, "");
8815 static_assert(CallingConventionAsync == 3, "");
8816 static_assert(CallingConventionInterrupt == 4, "");
8817 static_assert(CallingConventionSignal == 5, "");
8818 static_assert(CallingConventionStdcall == 6, "");
8819 static_assert(CallingConventionFastcall == 7, "");
8820 static_assert(CallingConventionVectorcall == 8, "");
8821 static_assert(CallingConventionThiscall == 9, "");
8822 static_assert(CallingConventionAPCS == 10, "");
8823 static_assert(CallingConventionAAPCS == 11, "");
8824 static_assert(CallingConventionAAPCSVFP == 12, "");
88338825
88348826 static_assert(FnInlineAuto == 0, "");
88358827 static_assert(FnInlineAlways == 1, "");
src/stage1/ir.cpp-1
......@@ -18916,7 +18916,6 @@ static IrInstGen *ir_analyze_instruction_export(IrAnalyze *ira, IrInstSrcExport
1891618916 add_error_note(ira->codegen, msg, fn_entry->proto_node, buf_sprintf("declared here"));
1891718917 } break;
1891818918 case CallingConventionC:
18919 case CallingConventionCold:
1892018919 case CallingConventionNaked:
1892118920 case CallingConventionInterrupt:
1892218921 case CallingConventionSignal: