Re: [wwwdocs] Update changes.html with Intel MPX and Pointer Bounds Checker

2015-04-09 Thread Ilya Enkovich
On 09 Apr 12:32, Gerald Pfeifer wrote:
 On Thu, 9 Apr 2015, Ilya Enkovich wrote:
  This adds Pointer Bounds Checker and MPX support to GCC 5 changes. 
  Is it OK?
 
 Nice, thank you!
 
 Can you just replace runtime checks by run-time checks and
 IA-32/x86-64 GNU/Linux target by x86/x86-64 GNU/Linux targets
 (x86, as we had agreed upon recently, and targets, Plural) and
 add the to See Pointer Bounds Checker?
 
 Similarly, can you please add This and the to New extension 
 is available via code-mmpx/code compiler switch in the second
 hunk and also use run-time there?
 
 Go ahead and commit with those changes.
 
 Thanks,G
 Gerald

Thank you for comments!  Here is an updated version to be committed.

Ilya
--

--- changes.html2015-04-09 12:18:47.67230 +0300
+++ changes.html2015-04-09 14:00:43.880487000 +0300
@@ -158,20 +158,29 @@
   licode-fsanitize=alignment/code: enable alignment checking, detect
  various misaligned objects;/li
   licode-fsanitize=object-size/code: enable object size checking, 
detect
  various out-of-bounds accesses./li
   licode-fsanitize=vptr/code: enable checking of C++ member function
  calls, member accesses and some conversions between pointers to base
  and derived classes, detect if the referenced object does not have
  the correct dynamic type./li
 /ul
 /li
+liPointer Bounds Checker, a bounds violation detector, has been added and
+  can be enabled via code-fcheck-pointer-bounds/code.  Memory accesses 
are
+  instrumented with run-time checks of used pointers against their bounds 
to
+  detect pointer bounds violations (overflows).  The Pointer Bounds Checker
+  is available on x86/x86-64 GNU/Linux targets with a new ISA extension
+  Intel MPX support.  See the Pointer Bounds Checker
+  a 
href=https://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler;
+   Wiki page/a for more details.
+/li
   /ul
 
 h2 id=languagesNew Languages and Language specific improvements/h2
   ul
 li id=offloada 
href=http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf;
   OpenMP 4.0 specification/a offloading features are now supported by 
the C, C++,
and Fortran compilers. Generic changes:
ul
  liInfrastructure (suitable for any vendor)./li
  liTestsuite which covers offloading from the
@@ -676,20 +685,28 @@
AVX-512{BW,DQ,VL,IFMA,VBMI}/a of Intel's CPU
codenamed Skylake Server was added to GCC.  That includes inline
assembly support, new intrinsics, and basic autovectorization.  These
new AVX-512 extensions are available via
the following GCC switches: AVX-512 Vector Length EVEX feature:
code-mavx512vl/code, AVX-512 Byte and Word instructions:
code-mavx512bw/code, AVX-512 Dword and Qword instructions:
code-mavx512dq/code, AVX-512 FMA-52 instructions:
code-mavx512ifma/code and for AVX-512 Vector Bit Manipulation
Instructions: code-mavx512vbmi/code./li
+   liNew ISA extensions support
+   a 
href=https://software.intel.com/sites/default/files/managed/0d/53/319433-022.pdf;
+   Intel MPX/a was added to GCC.  This new extension is available via the
+   code-mmpx/code compiler switch.  Intel MPX is a set of processor 
features which,
+   with compiler, run-time library and OS support, brings increased 
robustness to
+   software by run-time checking pointer references against their bounds.
+   In GCC Intel MPX is supported by Pointer Bounds Checker and libmpx 
run-time
+   libraries./li
liThe new code-mrecord-mcount/code option for code-pg/code
generates a Linux kernel style table of pointers to mcount or
__fentry__ calls at the beginning of functions. The new
code-mnop-mcount/code option in addition also generates nops in
place of the __fentry__ or mcount call, so that a call per function
can be later patched in. This can be used for low overhead tracing or
hot code patching./li
liThe new code-malign-data/code option controls how
GCC aligns variables.  code-malign-data=compat/code uses
increased alignment compatible with GCC 4.8 and earlier,


