On 2/14/19 10:19 PM, Martin Sebor wrote: > On 2/13/19 6:48 AM, Martin Liška wrote: >> Hi. >> >> I'm sending patch where I document changes I made during GCC 9 >> development. I would appreciate both language and factical comments >> about the patch. > > Nothing technical, just a few very minor language nits/suggestions. > > Martin > > diff --git a/htdocs/gcc-9/changes.html b/htdocs/gcc-9/changes.html > index 13243c2..9fec9e2 100644 > --- a/htdocs/gcc-9/changes.html > +++ b/htdocs/gcc-9/changes.html > @@ -50,11 +50,64 @@ a work-in-progress.</p> > <h2 id="general">General Improvements</h2> > <ul> > <li> > - A new option -flive-patching=[inline-only-static|inline-clone] is > + A new option > <code>-flive-patching=[inline-only-static|inline-clone]</code> is > > s/is/has been/ would be better (and either a comma after option or > a definite article without the comma). > > introduced to provide a safe compilation for live-patching. At the same > time, provides multiple-level control on the enabled IPA optimizations. > See the user guide for further information about the option for more > - details. > + details. > > It seems we should choose between "for further information" and "for > more details" but we don't need both. > > + </li> > + <li> > + A new option <code>--completion<\>code is added to provide more fine > + option completion in a shell. It is intended for Bash-completion > project. > > Missing article: for "a Bash-completion project" (or perhaps "to be > used by Bash completion." not sure exactly what project it refers to). > > + </li> > + <li> > + Alignment-related options <code>-falign-functions</code>, > > Since you're naming them use a definite article: "The alignment-related > options..." > > + <code>-falign-labels</code><code>, </code>-falign-loops > + and <code>-falign-jumps</code> received support for a secondary > + alignment (e.g. <code>-falign-loops=n:m:n2:m2</code>). > + </li> > + <li> > + A new built-in <code>__builtin_expect_with_probability</code> has been > added. > > I'm really nit-picking now but again, since you are referring to > a specific option a definite article would be more appropriate. > Alternatively: "A new built-in function, > <code>__builtin_expect_with_probability</code>, has been added. > > + </li> > + <li> > + Switch expansion has been improved by using a different strategy > + (jump table, bit test, decision tree) for a subset of switch cases. > + </li> > + <li> > + A linear function expression defined as switch statement with cases > > Maybe a missing article? "defined as a switch statement with cases" > (if that's what you meant.) > > + can be transformed by <code>-ftree-switch-conversion</code>. For > example: > + <blockquote><pre class="blackbg"> > +int > +foo (int how) > +{ > + switch (how) { > + case 2: how = 205; break; > + case 3: how = 305; break; > + case 4: how = 405; break; > + case 5: how = 505; break; > + case 6: how = 605; break; > + } > + return how; > +} > +</pre></blockquote> > + can be transformed into <code>100 * how + 5</code> (for values defined > + in the switch statement). > + </li> > + <li> > + The gcov tool received a new option <code>--use-hotness-colors</code> > + (<code>-q</code>) that can provide perf-like coloring of hot functions. > + </li> > + <li> > + The gcov tool has changed intermediate format to a new JSON format. > > Missing article: "has changed an (or "its?") intermediate format..." > depending on how many intermediate formats it has. > > + </li> > + <li> > + New pair of profiling options (<code>-fprofile-filter-files</code> > + and <code>-fprofile-exclude-files</code>) has been added. > + The options help to filter which source files are instrumented. > + </li> > + <li> > + AddressSanitizer generates more compact red-zones for automatic > variables. > + That helps to reduce memory footprint of a sanitized binary. > </li> > </ul> > > @@ -137,7 +190,7 @@ a work-in-progress.</p> > <h3 id="d">D</h3> > <ul> > <li>Support for the D programming language has been added to GCC, > - implementing version 2.076 of the language and run-time library. > + implementing version 2.076 of the language and run-time library. > </li> > </ul> > > @@ -294,7 +347,11 @@ a work-in-progress.</p> > > <!-- <h3 id="hsa">Heterogeneous Systems Architecture</h3> --> > > -<!-- <h3 id="x86">IA-32/x86-64</h3> --> > +<h3 id="x86">IA-32/x86-64</h3> > +<ul> > + <li>Support of Intel MPX (Memory Protection Extensions) has been > removed.</li> > +</ul> > + > > <!-- <h3 id="mips">MIPS</h3> --> > >
Hi. Thank you Martin for language correction, I'm sending updated version. Martin
diff --git a/htdocs/gcc-9/changes.html b/htdocs/gcc-9/changes.html index 13243c2..4d30ed4 100644 --- a/htdocs/gcc-9/changes.html +++ b/htdocs/gcc-9/changes.html @@ -50,11 +50,64 @@ a work-in-progress.</p> <h2 id="general">General Improvements</h2> <ul> <li> - A new option -flive-patching=[inline-only-static|inline-clone] is + A new option, <code>-flive-patching=[inline-only-static|inline-clone]</code>, has been introduced to provide a safe compilation for live-patching. At the same time, provides multiple-level control on the enabled IPA optimizations. - See the user guide for further information about the option for more - details. + See the user guide for more details about the option. + </li> + <li> + A new option, <code>--completion</code>, has been added to provide more fine + option completion in a shell. It is intended to be used by Bash-completion. + </li> + <li> + The alignment-related options <code>-falign-functions</code>, + <code>-falign-labels</code><code>, </code>-falign-loops + and <code>-falign-jumps</code> received support for a secondary + alignment (e.g. <code>-falign-loops=n:m:n2:m2</code>). + </li> + <li> + A new built-in function, <code>__builtin_expect_with_probability</code>, + has been added. + </li> + <li> + Switch expansion has been improved by using a different strategy + (jump table, bit test, decision tree) for a subset of switch cases. + </li> + <li> + A linear function expression defined as ia switch statement with cases + can be transformed by <code>-ftree-switch-conversion</code>. For example: + <blockquote><pre class="blackbg"> +int +foo (int how) +{ + switch (how) { + case 2: how = 205; break; + case 3: how = 305; break; + case 4: how = 405; break; + case 5: how = 505; break; + case 6: how = 605; break; + } + return how; +} +</pre></blockquote> + can be transformed into <code>100 * how + 5</code> (for values defined + in the switch statement). + </li> + <li> + The gcov tool received a new option <code>--use-hotness-colors</code> + (<code>-q</code>) that can provide perf-like coloring of hot functions. + </li> + <li> + The gcov tool has changed its intermediate format to a new JSON format. + </li> + <li> + New pair of profiling options (<code>-fprofile-filter-files</code> + and <code>-fprofile-exclude-files</code>) has been added. + The options help to filter which source files are instrumented. + </li> + <li> + AddressSanitizer generates more compact red-zones for automatic variables. + That helps to reduce memory footprint of a sanitized binary. </li> </ul> @@ -137,7 +190,7 @@ a work-in-progress.</p> <h3 id="d">D</h3> <ul> <li>Support for the D programming language has been added to GCC, - implementing version 2.076 of the language and run-time library. + implementing version 2.076 of the language and run-time library. </li> </ul> @@ -294,7 +347,11 @@ a work-in-progress.</p> <!-- <h3 id="hsa">Heterogeneous Systems Architecture</h3> --> -<!-- <h3 id="x86">IA-32/x86-64</h3> --> +<h3 id="x86">IA-32/x86-64</h3> +<ul> + <li>Support of Intel MPX (Memory Protection Extensions) has been removed.</li> +</ul> + <!-- <h3 id="mips">MIPS</h3> -->