Valgrind เป็นโปรแกรมที่มาเปิดที่ช่วยให้นักพัฒนาซอฟต์แวร์ที่มีหนึ่งที่ดีที่สุดและเครื่องมือที่ใช้มากที่สุดสำหรับการค้นพบโดยอัตโนมัติของเกลียวหน่วยความจำและข้อบกพร่องในการบริหารจัดการโครงการของพวกเขา
ในคำอื่น ๆ ก็สามารถนำมาใช้เพื่อช่วยเพิ่มความเร็วในโปรแกรมของคุณ มัน & rsquo; กับการประยุกต์ใช้บรรทัดคำสั่งวิ่งเฉพาะในคอนโซลลินุกซ์หรือคุณสมบัติสถานี X11 emulator.State ของศิลปะและคุณลักษณะ functionalityKey รวมถึงเครื่องตรวจจับข้อผิดพลาดของหน่วยความจำ Profiler กองสาขาทำนายและ Profiler แคชตรวจจับข้อผิดพลาดด้าย เช่นเดียวกับการเรียกร้องการสร้างกราฟสาขาทำนายและ Profiler แคช
นอกจากนี้ยังมาพร้อมกับเครื่องมือการทดลองหลายอย่างเช่นอาเรย์ระดับโลกและสแต็คบุกรุกตรวจจับ SimPoint กำเนิดเวกเตอร์บล็อกขั้นพื้นฐานและกองที่สอง Profiler
โปรแกรมสนับสนุนที่หลากหลายของโปรแกรมที่เขียนในภาษาโปรแกรมที่แตกต่างกันเช่น C, C ++, Python, Perl, Java, Fortran, รหัสการชุมนุมและอื่น ๆ อีกมากมาย
มัน & rsquo; s ประกอบด้วยสาธารณูปโภคที่มีประโยชน์หลายหน่วยความจำสำหรับการดีบักโปรไฟล์และการตรวจสอบการรั่วไหลของหน่วยความจำ เหล่านี้รวมถึง Memcheck, Addrcheck, Cachegrind, Callgrind, ไม่มี, เทือกเขาประสบการณ์-sgcheck, ประสบการณ์-BBV, ประสบการณ์-Dhat, helgrind และ DRD
มันทำงานได้ดีบน GNU / Linux, Android, Mac OS X ระบบปฏิบัติการ สถาปัตยกรรมที่รองรับ ได้แก่ 86, amd64, ARM, PPC32, PPC64, s390x, MIPS32, MIPS64 และ ARM.Availability และภายใต้โครงการ hoodThe สามารถดาวน์โหลดได้จากเฉพาะส่วน (ดูด้านบน) เป็นเพียงการเก็บแหล่งที่มาซึ่งสามารถกำหนดค่า รวบรวมและติดตั้งบนระบบปฏิบัติการใด ๆ Linux-based
อย่างไรก็ตามผู้ใช้สามารถติดตั้ง Valgrind โดยตรงจากที่เก็บซอฟแวร์เริ่มต้นของการกระจาย Linux ของพวกเขา ระบบปฏิบัติการที่รองรับ ได้แก่ Debian, Red Hat, Mandriva, openSUSE, Arch Linux, Slackware, Gentoo และสรุป others.Bottom อัศวินวิจิตร, Valgrind เป็นโปรแกรมที่ไม่ซ้ำกันที่ควรจะนำมาใช้โดยนักพัฒนาซอฟต์แวร์ใด ๆ เพื่อเพิ่มความเร็วในโปรแกรมของพวกเขาและกำจัดข้อผิดพลาดที่น่ารังเกียจและหน่วยความจำ การรั่วไหล
มัน & rsquo; s ได้รับรางวัลชนะเลิศซอฟต์แวร์ที่ได้รับการใช้ประสบความสำเร็จเพื่อการวิจัยที่ MIT, เคมบริดจ์, UC Berkeley, คาร์เนกีเมลลอน UC Santa Barbara, คอร์เนลและมหาวิทยาลัยอื่น ๆ อีกมากมายทั่วโลก
- 3.10.1 เป็นรุ่นแก้ไขข้อผิดพลาด มันแก้ไขข้อบกพร่องต่าง ๆ รายงานใน 3.10.0 และแก้ไข backports ทั้งหมดรายงานว่าหายไปคำแนะนำ AArch64 ARMv8 และ syscalls จากลำต้น ถ้าคุณแพคเกจหรือส่งมอบ 3.10.0 สำหรับคนอื่น ๆ ที่จะใช้คุณอาจต้องการที่จะพิจารณาในการอัพเกรด 3.10.1 แทน.
มีอะไรใหม่ ในรุ่น 3.10.0:
- 3.10.0 เป็นรุ่นพร้อมการปรับปรุงหลายอย่าง และคอลเลกชันปกติของการแก้ไขข้อผิดพลาด.
- ข่าวประชาสัมพันธ์ฉบับนี้สนับสนุน X86 / Linux, AMD64 / Linux, ARM32 / Linux, ARM64 / Linux, PPC32 / Linux, PPC64BE / Linux, PPC64LE / Linux, S390X / Linux, MIPS32 / Linux, MIPS64 / Linux, ARM / Android, MIPS32 / Android, X86 / Android, X86 / MacOSX 10.9 และ AMD64 / MacOSX 10.9 การสนับสนุนสำหรับระบบปฏิบัติการ MacOSX 10.8 และ 10.9 จะดีขึ้นอย่างมีนัยสำคัญเมื่อเทียบกับการปล่อย 3.9.0.
มีอะไรใหม่ ในรุ่น 3.9.0:
- ข่าวประชาสัมพันธ์ฉบับนี้สนับสนุน X86 / Linux, AMD64 / ลินุกซ์ , ARM / Linux, PPC32 / Linux, PPC64 / Linux, S390X / Linux, MIPS32 / Linux, MIPS64 / Linux, ARM / Android, X86 / Android, X86 / MacOSX 10.7 และ AMD64 / MacOSX 10.7 การสนับสนุนสำหรับ Mac OS X 10.8 จะดีขึ้นอย่างมีนัยสำคัญเมื่อเทียบกับการปล่อย 3.8.0.
- การเปลี่ยนแปลงแพลตฟอร์ม:
- การสนับสนุนสำหรับ MIPS64 LE และใช้ลินุกซ์ valgrind ได้รับการทดสอบในการบีบ MIPS64 Debian และเดวีซี่ดิสท.
- การสนับสนุนสำหรับ MIPS DSP ASE บนแพลตฟอร์ม MIPS32.
- การสนับสนุนสำหรับคำแนะนำ s390x ทศนิยม Floating Point ได้ที่โฮสต์ที่มีสิ่งอำนวยความสะดวก DFP ติดตั้ง.
- การสนับสนุนสำหรับ POWER8 (พาวเวอร์ ISA 2.07) คำแนะนำ
- การสนับสนุนสำหรับ Intel คำแนะนำ AVX2 นี้จะใช้ได้เฉพาะในรหัส 64 บิต.
- การสนับสนุนเริ่มต้นสำหรับการทำธุรกรรมการประสาน Intel ส่วนขยายทั้ง RTM และ HLE.
- เริ่มต้นสำหรับการสนับสนุนฮาร์ดแวร์หน่วยความจำในการทำธุรกรรมเพาเวอร์.
- การปรับปรุงการสนับสนุน MacOSX 10.8 (64 บิตเท่านั้น) Memcheck สามารถใช้แอพพลิเค GUI ขนาดใหญ่อดทนดี.
- การเปลี่ยนแปลงเครื่องมือ:
- Memcheck:
- การปรับปรุงในการจัดการของรหัส vectorised นำไปสู่การอย่างมีนัยสำคัญน้อยลงรายงานข้อผิดพลาดที่เป็นเท็จ คุณจำเป็นต้องใช้ธง --partial-โหลด-ok = ใช่ที่จะได้รับประโยชน์จากการเปลี่ยนแปลงเหล่านี้.
- การควบคุมดีกว่าการตรวจสอบการรั่วไหล ตอนนี้มันเป็นไปได้ที่จะระบุว่ารั่วชนิด (แน่นอน / อ้อม / เป็นไปได้ / สามารถเข้าถึงได้) ควรจะแสดงซึ่งควรได้รับการยกย่องว่าเป็นข้อผิดพลาดและที่ควรจะระงับโดยการปราบปรามการรั่วไหลที่กำหนด นี้จะกระทำโดยใช้ตัวเลือก --show รั่วชนิด-= kind1, kind2, .. , --errors สำหรับการรั่วไหลของชนิด = kind1, kind2 .. และตัวเลือก & quot; แข่งขันรั่ว-ชนิด: & quot; สายในรายการปราบปรามตามลำดับ โปรดทราบว่าสร้าง suppressions รั่วไหลมีเส้นใหม่นี้และดังนั้นจึงเฉพาะเจาะจงมากขึ้นกว่าในรุ่นก่อนหน้า เพื่อให้ได้ลักษณะการทำงานเช่นเดียวกับรุ่นก่อนหน้านี้เอา & quot; ตรงกับการรั่วไหลของชนิด: & quot; เส้นจาก suppressions สร้างขึ้นก่อนที่จะใช้พวกเขา.
- ลด & quot; รั่วไหลไปได้ & quot; รายงานจากการตรวจสอบการรั่วไหลจากการใช้การวิเคราะห์พฤติกรรมที่ดีขึ้น วิเคราะห์พฤติกรรมที่มีอยู่ให้มีการตรวจสอบภายในของตัวชี้ที่ถูกต้องเพื่อ std :: stdstring, ใหม่ [] จัดสรรอาร์เรย์ที่มีองค์ประกอบที่มี destructors และตัวชี้ชี้ไปที่การตกแต่งภายในส่วนด้านในของวัตถุ c ++ ใช้มรดกหลาย พวกเขาสามารถเลือกเป็นรายบุคคลโดยใช้ตัวเลือก --leak เช็คอินวิเคราะห์พฤติกรรม = heur1, heur2 ...
- การควบคุมที่ดีขึ้นของการเข้าซื้อกิจการ StackTrace สำหรับบล็อกจัดสรรกอง โดยใช้ตัวเลือก --keep-stacktraces ก็เป็นไปได้ที่จะควบคุมได้อย่างอิสระไม่ว่าจะเป็นกองติดตามจะได้รับสำหรับแต่ละการจัดสรรและ deallocation นี้สามารถใช้ในการสร้างที่ดีกว่า & quot; ใช้ฟรีหลังจากที่ & quot; ข้อผิดพลาดหรือเพื่อลดการใช้ทรัพยากรของ Valgrind โดยการบันทึกข้อมูลน้อย.
- การรายงานการใช้งานที่ดีขึ้นของการปราบปรามการรั่วไหล รายการ suppressions ใช้ (แสดงเมื่อเลือก v จะได้รับ) ในขณะนี้แสดงให้เห็นสำหรับแต่ละ suppressions รั่วกี่บล็อกและไบต์มันเก็บกดในระหว่างการค้นหารั่วสุดท้าย.
- helgrind:
- ข้อผิดพลาดเท็จเกิดจากการใช้ของ mutexes initialised แบบคงที่และตัวแปรสภาพ (PTHREAD_MUTEX_INITIALISER ฯลฯ ) ได้ถูกลบออก.
- ข้อผิดพลาดเท็จเกิดจากการใช้ pthread_cond_waits ว่าหมดเวลาที่ได้ถูกลบออก.
- การเปลี่ยนแปลงอื่น ๆ :
- ความพยายามที่จะปรับแต่ง Valgrind ความต้องการพื้นที่เพื่อความสามารถในการคาดหวังของเป้าหมายบาง:
- ขนาดเริ่มต้นของแคชแปลที่ได้รับการลดลงจาก 8 ภาค 6 บนแพลตฟอร์ม Android, ตั้งแต่แต่ละภาคหมกมุ่นอยู่กับเรื่อง 40MB เมื่อใช้ Memcheck.
- ขนาดเริ่มต้นของแคชแปลได้เพิ่มขึ้นถึง 16 ภาคบนแพลตฟอร์มอื่น ๆ ทั้งหมดสะท้อนให้เห็นถึงความเป็นจริงว่าการใช้งานขนาดใหญ่ที่ต้องใช้เครื่องมือและการจัดเก็บจำนวนมากของรหัส สำหรับเหตุผลที่คล้ายกันจำนวนของหน่วยความจำส่วนที่แมปที่สามารถติดตามได้เพิ่มขึ้นโดยปัจจัยที่ 6.
- ในทุกกรณีจำนวนสูงสุดของภาคในแคชแปลสามารถควบคุมได้โดยธงใหม่ --num-transtab-ภาค.
- การเปลี่ยนแปลงวิธีการข้อมูลการแก้ปัญหา (หมายเลขบรรทัด ฯลฯ ) คือการอ่าน:
- Valgrind ชั่วคราวไม่ mmaps วัตถุทั้งหมดที่จะอ่านจากมัน แทนการอ่านจะกระทำผ่านบัฟเฟอร์ขนาดเล็กคงที่ นี้หลีกเลี่ยง spikes การใช้งานหน่วยความจำเสมือนเมื่อ Valgrind อ่าน debuginfo จากวัตถุขนาดใหญ่ที่ใช้ร่วมกัน.
- การแก้ปัญหาระยะไกลใหม่ทดลองเซิร์ฟเวอร์ข้อมูล valgrind สามารถอ่านข้อมูลการแก้ปัญหาจากเครื่องที่แตกต่างกัน (โดยทั่วไปเป็นเจ้าภาพสร้าง) ที่วัตถุ debuginfo จะถูกเก็บไว้ นี้สามารถประหยัดเวลาและความยุ่งยากเมื่อทำงาน Valgrind กับเป้าหมายที่มีทรัพยากร จำกัด (โทรศัพท์มือถือ, แท็บเล็ต) เมื่อวัตถุ debuginfo เต็มรูปแบบจะถูกเก็บไว้ที่อื่น นี้จะเปิดใช้งานโดย --debuginfo เซิร์ฟเวอร์ตัวเลือก =.
- การตรวจสอบความสอดคล้องระหว่างวัตถุหลักและการแก้ปัญหาสามารถใช้งานโดยใช้ตัวเลือก --allow-ไม่ตรงกัน-debuginfo.
- คลี่คลายกองโดยการสแกนกองบนแขน คลี่คลายโดยการสแกนสแต็คสามารถกู้คืนร่องรอยสแต็คในบางกรณีเมื่อกลไกผ่อนคลายปกติล้มเหลว สแกน Stack อธิบายที่ดีที่สุดเป็น & quot; ที่น่ารังเกียจสับที่เป็นอันตรายและทำให้เข้าใจผิด & quot; และเพื่อให้มีการยกเลิกโดยปริยาย ใช้ --unw กอง-สแกนนวดข้าวและ --unw กองสแกนเฟรมที่จะเปิดใช้งานและควบคุมมัน.
- การตรวจสอบและความกลมกลืนของรอบกองกรอบ recursive เมื่อโปรแกรมของคุณมีขั้นตอนวิธีการเวียนเกิดข้อ จำกัด นี้หน่วยความจำที่ใช้โดย Valgrind ร่องรอยสแต็คที่บันทึกไว้และหลีกเลี่ยงการบันทึกการโทรซ้ำไม่น่าทึ่ง นี้ถูกควบคุมโดยเลือกบรรทัดคำสั่งผสาน-recursive กรอบและคำสั่งการตรวจสอบ & quot; v.set ผสาน-เฟรม recursive & quot;.
- ชื่อไฟล์และหมายเลขบรรทัดสำหรับ suppressions ใช้ รายการ suppressions ใช้ (แสดงเมื่อเลือก v จะได้รับ) ในขณะนี้แสดงให้เห็นในการปราบปรามแต่ละใช้ชื่อไฟล์และหมายเลขบรรทัดที่การปราบปรามมีการกำหนด.
- ใหม่และปรับเปลี่ยนเซิร์ฟเวอร์ GDB คุณสมบัติของจอภาพ:
- valgrind.h มีคำขอของลูกค้าใหม่ VALGRIND_MONITOR_COMMAND ที่สามารถใช้ในการรันคำสั่งการตรวจสอบ gdbserver จากโปรแกรมไคลเอนต์.
- คำสั่งการตรวจสอบใหม่ & quot;. v.info open_fds & quot ;, ที่ให้รายชื่อของอธิบายไฟล์ที่เปิดและรายละเอียดเพิ่มเติม
- ข้อความเพิ่มเติมใน & quot; v.info n_errs_found & quot; คำสั่งตรวจสอบเช่น & quot;. v.info ทดสอบ n_errs_found 1234 เสร็จ & quot ;, อนุญาตให้แสดงความคิดเห็นสตริงที่จะเพิ่มการส่งออกขั้นตอนอาจจะเพื่อวัตถุประสงค์ในการแยกความผิดพลาดของการทดสอบที่แตกต่างกันหรือขั้นตอนการทดสอบ
- คำสั่งการตรวจสอบใหม่ & quot; v.info execontext & quot; ที่แสดงข้อมูลเกี่ยวกับร่องรอยสแต็คที่บันทึกโดย Valgrind.
- คำสั่งการตรวจสอบใหม่ & quot; v.do expensive_sanity_check_general & quot; เพื่อให้ทำงานบางตรวจสอบความสอดคล้องภายใน.
- ธงใหม่ --sigill-การวินิจฉัยในการควบคุมไม่ว่าจะเป็นข้อความวินิจฉัยพิมพ์เมื่อ JIT พบการเรียนการสอนก็ไม่สามารถแปล พฤติกรรมที่เกิดขึ้นจริง - ส่งของ SIGILL ไปยังโปรแกรมประยุกต์ -. ไม่เปลี่ยนแปลง
- จำนวนเงินสูงสุดของหน่วยความจำที่ Valgrind สามารถใช้กับเป้าหมาย 64 บิตที่ได้รับเพิ่มขึ้นจาก 32GB ถึง 64GB นี้ควรจะทำให้มันเป็นไปได้ที่จะใช้งานใน Memcheck ที่กำเนิดต้องขึ้นไปเกี่ยวกับ 35GB.
- แก้ไขข้อบกพร่อง:
- ข้อผิดพลาดต่อไปนี้ได้รับการแก้ไขหรือการแก้ไข โปรดทราบว่า & quot; n-I-bz & quot;
- ย่อมาจาก & quot; ไม่ได้อยู่ใน Bugzilla & quot; - นั่นคือข้อผิดพลาดที่ได้รับรายงานมาให้เรา
- แต่ไม่เคยได้เข้า Bugzilla เราขอแนะนำให้คุณที่จะยื่นข้อบกพร่องใน
- Bugzilla (https://bugs.kde.org/enter_bug.cgi?product=valgrind) ค่อนข้าง
- กว่าจดหมายพัฒนา (หรือรายชื่อผู้รับจดหมาย) โดยตรง - บักที่
- ยังไม่ได้ลงนามใน Bugzilla มีแนวโน้มที่จะได้รับการลืมเกี่ยวกับหรือละเว้น.
- หากต้องการดูรายละเอียดของข้อผิดพลาดที่ได้รับการเยี่ยมชม https://bugs.kde.org/show_bug.cgi?id=XXXXXX ที่ XXXXXX คือหมายเลขข้อผิดพลาดที่ระบุไว้ด้านล่าง.
- 123837 ระบบโทร: อาร์กิวเมนต์ 4 จะเป็นตัวเลือกขึ้นอยู่กับคำสั่ง
- 135,425 memcheck ควรบอกคุณที่บล็อกมีอิสระ Mallocd
- 164,485 VG_N_SEGNAMES และ VG_N_SEGMENTS มี (ยังคง) ขนาดเล็กเกินไป
- 207,815 เพิ่มบางส่วนของ DRM ioctls เพื่อ syswrap-linux.c
- 251,569 ก่อกวน amd64- & gt; IR: 0XF 0x1 0xF9 0xBF 0x90 0xD0 0x3 0x0 (RDTSCP)
- 252,955 เป็นไปไม่ได้ที่จะรวบรวมกับ ccache
- 253,519 Memcheck รายงานตัวชี้ auxv เข้าถึงที่ไม่ถูกต้องตามที่อ่าน.
- 263034 ชนเมื่อโหลดบางไบนารี PPC64
- 269,599 เพิ่มขึ้นติดตามย้อนหลังที่ลึกที่สุด
- 274,695 s390x: Support & quot; เปรียบเทียบถึง / จากตรรกะ & quot; คำแนะนำ (z196)
- 275,800 s390x: Autodetect ข้อมูลแคช (ตอน 2)
- 280,271 Valgrind รายงานความเป็นไปได้เกี่ยวกับการรั่วไหลของมาตรฐานยังคงสามารถเข้าถึงได้ :: สตริง
- 284,540 Memcheck ไม่ควรนับ suppressions จับคู่ยังคงสามารถเข้าถึงได้ [.. ]
- 289578 ติดตามย้อนหลังกับตารางผ่อนคลาย ARM (stack ธงสแกน)
- 296,311 ร่องรอยสแต็ผิดเนื่องจาก -fomit กรอบตัวชี้ (x86)
- 304,832 ppc32: สร้างความล้มเหลว
- 305431 ใช้ find_buildid fallback SHDR สำหรับไฟล์ .debug แยกต่างหาก
- 305,728 เพิ่มการสนับสนุนสำหรับคำแนะนำ AVX2
- 305,948 ppc64: การสร้างรหัสสำหรับ ShlD64 / ShrD64 อ้าง
- 306,035 s390x: รุ่น IR แก้ไขสำหรับ Laag และเพื่อน ๆ
- 306,054 s390x: การคำนวณรหัสสำหรับการแปลงสภาพการ int / ตรรกะ
- 306,098 s390x: รูปแบบ opcode สำรองสำหรับการแปลงไปยัง / จากคงที่
- การตรวจสอบ 306,587 เส้นแคชแก้ไขจากเวกเตอร์เสริมสำหรับ PPC.
- 306,783 Mips unhandled syscall 4025/4079/4182
- 307,038 DWARF2 อ่าน CFI: unhandled DW_OP_ opcode 0x8 (DW_OP_const1u และคณะ)
- 307,082 HG บวกปลอม: pthread_cond_destroy: การล่มสลายของ CV ที่ไม่รู้จัก
- 307,101 sys_capget อาร์กิวเมนต์ที่สองอาจเป็นโมฆะ
- 307,103 sys_openat. ถ้าชื่อพา ธ เป็นแน่นอนแล้ว dirfd ถูกละเว้น
- 307,106 amd64- & gt; IR: F0 0f c0 02 (ล็อค xadd ไบต์)
- 307,113 s390x: สนับสนุน DFP
- 307,141 valgrind does't ทำงานในระบบ MIPS-ลินุกซ์
- 307,155 filter_gdb ควรกรอง syscall-template.S T_PSEUDO
- 307,285 x86_amd64 ทดสอบสำหรับคุณลักษณะ AVX ในชุดทดสอบที่ไม่ถูกต้อง
- 307,290 memcheck ทับซ้อน testcase ต้องการกรองรุ่น memcpy
- 307463 กรุณาเพิ่ม & quot; & ขีด จำกัด = 0 & quot; ไปที่ & quot; ทุกข้อบกพร่องเปิด & quot; ลิงค์
- 307465 --show-อาจจะหายไป = ไม่ควรลดรหัสนับผิดพลาด / ออก
- 307,557 รั่วบน Mac OS X 10.7.5 ห้องสมุดที่ ImageLoader :: recursiveInit [.. ]
- 307,729 pkgconfig สนับสนุนหัก valgrind.pc
- 307,828 Memcheck ข้อผิดพลาดเท็จ SSE ดีที่สุด wcscpy, wcscmp, wcsrchr, wcschr
- 307,955 อาคาร valgrind 3.7.0-r4 ล้มเหลวในการ Gentoo AMD64 เมื่อใช้เสียงดังกราว
- 308,089 Unhandled syscall ใน ppc64: prctl
- 308,135 PPC32 MPC8xx มี 16 ไบต์ขนาดแคช
- 308,321 TestSuite memcheck กรองรบกวน gdb_filter
- 308,333 307,106 ==
- 308,341 vgdb ควรรายงานกระบวนการออก (หรือสัญญาณร้ายแรง)
- 308,427 s390 รายงาน memcheck tsearch cjump / CMOVE ขึ้นอยู่กับ uninit
- 308,495 ลบสร้างการพึ่งพาการติดตั้งหัว Xen
- 308,573 ข้อผิดพลาดภายในเกี่ยวกับการเรียนการสอน 64 บิตดำเนินการในโหมด 32 บิต
- 308,626 308,627 ==
- 308,627 pmovmskb ความถูกต้องการขยายพันธุ์บิตคลุมเครือ
- 308,644 คำสั่ง vgdb สำหรับการมีข้อมูลสำหรับตัวเลือกที่ติดตาม FDS
- 308711 ให้ข้อมูลเพิ่มเติมเกี่ยวกับ aspacemgr โดยสิ้นเชิงและใน out_of_memory
- 308,717 ARM: ใช้ VCVT.F64 คงจุด [SU] 32 .
- 308,718 ARM ใช้ครอบครัว SMLALBB ของคำสั่ง
- 308,886 สนับสนุนขาดหายไปสำหรับ PTRACE_SET / GETREGSET
- 308,930 syscall name_to_handle_at (303 บน amd64) ไม่จัดการ
- 309,229 ทดสอบ V-บิตไม่รายงานจำนวนการทดสอบสร้าง
- 309323 พิมพ์ Instuction ไม่รู้จักบน MIPS
- 309425 ให้ธง --sigill-การวินิจฉัยเพื่อให้การปราบปรามที่ผิดกฎหมาย [.. ]
- 309,427 SSE ดีที่สุด stpncpy ทริกเกอร์มูลค่า uninitialised [.. ] ข้อผิดพลาด
- 309,430 ตนเองโฮสติ้ง ppc64 พบข้อผิดพลาด vassert กับชนิดถูกดำเนินการ
- 309600 valgrind เป็นบิตสับสนเกี่ยวกับส่วน 0 ขนาด
- 309,823 สร้างข้อผิดพลาดสำหรับบล็อกยังคงสามารถเข้าถึงได้
- 309,921 PCMPISTRI ขยายพันธุ์ถูกต้องบิตคลุมเครือ
- 309922 ไม่มี / ทดสอบ / ppc64 / test_dfp5 บางครั้งล้มเหลว
- 310169 ชั้น Iop_CmpORD ของ Iops ไม่ได้รับการสนับสนุนโดยตรวจสอบ Vbit.
- 310,424 --read-var-ข้อมูลไม่ถูกต้องอธิบายตัวแปรคงที่
- 310,792 เส้นทางการค้นหาเพิ่มเติมสำหรับสัญลักษณ์การแก้ปัญหา
- 310,931 s390x: ข้อความการรักษาความปลอดภัยให้ความช่วยเหลือ (MSA) การขยายการเรียนการสอน [.. ]
- 311100 DFP PPC การดำเนินการของตัวถูกดำเนินการจำนวนเต็มไม่สอดคล้อง [.. ]
- 311,318 ARM: & quot; 128 บิตคงไม่นำมาใช้ & quot; เกิดข้อผิดพลาด
- 311,407 ssse3 bcopy (แปลงจริง memcpy) ทำให้เกิดการอ่านที่ไม่ถูกต้อง [.. ]
- 311,690 V ล่มเพราะมันเปลี่ยนเส้นทางสาขาภายในของฟังก์ชั่นการเปลี่ยนเส้นทาง
- 311,880 x86_64: ทำให้แฮงค์ regtest ที่ shell_valid1
- 311,922 คำเตือน: ไม่สามารถจัดการได้ syscall: 170
- 311,933 251,569 ==
- 312,171 PPC: เลือก Insn สำหรับ DFP
- 312571 โทรโหมดการปัดเศษผิด DFP Iops [.. ]
- 312,620 เปลี่ยน Iop_D32toD64 [.. ] สำหรับการสนับสนุน s390 DFP ยากจน PPC [.. ]
- 312,913 dangling ชี้ข้อผิดพลาดก็ควรรายงานกองติดตาม alloc
- 312,980 อาคารสิงโตภูเขาสร้างคำเตือนคอมไพเลอร์บาง
- 313,267 เพิ่ม MIPS64 / พอร์ต Linux เพื่อ Valgrind
- 313348 251569 ==
- 313,354 251,569 ==
- 313,811 หน่วยความจำล้นใน assert_fail
- 314,099 Coverity ชี้ให้เห็นข้อผิดพลาดใน VEX guest_ppc_toIR.c insn_suffix
- 314,269 PPC: รหัสตายในการเลือก Insn
- 314,718 ARM: ดำเนินการการเรียนการสอนแบ่งจำนวนเต็ม (sdiv และ udiv)
- 315345 CL-format.xml และ callgrind / dump.c ไม่เห็นด้วยเกี่ยวกับการใช้ CFL หรือ CFI = =
- 315,441 sendmsg syscall ควรละเลยล้าง msg_flags msghdr
- 315,534 msgrcv ภายในด้ายทำให้เกิด valgrind จะแขวน (บล็อก)
- 315,545 ยืนยัน '(UChar *) าที & gt; TT [tteNo] .tcptr soname'
- 320,895 เพิ่มการสนับสนุน fanotify (แพทช์รวม)
- 320,998 ก่อกวน amd64- & gt; pcmpestri IR และ pcmpestrm การเรียนการสอน SSE4.2
- 321,065 ปรับปรุง Valgrind สำหรับ Xen 4.3
- 321,148 Unhandled การเรียนการสอน: PLI (Thumb 1, 2, 3)
- 321,363 Unhandled การเรียนการสอน: SSAX (ARM + Thumb)
- 321,364 Unhandled การเรียนการสอน: SXTAB16 (ARM + Thumb)
- 321,466 Unhandled การเรียนการสอน: SHASX (ARM + Thumb)
- 321467 Unhandled การเรียนการสอน: SHSAX (ARM + Thumb)
- 321,468 Unhandled การเรียนการสอน: SHSUB16 (ARM + Thumb)
- 321,619 Unhandled การเรียนการสอน: SHSUB8 (ARM + Thumb)
- 321,620 Unhandled การเรียนการสอน: UASX (ARM + Thumb)
- 321,621 Unhandled การเรียนการสอน: USAX (ARM + Thumb)
- 321,692 Unhandled การเรียนการสอน: UQADD16 (ARM + Thumb)
- 321,693 Unhandled การเรียนการสอน: LDRSBT (Thumb)
- 321,694 Unhandled การเรียนการสอน: UQASX (ARM + Thumb)
- 321,696 Unhandled การเรียนการสอน: UQSAX (Thumb + ARM)
- 321,697 Unhandled การเรียนการสอน: UHASX (ARM + Thumb)
- 321,703 Unhandled การเรียนการสอน: UHSAX (ARM + Thumb)
- 321,704 Unhandled การเรียนการสอน: REVSH (ARM + Thumb)
- 321,730 เพิ่ม cg_diff และหน้าคน cg_merge
- 321,738 เพิ่ม vgdb และ valgrind-ฟังหน้าคน
- 321,814 315,545 ==
- 321,891 Unhandled การเรียนการสอน: LDRHT (Thumb)
- 321960 pthread_create () แล้วจัดสรร () ก่อให้เกิดข้อผิดพลาดที่ไม่ถูกต้องสแต็คเขียน
- 321,969 ppc32 และ ppc64 ไม่สนับสนุน [LF] setxattr
- 322,254 แสดง threadname ร่วมกับ Tid ถ้าตั้งค่าโดยโปรแกรม
- 322,294 เพิ่มการสนับสนุนเริ่มต้นสำหรับ IBM Power ISA 2.07
- 322,368 ยืนยันความล้มเหลวใน wqthread_hijack ภายใต้ OS X 10.8
- 322,563 ก่อกวน mips- & gt; IR: 0x70 0x83 0xf0 0x3a
- 322,807 VALGRIND_PRINTF_BACKTRACE เขียน callstack เพื่อ XML และข้อความที่จะ stderr
- 322,851 0bXXX ไบนารีไวยากรณ์ตัวอักษรไม่ได้มาตรฐาน
- 323,035 Unhandled การเรียนการสอน: LDRSHT (Thumb)
- 323,036 Unhandled การเรียนการสอน: SMMLS (ARM และ Thumb)
- 323,116 memcheck / ทดสอบ / ppc64 / power_ISA2_05.c ล้มเหลวในการสร้าง [.. ]
- 323,175 Unhandled การเรียนการสอน: SMLALD (ARM + Thumb)
- 323,177 Unhandled การเรียนการสอน: SMLSLD (ARM + Thumb)
- 323432 โทร pthread_cond_destroy () หรือ pthread_mutex_destroy () [.. ]
- 323,437 ขั้นตอนที่ 2 การสนับสนุนสำหรับ IBM Power ISA 2.07
- 323,713 สนับสนุน mmxext (จำนวนเต็ม SSE) ย่อยใน i386 (Athlon)
- 323,803 คำแนะนำการทำธุรกรรมหน่วยความจำที่ไม่ได้รับการสนับสนุนสำหรับพาวเวอร์
- 323,893 SSE3 ไม่สามารถใช้ได้ในซีพียูเอเอ็มดีใน valgrind
- 323,905 น่าจะเป็นเท็จบวกจาก Valgrind / DRD บนปิด ()
- 323912 หัว valgrind.h เข้ากันไม่ได้สำหรับ mingw64
- 324,047 Valgrind ไม่สนับสนุน [LDR, ST] {S} [B, H] T คำแนะนำ ARM
- 324,149 helgrind: เมื่อ pthread_cond_timedwait กลับ ETIMEDOUT [.. ]
- 324,181 mmap ไม่ได้จัดการ MAP_32BIT
- 324,227 memcheck รั่วบวกปลอมเมื่อด้ายโทรออก + บล็อก [.. ]
- 324,421 สนับสนุนสำหรับ fanotify API บนสถาปัตยกรรม ARM
- 324,514 gdbserver ตรวจสอบความสอดคล้องพฤติกรรมการส่งออก cmd [.. ]
- 324,518 ppc64: Emulation ของคำสั่ง dcbt ไม่ได้จัดการ [.. ]
- 324546 ไม่มี / ทดสอบ / ppc32 test_isa_2_07_part2 ขอ -m64
- 324582 เมื่อเข้าถึงที่ทำกับหน่วยความจำอิสระรายงานทั้งการจัดสรร [.. ]
- 324,594 Fix คำนวณล้นสำหรับพลังงาน ISA 2.06 insns. mulldo / mulldo
- 324,765 ppc64: การเรียนการสอนที่ผิดกฎหมายเมื่อรันไม่มี / ทดสอบ / ppc64 / JM-misc
- 324816 การดำเนินการที่ไม่ถูกต้องสำหรับ VEX xscvspdp / xvcvspdp สำหรับปัจจัยการผลิตสนาน
- 324,834 คำแนะนำที่ไม่มีการจัดการใน Microsoft C เวลาทำงานสำหรับ x86_64
- 324,894 ขั้นตอนที่ 3 การสนับสนุนสำหรับ IBM Power ISA 2.07
- 326,091 DRD: หลีกเลี่ยงการรายงานการแข่งขันที่ผิดพลาดจากการเพิ่มประสิทธิภาพ strlen () impls
- 326,113 valgrind libvex hwcaps ข้อผิดพลาดใน AMD64
- พรรณี-BZ บางคนเลือกบรรทัดคำสั่งที่ผิดพลาดอาจจะละเลย
- พรรณี-BZ แพทช์เพื่อให้ยุติธรรมจัเกี่ยวกับหุ่นยนต์
- พรรณี-BZ ข้อผิดพลาดรายงานสำหรับภาพรวม vgdb ร้องขอก่อนที่จะดำเนินการ
- พรรณี-BZ เดียวกับ 303624 (แก้ไขใน 3.8.0) แต่สำหรับหุ่นยนต์ x 86
มีอะไรใหม่ ในรุ่น 3.8.1:
- จะแก้ไขความล้มเหลวในการยืนยันบางอย่างใน 3.8.0 ว่า เกิดขึ้นในระดับปานกลางบ่อยในกรณีการใช้งานจริงเพิ่มการสนับสนุนสำหรับคำแนะนำบางอย่างขาดหายไปบนแขนและแก้ไขเงื่อนไข deadlock ใน MacOSX.
- หากคุณแพคเกจหรือส่งมอบ 3.8.0 สำหรับคนอื่น ๆ ที่จะใช้คุณอาจต้องการที่จะพิจารณาในการอัพเกรด 3.8.1 แทน.
มีอะไรใหม่ ในรุ่น 3.6.0:
- นี้เป็นรุ่นที่มีคุณลักษณะการปรับปรุงที่สำคัญจำนวนมากและ คอลเลกชันปกติของการแก้ไขข้อผิดพลาด.
- การปรับปรุงที่สำคัญคือ Valgrind ตอนนี้ทำงานบน ARM / Linux และ Mac OS X 10.6 (Snow Leopard).
ความคิดเห็นที่ไม่พบ