Mercurial > projects > ldc
comparison gen/asm-x86-32.h @ 1303:c250e03d8a5b
Make the no-operand versions of floating point inline asm instructions always
pop the floating point stack - like dmd does.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Wed, 06 May 2009 18:54:20 +0200 |
parents | a26b99b7e293 |
children | b995c146366e |
comparison
equal
deleted
inserted
replaced
1302:a26b99b7e293 | 1303:c250e03d8a5b |
---|---|
1883 } | 1883 } |
1884 assert ( type_char != 0 ); | 1884 assert ( type_char != 0 ); |
1885 insnTemplate.write(mnemonic, mlen-1) << tc_1 << type_char; | 1885 insnTemplate.write(mnemonic, mlen-1) << tc_1 << type_char; |
1886 } | 1886 } |
1887 break; | 1887 break; |
1888 | |
1889 case Op_FMath0: | |
1890 // the no-operand versions of floating point ops always pop | |
1891 insnTemplate << mnemonic << "p"; | |
1892 break; | |
1893 | |
1888 default: | 1894 default: |
1889 // special case fdiv, fsub: see dmd 840, ldc 256 | 1895 // special case fdiv, fsub: see dmd 840, ldc 256 |
1890 if (strncmp(mnemonic, "fsub", 4) == 0 || | 1896 if (strncmp(mnemonic, "fsub", 4) == 0 || |
1891 strncmp(mnemonic, "fdiv", 4) == 0) | 1897 strncmp(mnemonic, "fdiv", 4) == 0) |
1892 { | 1898 { |