llvm-6502/lib/Target/Mips
Jack Carter d5e11ad51a The inline asm operand modifier 'c' is suppose
to be generic across architectures. It has the
following description in the gnu sources:

    Substitute immediate value without immediate syntax

Several Architectures such as x86 have local implementations
of operand modifier 'c' which go beyond the above description
slightly. To make use of the generic modifiers without overriding
local implementation one can make a call to the base class method
for AsmPrinter::PrintAsmOperand() in the locally derived method's 
"default" case in the switch statement. That way if it is already
defined locally the generic version will never get called.

This change is needed when test/CodeGen/generic/asm-large-immediate.ll
failed on a native Mips board. The test was assuming a generic
implementation was in place.

Affected files:

    lib/Target/Mips/MipsAsmPrinter.cpp:
        Changed the default case to call the base method.
    lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
        Added 'c' to the switch cases.
    test/CodeGen/Mips/asm-large-immediate.ll
        Mips compiled version of the generic one

Contributer: Jack Carter



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158925 91177308-0d34-0410-b5e6-96231b3b80d8
2012-06-21 17:14:46 +00:00
..
AsmParser Mips/AsmParser/CMakeLists.txt: Fix dependency. 2012-06-16 15:33:52 +00:00
Disassembler Revert r158846. 2012-06-20 21:19:39 +00:00
InstPrinter Fix typos found by http://github.com/lyda/misspell-check 2012-06-02 10:20:22 +00:00
MCTargetDesc Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
TargetInfo remove Emacs-tag form .cpp files in Mips Backend, and fix some typo. 2012-02-17 08:55:11 +00:00
CMakeLists.txt Fix Mips/CMakeLists.txt. 2012-06-14 01:23:55 +00:00
LLVMBuild.txt Add disassembler to MIPS. 2012-04-17 18:03:21 +00:00
Makefile Add disassembler to MIPS. 2012-04-17 18:03:21 +00:00
Mips16InstrFormats.td Clean up trailing blanks in Mips16InstrFormats.td 2012-06-13 02:42:47 +00:00
Mips16InstrInfo.td Cleanup and factoring of mips16 tablegen classes. Make register classes 2012-05-31 02:59:44 +00:00
Mips64InstrInfo.td 1. introduce MipsPat in place of Pat in order to exclude those from 2012-06-14 21:03:23 +00:00
Mips.h Add long branch expansion pass for MIPS. 2012-06-14 01:19:35 +00:00
Mips.td This patch adds the register class for MIPS16 as well as the ability for 2012-05-16 22:19:56 +00:00
MipsAnalyzeImmediate.cpp Fix undefined behavior in the Mips backend. 2012-03-09 06:36:45 +00:00
MipsAnalyzeImmediate.h Fix undefined behavior in the Mips backend. 2012-03-09 06:36:45 +00:00
MipsAsmPrinter.cpp The inline asm operand modifier 'c' is suppose 2012-06-21 17:14:46 +00:00
MipsAsmPrinter.h Emit all directives except for ".cprestore" during asm printing rather than emit 2012-03-28 00:22:50 +00:00
MipsCallingConv.td Implement fastcc calling convention for MIPS. 2012-06-13 18:06:00 +00:00
MipsCodeEmitter.cpp Use MachineBasicBlock::instr_iterator instead of MachineBasicBlock::iterator in 2012-06-19 03:39:45 +00:00
MipsCondMov.td 1. introduce MipsPat in place of Pat in order to exclude those from 2012-06-14 21:03:23 +00:00
MipsDelaySlotFiller.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsFrameLowering.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsFrameLowering.h remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsInstrFormats.td This patch adds a predicate to existing mips32 and mips64 so that those 2012-05-22 03:10:09 +00:00
MipsInstrFPU.td 1. introduce MipsPat in place of Pat in order to exclude those from 2012-06-14 21:03:23 +00:00
MipsInstrInfo.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsInstrInfo.h Define function MipsInstrInfo::GetInstSizeInBytes, which will be called to 2012-06-14 01:16:45 +00:00
MipsInstrInfo.td 1. introduce MipsPat in place of Pat in order to exclude those from 2012-06-14 21:03:23 +00:00
MipsISelDAGToDAG.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsISelLowering.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsISelLowering.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsJITInfo.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsJITInfo.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsLongBranch.cpp Make MipsLongBranch::runOnMachineFunction return true. 2012-06-19 03:45:29 +00:00
MipsMachineFunction.cpp Delete all functions that are no longer needed in MipsFunctionInfo, including 2012-05-12 03:22:13 +00:00
MipsMachineFunction.h Add methods to MipsFunctionInfo for initializing and accessing the stack frame 2012-06-14 01:15:36 +00:00
MipsMCInstLower.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsMCInstLower.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsRegisterInfo.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsRegisterInfo.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsRegisterInfo.td Revert r158846. 2012-06-20 21:19:39 +00:00
MipsRelocations.h remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsSchedule.td remove blanks, and some code format 2012-02-28 07:46:26 +00:00
MipsSelectionDAGInfo.cpp remove Emacs-tag form .cpp files in Mips Backend, and fix some typo. 2012-02-17 08:55:11 +00:00
MipsSelectionDAGInfo.h Reverse unnecessary changes made in r129606 and r129608. There is no change in functionality. 2011-04-15 21:51:11 +00:00
MipsSubtarget.cpp Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsSubtarget.h This patch adds a predicate to existing mips32 and mips64 so that those 2012-05-22 03:10:09 +00:00
MipsTargetMachine.cpp Add long branch expansion pass for MIPS. 2012-06-14 01:19:35 +00:00
MipsTargetMachine.h Fix coding style violations. Remove white spaces and tabs. 2012-06-14 21:10:56 +00:00
MipsTargetObjectFile.cpp remove Emacs-tag form .cpp files in Mips Backend, and fix some typo. 2012-02-17 08:55:11 +00:00
MipsTargetObjectFile.h Reverse unnecessary changes made in r129606 and r129608. There is no change in functionality. 2011-04-15 21:51:11 +00:00