ML64 - تحذير A6004: حجة الإجراءات أو المحلية لم يتم الرجوع إليها

StackOverflow https://stackoverflow.com/questions/1600355

سؤال

لدي وظيفة مكتوبة لتجميع الماكرو microsft microsft في Visual Studio 2005. تستلم الوظيفة 3 وسيطات:

theFunction PROC firstP:QWORD, secondP:QWORD, thirdP:QWORD

تشير اتفاقية الاتصال X64 إلى أن الحجج الأربعة الأولى ستقيم في السجلات RCX و RDX و R8 و R9. عندما أستخدم الوسيطات في الوظيفة ، أشير إلى التسجيل لهم وليست المعلمات:

mov r10, rcx   ; Move firstP to r10

هذا يسبب التحذير التالي:

تحذير A6004: حجة الإجراء أو لم يتم الرجوع إليها المحلي

كيف يمكنني تجنب هذا التحذير أو تصفحه؟ هل هناك أي طريقة للرجوع إلى المعلمات داخل الوظيفة بدلاً من استخدام السجلات؟

هل كانت مفيدة؟

المحلول

وجدت الحل: لم أكن بحاجة إلى إعلان بروك على الطريقة التي فعلت بها. لا حاجة لإعلان المعلمات التي يتم تمريرها إلى الوظيفة.

theFunction PROC
mov r10, rcx       ;Move firstP to r10
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top