https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87214

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
                 CC|                            |crazylht at gmail dot com,
                   |                            |wei3.xiao at intel dot com,
                   |                            |xuepeng.guo at intel dot com
         Resolution|WORKSFORME                  |---
            Summary|[9 Regression] SPEC         |[9 Regression] r263772
                   |CPU2017, CPU2006 520/620,   |miscompiled 520.omnetpp_r
                   |403 runfails after r263772  |in SPEC CPU 2017
                   |with march=skylake-avx512   |

--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> ---
On Intel machine with AVX512F,  r263772 miscompiled 520.omnetpp_r in SPEC
CPU 2017 with

-DSPEC -DSPEC_CPU -DNDEBUG -Isimulator/platdep -Isimulator -Imodel
-DWITH_NETBUILDER -DSPEC_AUTO_SUPPRESS_OPENMP  -fno-unsafe-math-optimizations
-mfpmath=sse -g -march=native -Ofast -funroll-loops -flto         -DSPEC_LP64 

Program received signal SIGSEGV, Segmentation fault.
0x00000000004a8ddb in cObject::isName (s=<optimized out>, this=<optimized out>)
    at simulator/cobject.h:118
118         bool isName(const char *s) const {return !opp_strcmp(getName(),s);}
(gdb) bt
#0  0x00000000004a8ddb in cObject::isName (s=<optimized out>, 
    this=<optimized out>) at simulator/cobject.h:118
#1  cComponent::findPar (this=0x699040, parname=0x669c58 "bs")
    at simulator/ccomponent.cc:143
#2  0x00000000004acdb4 in cComponent::par (this=0x699040, 
    parname=0x669c58 "bs") at simulator/ccomponent.cc:133
#3  0x00000000004be27c in cNEDNetworkBuilder::doParam (this=0x7fffffffd500, 
    component=0x699040, paramNode=0x669bd0, isSubcomponent=<optimized out>)
    at simulator/cnednetworkbuilder.cc:179
#4  0x00000000004c0020 in cNEDNetworkBuilder::doParams (isSubcomponent=false, 
    paramsNode=<optimized out>, component=0x699040, this=0x7fffffffd500)
    at simulator/cnednetworkbuilder.cc:139
#5  cNEDNetworkBuilder::addParametersAndGatesTo (this=0x7fffffffd500, 
    component=0x699040, decl=0x695e60) at simulator/cnednetworkbuilder.cc:105
#6  0x000000000048a1bd in cDynamicModuleType::addParametersAndGatesTo (
    module=0x699040, this=<optimized out>)
    at /export/ssd/git/gcc-test-spec/usr/include/c++/9.0.0/bits/stl_tree.h:211
#7  cModuleType::create (this=<optimized out>, modname=<optimized out>, 
    parentmod=<optimized out>, vectorsize=<optimized out>, 
    index=<optimized out>) at simulator/ccomponenttype.cc:156
#8  0x00000000004643aa in cModuleType::create (parentmod=0x0, 
    modname=<optimized out>, this=<optimized out>)
    at simulator/ccomponenttype.cc:106
--Type <RET> for more, q to quit, c to continue without paging--
#9  cSimulation::setupNetwork (network=<optimized out>, this=<optimized out>)
    at simulator/csimulation.cc:369
#10 Cmdenv::run (this=0x624d80) at simulator/cmdenv.cc:253
#11 0x000000000051673c in EnvirBase::run (this=0x624d80, argc=<optimized out>, 
    argv=<optimized out>, configobject=0x61a640) at simulator/envirbase.cc:230
#12 0x00000000004421b2 in setupUserInterface(int, char**, cConfiguration*)
[clone .constprop.0] (argc=argc@entry=5, argv=argv@entry=0x7fffffffdc18,
cfg=0x0)
    at simulator/startup.cc:234
#13 0x000000000042f2fd in main (argc=5, argv=0x7fffffffdc18)
    at simulator/main.cc:39
(gdb) 
...
  0x00000000004a8db5 <+325>:    lea    0x1(%r15),%rbx
   0x00000000004a8db9 <+329>:   mov    0x58(%rbp),%r8
   0x00000000004a8dbd <+333>:   lea    (%rbx,%rbx,2),%rdi
   0x00000000004a8dc1 <+337>:   lea    (%r8,%rdi,8),%rdi
   0x00000000004a8dc5 <+341>:   mov    (%rdi),%r9
   0x00000000004a8dc8 <+344>:   mov    %ebx,%r12d
   0x00000000004a8dcb <+347>:   mov    0x30(%r9),%rax
   0x00000000004a8dcf <+351>:   cmp    $0x4a8080,%rax
   0x00000000004a8dd5 <+357>:   je     0x4a8d20 <cComponent::findPar(char
const*) const+176>
=> 0x00000000004a8ddb <+363>:   callq  *%rax
   0x00000000004a8ddd <+365>:   mov    %rax,%rdi
   0x00000000004a8de0 <+368>:   test   %rax,%rax
   0x00000000004a8de3 <+371>:   jne    0x4a8d47 <cComponent::findPar(char
const*) const+215>
   0x00000000004a8de9 <+377>:   cmpb   $0x0,0x0(%r13)
   0x00000000004a8dee <+382>:   jne    0x4a8d57 <cComponent::findPar(char
const*) const+231>
   0x00000000004a8df4 <+388>:   add    $0x8,%rsp
   0x00000000004a8df8 <+392>:   pop    %rbx
   0x00000000004a8df9 <+393>:   pop    %rbp
   0x00000000004a8dfa <+394>:   mov    %r12d,%eax
   0x00000000004a8dfd <+397>:   pop    %r12
   0x00000000004a8dff <+399>:   pop    %r13
   0x00000000004a8e01 <+401>:   pop    %r14
   0x00000000004a8e03 <+403>:   pop    %r15
   0x00000000004a8e05 <+405>:   retq   
   0x00000000004a8e06 <+406>:   nopw   %cs:0x0(%rax,%rax,1)
   0x00000000004a8e10 <+416>:   callq  *%rax
   0x00000000004a8e12 <+418>:   mov    %rax,%rdi
--Type <RET> for more, q to quit, c to continue without paging--q
Quit
(gdb) p/x $rax
$1 = 0x5c8d480000009b85
(gdb) p/x *(long *) $rax
Cannot access memory at address 0x5c8d480000009b85
(gdb) 

This address looks odd.

Reply via email to