objective c - LLVM loop optimization bug? -


मेरे आवेदन में मेरे पास निम्न उद्देश्य-सी कोड है:

  - (शून्य) लेआउटपृष्ठ {NSMutableArray * वर्गों = [NSMutableArray सरणी]; [वर्गों addObject: [[NSAttributedString alloc] initWithString: @ "हैलो वर्ल्ड"]]; के लिए (एनएसएटीविद्रिवित स्ट्रिंग * कंटेंट्स में अनुभाग) {एनएसएलॉग (@ "% @", कंटेंटसाईट); }}   

छवि विवरण यहां दर्ज करें

कंसोल आउटपुट: 2014-04-22 14: 11: 01.505 मेरा ऐप [24784: 830 बी] हैलो वर्ल्ड {}

अगर मैं x86_64 आर्किटेक्चर का उपयोग करके ऑप्टिमाइज़ेशन, एलएलवीएम का उपयोग करता हूं चुपचाप लूप चर 'contentSection' का अनुकूलन करता है जब मैं -00 का उपयोग करता हूं, बग गायब हो जाता है यह सामग्री है जब मैं सामग्री का विवरण मुद्रित करने का प्रयास करता हूं:

  (lldb) po सामग्री विषय त्रुटि: संरचना को अमल नहीं कर सका: चर 'contentSection' का कोई स्थान नहीं है, ऐसा हो सकता है बाहर अनुकूलित किया गया है निष्पादित में बाहर की ओर इशारा किया गया, तैयार नहीं हो सकता है TeoExecuteJITExpression   

यह कैसे संभव है? लूप के अंदर उपयोग किए जाने पर मेरी दृष्टि से एक लूप चर को कभी भी अनुकूलित नहीं किया जाना चाहिए। मैंने देखा है कि अन्य लोगों का एलएलवीवी के साथ ऐसा कोई समस्या है, लेकिन लूप चर के साथ नहीं। क्या यह एक कंपाइलर बग हो सकता है?

यह शायद एक कंपाइलर सेटिंग्स समस्या है सबसे पहले आप यह देखना चाहते हैं कि आपकी रन योजना रिलीज़ मोड में नहीं है "स्कीम संपादित करें ..." पर जाएं - & gt; "भागो" - & gt; "जानकारी" - & gt; "बिल्ड कॉन्फ़िगरेशन" सुनिश्चित करें कि मान "डीबग" पर सेट है।

यदि यह समस्या नहीं है, तो सुनिश्चित करें कि आपके डिबग बिल्ड सेटिंग में कंपाइलर ऑप्टिमाइज़ेशन चालू नहीं है। सुनिश्चित करें कि "अनुकूलन स्तर" डिबग के लिए "कोई नहीं" पर सेट है यह भी सुनिश्चित करें कि कोई अन्य स्थान नहीं है जहां संकलक ऑप्टिमाइज़ेशन स्तर सेट हो सकते हैं, जैसे "अन्य सी फ़्लैग" सेटिंग।

Comments

Popular posts from this blog

asp.net - Procedure or function "Procedure name" expects a parameter "Param name" which was not supplied occurs rarely -

c# - The item with identity 'Id' already exists in the metadata collection. Parameter name: item -

c++ - Redefined variable in the other module -