From patchwork Thu Jan 11 15:35:53 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Georg-Johann Lay X-Patchwork-Id: 187425 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:2411:b0:101:2151:f287 with SMTP id m17csp1530765dyi; Thu, 11 Jan 2024 07:37:12 -0800 (PST) X-Google-Smtp-Source: AGHT+IHSHRJpdKr9+qdLVQf+T0lVnWK1z5jSZxbJgTlfKSGaoigckHUOVWRD80ULJUS5aD06qVfS X-Received: by 2002:a5b:287:0:b0:dbd:d530:ee10 with SMTP id x7-20020a5b0287000000b00dbdd530ee10mr1130700ybl.67.1704987431879; Thu, 11 Jan 2024 07:37:11 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1704987431; cv=pass; d=google.com; s=arc-20160816; b=oirNi5HqCubenuG437x/U9sVs7Wu6EYdWzbsh3KuWimJ5Rnr+Ud1mhfYFacvhKGGVt KEaIbvuZ4ajczrWXxNsVv+DQ4Zcq0Kx+cAGNfhP7X336ZfAdQEC24tzpkDtsTbO6Gikl XjXn8pE07v8HH9CblUuN6KN0ylYL0QyjtX6a8LeVyIkLUY3AzuSQ6xWORcHO5YlqJ/J+ aie8L5HI6wFIpSzaepcneoRdbOkKdhLI+Ff/My2VF4VL4CV7ZdRBVyhRQIiwqItLT4qa r1x7RgtJ7NMZuviFFq9qBxOWFjlsqyikZN5Cj2z58BTUDYp6YSXmzb1+/DhnbmKu18l3 2UZg== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :subject:to:from:content-language:user-agent:mime-version:date :message-id:dkim-signature:dkim-signature:arc-filter:dmarc-filter :delivered-to; bh=uk6Cl/49m1D5y+Qa9lYbe3wl2OVkXjmsmhCexsDkXCo=; fh=hPrbWPhweUx4V0GV9uXJqbyAzg2ABmTz7kczrAQqMmM=; b=1DtHZApOB4yXZorDi1jPxcKfG5TBFyqMRKXxw9G1WV6aoRGkQzMbG8+YlMn2o2M9uK JQ4JN6gAtkPjtykXF2NG6aJ0y9G+znynztgQL9mDeqdvOnhKwDnEjACPKPOkSuEqvzY+ YlNFpbwQLih/fP9NQSaY0n57L5IHOahpmuOKNCgvVFN8kBCOSQDxandO6VvMJvAjMyLf rvwgvFOAno61Ls0KD8/QFE62axGPP1+D2ZBQxK3fUfXPI9/5hjH1z3s59mkzH0Nhtlfh nyKyjN+Jkm2Lm+66LEoVB/vGMfkoFet4bSEYqHj54THLKR7bPy7IJmUc6kryt07e5OqJ U1ww== ARC-Authentication-Results: i=3; mx.google.com; dkim=pass header.i=@gjlay.de header.s=strato-dkim-0002 header.b=X61X9ej3; dkim=neutral (no key) header.i=@gjlay.de header.s=strato-dkim-0003; arc=pass (i=2); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id 1-20020ac84e81000000b00429b0add358si1125632qtp.143.2024.01.11.07.37.11 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Jan 2024 07:37:11 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@gjlay.de header.s=strato-dkim-0002 header.b=X61X9ej3; dkim=neutral (no key) header.i=@gjlay.de header.s=strato-dkim-0003; arc=pass (i=2); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 85E0B386C5BA for ; Thu, 11 Jan 2024 15:36:47 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mo4-p00-ob.smtp.rzone.de (mo4-p00-ob.smtp.rzone.de [85.215.255.23]) by sourceware.org (Postfix) with ESMTPS id C59503857BB2 for ; Thu, 11 Jan 2024 15:35:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C59503857BB2 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=gjlay.de Authentication-Results: sourceware.org; spf=none smtp.mailfrom=gjlay.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org C59503857BB2 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=85.215.255.23 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1704987359; cv=pass; b=covG4gI4BGFRjm0FaBjFPbd9pwEh2aqcQjCJbbYgeX2CLOKLCKEWklaHR0vZOw3q8BrYz1Mz7WqJaYWLpAoUfXoUSQ1des6Uod64yhpI9s07ElZFcI4ylzpP9S8QjacHUsdZl8lQulNVu2lAcGvT8hTh0JxHMd39qlyD1f8Moos= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1704987359; c=relaxed/simple; bh=4gAtRINDgnqgwwr75/reX9ntwWnss14QI0dxh+A7cFQ=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:MIME-Version:From: To:Subject; b=ExFu1tlzc5PXGho/oUmnSc5veG5vUF2/KEeHwngaPO0xoODsSnvIkZQbr/HjEEH9uzq1imaPo6+vr4lKgAODWzm+6Ss8OQb0ypOj6Et7vLwsQiNfU7cCbW9i7RIcLkTPhGJaC6VRJM2IFo8TLSLm3qcjKYQIF5J/XuwVcXjxrEs= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; t=1704987354; cv=none; d=strato.com; s=strato-dkim-0002; b=PgeNM5gx6kTseYMlnfPh5ZX8kqEN0yb/HdtW0ZaENCDeKUM3ZGHAMpRQalbBrTmEK1 2gHlEC5yuWt1Nfiw4LLT46crAhPITF0QdAAzNGWiwKeqbpuRxS6TczfwZi22hep0LYxr mX5tWbDGF0pjYObBBxQl65YiREZZ89bkTV4mtglaiLmSSRyMoocP8/WRGsVcU8tkRnYe 9XYowNykh/yOzV74MfonS/ttein15XT0qGldO8d7aWEjD4A5c5h2Vde1tdwj+kDRuG0T 7rv09OB26eUzMuxJQ7Lem3fnxRzMkN8xK7Jo/MHXxO2LZeA3GE+4HKwZGG60imzprpZh 9mSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1704987354; s=strato-dkim-0002; d=strato.com; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=uk6Cl/49m1D5y+Qa9lYbe3wl2OVkXjmsmhCexsDkXCo=; b=OcUIP1Ro7mmB4tnweW5vc4ylB7nsTo0trpBnRztmQwL9Vm+wY2yPgO6TDO45WKLKep j1h85eKaj54bXix45TC3sxeKG/PzQWmNOMaMcg3aqLDPnB0bgshoztY9ECGiaPWjE6Zh kkB00weJBpQ/BnT6nd4jE+wtHwOKgDCprCloh6LovWukXnGPxGiio0CONKQLvxxzHr5x 1m4Uufl6D9AxrQMewywSRGxTJ6AVvoEMqzlCtdt0uwWHpJ8CG/wVbl18v0U5DQ7F1HkS JiqBSX8FcWFpn04RRBTWzDHhMj+Qi5TuYStiNh8ApuM0JUoGmZtnWjPhKGvnSuSlC8At xzwg== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo00 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1704987354; s=strato-dkim-0002; d=gjlay.de; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=uk6Cl/49m1D5y+Qa9lYbe3wl2OVkXjmsmhCexsDkXCo=; b=X61X9ej316ErVCIxgL4XyByAtGPdEdVQin96pkttqfll5qBQdQPXlBYNvYFgUnCjJ/ 0ydipN1I5H10DdZSq9AYwZTmlV4XUhEXws3h1tRon3uWmUzrXlWYPUu+d0vAXY8EOO+W +4K9wm+yZRdhNyP/weQUnQPJU3qi4qszttR8xRFTCngSCXAdrPFuzFy4rxxYrBl1WqSv rLyY/DVpxUeLWiYMupxYAXQdfIaFuHWuWLLUnRetn21CBeAEX/GI3LFKA8TmU/I4IFHy hR8jdxEXvdVOzspgSZh9BG2k3ZapJCJDUuQ8pr/SCksFQcAMe/y6j0lUyfSqy509yfr4 dsVw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1704987354; s=strato-dkim-0003; d=gjlay.de; h=Subject:To:From:Date:Message-ID:Cc:Date:From:Subject:Sender; bh=uk6Cl/49m1D5y+Qa9lYbe3wl2OVkXjmsmhCexsDkXCo=; b=WLJu8jvia56NFQh+77ggf1cWXo1J2VZkQGsaaaYpMWnJvaaVBcP6/sbHjc1u9ZHkJR gvWWK09Jx4EigRltSXDA== X-RZG-AUTH: ":LXoWVUeid/7A29J/hMvvT3koxZnKT7Qq0xotTetVnKkSjsSjq3WhKPVxx3mY" Received: from [192.168.2.102] by smtp.strato.de (RZmta 49.10.2 DYNA|AUTH) with ESMTPSA id g5de8600BFZsKRR (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate) for ; Thu, 11 Jan 2024 16:35:54 +0100 (CET) Message-ID: <7d7e8719-4f1a-4432-af77-ecf87052685c@gjlay.de> Date: Thu, 11 Jan 2024 16:35:53 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US From: Georg-Johann Lay To: gcc-patches@gcc.gnu.org Subject: [patch,avr,applied] invoke.texi: Move avr internal options to their own @subsubsection. X-Spam-Status: No, score=-10.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1787808901194859859 X-GMAIL-MSGID: 1787808901194859859 This adds a new @subsubsection "AVR Internal Options" in "AVR Options". "Internal" options are options that are not supposed to be set by the user, but are solely required to ship information from device-specs to the compiler proper. (Without device-specs, non of these options would be needed because then all information would be available in the compiler proper.) Johann --- AVR: invoke.texi: Put internal options in their own @subsubsection. gcc/ * doc/invoke.texi (AVR Options): Move -mrmw, -mn-flash, -mshort-calls and -msp8 to... (AVR Internaƶ Options): ...this new @subsubsection. diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index c1d01d32c1d..c1bb54b4109 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -23695,11 +23695,6 @@ Do not save registers in @code{main}. The effect is the same like attaching attribute @ref{AVR Function Attributes,,@code{OS_task}} to @code{main}. It is activated per default if optimization is on. -@opindex mn-flash -@item -mn-flash=@var{num} -Assume that the flash memory has a size of -@var{num} times 64@tie{}KiB. - @opindex mno-interrupts @item -mno-interrupts Generated code is not compatible with hardware interrupts. @@ -23721,35 +23716,6 @@ differ from instructions in the assembler code. Relaxing must be turned on if linker stubs are needed, see the section on @code{EIND} and linker stubs below. -@opindex mrmw -@item -mrmw -Assume that the device supports the Read-Modify-Write -instructions @code{XCH}, @code{LAC}, @code{LAS} and @code{LAT}. - -@opindex mshort-calls -@item -mshort-calls - -Assume that @code{RJMP} and @code{RCALL} can target the whole -program memory. - -This option is used internally for multilib selection. It is -not an optimization option, and you don't need to set it by hand. - -@opindex msp8 -@item -msp8 -Treat the stack pointer register as an 8-bit register, -i.e.@: assume the high byte of the stack pointer is zero. -In general, you don't need to set this option by hand. - -This option is used internally by the compiler to select and -build multilibs for architectures @code{avr2} and @code{avr25}. -These architectures mix devices with and without @code{SPH}. -For any setting other than @option{-mmcu=avr2} or @option{-mmcu=avr25} -the compiler driver adds or removes this option from the compiler -proper's command line, because the compiler then knows if the device -or architecture has an 8-bit stack pointer and thus no @code{SPH} -register or not. - @opindex mstrict-X @item -mstrict-X Use address register @code{X} in a way proposed by the hardware. This means @@ -24179,6 +24145,45 @@ Reflects the @code{--with-libf7=@{libgcc|math|math-symbols@}} @end table +@subsubsection AVR Internal Options +The following options are used internally by the compiler and to communicate +between device specs files and the compiler proper. You don't need to set these +options by hand, in particular they are not optimization options. +Using these options in the wrong way may lead to sub-optimal or wrong code. +They are documented for completeness, and in order to get a better +understanding of +@w{@uref{https://gcc.gnu.org/wiki/avr-gcc#spec-files,device specs}} +files. + +@table @gcctabopt + +@opindex mn-flash +@item -mn-flash=@var{num} +Assume that the flash memory has a size of @var{num} times 64@tie{}KiB. +This determines which @code{__flash@var{N}} address spaces are available. + +@opindex mrmw +@item -mrmw +Assume that the device supports the Read-Modify-Write +instructions @code{XCH}, @code{LAC}, @code{LAS} and @code{LAT}. + +@opindex mshort-calls +@item -mshort-calls + +Assume that @code{RJMP} and @code{RCALL} can target the whole +program memory. This option is used for multilib generation and selection +for the devices from architecture @code{avrxmega3}. + +@opindex msp8 +@item -msp8 +Treat the stack pointer register as an 8-bit register, +i.e.@: assume the high byte of the stack pointer is zero. +This option is used by the compiler to select and +build multilibs for architectures @code{avr2} and @code{avr25}. +These architectures mix devices with and without @code{SPH}. + +@end table + @node Blackfin Options @subsection Blackfin Options @cindex Blackfin Options