2012-08-08 30 views
5

मैं एसएसई इंट्रिनिक्स के लिए एक जोड़े रैपर कक्षाएं लिख रहा हूं - ज्यादातर प्रकार-सुरक्षित ज्यामिति संचालन प्राप्त करने के लिए, लेकिन कुछ सुविधा कार्यों को जोड़ने के लिए भी। मेरे सभी कार्य और ऑपरेटर इनलाइन हैं। सिद्धांत रूप में, वे सभी सीधे कच्चे एसएसई असेंबली (कोई फ़ंक्शन कॉल) तक संकलित नहीं होंगे, और मेरे इलेक्ट्रॉन XMM रजिस्टरों को कभी नहीं छोड़ेंगे।मुझे अपने कार्यों/ऑपरेटरों को एसएसई डेटा कैसे पास करना चाहिए?

इस परिणाम को सुनिश्चित करने के लिए मैं अपने एसएसई कक्षाओं को तर्क के रूप में कैसे पास करूं?

मैंने कभी भी अपने तर्कों को संशोधित नहीं किया है, इसलिए पसंद ज्यादातर मूल्य से गुजरने या कॉन्स्ट संदर्भ द्वारा गुजरने के बीच है। मुझे लगता है कि एक अच्छा संकलक एक ही कोड के नीचे दोनों शैलियों को अनुकूलित करेगा। लेकिन मैं निश्चित रूप से यह नहीं जानता। क्या क्षेत्र में अधिक अनुभव वाला कोई व्यक्ति सर्वोत्तम प्रथाओं पर विस्तार कर सकता है?

अग्रिम धन्यवाद!

उत्तर

4

या तो अधिकांश कंपाइलरों के लिए ठीक है, लेकिन यदि आप कोड को विजुअल स्टूडियो के साथ संकलित करना चाहते हैं तो कॉन्स्ट रेफरेंस का उपयोग करें, क्योंकि विजुअल स्टूडियो कंपाइलर कुछ हद तक मस्तिष्क-मृत है और फ़ंक्शन इनलाइन होने पर भी अनावश्यक एबीआई प्रतिबंध लागू करता है।

+1

धन्यवाद - मैं इस समय केवल जीसीसी हूं, लेकिन यह अनुकूल होना अच्छा है। कॉन्स संदर्भ यह है। चीयर्स! –