SORU
24 EYLÜL 2009, PERŞEMBE


Nasıl bir işlevi satır içi değil, gcc söyleyebilir miyim?

Bir kaynak dosya içinde bu küçük işlevi var

static void foo() {}

ve benim ikili iyileştirilmiş bir sürümünü kurdum henüz bu işlevi inlined (iyileştirme amaçlı) istemiyorum. bu satır içi uygulaması önlemek için kaynak kodu ekleyebilirim bir makro var mı?

CEVAP
24 EYLÜL 2009, PERŞEMBE


gccözel noinline öznitelik istiyorum.

Bu işlev, nitelik engeller fonksiyon için düşünülen satır içi uygulaması. Eğer işlev değilse orada yan etkileri var optimizasyon bu satır içi uygulaması dışında işlev çağrıları optimize edilmiş olur işlev çağrısı olsa da uzaklıkta, canlı. Gelen bu tür aramaları tutmak için uzakta, koy optimize asm ("");

Bu gibi kullanabilirsiniz:

void __attribute__ ((noinline)) foo() 
{
  ...
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Helen Bradley

    Helen Bradle

    4 Mart 2008
  • LavcoPriceTech

    LavcoPriceTe

    21 AĞUSTOS 2010
  • Kanál používateľa McsFuego

    Kanál použ

    12 EKİM 2011