Articles of gcc

Dillo a gcc di srotolare in modo specifico un ciclo

Come posso dire a GCC di srotolare un particolare loop? Ho usato l’SDK CUDA dove i loop possono essere srotolati manualmente usando #pragma unroll . C’è una funzionalità simile per gcc? Ho cercato un po ‘su google ma non ho trovato nulla.

gcc, strict-aliasing e casting attraverso un’unione

Hai qualche storia dell’orrore da raccontare? Il manuale GCC ha recentemente aggiunto un avvertimento riguardante -fitture-aliasing e il cast di un puntatore tramite un’unione: […] Prendendo l’indirizzo, lanciare il puntatore risultante e dereferenziare il risultato ha un comportamento indefinito [enfasi aggiunta], anche se il cast usa un tipo di unione, ad esempio: union a_union { […]

Convertire un puntatore in un numero intero

Sto cercando di adattare un codice esistente a una macchina a 64 bit. Il problema principale è che in una funzione, il codificatore precedente utilizza un argomento void * che viene convertito in un tipo adatto nella funzione stessa. Un breve esempio: void function(MESSAGE_ID id, void* param) { if(id == FOO) { int real_param = […]

Link OS X 10.9 gcc a clang

Ho appena notato che dopo aver installato OS X 10.9, il compilatore g ++ si collega al compilatore clang. Esiste comunque il ritorno a gcc / g ++?

Esempi di precaricamento?

Qualcuno può dare un esempio o un collegamento a un esempio che utilizza __builtin_prefetch in GCC (o semplicemente l’istruzione asm prefetcht0 in generale) per ottenere un sostanziale vantaggio in termini di prestazioni? In particolare, mi piacerebbe che l’esempio soddisfi i seguenti criteri: È un esempio semplice, piccolo e autonomo. La rimozione dell’istruzione __builtin_prefetch comporta un […]

Perché l’ottimizzatore GCC 6 ottimizzato rompe il pratico codice C ++?

GCC 6 ha una nuova funzione di ottimizzazione : presuppone che this sia sempre nullo e ottimizzato in base a ciò. La propagazione dell’intervallo di valori ora presuppone che questo puntatore delle funzioni membro C ++ non sia null. Ciò elimina i comuni controlli dei puntatori nulli, ma interrompe anche alcuni code-base non conformi (come […]

Come distriggersre l’ottimizzazione del compilatore gcc per abilitare l’overflow del buffer

Sto lavorando a un problema di compiti a casa che richiede la distriggerszione della protezione per l’ottimizzazione del compilatore perché funzioni. Sto usando gcc 4.4.1 su ubuntu linux, ma non riesco a capire quali sono le bandiere giuste. Mi rendo conto che dipende dall’architettura – la mia macchina funziona con un processore Intel a 32 […]

Qual è la differenza tra C, C99, ANSI C e GNU C?

Ho iniziato a programmare la pratica su Codechef e sono stato confuso dalla differenza tra C e C99. Cosa significa C qui? È C89? Controlla le lingue in fondo a questo invio . Contiene sia C che C99. Ho trovato su internet qualcosa chiamato GNU C. Esiste un C diverso per i sistemi linux / […]

come installare gcc su Windows 7?

Ho MinGW sulla mia macchina Windows 7. Desidero installare e utilizzare gcc completo per il compilatore C. Ho trovato che non esiste un singolo file di installazione precompilato pronto per questo scopo. Ho controllato la seguente pagina: http://gcc.gnu.org/install/ È difficile e la trovo al di sopra del mio livello di comprensione. Qualcuno potrebbe fornirmi una […]

Di quale compilatore dovrei fidarmi?

Questo sarà un po ‘una domanda da principianti, ma stavo cercando di lavorare su un piccolo esercizio nel linguaggio C (non C ++ ) e mi sono imbattuto in alcuni problemi. Diciamo che volevo usare una matrice all’interno di un metodo le cui dimensioni dipendevano da uno degli argomenti: void someFunc(int arSize) { char charArray[arSize]; […]