LLVM-DWARFUTIL(1) LLVM LLVM-DWARFUTIL(1)

llvm-dwarfutil - ابزاری برای رونویسی و دستکاری اطلاعات اشکال‌زدایی

llvm-dwarfutil [options] input output

دستور llvm-dwarfutil ابزاری برای رونویسی و دستکاری اطلاعات اشکال‌زدایی (debug info) است.

در کاربرد پایه‌ای، این ابزار یک رونوشت معنایی از ورودی به خروجی تهیه می‌کند. در صورت مشخص شدن هر گزینه‌ای، ممکن است خروجی در طول فرایند تغییر یابد؛ برای نمونه از طریق حذف اطلاعات اشکال‌زدایی بلااستفاده.

اگر برای فایل ورودی عبارت "-" مشخص شود، ورودی از جریان ورودی استاندارد برنامه خوانده می‌شود. اگر برای فایل خروجی عبارت "-" مشخص شود، خروجی در جریان خروجی استاندارد برنامه نوشته خواهد شد.

این ابزار همچنان در دست توسعهٔ فعال است.

بخش‌هایی از اطلاعات اشکال‌زدایی مربوط به بخش‌های دور ریخته‌شده را حذف می‌کند. هنگامی که پیونددهنده عمل پاک‌سازی بخش‌های بلااستفاده (section garbage collection) را انجام می‌دهد، اطلاعات اشکال‌زدایی رهاشده بر جای می‌ماند. چنین اطلاعاتی با استفاده از مقادیر سنگ قبر (tombstone values) به بازه‌های آدرس ارجاع می‌دهند. از این رو، با مشخص کردن این گزینه، ابزار اطلاعات اشکال‌زدایی علامت‌گذاری‌شده با مقدار tombstone را حذف می‌کند.

این گزینه به صورت پیش‌فرض فعال است.

انواع (types) تکراری را حذف می‌کند (در صورتی که قاعدهٔ تعریف یگانه یا "One Definition Rule" توسط زبان مبدأ پشتیبانی شود). نخستین تعریف نوع را نگه می‌دارد و سایر تعریف‌ها را حذف می‌کند، که به طور بالقوه حجم اطلاعات اشکال‌زدایی خروجی را به طور چشمگیری کاهش می‌دهد.

این گزینه به صورت پیش‌فرض فعال است.

نمایش خلاصه‌ای از گزینه‌های خط فرمان.
غیرفعال کردن --garbage-collection.
غیرفعال کردن --odr-deduplication.
غیرفعال کردن --separate-debug-file.
حداکثر تعداد (n) رشته‌های هم‌روند (threads) هم‌زمان را برای استفاده در پردازش مشخص می‌کند.
تولید یک فایل جداگانه حاوی اطلاعات اشکال‌زدایی خروجی. استفاده از llvm-dwarfutil با این گزینه معادل با مجموعه دستورهای زیر است:
:program:`llvm-objcopy` --only-keep-debug in-file out-file.debug
:program:`llvm-objcopy` --strip-debug in-file out-file
:program:`llvm-objcopy` --add-gnu-debuglink=out-file.debug out-file
مقدار <value> می‌تواند یکی از مقادیر زیر باشد:
  • bfd: صفر برای تمام آدرس‌ها و [1,1] برای بازه‌های آدرس DWARF v4 (یا کمتر) و exec.
  • maxpc: مقدار -1 برای تمام آدرس‌ها و -2 برای بازه‌های آدرس DWARF v4 (یا کمتر).
  • universal: هر دو مقدار bfd و maxpc.
  • exec: تطبیق با بازه‌های آدرس بخش‌های اجرایی (executable).

مقدار universal به صورت پیش‌فرض استفاده می‌شود.

فعال‌سازی گزارش‌گیری مشروح (verbose). این گزینه حالت چندرشته‌ای را غیرفعال می‌کند.
اجرای اعتبارسنج DWARF روی اطلاعات اشکال‌زدایی DWARF خروجی.
نمایش نسخهٔ این برنامه.

قالب‌های زیر در حال حاضر توسط llvm-dwarfutil پشتیبانی می‌شوند:

ELF

در صورت بروز خطا، llvm-dwarfutil با یک کد خروج غیرصفر خارج می‌شود. در غیر این صورت، با کد 0 خارج می‌شود.

برای گزارش باگ‌ها، لطفاً به نشانی <https://github.com/llvm/llvm-project/labels/tools:llvm-dwarfutil> مراجعه کنید.

توسط تیم LLVM نگهداری می‌شود (https://llvm.org).

2003-2026, LLVM Project

2026-07-15 22