1@c Copyright (C) 2012-2021 Free Software Foundation, Inc. 2@c This is part of the GAS manual. 3@c For copying conditions, see the file as.texinfo. 4@c man end 5@ifset GENERIC 6@page 7@node C-SKY-Dependent 8@chapter C-SKY Dependent Features 9@end ifset 10@ifclear GENERIC 11@node Machine Dependencies 12@chapter C-SKY Dependent Features 13@end ifclear 14 15@cindex C-SKY support 16@menu 17* C-SKY Options:: Options 18* C-SKY Syntax:: Syntax 19@end menu 20 21@node C-SKY Options 22@section Options 23@cindex C-SKY options 24@cindex options for C-SKY 25 26@c man begin OPTIONS 27@table @gcctabopt 28 29@cindex @code{march} command-line option, C-SKY 30@item -march=@var{archname} 31Assemble for architecture @var{archname}. The @option{--help} option 32lists valid values for @var{archname}. 33 34@cindex @code{mcpu} command-line option, C-SKY 35@item -mcpu=@var{cpuname} 36Assemble for architecture @var{cpuname}. The @option{--help} option 37lists valid values for @var{cpuname}. 38 39@cindex @code{EL} command-line option, C-SKY 40@cindex @code{mlittle-endian} command-line option, C-SKY 41@item -EL 42@itemx -mlittle-endian 43Generate little-endian output. 44 45@cindex @code{EB} command-line option, C-SKY 46@cindex @code{mbig-endian} command-line option, C-SKY 47@item -EB 48@itemx -mbig-endian 49Generate big-endian output. 50 51@cindex @code{fpic} command-line option, C-SKY 52@cindex @code{pic} command-line option, C-SKY 53@item -fpic 54@itemx -pic 55Generate position-independent code. 56 57@cindex @code{mljump} command-line option, C-SKY 58@cindex @code{mno-ljump} command-line option, C-SKY 59@item -mljump 60@itemx -mno-ljump 61Enable/disable transformation of the short branch instructions 62@code{jbf}, @code{jbt}, and @code{jbr} to @code{jmpi}. 63This option is for V2 processors only. 64It is ignored on CK801 and CK802 targets, which do not support the @code{jmpi} 65instruction, and is enabled by default for other processors. 66 67@cindex @code{mbranch-stub} command-line option, C-SKY 68@cindex @code{mno-branch-stub} command-line option, C-SKY 69@item -mbranch-stub 70@itemx -mno-branch-stub 71Pass through @code{R_CKCORE_PCREL_IMM26BY2} relocations for @code{bsr} 72instructions to the linker. 73 74This option is only available for bare-metal C-SKY V2 ELF targets, 75where it is enabled by default. It cannot be used in code that will be 76dynamically linked against shared libraries. 77 78@cindex @code{force2bsr} command-line option, C-SKY 79@cindex @code{mforce2bsr} command-line option, C-SKY 80@cindex @code{no-force2bsr} command-line option, C-SKY 81@cindex @code{mno-force2bsr} command-line option, C-SKY 82@item -force2bsr 83@itemx -mforce2bsr 84@itemx -no-force2bsr 85@itemx -mno-force2bsr 86Enable/disable transformation of @code{jbsr} instructions to @code{bsr}. 87This option is always enabled (and @option{-mno-force2bsr} is ignored) 88for CK801/CK802 targets. It is also always enabled when 89@option{-mbranch-stub} is in effect. 90 91@cindex @code{jsri2bsr} command-line option, C-SKY 92@cindex @code{mjsri2bsr} command-line option, C-SKY 93@cindex @code{no-jsri2bsr} command-line option, C-SKY 94@cindex @code{mno-jsri2bsr} command-line option, C-SKY 95@item -jsri2bsr 96@itemx -mjsri2bsr 97@itemx -no-jsri2bsr 98@itemx -mno-jsri2bsr 99Enable/disable transformation of @code{jsri} instructions to @code{bsr}. 100This option is enabled by default. 101 102@cindex @code{mnolrw} command-line option, C-SKY 103@cindex @code{mno-lrw} command-line option, C-SKY 104@item -mnolrw 105@itemx -mno-lrw 106Enable/disable transformation of @code{lrw} instructions into a 107@code{movih}/@code{ori} pair. 108 109@cindex @code{melrw} command-line option, C-SKY 110@cindex @code{mno-elrw} command-line option, C-SKY 111@item -melrw 112@itemx -mno-elrw 113Enable/disable extended @code{lrw} instructions. 114This option is enabled by default for CK800-series processors. 115 116@cindex @code{mlaf} command-line option, C-SKY 117@cindex @code{mliterals-after-func} command-line option, C-SKY 118@cindex @code{mno-laf} command-line option, C-SKY 119@cindex @code{mno-literals-after-func} command-line option, C-SKY 120@item -mlaf 121@itemx -mliterals-after-func 122@itemx -mno-laf 123@itemx -mno-literals-after-func 124Enable/disable placement of literal pools after each function. 125 126@cindex @code{mlabr} command-line option, C-SKY 127@cindex @code{mliterals-after-br} command-line option, C-SKY 128@cindex @code{mno-labr} command-line option, C-SKY 129@cindex @code{mnoliterals-after-br} command-line option, C-SKY 130@item -mlabr 131@itemx -mliterals-after-br 132@itemx -mno-labr 133@itemx -mnoliterals-after-br 134Enable/disable placement of literal pools after unconditional branches. 135This option is enabled by default. 136 137@cindex @code{mistack} command-line option, C-SKY 138@cindex @code{mno-istack} command-line option, C-SKY 139@item -mistack 140@itemx -mno-istack 141Enable/disable interrupt stack instructions. This option is enabled by 142default on CK801, CK802, and CK802 processors. 143 144@end table 145 146The following options explicitly enable certain optional instructions. 147These features are also enabled implicitly by using @code{-mcpu=} to specify 148a processor that supports it. 149 150@table @gcctabopt 151@cindex @code{mhard-float} command-line option, C-SKY 152@item -mhard-float 153Enable hard float instructions. 154 155@cindex @code{mmp} command-line option, C-SKY 156@item -mmp 157Enable multiprocessor instructions. 158 159@cindex @code{mcp} command-line option, C-SKY 160@item -mcp 161Enable coprocessor instructions. 162 163@cindex @code{mcache} command-line option, C-SKY 164@item -mcache 165Enable cache prefetch instruction. 166 167@cindex @code{msecurity} command-line option, C-SKY 168@item -msecurity 169Enable C-SKY security instructions. 170 171@cindex @code{mtrust} command-line option, C-SKY 172@item -mtrust 173Enable C-SKY trust instructions. 174 175@cindex @code{mdsp} command-line option, C-SKY 176@item -mdsp 177Enable DSP instructions. 178 179@cindex @code{medsp} command-line option, C-SKY 180@item -medsp 181Enable enhanced DSP instructions. 182 183@cindex @code{mvdsp} command-line option, C-SKY 184@item -mvdsp 185Enable vector DSP instructions. 186 187@end table 188@c man end 189 190@node C-SKY Syntax 191@section Syntax 192 193@code{@value{AS}} implements the standard C-SKY assembler syntax 194documented in the 195@cite{C-SKY V2 CPU Applications Binary Interface Standards Manual}. 196