flat assembler
Message board for the users of flat assembler.

Index > Macroinstructions > Macros to choose target CPU

Goto page Previous  1, 2, 3
Author
Thread Post new topic Reply to topic
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 12 Mar 2009, 23:35
revolution, although I think 99% of people who want SSE2 also expect SSE to be there, you do have a point.

And I've heard some chips don't even have all instructions (e.g. some VIA "686" without CMOV??). Even Intel in one of their manuals claimed "don't expect FPU to always be available on 586, always test CPUID" (although I don't know of any that didn't). Same with some early PPros (allegedly) not supporting CMOVs either, an old controversy that GCC ignores (for them, i686 always assumes CMOV). Even old Cyrix didn't support CPUID unless enabled via some MSRs. Oh, and don't forget the 80376 and conflicts like VIA C3 (MMX, 3dnow!) and C3-2 (MMX, SSE). (But you know 1000x more than me.)

Besides, maybe somebody wants FASM to ignore / warn upon accidental include / use of (slow) FPU in favor of SSE2 or disallow SSE in favor of 3dnow! or whatever.

In short, it doesn't really matter if it's not perfect (as nothing really is anyways). Wink
Post 12 Mar 2009, 23:35
View user's profile Send private message Visit poster's website Reply with quote
Kicer



Joined: 30 Apr 2005
Posts: 34
Location: Poland
Kicer 31 Aug 2010, 18:28
with .386 I get:

Code:
rb -1 ;LAHF not valid in 64 bit mode
    


when I use lahf.
Post 31 Aug 2010, 18:28
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20299
Location: In your JS exploiting you and your system
revolution 31 Aug 2010, 23:55
Kicer wrote:
with .386 I get:
Code:
rb -1 ;LAHF not valid in 64 bit mode
    
when I use lahf.
Fixed. See the first post in this thread for the new file.
Post 31 Aug 2010, 23:55
View user's profile Send private message Visit poster's website Reply with quote
uart777



Joined: 17 Jan 2012
Posts: 369
uart777 18 Nov 2012, 11:29
All your "features" macro does is prevent you from using CPU instructions that would otherwise be available. It does NOT allow you to choose a CPU like the title claims, it simply disables features.

My "opcode" macro is real LL. It CREATES/WRITES PURE machine code and can be used to make little compilers which I have. Only reason this post became "sticky" is because it has your name on it.
Post 18 Nov 2012, 11:29
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2, 3

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.