登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
轻量养虾,开箱即用!低 Token + 稳定算力,Gitee & 模力方舟联合出品的 PocketClaw 正式开售!点击了解详情
代码拉取完成,页面将自动刷新
仓库状态说明
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
11
Star
3
Fork
14
src-openEuler
/
gcc-12
关闭
代码
Issues
5
Pull Requests
1
Wiki
统计
流水线
服务
JavaDoc
PHPDoc
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
开发画像分析
我知道了,不再自动展开
更新失败,请稍后重试!
移除标识
内容风险标识
本任务被
标识为内容中包含有代码安全 Bug 、隐私泄露等敏感信息,仓库外成员不可访问
[22.03 SP3][codedb]-march=armv8.5-a+sme选项导致POM_POM2K编译ICE: in compute_live_loop_exits, at tree-ssa-loop-manip.cc:247
已完成
#I9DE8T
缺陷
纪晓慧
创建于
2024-04-01 19:19
**【标题描述】-march=armv8.5-a+sme选项导致POM_POM2K编译ICE: in compute_live_loop_exits, at tree-ssa-loop-manip.cc:247** **【环境信息】** 软件信息 - OS版本及分支信息:openEul2er-22.03-LTS-SP3 - 内核信息:5.10.0-182.0.0.95.oe2203sp3.aarch64 - 发现问题的组件版本信息: ``` Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/opt/openEuler/gcc-toolset-12/root/usr/libexec/gcc/aarch64-openEuler-linux/12/lto-wrapper Target: aarch64-openEuler-linux Configured with: ../configure --disable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/openEuler/gcc-toolset-12/root/usr --mandir=/opt/openEuler/gcc-toolset-12/root/usr/share/man --infodir=/opt/openEuler/gcc-toolset-12/root/usr/share/info --with-bugurl=https://gitee.com/src-openeuler/gcc/issues --enable-shared --enable-threads=posix --enable-checking=release --with-isl --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --enable-gnu-indirect-function --with-multilib-list=lp64 --build=aarch64-openEuler-linux --program-suffix= Thread model: posix Supported LTO compression algorithms: zlib gcc version 12.3.1 20230508 (openEuler 12.3.1-17.oe2203sp3) (GCC) ``` **【问题复现步骤】** 1.配置环境变量: ``` export PATH=/opt/openEuler/gcc-toolset-12/root/usr/bin:$PATH export LD_LIBRARY_PATH=/opt/openEuler/gcc-toolset-12/root/usr/lib64:$LD_LIBRARY_PATH export CC="gcc -march=armv8.5-a+sme" export CXX="g++ -march=armv8.5-a+sme" export FC="gfortran -march=armv8.5-a+sme -fallow-argument-mismatch" ``` 2.安装openmpi ``` 安装依赖包:yum install numactl-devel-* systemd-devel-* wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.4.tar.gz --no-check-certificate tar -xf openmpi-4.0.4.tar.gz cd openmpi-4.0.4 ./configure --prefix=/path/openmpi-4.0.4 --enable-pretty-print-stacktrace --enable-orterun-prefix-by-default --enable-mpi-cxx --enable-mpi-fortran --with-cma --enable-mpi1-compatibility make -j96 make install export PATH=/path/openmpi-4.0.4/bin:$PATH export LD_LIBRARY_PATH=/path/openmpi-4.0.4/lib:$LD_LIBRARY_PATH export INCLUDE=/path/openmpi-4.0.4/include:$INCLUDE ``` 3.安装HDF5 ``` 下载HDF5源码包:wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.0/src/hdf5-1.12.0.tar.gz --no-check-certificate tar -xvf hdf5-1.12.0.tar.gz cd hdf5-1.12.0 ./configure --prefix=/path/HDF5 --enable-parallel CC=mpicc FC=mpifort CXX=mpicxx make -j96 make install export LD_LIBRARY_PATH=/path/hdf5-1.12.0/lib:$LD_LIBRARY_PATH ``` 4.安装PnetCDF ``` 下载源码包:wget https://parallel-netcdf.github.io/Release/pnetcdf-1.12.1.tar.gz --no-check-certificate tar -xvf pnetcdf-1.12.1.tar.gz cd pnetcdf-1.12.1 ./configure --prefix=/path/pnetcdf --build=aarch64-linux --enable-shared --enable-fortran --enable-large-file-test CC=mpicc FC=mpifort CXX=mpicxx FFLAGS="-fallow-argument-mismatch" FCFLAGS="-fallow-argument-mismatch" make -j96 make install export LD_LIBRARY_PATH=/path/pnetcdf-1.12.1/lib:$LD_LIBRARY_PATH ``` 5.安装netcdf-c ``` 下载netcdf-c源码包:https://github.com/Unidata/netcdf-c/archive/refs/tags/v4.7.4.tar.gz 安装依赖包:yum install -y m4 curl-devel cmake make tar -xf netcdf-c-4.7.4.tar.gz cd netcdf-c-4.7.4 ./configure --prefix=/path/netcdf --build=aarch64-linux --enable-fortran --disable-static --enable-shared --with-pic --enable-parallel-tests --enable-large-file-tests --enable-largefile --disable-netcdf-4 --disable-dap make -j96 make install export PATH=/path/netcdf/bin:$PATH export INCLUDE=/path/netcdf/include:$INCLUDE export LD_LIBRARY_PATH=/path/netcdf/lib:$LD_LIBRARY_PATH ``` 6.编译POM_POM2K ``` wget -r -p -k -np -nc -e robots=off http://www.ccpo.odu.edu/POMWEB/GRID-DATA cd www.ccpo.odu.edu/POMWEB/ mv POM2K ../../ mv GRID-DATA ../../ cd ../../GRID-DATA mkdir IC mkdir -p IC/include cp gridborder ./IC/include cp gridcom ./IC/include cp params ./IC/include cp ./TOPO.dat ./IC cp ./TS.dat ./IC cp ./WIND.dat ./IC cp ./GRID.f ./IC cp ./IC.dat ./IC sudo chmod 755 rungrid sed -i "s#g77 -O3 GRID.f#$FC -O3 -std=legacy GRID.f -I./IC/include#g" rungrid ./rungrid ``` **【实际结果】**, 
**【标题描述】-march=armv8.5-a+sme选项导致POM_POM2K编译ICE: in compute_live_loop_exits, at tree-ssa-loop-manip.cc:247** **【环境信息】** 软件信息 - OS版本及分支信息:openEul2er-22.03-LTS-SP3 - 内核信息:5.10.0-182.0.0.95.oe2203sp3.aarch64 - 发现问题的组件版本信息: ``` Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/opt/openEuler/gcc-toolset-12/root/usr/libexec/gcc/aarch64-openEuler-linux/12/lto-wrapper Target: aarch64-openEuler-linux Configured with: ../configure --disable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/openEuler/gcc-toolset-12/root/usr --mandir=/opt/openEuler/gcc-toolset-12/root/usr/share/man --infodir=/opt/openEuler/gcc-toolset-12/root/usr/share/info --with-bugurl=https://gitee.com/src-openeuler/gcc/issues --enable-shared --enable-threads=posix --enable-checking=release --with-isl --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-libstdcxx-backtrace --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --enable-gnu-indirect-function --with-multilib-list=lp64 --build=aarch64-openEuler-linux --program-suffix= Thread model: posix Supported LTO compression algorithms: zlib gcc version 12.3.1 20230508 (openEuler 12.3.1-17.oe2203sp3) (GCC) ``` **【问题复现步骤】** 1.配置环境变量: ``` export PATH=/opt/openEuler/gcc-toolset-12/root/usr/bin:$PATH export LD_LIBRARY_PATH=/opt/openEuler/gcc-toolset-12/root/usr/lib64:$LD_LIBRARY_PATH export CC="gcc -march=armv8.5-a+sme" export CXX="g++ -march=armv8.5-a+sme" export FC="gfortran -march=armv8.5-a+sme -fallow-argument-mismatch" ``` 2.安装openmpi ``` 安装依赖包:yum install numactl-devel-* systemd-devel-* wget https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.4.tar.gz --no-check-certificate tar -xf openmpi-4.0.4.tar.gz cd openmpi-4.0.4 ./configure --prefix=/path/openmpi-4.0.4 --enable-pretty-print-stacktrace --enable-orterun-prefix-by-default --enable-mpi-cxx --enable-mpi-fortran --with-cma --enable-mpi1-compatibility make -j96 make install export PATH=/path/openmpi-4.0.4/bin:$PATH export LD_LIBRARY_PATH=/path/openmpi-4.0.4/lib:$LD_LIBRARY_PATH export INCLUDE=/path/openmpi-4.0.4/include:$INCLUDE ``` 3.安装HDF5 ``` 下载HDF5源码包:wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-1.12.0/src/hdf5-1.12.0.tar.gz --no-check-certificate tar -xvf hdf5-1.12.0.tar.gz cd hdf5-1.12.0 ./configure --prefix=/path/HDF5 --enable-parallel CC=mpicc FC=mpifort CXX=mpicxx make -j96 make install export LD_LIBRARY_PATH=/path/hdf5-1.12.0/lib:$LD_LIBRARY_PATH ``` 4.安装PnetCDF ``` 下载源码包:wget https://parallel-netcdf.github.io/Release/pnetcdf-1.12.1.tar.gz --no-check-certificate tar -xvf pnetcdf-1.12.1.tar.gz cd pnetcdf-1.12.1 ./configure --prefix=/path/pnetcdf --build=aarch64-linux --enable-shared --enable-fortran --enable-large-file-test CC=mpicc FC=mpifort CXX=mpicxx FFLAGS="-fallow-argument-mismatch" FCFLAGS="-fallow-argument-mismatch" make -j96 make install export LD_LIBRARY_PATH=/path/pnetcdf-1.12.1/lib:$LD_LIBRARY_PATH ``` 5.安装netcdf-c ``` 下载netcdf-c源码包:https://github.com/Unidata/netcdf-c/archive/refs/tags/v4.7.4.tar.gz 安装依赖包:yum install -y m4 curl-devel cmake make tar -xf netcdf-c-4.7.4.tar.gz cd netcdf-c-4.7.4 ./configure --prefix=/path/netcdf --build=aarch64-linux --enable-fortran --disable-static --enable-shared --with-pic --enable-parallel-tests --enable-large-file-tests --enable-largefile --disable-netcdf-4 --disable-dap make -j96 make install export PATH=/path/netcdf/bin:$PATH export INCLUDE=/path/netcdf/include:$INCLUDE export LD_LIBRARY_PATH=/path/netcdf/lib:$LD_LIBRARY_PATH ``` 6.编译POM_POM2K ``` wget -r -p -k -np -nc -e robots=off http://www.ccpo.odu.edu/POMWEB/GRID-DATA cd www.ccpo.odu.edu/POMWEB/ mv POM2K ../../ mv GRID-DATA ../../ cd ../../GRID-DATA mkdir IC mkdir -p IC/include cp gridborder ./IC/include cp gridcom ./IC/include cp params ./IC/include cp ./TOPO.dat ./IC cp ./TS.dat ./IC cp ./WIND.dat ./IC cp ./GRID.f ./IC cp ./IC.dat ./IC sudo chmod 755 rungrid sed -i "s#g77 -O3 GRID.f#$FC -O3 -std=legacy GRID.f -I./IC/include#g" rungrid ./rungrid ``` **【实际结果】**, 
评论 (
4
)
登录
后才可以发表评论
状态
已完成
待办的
已挂起
修复中
已确认
已完成
已验收
已取消
负责人
未设置
eastb233
eastb233
负责人
协作者
+负责人
+协作者
标签
sig/Compiler
未设置
项目
未立项任务
未立项任务
里程碑
openEuler-22.03-LTS-SP3
未关联里程碑
Pull Requests
未关联
未关联
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
未关联
分支 (
-
)
标签 (
-
)
开始日期   -   截止日期
-
置顶选项
不置顶
置顶等级:高
置顶等级:中
置顶等级:低
优先级
不指定
严重
主要
次要
不重要
预计工期
(小时)
参与者(3)
1
https://gitee.com/src-openeuler/gcc-12.git
git@gitee.com:src-openeuler/gcc-12.git
src-openeuler
gcc-12
gcc-12
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册