mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Well, add support for ct* for 21264 only.
21164 is broken until expand works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21692 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
fecf095292
commit
590091975c
@ -31,6 +31,7 @@ using namespace llvm;
|
||||
|
||||
namespace llvm {
|
||||
extern cl::opt<bool> EnableAlphaFTOI;
|
||||
extern cl::opt<bool> EnableAlphaCT;
|
||||
}
|
||||
|
||||
namespace {
|
||||
@ -234,7 +235,7 @@ void AlphaAsmPrinter::printConstantPool(MachineConstantPool *MCP) {
|
||||
bool AlphaAsmPrinter::doInitialization(Module &M)
|
||||
{
|
||||
AsmPrinter::doInitialization(M);
|
||||
if(EnableAlphaFTOI)
|
||||
if(EnableAlphaFTOI || EnableAlphaCT)
|
||||
O << "\t.arch ev6\n";
|
||||
else
|
||||
O << "\t.arch ev56\n";
|
||||
|
@ -36,9 +36,12 @@ namespace llvm {
|
||||
cl::opt<bool> EnableAlphaIDIV("enable-alpha-intfpdiv",
|
||||
cl::desc("Use the FP div instruction for integer div when possible"),
|
||||
cl::Hidden);
|
||||
cl::opt<bool> EnableAlphaFTOI("enable-alpha-ftoi",
|
||||
cl::opt<bool> EnableAlphaFTOI("enable-alpha-FTOI",
|
||||
cl::desc("Enable use of ftoi* and itof* instructions (ev6 and higher)"),
|
||||
cl::Hidden);
|
||||
cl::opt<bool> EnableAlphaCT("enable-alpha-CT",
|
||||
cl::desc("Enable use of the ctpop, ctlz, and cttz instructions"),
|
||||
cl::Hidden);
|
||||
cl::opt<bool> EnableAlphaCount("enable-alpha-count",
|
||||
cl::desc("Print estimates on live ins and outs"),
|
||||
cl::Hidden);
|
||||
@ -76,9 +79,11 @@ namespace {
|
||||
setOperationAction(ISD::SREM , MVT::f32 , Expand);
|
||||
setOperationAction(ISD::SREM , MVT::f64 , Expand);
|
||||
|
||||
// setOperationAction(ISD::CTPOP , MVT::i64 , Expand);
|
||||
// setOperationAction(ISD::CTTZ , MVT::i64 , Expand);
|
||||
// setOperationAction(ISD::CTTZ , MVT::i64 , Expand);
|
||||
if (!EnableAlphaCT) {
|
||||
setOperationAction(ISD::CTPOP , MVT::i64 , Expand);
|
||||
setOperationAction(ISD::CTTZ , MVT::i64 , Expand);
|
||||
setOperationAction(ISD::CTTZ , MVT::i64 , Expand);
|
||||
}
|
||||
|
||||
//If this didn't legalize into a div....
|
||||
// setOperationAction(ISD::SREM , MVT::i64, Expand);
|
||||
|
Loading…
Reference in New Issue
Block a user