Mercurial > projects > ldc
comparison gen/asm-x86-64.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 |
---|---|
2005 } | 2005 } |
2006 assert ( type_char != 0 ); | 2006 assert ( type_char != 0 ); |
2007 insnTemplate.write(mnemonic, mlen-1) << tc_1 << type_char; | 2007 insnTemplate.write(mnemonic, mlen-1) << tc_1 << type_char; |
2008 } | 2008 } |
2009 break; | 2009 break; |
2010 | |
2011 case Op_FMath0: | |
2012 // the no-operand versions of floating point ops always pop | |
2013 insnTemplate << mnemonic << "p"; | |
2014 break; | |
2015 | |
2010 default: | 2016 default: |
2011 // special case fdiv, fsub: see dmd 840, ldc 256 | 2017 // special case fdiv, fsub: see dmd 840, ldc 256 |
2012 if (strncmp(mnemonic, "fsub", 4) == 0 || | 2018 if (strncmp(mnemonic, "fsub", 4) == 0 || |
2013 strncmp(mnemonic, "fdiv", 4) == 0) | 2019 strncmp(mnemonic, "fdiv", 4) == 0) |
2014 { | 2020 { |