register?

1. register?

???
gokernel

(usa Linux Mint)

Enviado em 16/06/2014 - 08:19h


Olá pessoal !

Pergunta simples:
Alguém sabe informar a quantidade de variáveis que o gcc consegue otimizar como register ?

Grato!



  


2. Re: register?

Paulo
paulo1205

(usa Ubuntu)

Enviado em 16/06/2014 - 09:54h

Vai depender da arquitetura, pois isso limita fisicamente a quantidade de registradores.

Nos nossos micros baseados em AMD64/Intel-EMT64, se você compilar o código como 32 bits vai dispor de menos registradores do que se o compilar nativamente para 64 bits. E, para poder compilar e executar programas em 64 bits, provavelmente o SO também terá de ser de 64 bits.


3. Re: register?

???
gokernel

(usa Linux Mint)

Enviado em 16/06/2014 - 11:51h


Desculpe pela falta de detalhes.

Me refiro para compiladores em 32 bits.

Ma verdade o meu OS eh 64 bits mas uso compilador de 32 bits.


4. Re: register?

Paulo
paulo1205

(usa Ubuntu)

Enviado em 17/06/2014 - 18:41h

O primeiro dos links abaixo, que diz respeito a arquitetura AMD64, eu já conhecia (conheci enquanto pesquisava uma resposta a uma pergunta que você postou aqui há uns dois anos). O segundo é como que a versão i386 do mesmo documento. Em ambos eu destaco os respectivos terceiros capítulos, que tratam de assuntos como convenções de chamadas de funções, quais registradores devem necessariamente ser preservados e quais podem ser livremente alterados etc.

O terceiro link parece muito interessante, mas não tive tempo de abrir cada documento ali indicado.

- http://www.x86-64.org/documentation/abi.pdf
- http://refspecs.linuxbase.org/elf/abi386-4.pdf
- http://www.agner.org/optimize/


5. Re: register?

???
gokernel

(usa Linux Mint)

Enviado em 18/06/2014 - 09:55h


Grato "paulo1205" pelos links, estou baixando para "estudar" depois.

Minha leitura preferida ...

T+.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts