NA
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[lldb] Stop testing LLDB on Clang changes in pre-commit CI (#95537) This is a temporary measure to alleviate Linux pre-commit CI waiting times that started snowballing [recently](https://discourse.llvm.org/t/long-wait-for-linux-presubmit-testing/79547/5). My [initial estimate](https://github.com/llvm/llvm-project/pull/94208#issuecomment-2155972973) of 4 additional minutes spent per built seems to be in the right ballpark, but looks like that was the last straw to break camel's back. It seems that CI load got past the tipping point, and now it's not able to burn through the queue over the night on workdays. I don't intend to overthrow the consensus we reached in #94208, but it shouldn't come at the expense of the whole LLVM community. I'll enable this back as soon as we have news that we got more capacity for Linux pre-commit CI. | 2 年前 | |
| 5 个月前 | ||
[Github] Fix LLVM Project Tests Workflow on Linux (#122221) This patch fixes the LLVM project tests workflow on Linux. Two changes were needed. Firstly, some commands need to be performed with sudo now that the container executes as a non-root user. Second, we needed to change from ubuntu-latest to ubuntu-22.04 as ubuntu-latest not defaults to ubuntu-24.04 which causes setup-python to install a python executable linked against a newer version of glibc that is not found on ubuntu 22.04, which causes failures when CMake cannot execute the python interpreter that it finds. (cherry picked from commit a75917679549109fcbf92cb63ef61638517713d6) | 1 年前 | |
[bolt][tests] Skip tests that use perf when perf counters are unavailable (#107892) On the GitHub Action runners, perf always fails with the error below , so we need to skip the perf tests on platforms like this that have limited access to the perf counters. Access to performance monitoring and observability operations is limited. Consider adjusting /proc/sys/kernel/perf_event_paranoid setting to open access to performance monitoring and observability operations for processes without CAP_PERFMON, CAP_SYS_PTRACE or CAP_SYS_ADMIN Linux capability. More information can be found at 'Perf events and tool security' document: https://www.kernel.org/doc/html/latest/admin-guide/perf-security.html perf_event_paranoid setting is 4: -1: Allow use of (almost) all events by all users Ignore mlock limit after perf_event_mlock_kb without CAP_IPC_LOCK >= 0: Disallow raw and ftrace function tracepoint access >= 1: Disallow CPU event access >= 2: Disallow kernel profiling To make the adjusted perf_event_paranoid setting permanent preserve it in /etc/sysctl.conf (e.g. kernel.perf_event_paranoid = <setting>) (cherry picked from commit 773353b20a49bfa0dab608d415c1b4734d037fce) | 1 年前 | |
[clang-tidy] Avoid capturing a local variable in a static lambda in UseRangesCheck (#111282) Fixes https://github.com/llvm/llvm-project/issues/109367 (cherry picked from commit acf92a47c0ece8562fd745215c478fe2d4ab5896) | 1 年前 | |
added all modifications made for msdebug | 6 个月前 | |
[feature] 加速构建:子项目透传ccache并精简LLVM编译范围 Co-authored-by: wiyr0<wangyixian3@huawei.com> # message auto-generated for no-merge-commit merge: !194 merge optimize-build-speed into master [feature] 加速构建:子项目透传ccache并精简LLVM编译范围 Created-by: wiyr0 Commit-by: wiyr0 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 1. 顶层 CMakeLists.txt 已检测并配置 ccache,但 ExternalProject_Add 是独立的 cmake 调用,不继承顶层变量,导致 LLVM 大头完全没走 ccache(实测命中率仅 4.58%,llvm-build/build.ninja 中 0 处 ccache 引用); 2. LLVM_TARGETS_TO_BUILD=AArch64;X86;ARM 中的 ARM(32 位) target 在 Ascend 调试场景下用不到(自研代码无 32 位 ARM 依赖),属冗余编译; 3. LLVM_BUILD_TOOLS=ON 无条件构建 opt/llc/bugpoint 等 LLVM 工具,而产品构建只需 lldb lldb-server runtime_stub,这些工具不必要。 - **修改方案:** 1. 将顶层检测到的 CCACHE_PROGRAM 通过 CMAKE_C_COMPILER_LAUNCHER/CMAKE_CXX_COMPILER_LAUNCHER 透传给 LLVM 与 msdebug-mi 两个子项目(用条件变量,未检测到 ccache 时为空,向后兼容); 2. LLVM_TARGETS_TO_BUILD 由 AArch64;X86;ARM 精简为 AArch64;X86; 3. LLVM_BUILD_TOOLS 改为按测试开关动态取值:产品构建 OFF,测试构建 ON(lit 需要 FileCheck 等工具)。 - **修改内容:** - cmake/Modules/LLVM.cmake:新增 LLVM_CCACHE_ARGS(条件追加 ccache launcher)、LLVM_BUILD_TOOLS_FLAG(依 LLDB_INCLUDE_TESTS 取值);CMAKE_ARGS 注入 ${LLVM_CCACHE_ARGS} 并将 -DLLVM_BUILD_TOOLS=ON 改为 -DLLVM_BUILD_TOOLS=${ LLVM_BUILD_TOOLS_FLAG}; CMAKE_CACHE_ARGS 中 LLVM_TARGETS_TO_BUILD 改为 AArch64\;X86。 - cmake/Modules/Msdebug_mi.cmake:新增 MSDEBUG_MI_CCACHE_ARGS(条件追加 ccache launcher),CMAKE_ARGS 注入 ${MSDEBUG_MI_CCACHE_ARGS}。 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [x] **功能自验截图**(请确保不体现个人信息) 2分钟  - [x] **冒烟是否通过**  ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [x] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!194 | 1 天前 | |
[test][compiler-rt] Mark dlsym_alloc.c as unsupported on macos (#108439) With #106912, the test now fails on macos, e.g. https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/2058/. (cherry picked from commit d9ed8b018df725faec4076a3efdfcbd7a24c99f0) | 1 年前 | |
| 1 年前 | ||
[doc]:解决近期众测的问题 Co-authored-by: mengguangxin<mgx0018@163.com> # message auto-generated for no-merge-commit merge: !207 merge dev_0717_m into master [doc]:解决近期众测的问题 Created-by: mengguangxin Commit-by: mengguangxin Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 解决众测资料用户提出的问题 - **修改方案:** 优化相关说明 - **修改内容:** 优化相关说明,补充缺失内容 - [ ] **涉及代码双合**(贴上另一个PR链接):NA ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) NA - [ ] **冒烟是否通过** NA ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** 是 - [ ] **是否具备UT测试用例看护** NA - [ ] **是否需要在sig会议中进行代码检视** NA - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 需要资料人员luyq11评审 ---- See merge request: Ascend/msdebug!207 | 1 天前 | |
[Usage]msdebug使用案例补充 Co-authored-by: lishuokp31<lishuo58@huawei.com> # message auto-generated for no-merge-commit merge: !184 merge 260630/msot_example into master [Usage]msdebug使用案例补充 Created-by: lishuokp31 Commit-by: lishuokp31 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** https://gitcode.com/Ascend/msot/issues/71 - **修改方案:** msdebug补充使用案例,为用户提供可执行的算子代码和相关运行说明 - **修改内容:** msdebug补充使用案例,为用户提供可执行的算子代码和相关运行说明 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!184 | 17 天前 | |
[flang][debug] Set scope of internal functions correctly. (#99531) Summary: The functions internal to subroutine should have the scope set to the parent function. This allows a user to evaluate local variables of parent function when control is stopped in the child. Fixes #96314 Test Plan: Reviewers: Subscribers: Tasks: Tags: Differential Revision: https://phabricator.intern.facebook.com/D60250527 (cherry picked from commit 626022bfd18f335ef62a461992a05dfed4e6d715) | 1 年前 | |
Update libc/docs/configure.rst | 1 年前 | |
libclc: add half version of 'sign' (#99841) | 1 年前 | |
Bump version to 19.1.7 | 1 年前 | |
[libc++] Fix broken configuration system-libcxxabi on Apple (#110920) On Apple platforms, using system-libcxxabi as an ABI library wouldn't work because we'd try to re-export symbols from libc++abi that the system libc++abi.dylib might not have. Instead, only re-export those symbols when we're using the in-tree libc++abi. This does mean that libc++.dylib won't re-export any libc++abi symbols when building against the system libc++abi, which could be fixed in various ways. However, the best solution really depends on the intended use case, so this patch doesn't try to solve that problem. As a drive-by, also improve the diagnostic message when the user forgets to set the LIBCXX_CXX_ABI_INCLUDE_PATHS variable, which would previously lead to a confusing error. Closes #104672 (cherry picked from commit 21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759) | 1 年前 | |
[libunwind] Stop installing the mach-o module map (#105616) libunwind shouldn't know that compact_unwind_encoding.h is part of a MachO module that it doesn't own. Delete the mach-o module map, and let whatever is in charge of the mach-o directory be the one to say how its module is organized and where compact_unwind_encoding.h fits in. (cherry picked from commit 172c4a4a147833f1c08df1555f3170aa9ccb6cbe) | 1 年前 | |
[lld][WebAssembly] Fix use of uninitialized stack data with --wasm64 (#107780) In the case of --wasm64 we were setting the type of the init expression to be 64-bit but were only setting the low 32-bits of the value (by assigning to Int32). Fixes: https://github.com/emscripten-core/emscripten/issues/22538 (cherry picked from commit 5c8fd1eece8fff69871cef57a2363dc0f734a7d1) | 1 年前 | |
[bugfix] 传递虚拟device_id至DeviceContext用于AclrtSetDeviceWrapper Co-authored-by: wiyr0<wangyixian3@huawei.com> # message auto-generated for no-merge-commit merge: !205 merge feature/pass-virtual-device-id-to-devicecontext into master [bugfix] 传递虚拟device_id至DeviceContext用于AclrtSetDeviceWrapper Created-by: wiyr0 Commit-by: wiyr0 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** Ascend950DTDeviceContext::Init() 中调用 g_aclWrapper.AclrtSetDeviceWrapper(m_device_id)(Ascend950DeviceContext.cpp:679),其中 m_device_id 是物理 device_id,ConvertToVisibleDeviceId 转换后的可见/物理 ID)。但 AclrtSetDeviceWrapper 底层调用 aclrtSetDevice,该接口需要的是虚拟(逻辑)device_id(即用户程序调用 rtSetDevice/aclrtSetDevice 时传入的原始逻辑 ID)。当设置了 ASCEND_RT_VISIBLE_DEVICES 环境变量时,物理 ID 与逻辑 ID 不一致,导致 lldb-server 侧 aclrtSetDevice 设置了错误的设备,引发调试异常。 - **修改方案:** 虚拟 device_id 可通过 GetDeviceId(&deviceId)(调用 rtGetDevice)获取。在 LD_PRELOAD 桩侧获取该值,经 IPC 消息传递到 lldb-server 侧的 AscendProcessLinux,最终在构造DeviceContext 时传入,Init() 中改用虚拟 ID 调用 AclrtSetDeviceWrapper。 原有 m_device_id(物理 ID)保持不变,仍用于 driver ioctl(CMD_DEV_REGISTER 等)及设备匹配(IsDeviceIdMatched)。 - **修改内容:** 1. 桩侧(LD_PRELOAD)— 生成并传递虚拟 device_id - runtime_stub.h:SendDeviceInfo 声明新增 int32_t virtual_device_id 入参 - runtime_stub.cpp: - SendDeviceInfo:将 virtual_device_id 序列化为 virtual_device_id:<id>; 加入 IPC 消息 - SetDevicePost:调用 GetDeviceId(rtGetDevice)获取虚拟 ID,传入 SendDeviceInfo - aclrt_stub.cpp: - SetDevicePost:调用 aclrtGetDeviceImpl 获取虚拟 ID,传入 SendDeviceInfo 2. IPC 消息定义与解析 - MessageDefines.h:DeviceInfoMsg 新增 int32_t virtual_device_id 字段 - AscendCommunicationServer.cpp:DeviceHandler::Parse 正则更新为 device_id:(\d+);virtual_device_id:(\d+);tgid:(\d+);soc_version:([^;]+);,解析新字段 3. lldb-server 侧 — 全链路透传 - AscendProcessLinux.h/.cpp:InitDeviceContext 新增 virtual_device_id 参数;HandleStubDeviceInfo 从 DeviceInfoMsg 取值传入 - DeviceContext.h/.cpp: - Factory::GetDeviceContext 新增 virtual_device_id 参数 - 构造函数新增 virtual_device_id 参数,存入 m_virtual_device_id 成员 - 所有 DeviceContext 子类(Ascend950/950DT/910B/310P)构造函数同步更新 4. 核心修复 - Ascend950DeviceContext.cpp:679:AclrtSetDeviceWrapper(m_device_id) → AclrtSetDeviceWrapper(m_virtual_device_id),相关日志/错误信息同步更新 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过**  ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!205 | 2 天前 | |
[runtimes] Correctly apply libdir subdir for multilib (#93354) We weren't applying the libdir subdir to header directories but this is necessary for correctness when building e.g. ASan variant. This change also updates path construction logic accross all runtimes and ensures they're consistent. | 2 年前 | |
[feature] 修改cmake版本限制 Co-authored-by: AiBoGe<zhangjunbo17@huawei.com> # message auto-generated for no-merge-commit merge: !182 merge cmake_dev into master [feature] 修改cmake版本限制 Created-by: AiBoGe Commit-by: AiBoGe Merged-by: ascend-robot Description: ### 1. 修改描述 **修改原因:** https://gitcode.com/Ascend/msdebug/issues/90 - **修改方案:** 去除限制,修复cmake高版本编译带来的错误。这里主要是由于低版本的warning在高版本会变成error - **修改内容:** CMakeLists.txt - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) 4.2.1版本  4.2.0版本  4.3.4版本  - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!182 | 18 天前 | |
Fix sign of largest known divisor of div. (#100081) There's a missing abs, so it returns a negative value if the divisor is negative. Later this is then cast to uint. | 1 年前 | |
[feature] 在MI stopped事件中输出当前core的thread-dim信息 Co-authored-by: wiyr0<wangyixian3@huawei.com> # message auto-generated for no-merge-commit merge: !185 merge feature/print-thread-dim into master [feature] 在MI stopped事件中输出当前core的thread-dim信息 Created-by: wiyr0 Commit-by: wiyr0 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** msdebug-mi需要输出simt_vf的thread_dim信息 - **修改方案:** 参照已有 is-device/is-simt 的输出模式,在 SBProcess 层新增接口获取当前停止 core 的 thread-dim,并在 MI 事件处理侧新增格式化辅助函数,将 thread-dim={x,y,z} 字段加入所有 stopped 类 OOB(Out-of-Band)记录。 - **修改内容:** 1. SBProcess.h/SBProcess.cpp:新增 GetSBCurrentCoreThreadDim(uint16_t &dim_x, uint16_t &dim_y, uint16_t &dim_z) 接口。实现上先通过 GetDeviceStopInfoCached 拿到当前 stop 的 core_id/core_type,再调 GetCoresInfo 取全量 core 信息,按 core_id + core_type 匹配出当前 core,返回其 thread_dim_x/y/z;进程无效或匹配不到则返回 false。 2. MICmnLLDBDebuggerHandleEvents.cpp:新增静态辅助 GetMiValueResultThreadDim,调用上述接口,成功时构造 thread-dim={x="..",y="..",z=".."} 的 MIValueTuple,失败时输出 thread-dim={} 占位。 3. 在以下 stopped 事件处统一追加 thread-dim 字段:断点停止 MiStoppedAtBreakPoint(两处)、观察点停止 MiStoppedAtWatchpoint(并补齐此前缺失的 is-device/is-simt)、trace 停止 HandleProcessEventStopReasonTrace(两处)。 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息)  - [ ] **冒烟是否通过**  ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!185 | 11 天前 | |
[cmake] Use DetectTestCompiler from openmp directory Fix the DetectTestCompiler project use to reference the openmp source tree, since the respective files were not copied to offload, and there is no point in duplicating them. Fixes #90333 | 1 年前 | |
[OpenMP][AArch64] Fix branch protection in microtasks (#102317) Start __kmp_invoke_microtask with PACBTI in order to identify the function as a valid branch target. Before returning, SP is authenticated. Also add the BTI and PAC markers to z_Linux_asm.S. With this patch, libomp.so can now be generated with DT_AARCH64_BTI_PLT when built with -mbranch-protection=standard. The implementation is based on the code available in compiler-rt. (cherry picked from commit 0aa22dcd2f6ec5f46b8ef18fee88066463734935) | 1 年前 | |
[feature] 更新版本号 Co-authored-by: l00617896<liusa2@huawei.com> # message auto-generated for no-merge-commit merge: !49 merge asc_version into master [feature] 更新版本号 Created-by: liusa002 Commit-by: l00617896 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 版本号更新 - **修改方案:** 从1.0.0更新为26.0.0 - **修改内容:** 出包version - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) 执行 python build.py,回显的版本号正确: Self-extractable archive "mindstudio-debugger_26.0.0_aarch64.run" successfully created. output下的run包名称也正确: mindstudio-debugger_26.0.0_aarch64.run 执行msdebug -v,回显正确: msdebug version 26.0.0-9d8def7 - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!49 | 3 个月前 | |
[IRBuilder] Don't include Module.h (NFC) (#97159) This used to be necessary to fetch the DataLayout, but isn't anymore. | 2 年前 | |
新增gitleaks检测工具 Co-authored-by: wiyr0<wangyixian3@huawei.com> # message auto-generated for no-merge-commit merge: !200 merge feature/add-gitleaks-scan into master 新增gitleaks检测工具 Created-by: wiyr0 Commit-by: wiyr0 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 为提升代码安全合规水平,防止 AK/SK、Token、私钥等敏感凭证被误提交入库,新增 gitleaks 密钥泄露检测能力,在本地 pre-commit 阶段对本次暂存变更进行离线扫描,实现“敏感信息不上库”的前置防护。 https://gitcode.com/Ascend/msot/issues/80 - **修改方案:** 1. 采用 gitleaks 本地离线二进制扫描方式(不依赖联网拉取规则仓库),在 pre-commit 框架中新增 repo: local、language: system 的 hook,入口为仓库根目录 ./gitleaks 二进制,执行protect 子命令对暂存变更进行检测。 2. 新增配置文件 pre-commit/.gitleaks.toml,通过 [extend] useDefault = true 标准继承 gitleaks 内置全套默认检测规则(AWS/Git/SSH/OBS 等),当前不新增、不屏蔽任何规则;并内置占位白名单与行内/文件级告警屏蔽语法示例,便于后续按业务需要扩展。 3. 启用 --redact 对命中密钥脱敏输出,避免日志二次泄露;扫描仅在 pre-commit 阶段触发,不影响现有其它检查项。 - **修改内容:** 1. .pre-commit-config.yaml:在 repos: 末尾新增 gitleaks 本地离线扫描 hook(id: gitleaks-offline-scan,entry: ./gitleaks,args: protect --verbose --redact --config=pre-commit/. gitleaks.toml,stages: [pre-commit]),新增 14 行。 2. pre-commit/.gitleaks.toml:新增文件(83 行),gitleaks 自定义配置:继承默认规则 + 全局白名单占位 + 行内/文件级告警屏蔽用法示例 + 全局扫描参数(minEntropy/redact/maxMatchLength/scanGitHistory 等)。 - [ ] **涉及代码双合**(贴上另一个PR链接):NA ---- ### 2. 功能验证 - [x] **功能自验截图**(请确保不体现个人信息) 不涉及 - [x] **冒烟是否通过** 不涉及 ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [x] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** 不涉及 - [ ] **是否需要在sig会议中进行代码检视** 不涉及 - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 不涉及 ---- See merge request: Ascend/msdebug!200 | 9 天前 | |
Revise IDE folder structure (#89755) Update the folder titles for targets in the monorepository that have not seen taken care of for some time. These are the folders that targets are organized in Visual Studio and XCode ( set_property(TARGET <target> PROPERTY FOLDER "<title>")) when using the respective CMake's IDE generator. * Ensure that every target is in a folder * Use a folder hierarchy with each LLVM subproject as a top-level folder * Use consistent folder names between subprojects * When using target-creating functions from AddLLVM.cmake, automatically deduce the folder. This reduces the number of set_property/set_target_property, but are still necessary when add_custom_target, add_executable, add_library, etc. are used. A LLVM_SUBPROJECT_TITLE definition is used for that in each subproject's root CMakeLists.txt. | 2 年前 | |
[CMake] Use Clang to infer the target triple (#89425) When using Clang as a compiler, use Clang to normalize the triple that's used to construct path for runtime library build and install paths. This ensures that paths are consistent and avoids the issue where the build uses a different triple spelling. Differential Revision: https://reviews.llvm.org/D140925 | 1 年前 | |
[feature]: makeself仓切换到v2.5.0.x分支 Co-authored-by: h-glue<huangguang9@h-partners.com> # message auto-generated for no-merge-commit merge: !78 merge submodule_makeself into master [feature]: makeself仓切换到v2.5.0.x分支 Created-by: h-glue Commit-by: h-glue Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 原makeself仓会有grep stray \ before -告警 https://gitcode.com/Ascend/msot/issues/34 - **修改方案:** 切换到新分支v2.5.0.x - **修改内容:** - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!78 | 3 个月前 | |
Revert "demangle function names in trace files (#87626)" This reverts commit 0fa20c55b58deb94090985a5c5ffda4d5ceb3cd1. Storing raw symbol names is generally preferred in profile files. Demangling might lose information. Language frontends might use demangling schemes not supported by LLVMDemangle (https://github.com/llvm/llvm-project/issues/45901#issuecomment-2008686663). In addition, calling demangle for each function has a significant performance overhead (#102222). I believe that even if we decide to provide a producer-side demangling, it would not be on by default. Pull Request: https://github.com/llvm/llvm-project/pull/102274 (cherry picked from commit 72b73e23b6c36537db730ebea00f92798108a6e5) | 1 年前 | |
Revert "Title: [RISCV] Add missing part of instruction vmsge {u}. VX Review By: craig.topper Differential Revision : https://reviews.llvm.org/D100115" This reverts commit 4d9ccb18f50803a1aa9c0332dc72472bdfec8bc4. | 5 年前 | |
Disable clang-tidy misc-include-cleaner (#83945) This does not apply well to LLVM which intentionally rely on forward declarations. Also depending on the config flags passed to CMake the result can be different. | 2 年前 | |
[lldb][nfc] add an nfc entry to the .git-blame-ignore-revs. | 1 年前 | |
[libc++] Format the code base (#74334) This patch runs clang-format on all of libcxx/include and libcxx/src, in accordance with the RFC discussed at [1]. Follow-up patches will format the benchmarks, the test suite and remaining parts of the code. I'm splitting this one into its own patch so the diff is a bit easier to review. This patch was generated with: find libcxx/include libcxx/src -type f \ | grep -v 'module.modulemap.in' \ | grep -v 'CMakeLists.txt' \ | grep -v 'README.txt' \ | grep -v 'libcxx.imp' \ | grep -v '__config_site.in' \ | xargs clang-format -i A Git merge driver is available in libcxx/utils/clang-format-merge-driver.sh to help resolve merge and rebase issues across these formatting changes. [1]: https://discourse.llvm.org/t/rfc-clang-formatting-all-of-libc-once-and-for-all | 2 年前 | |
added all modifications made for msdebug | 6 个月前 | |
[feature]: makeself仓切换到v2.5.0.x分支 Co-authored-by: h-glue<huangguang9@h-partners.com> # message auto-generated for no-merge-commit merge: !78 merge submodule_makeself into master [feature]: makeself仓切换到v2.5.0.x分支 Created-by: h-glue Commit-by: h-glue Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 原makeself仓会有grep stray \ before -告警 https://gitcode.com/Ascend/msot/issues/34 - **修改方案:** 切换到新分支v2.5.0.x - **修改内容:** - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!78 | 3 个月前 | |
.mailmap: add second entry for self | 2 年前 | |
新增gitleaks检测工具 Co-authored-by: wiyr0<wangyixian3@huawei.com> # message auto-generated for no-merge-commit merge: !200 merge feature/add-gitleaks-scan into master 新增gitleaks检测工具 Created-by: wiyr0 Commit-by: wiyr0 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 为提升代码安全合规水平,防止 AK/SK、Token、私钥等敏感凭证被误提交入库,新增 gitleaks 密钥泄露检测能力,在本地 pre-commit 阶段对本次暂存变更进行离线扫描,实现“敏感信息不上库”的前置防护。 https://gitcode.com/Ascend/msot/issues/80 - **修改方案:** 1. 采用 gitleaks 本地离线二进制扫描方式(不依赖联网拉取规则仓库),在 pre-commit 框架中新增 repo: local、language: system 的 hook,入口为仓库根目录 ./gitleaks 二进制,执行protect 子命令对暂存变更进行检测。 2. 新增配置文件 pre-commit/.gitleaks.toml,通过 [extend] useDefault = true 标准继承 gitleaks 内置全套默认检测规则(AWS/Git/SSH/OBS 等),当前不新增、不屏蔽任何规则;并内置占位白名单与行内/文件级告警屏蔽语法示例,便于后续按业务需要扩展。 3. 启用 --redact 对命中密钥脱敏输出,避免日志二次泄露;扫描仅在 pre-commit 阶段触发,不影响现有其它检查项。 - **修改内容:** 1. .pre-commit-config.yaml:在 repos: 末尾新增 gitleaks 本地离线扫描 hook(id: gitleaks-offline-scan,entry: ./gitleaks,args: protect --verbose --redact --config=pre-commit/. gitleaks.toml,stages: [pre-commit]),新增 14 行。 2. pre-commit/.gitleaks.toml:新增文件(83 行),gitleaks 自定义配置:继承默认规则 + 全局白名单占位 + 行内/文件级告警屏蔽用法示例 + 全局扫描参数(minEntropy/redact/maxMatchLength/scanGitHistory 等)。 - [ ] **涉及代码双合**(贴上另一个PR链接):NA ---- ### 2. 功能验证 - [x] **功能自验截图**(请确保不体现个人信息) 不涉及 - [x] **冒烟是否通过** 不涉及 ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [x] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** 不涉及 - [ ] **是否需要在sig会议中进行代码检视** 不涉及 - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 不涉及 ---- See merge request: Ascend/msdebug!200 | 9 天前 | |
[feature] 修改cmake版本限制 Co-authored-by: AiBoGe<zhangjunbo17@huawei.com> # message auto-generated for no-merge-commit merge: !182 merge cmake_dev into master [feature] 修改cmake版本限制 Created-by: AiBoGe Commit-by: AiBoGe Merged-by: ascend-robot Description: ### 1. 修改描述 **修改原因:** https://gitcode.com/Ascend/msdebug/issues/90 - **修改方案:** 去除限制,修复cmake高版本编译带来的错误。这里主要是由于低版本的warning在高版本会变成error - **修改内容:** CMakeLists.txt - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) 4.2.1版本  4.2.0版本  4.3.4版本  - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!182 | 18 天前 | |
[llvm] Add CODE_OF_CONDUCT.md (#65816) Add a CODE_OF_CONDUCT.md file to the root of the repository. The file itself references the LLVM Community Code of Conduct. GitHub will recognize this file and put a link to it to the right of the repository, similar to the license and security policy, making the CoC easier to discover. | 2 年前 | |
Update CONTRIBUTING.md to remove the not about not accepting PR | 2 年前 | |
【doc】资料易用性优化更新 Co-authored-by: luyq11<luyiqian4@h-partners.com> # message auto-generated for no-merge-commit merge: !82 merge master into master 【doc】资料易用性优化更新 Created-by: luyq11 Commit-by: luyq11 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 大模型检测低错修改 - **修改方案:** 详见资料修改 - **修改内容:** 见资料修改 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 见资料修改 ---- See merge request: Ascend/msdebug!82 | 3 个月前 | |
Initial commit Signed-off-by: gong-siwei <gongsiwei@huawei.com> | 6 个月前 | |
[doc]: AIDD扫描,文档整改 Co-authored-by: h-glue<huangguang9@h-partners.com> # message auto-generated for no-merge-commit merge: !169 merge issue_prob into master [doc]: AIDD扫描,文档整改 Created-by: h-glue Commit-by: h-glue Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** https://gitcode.com/Ascend/msot/issues/57 扫出低级问题一个,修复issue链接错误 - **修改方案:** - **修改内容:** - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** ---- See merge request: Ascend/msdebug!169 | 1 个月前 | |
【doc】英文文档合入 Co-authored-by: luyq11<luyiqian4@h-partners.com> # message auto-generated for no-merge-commit merge: !149 merge master into master 【doc】英文文档合入 Created-by: luyq11 Commit-by: luyq11 Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 英文文档合入 - **修改方案:** - **修改内容:** - [ ] **涉及代码双合**(贴上另一个PR链接): ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备UT测试用例看护** - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** https://gitcode.com/Ascend/msot/issues/51 ---- See merge request: Ascend/msdebug!149 | 1 个月前 | |
[docs] Describe reporting security issues on the chromium tracker. To track security issues, we're starting with the chromium bug tracker (using the llvm project there). We considered using Github Security Advisories. However, they are currently intended as a way for project owners to publicize their security advisories, and aren't well-suited to reporting issues. This also moves the issue-reporting paragraph to the beginning of the document, in part to make it more discoverable, in part to allow the anchor-linking to actually display the paragraph at the top of the page. Note that this doesn't update the concrete list of security-sensitive areas, which is still an open item. When we do, we may want to move the list of security-sensitive areas next to the issue-reporting paragraph as well, as it seems like relevant information needed in the reporting process. Finally, when describing the discission medium, this splits the topics discussed into two: the concrete security issues, discussed in the issue tracker, and the logistics of the group, in our mailing list, as patches on public lists, and in the monthly sync-up call. While there, add a SECURITY.md page linking to the relevant paragraph. Differential Revision: https://reviews.llvm.org/D100873 | 5 年前 | |
[feature]:新构建方案适配,统一构建入口,提升易用性 Co-authored-by: mengguangxin<mgx0018@163.com> # message auto-generated for no-merge-commit merge: !174 merge build_618 into master [feature]:新构建方案适配,统一构建入口,提升易用性 Created-by: mengguangxin Commit-by: mengguangxin Merged-by: ascend-robot Description: # 1. 修改描述 - **修改原因:** 适配统一新构建镜像和构建工程 - **修改方案:** 统一接口 - **修改内容:** 统一版本号和预留扩展参数,统一输出路径 - [ ] **涉及代码双合**(贴上另一个PR链接): ---- # 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) NA - [ ] **冒烟是否通过** 是 ---- # 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** 是 - [ ] **是否具备UT测试用例看护** NA - [ ] **是否需要在sig会议中进行代码检视** 否 - **检视committer人员名单与检视时间:** ---- # 4. 资料修改自检 - **资料修改:** NA ---- See merge request: Ascend/msdebug!174 | 26 天前 | |
【feature】统一优化下载机制,解决UT编译、挂死及失败问题 Co-authored-by: mengguangxin<mgx0018@163.com> # message auto-generated for no-merge-commit merge: !32 merge dev_0301 into master 【feature】统一优化下载机制,解决UT编译、挂死及失败问题 Created-by: mengguangxin Commit-by: mengguangxin Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 原有的单元测试代码存在多处问题导致测试无法通过: (1) AscendProcessLinuxTest 中的 AscendProcessLinux 构造函数签名已变更(从 Factory+MainLoop+socket 方式改为 Manager 方式),但测试未同步适配,导致编译失败; (2) SetBreakpoint 测试中 soc_version 使用了 "test" 这一未注册的值,无法通过工厂方法创建 DeviceContext,导致运行时报 "device context is null!" 错误; (3) GDB Remote 相关测试使用 GDBRemoteCommunication::ConnectLocally 进行 TCP 监听连接,在某些环境下不稳定或不可用; (4) TestClient 使用 --reverse-connect + TCP Listen/Accept 方式启动 lldb-server,存在端口竞争和环境兼容性问题; (5) DWARFExpressionTest 的 ReadMemory 方法签名缺少新增的 MemoryReaderParamClient 参数,导致编译失败; (6) NativeProcessTestUtils.h 中的 mock delegate 缺少新增的接口方法声明; (7) UT 运行时缺少 LD_LIBRARY_PATH 环境变量,导致动态库找不到。 (8) 新的依赖下载机制需要各仓统一同步 - **修改方案:** (1) 适配 AscendProcessLinux 新的构造函数接口,将 Factory+MainLoop+socket 替换为 Manager,去除 socket 通信相关的逻辑,改为直接调用 m_parser.ParseMessage 进行消息注入; (2) 新增 FakeDeviceContext 类继承 DeviceContext,重写关键虚方法以绕过真实设备初始化和地址校验,在 SetBreakpoint 测试中直接注入到 process->m_device_context; (3) 在 GDBRemoteTestUtils.h 中新增 ConnectLocallyViaSocketPair 工具函数,使用 socketpair 替代 TCP 监听方式建立本地连接,并将 GDB Remote 测试中的 ConnectLocally 调用统一替换; (4) 重构 TestClient 启动逻辑,使用 socketpair + --fd 参数替代 --reverse-connect + TCP Listen/Accept; (5) 补全 DWARFExpressionTest 中 ReadMemory 方法的新参数; (6) 在 NativeProcessTestUtils.h 的 mock delegate 中补充 SetSingleCoreRunFlag、SetClientDeviceId、ReadDeviceRegisterValueByName、ReadDeviceRegisterList 等新增接口的 mock 声明; (7) 在 lit.cfg.py 中追加 LD_LIBRARY_PATH 环境变量指向构建产物的 lib 目录。 (8) 同步统一依赖下载机制 - **修改内容:** (1) **lldb/unittests/Process/Linux/AscendProcessLinuxTest.cpp**:将 #include "AscendProcessLinux.h" 移至 #define private public 之后以暴露私有成员;删除 NativeProcessFactory 类型别名,新增 FakeDeviceContext 类(实现 Init、ReadGlobalMemory、WriteGlobalMemory、InvalidInstrCache 等方法的桩/mock 逻辑);HandleStubMessage 和 SetBreakpoint 两个测试用例中,将构造函数从 (pid, fd, gdb_server, arch, mainloop, tids, socket) 改为 (pid, fd, gdb_server, arch, manager, tids),去除 socket 读写方式的消息传递,改为直接调用 m_parser.ParseMessage;SetBreakpoint 测试新增 process->m_device_context = std::make_shared<FakeDeviceContext>() 注入,移除不再需要的 CMD_SQ_SEND/CMD_CQ_RECV mock 期望。 (2) **lldb/unittests/tools/lldb-server/tests/TestClient.cpp**:新增 #include <sys/socket.h>;移除 --reverse-connect 参数和 TCP Listen/Accept 逻辑,改用 socketpair 创建 socket 对,通过 --fd= 参数将 server 端 fd 传递给 lldb-server 子进程;使用 AppendDuplicateFileAction 保留 fd 继承;连接建立后关闭 server 端 fd,用 client 端 fd 构造 TCPSocket 作为通信连接;inferior 参数改为通过 SetInferior 方法设置。 (3) **lldb/unittests/Process/gdb-remote/GDBRemoteTestUtils.h**:新增 #include <sys/socket.h>、TCPSocket.h、ConnectionFileDescriptorPosix.h;新增 ConnectLocallyViaSocketPair 内联函数,使用 socketpair 创建 Unix 域 socket 对并分别设置为 client/server 的连接。 (4) **lldb/unittests/Process/gdb-remote/GDBRemoteClientBaseTest.cpp、GDBRemoteCommunicationClientTest.cpp、GDBRemoteCommunicationTest.cpp**:将 SetUp 中的 GDBRemoteCommunication::ConnectLocally 替换为 ConnectLocallyViaSocketPair。 (5) **lldb/unittests/Expression/DWARFExpressionTest.cpp**:ReadMemory 方法签名新增 MemoryReaderParamClient param = {} 默认参数,适配上游接口变更。 (6) **lldb/unittests/TestingSupport/Host/NativeProcessTestUtils.h**:在 MS_DEBUGGER 宏分支内新增 SetSingleCoreRunFlag、SetClientDeviceId、ReadDeviceRegisterValueByName、ReadDeviceRegisterList 的 MOCK 方法声明,并添加 ReadDeviceRegisterValue(StringRef, uint64_t&) 的转发实现。 (7) **lldb/test/Unit/lit.cfg.py**:新增 LD_LIBRARY_PATH 环境变量配置,将 config.llvm_obj_root/lib 追加到库搜索路径中,确保 UT 运行时能找到动态链接库。 - [ ] **涉及代码双合**(贴上另一个PR链接):无 ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息)  - [ ] **冒烟是否通过** 是 ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** 是 - [ ] **是否具备UT测试用例看护** 是 - [ ] **是否需要在sig会议中进行代码检视** 否 - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 不涉及 ---- See merge request: Ascend/msdebug!32 | 4 个月前 | |
[feature] 文档优化重构,提升易用性 Co-authored-by: mengguangxin<mgx0018@163.com> # message auto-generated for no-merge-commit merge: !61 merge dev_0331 into master [feature] 文档优化重构,提升易用性 Created-by: mengguangxin Commit-by: mengguangxin Merged-by: ascend-robot Description: ### 1. 修改描述 - **修改原因:** 按资料模板刷新,同步统一的download_dependencies.py修改 - **修改方案:** 按最新模板刷新资料,同步统一的修改 - **修改内容:** 按最新模板刷新资料,同步统一的修改 - [ ] **涉及代码双合**(贴上另一个PR链接):无 ---- ### 2. 功能验证 - [ ] **功能自验截图**(请确保不体现个人信息) - [ ] **冒烟是否通过** 不涉及 ---- ### 3. 代码检视 - **要求:** - 合入功能代码大于 200 行,需要sig会议申报代码检视议题,并在PR中标注会议。 - committer评估是否需要在sig会议进行代码检视。 - 参与检视的committer人员名单与检视时间。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** 是 - [ ] **是否具备UT测试用例看护** 不涉及 - [ ] **是否需要在sig会议中进行代码检视** - **检视committer人员名单与检视时间:** ---- ### 4. 资料修改自检 - **资料修改:** 需要资料人员luyq11评审 ---- See merge request: Ascend/msdebug!61 | 3 个月前 | |
[Py Reformat] Exclude third-party from reformat (#83491) | 2 年前 |
MindStudio Debugger
✨ 最新消息
🔹 [2025.12.31]:MindStudio Debugger 项目全面开源
️ ℹ️ 简介
MindStudio Debugger(算子调试工具,msDebug)是基于 LLVM 编译器基础设施构建、面向昇腾设备的算子调试工具,用于调试在 NPU 侧运行的算子程序,为开发者提供关键调试能力,包括读取昇腾设备内存与寄存器、暂停与恢复程序执行状态等。
⚙️ 功能介绍
msDebug工具支持调试所有的昇腾算子,包含Ascend C算子(Vector、Cube以及Mix融合算子)程序,用户可根据实际情况进行选择,支持的功能如下:
| 功能名称 | 功能描述 |
|---|---|
| 断点设置 | 可在算子的运行程序上设置行断点,即在算子代码文件的特定行号上设置断点。 |
| 打印变量和内存 | 根据变量类型和用法,变量可以存储在寄存器中或存储在Local Memory、Global Memory内存中,用户可以打印变量的地址以找出它的存储位置并进一步打印关联的内存。 |
| 单步调试 | 需要了解代码执行具体情况时,可进行单步调试。 |
| 中断运行 | 当算子运行程序卡顿时,手动中断算子运行程序并回显中断位置信息。 |
| 核切换 | 可将当前聚焦的核切换至指定的核,切核后会自动展示指定核代码中断处的位置。 |
| 检查程序状态 | 当调起算子后,可读取当前断点所在设备的寄存器值,检查程序状态。 |
| 调试信息展示 | 查询算子运行的设备信息。 |
| 解析Core dump文件 | 通过对异常算子dump文件的解析,即使在没有主动压测的情况下也能收集到足够的数据用于问题分析。 |
🌌 智能检索
为提升文档查阅效率,我们提供多种高效检索方式: 🔹 AI 问答(DeepWiki):自然语言问答,快速把握项目架构与模块关系。 🔹 AI 问答(ZRead):中文问答体验更优,精准定位功能用法与细节。 🔹 精确搜索(ReadTheDocs):关键词全文检索,直达接口、参数与报错等信息。
🚀 快速入门
详细操作步骤请参见《msDebug 快速入门》。
📦 安装指南
介绍工具的环境依赖与安装方法,请参见《msDebug 安装指南》。
📘 使用指南
工具的详细使用方法,请参见《msDebug 使用指南》。
💡 典型案例
通过典型问题场景帮助用户理解并掌握工具使用,请参见《msDebug 典型案例》。
❓ FAQ
常见问题及解决方案,请参见《msDebug FAQ》。
🛠️ 贡献指南
欢迎参与项目贡献,请参见《贡献指南》。
⚖️ 相关说明
🔹《版本说明》 🔹《许可证声明》 🔹《安全声明》 🔹《免责声明》
🤝 建议与交流
欢迎大家为社区做贡献。如果有任何疑问或建议,请提交 Issues,我们会尽快回复。感谢您的支持。
| 即时互动(微信群) | 官方资讯(公众号) | 深度支持(助手/论坛) |
|---|---|---|
![]() 扫码加入技术交流群 |
![]() 扫码关注官方公众号 |
扫码入群并关注公众号,直达 MindStudio 用户与开发者最快捷的交流平台: 快速提问: 与社区小伙伴即时探讨技术问题 掌握动态: 第一时间获取版本发布与功能更新通知 经验共享: 与广大开发者交流最佳实践与实战心得 更多支持渠道:👉 昇腾助手: |
🙏 致谢
本工具由华为公司的下列部门联合贡献: 🔹 昇腾计算MindStudio开发部 🔹 昇腾计算生态使能部 🔹 华为云昇腾云服务 🔹 2012编译器实验室 🔹 2012马尔科夫实验室 感谢来自社区的每一个 PR,欢迎贡献!

