File tree Expand file tree Collapse file tree 3 files changed +28
-0
lines changed
Expand file tree Collapse file tree 3 files changed +28
-0
lines changed Original file line number Diff line number Diff line change 294294 "type" : " boolean" ,
295295 "default" : false
296296 },
297+ "crts-initialize" : {
298+ "description" : " Range Of Variables To Be Initialized" ,
299+ "type" : " string" ,
300+ "default" : " crtsi" ,
301+ "enum" : [
302+ " crtsi" ,
303+ " crtsx"
304+ ],
305+ "enumDescriptions" : [
306+ " @near" ,
307+ " @near and @far"
308+ ]
309+ },
297310 "LD_FLAGS" : {
298311 "markdownDescription" : " Other Linker Options (clnk)" ,
299312 "$ref" : " #/definitions/misc-controls"
Original file line number Diff line number Diff line change @@ -1151,7 +1151,22 @@ class COSMIC_STM8 implements IToolchian {
11511151 // | crtsif(0).s | @near | @far
11521152 // | crtsxf(0).s | @near and @far | @far
11531153
1154+ let crts_name = 'crtsi' ;
1155+ if ( options [ 'linker' ] [ 'crts-initialize' ] ) {
1156+ crts_name = options [ 'linker' ] [ 'crts-initialize' ] ;
1157+ }
1158+ if ( model_option . startsWith ( 'small' ) ) {
1159+ if ( model_option == 'small-0' ) {
1160+ crts_name += '0' ;
1161+ }
1162+ } else {
1163+ // crtsif or crtsxf
1164+ crts_name += 'f' ;
1165+ }
1166+
11541167 let machineLibs : string [ ] = [
1168+ // CRT library
1169+ `${ crts_name } .sm8` ,
11551170 // standard ANSI libraries
11561171 `libfs${ model_suffix } ${ codes_suffix } .sm8` , // Float Library
11571172 `libis${ model_suffix } ${ codes_suffix } .sm8` , // Integer Only Library
You can’t perform that action at this time.
0 commit comments