मैं वर्तमान में सी कोडों को अलग करके एएसएम सीख रहा हूं। एक बात रुचि मुझे उस जीसीसी संकलक इसmov% rax,% rax का उद्देश्य क्या है?
movq %rax,%rax
जो स्पष्ट रूप से कोई मतलब नहीं है की तरह कोड उत्पन्न करता है। तो ऐसा करने का उद्देश्य क्या है?
मुझे आश्चर्य है कि क्या इसका उपयोग पाइपलाइन को बेहतर बनाने के लिए CPU के कुछ चक्रों को बर्बाद करने के लिए किया जाता है?
आपके संकेत के लिए धन्यवाद!
इसका उपयोग पाइपलाइन में सुधार करने के लिए नहीं किया जाता है। सभी x86 प्रोसेसर (ऐतिहासिक कारणों के लिए?) में हार्डवेयर है जो इस तरह के खतरों को हल करते समय रोकता है। केवल आरआईएससी, जो कि सरल हैं, इसके लिए कंपाइलर समर्थन की आवश्यकता है। – ruslik
@ruslik: एक स्टॉल खुद ही एक खतरे है। –