NASM Forum > Announcements

wcc32

(1/4) > >>

Manos:
Hi all.

I implemented a new plain ANSI  C optimizing compiler that supports C99
and targets on Windows 32 bit programming.
This compiler does not use any assembler as a backend, but supports
inline assembly in NASM syntax, emits NASM assembly code and
accepts NASM assembly source, also.
That is, with wcc32 you can mix c code and NASM assembly code
together to produces applications.

Since  wcc32 C compiler has the above attributes for NASM,
I thinked to do this post here.

Anyone who is interested, can download this from here.

Manos.

shaynox:
Hello,

How can you not use assembler for produce opcodes ?

encryptor256:

--- Quote from: shaynox on June 06, 2015, 03:13:28 PM ---Hello,

How can you not use assembler for produce opcodes ?

--- End quote ---

Well... assembler is an extra layer, like a separate thing.

He produces machine code directly while parsing C code.

At least, I think so.

P.S.

Try his "CoderStudio" it boots up in a fraction of the second (Hehe... F*** YOOOU Microsoft Visual Studio, we have Manos with CoderStudio),
only problem encountered - I was unable to compile dialog application source into exe.

shaynox:
But, are we agree to say opcode is just a hard translation of mnemonic term to binary command, so finally, it needed to translate the high level command to the low level command.


PS: I use the Intel compiler for his performance and his asm production far better compared to some existent compiler even if they should take nasm syntax :p

Manos:
Hi shaynox.

encryptor256 is right.

There is a table of OPCODE structures.
This structure has three members: operands, value and flags,(machine values), like:

OPCODE popn_aaa[] =
{
    {
        OP_CODEONLY, 0x0037, 0x0000
    }
    ,
    {
        0, 0, 0
    }
    ,
};
OPCODE popn_aad[] =
{
    {
        OP_CODEONLY, 0x0ad5, 0x0200
    }
    ,
    {
        0, 0, 0
    }
    ,
};
etc.

When the compiler writes the object code, use the above table.

To encryptor256:
CoderStudio has a bug that is easy to correct.
I 'll adapt CoderStudio to support wcc32 and wlink32 soon.
This is because I worked on wcc32, wlink32, header files, libraries and testing these,
for 6 months and for 5 hours  per day and with David Lindauer help.

Manos.

Navigation

[0] Message Index

[#] Next page

Go to full version