Re: [wwwdocs] Update changes.html with Intel MPX and Pointer Bounds Checker

2015-04-09 Thread Gerald Pfeifer
On Thu, 9 Apr 2015, Ilya Enkovich wrote:
 This adds Pointer Bounds Checker and MPX support to GCC 5 changes. 
 Is it OK?

Nice, thank you!

Can you just replace runtime checks by run-time checks and
IA-32/x86-64 GNU/Linux target by x86/x86-64 GNU/Linux targets
(x86, as we had agreed upon recently, and targets, Plural) and
add the to See Pointer Bounds Checker?

Similarly, can you please add This and the to New extension 
is available via code-mmpx/code compiler switch in the second
hunk and also use run-time there?

Go ahead and commit with those changes.

Thanks,G
Gerald


[wwwdocs] Update changes.html with Intel MPX and Pointer Bounds Checker

2015-04-09 Thread Ilya Enkovich
Hi,

This adds Pointer Bounds Checker and MPX support to GCC 5 changes. Is it OK?

Thanks,
Ilya
--

--- changes.html2015-04-09 12:18:47.67230 +0300
+++ changes.html2015-04-09 12:58:23.677983000 +0300
@@ -158,20 +158,29 @@
   licode-fsanitize=alignment/code: enable alignment checking, detect
  various misaligned objects;/li
   licode-fsanitize=object-size/code: enable object size checking, 
detect
  various out-of-bounds accesses./li
   licode-fsanitize=vptr/code: enable checking of C++ member function
  calls, member accesses and some conversions between pointers to base
  and derived classes, detect if the referenced object does not have
  the correct dynamic type./li
 /ul
 /li
+liPointer Bounds Checker, a bounds violation detector, has been added and
+  can be enabled via code-fcheck-pointer-bounds/code.  Memory accesses 
are
+  instrumented with runtime checks of used pointers against their bounds to
+  detect pointer bounds violations (overflows).  The Pointer Bounds Checker
+  is available on IA-32/x86-64 GNU/Linux target with a new ISA extension
+  Intel MPX support.  See Pointer Bounds Checker
+  a 
href=https://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler;
+   Wiki page/a for more details.
+/li
   /ul
 
 h2 id=languagesNew Languages and Language specific improvements/h2
   ul
 li id=offloada 
href=http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf;
   OpenMP 4.0 specification/a offloading features are now supported by 
the C, C++,
and Fortran compilers. Generic changes:
ul
  liInfrastructure (suitable for any vendor)./li
  liTestsuite which covers offloading from the
@@ -676,20 +685,28 @@
AVX-512{BW,DQ,VL,IFMA,VBMI}/a of Intel's CPU
codenamed Skylake Server was added to GCC.  That includes inline
assembly support, new intrinsics, and basic autovectorization.  These
new AVX-512 extensions are available via
the following GCC switches: AVX-512 Vector Length EVEX feature:
code-mavx512vl/code, AVX-512 Byte and Word instructions:
code-mavx512bw/code, AVX-512 Dword and Qword instructions:
code-mavx512dq/code, AVX-512 FMA-52 instructions:
code-mavx512ifma/code and for AVX-512 Vector Bit Manipulation
Instructions: code-mavx512vbmi/code./li
+   liNew ISA extensions support
+   a 
href=https://software.intel.com/sites/default/files/managed/0d/53/319433-022.pdf;
+   Intel MPX/a was added to GCC.  New extension is available via 
code-mmpx/code
+   compiler switch.  Intel MPX is a set of processor features which,
+   with compiler, runtime library and OS support, brings increased 
robustness to
+   software by runtime checking pointer references against their bounds.
+   In GCC Intel MPX is supported by Pointer Bounds Checker and libmpx 
runtime
+   libraries./li
liThe new code-mrecord-mcount/code option for code-pg/code
generates a Linux kernel style table of pointers to mcount or
__fentry__ calls at the beginning of functions. The new
code-mnop-mcount/code option in addition also generates nops in
place of the __fentry__ or mcount call, so that a call per function
can be later patched in. This can be used for low overhead tracing or
hot code patching./li
liThe new code-malign-data/code option controls how
GCC aligns variables.  code-malign-data=compat/code uses
increased alignment compatible with GCC 4.8 and earlier,