compiler_rt: specify goals, organize README and compiler_rt.zig

* goals
  - zig as linker for object files generated by other compilers
  - zig-specific runtime features for eventual standardisation

* changes
  - missing routines are marked with `missing`
  - structure inspired by libgcc docs, but improved order and wording
  - rename misspelled functions
  - reorder and rephrase compiler_rt.zig to reflect documentation
  - potential decimal float or fixed-point arithmetic support:
    * 'Decimal float library routines' ca. 120 functions
    * 'Fixed-point fractional library routines' ca. 300 functions

thanks to @Vexu for multiple reviews and @scheibo for review
This commit is contained in:
Jan Philipp Hafer
2022-02-15 14:56:49 +01:00
committed by Andrew Kelley
parent ecf56d85ef
commit 5d89955543
5 changed files with 305 additions and 58 deletions

View File

@@ -1641,7 +1641,7 @@ static LLVMValueRef gen_soft_f80_widen_or_shorten(CodeGen *g, ZigType *actual_ty
break;
case 32:
return_type = g->builtin_types.entry_f32->llvm_type;
func_name = "__truncxfff2";
func_name = "__truncxfsf2";
break;
case 64:
return_type = g->builtin_types.entry_f64->llvm_type;
@@ -1670,7 +1670,7 @@ static LLVMValueRef gen_soft_f80_widen_or_shorten(CodeGen *g, ZigType *actual_ty
break;
case 32:
param_type = g->builtin_types.entry_f32->llvm_type;
func_name = "__extendffxf2";
func_name = "__extendsfxf2";
break;
case 64:
param_type = g->builtin_types.entry_f64->llvm_type;