diff mbox series

Document --with-build-config=bootstrap-asan option.

Message ID a9e5ec02-3071-1e19-6ecf-b124b60cc851@arm.com
State New
Headers show
Series Document --with-build-config=bootstrap-asan option. | expand

Commit Message

Matthew Malcomson Dec. 12, 2019, 3:37 p.m. UTC
Document how to configure using asan (bootstrap-asan option).

Since I'm adding a bootstrap-hwasan option and documenting that, 
bootstrap-asan should also be documented.

(As Martin pointed out in the hwasan reviews).



(FYI I now notice that my hwasan patch 3/X needs this to apply cleanly).



gcc/ChangeLog:

2019-12-12  Matthew Malcomson  <matthew.malcomson@arm.com>

	* doc/install.texi: Document bootstrap-asan configuration option.





###########


commit 6e0bbe33120ad3f92e4266ecfe4ecb8ce8958865
Author: Matthew Malcomson <matthew.malcomson@arm.com>
Date:   Wed Nov 6 12:48:08 2019 +0000

     Document bootstrap-asan compilation option

  When building a cross compiler, it is not generally possible to do a

Comments

Gerald Pfeifer Jan. 11, 2020, 7:19 a.m. UTC | #1
On Thu, 12 Dec 2019, Matthew Malcomson wrote:
> gcc/ChangeLog:
> 
> 2019-12-12  Matthew Malcomson  <matthew.malcomson@arm.com>
> 
> 	* doc/install.texi: Document bootstrap-asan configuration option.

I see this introduces a new table.

> +Some examples of build configurations designed for developers of GCC are:

@samp{bootstrap-time}, @samp{bootstrap-debug-ckovw} and others appear
to fall into the same camp, essentially expected to be used by maintainers 
only. 

Would it make sense to add your new option to the existing table, or
perhaps see which other options from the existing table to move into
your new one?  Thoughts?


The patch is okay modulo the question above.

Thanks,
Gerald
Matthew Malcomson Jan. 13, 2020, 10:40 a.m. UTC | #2
On 11/01/2020 07:19, Gerald Pfeifer wrote:
> On Thu, 12 Dec 2019, Matthew Malcomson wrote:
>> gcc/ChangeLog:
>>
>> 2019-12-12  Matthew Malcomson  <matthew.malcomson@arm.com>
>>
>> 	* doc/install.texi: Document bootstrap-asan configuration option.
> 
> I see this introduces a new table.
> 
>> +Some examples of build configurations designed for developers of GCC are:
> 
> @samp{bootstrap-time}, @samp{bootstrap-debug-ckovw} and others appear
> to fall into the same camp, essentially expected to be used by maintainers
> only.
> 
> Would it make sense to add your new option to the existing table, or
> perhaps see which other options from the existing table to move into
> your new one?  Thoughts?

Sounds good me.


> 
> 
> The patch is okay modulo the question above.
> 
> Thanks,
> Gerald
> 

Patch with above suggestion.

#####################

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 
80b47812fe66a8ef50edf3aad9708ab3409ba7dc..0705759c69f64c6d06e91f7ae83bb8c1ad210f34 
100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -2668,6 +2668,10 @@ Arranges for the run time of each program started 
by the GCC driver,
  built in any stage, to be logged to @file{time.log}, in the top level of
  the build tree.

+@item @samp{bootstrap-asan}
+Compiles GCC itself using Address Sanitization in order to catch 
invalid memory
+accesses within the GCC code.
+
  @end table

  @section Building a cross compiler
Matthew Malcomson Nov. 20, 2020, 6:11 p.m. UTC | #3
On 13/01/2020 10:40, Matthew Malcomson wrote:
> On 11/01/2020 07:19, Gerald Pfeifer wrote:
>> On Thu, 12 Dec 2019, Matthew Malcomson wrote:
>>> gcc/ChangeLog:
>>>
>>> 2019-12-12  Matthew Malcomson  <matthew.malcomson@arm.com>
>>>
>>> 	* doc/install.texi: Document bootstrap-asan configuration option.
>>
>> I see this introduces a new table.
>>
>>> +Some examples of build configurations designed for developers of GCC are:
>>
>> @samp{bootstrap-time}, @samp{bootstrap-debug-ckovw} and others appear
>> to fall into the same camp, essentially expected to be used by maintainers
>> only.
>>
>> Would it make sense to add your new option to the existing table, or
>> perhaps see which other options from the existing table to move into
>> your new one?  Thoughts?
> 
> Sounds good me.
> 
> 
>>
>>
>> The patch is okay modulo the question above.


Hi,

Apologies for bringing up something from this far back, but I've just 
noticed I never actually committed this patch.

Did the above line mean approval once the option was moved into the 
existing table?  Or was it just explaining that the position was the 
only problem you saw?

In other words: is the patch I proposed below Ok for trunk?

Thanks,
Matthew

>>
>> Thanks,
>> Gerald
>>
> 
> Patch with above suggestion.
> 
> #####################
> 
> diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
> index
> 80b47812fe66a8ef50edf3aad9708ab3409ba7dc..0705759c69f64c6d06e91f7ae83bb8c1ad210f34
> 100644
> --- a/gcc/doc/install.texi
> +++ b/gcc/doc/install.texi
> @@ -2668,6 +2668,10 @@ Arranges for the run time of each program started
> by the GCC driver,
>    built in any stage, to be logged to @file{time.log}, in the top level of
>    the build tree.
> 
> +@item @samp{bootstrap-asan}
> +Compiles GCC itself using Address Sanitization in order to catch
> invalid memory
> +accesses within the GCC code.
> +
>    @end table
> 
>    @section Building a cross compiler
>
Gerald Pfeifer Nov. 22, 2020, 10:49 p.m. UTC | #4
On Fri, 20 Nov 2020, Matthew Malcomson wrote:
>>> The patch is okay modulo the question above.
> Apologies for bringing up something from this far back, but I've just 
> noticed I never actually committed this patch.

Actually thank you for doing so!  (And I am known to sometimes bring
up things quite older than this. ;-)

> Did the above line mean approval once the option was moved into the 
> existing table?  Or was it just explaining that the position was the 
> only problem you saw?

Yes - the former.

> In other words: is the patch I proposed below Ok for trunk?

Yes, please.  (I believe there may be an overly long line in the
patch, which will be good to wrap before committing, but please
go ahead in any case.)

(This is also okay to backport to GCC 10.)

Thanks,
Gerald
diff mbox series

Patch

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 80b4781..c5937c9 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -2670,6 +2670,14 @@  the build tree.

  @end table

+Some examples of build configurations designed for developers of GCC are:
+
+@table @asis
+@item @samp{bootstrap-asan}
+Compiles GCC itself using Address Sanitization in order to catch 
invalid memory
+accesses within the GCC code.
+@end table
+
  @section Building a cross compiler