9 Commits

Author SHA1 Message Date
Petar Jovanovic
8a7d229b56 [MIPS GlobalISel] Select icmp
Select 32bit integer compare instructions for MIPS32.

Patch by Petar Avramovic.

Differential Revision: https://reviews.llvm.org/D51489


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@341840 91177308-0d34-0410-b5e6-96231b3b80d8
2018-09-10 15:56:52 +00:00
Petar Jovanovic
f4bd4b2689 [MIPS GlobalISel] Select global address
Select G_GLOBAL_VALUE for position dependent code.

Patch by Petar Avramovic.

Differential Revision: https://reviews.llvm.org/D49803


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@338499 91177308-0d34-0410-b5e6-96231b3b80d8
2018-08-01 09:03:23 +00:00
Petar Jovanovic
f85073912f [MIPS GlobalISel] Select instructions to load and store i32 on stack
Add code for selection of G_LOAD, G_STORE, G_GEP, G_FRAMEINDEX and
G_CONSTANT. Support loads and stores of i32 values.

Patch by Petar Avramovic.

Differential Revision: https://reviews.llvm.org/D48957


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@337168 91177308-0d34-0410-b5e6-96231b3b80d8
2018-07-16 13:29:32 +00:00
Nicola Zaghen
0818e789cb Rename DEBUG macro to LLVM_DEBUG.
The DEBUG() macro is very generic so it might clash with other projects.
The renaming was done as follows:
- git grep -l 'DEBUG' | xargs sed -i 's/\bDEBUG\s\?(/LLVM_DEBUG(/g'
- git diff -U0 master | ../clang/tools/clang-format/clang-format-diff.py -i -p1 -style LLVM
- Manual change to APInt
- Manually chage DOCS as regex doesn't match it.

In the transition period the DEBUG() macro is still present and aliased
to the LLVM_DEBUG() one.

Differential Revision: https://reviews.llvm.org/D43624



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@332240 91177308-0d34-0410-b5e6-96231b3b80d8
2018-05-14 12:53:11 +00:00
Petar Jovanovic
91e3c3b9cc [MIPS GlobalISel] remove superfluous #includes (NFC)
Remove superfluous #includes.
Minor code style change in MipsCallLowering::lowerFormalArguments().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@329926 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-12 17:01:46 +00:00
Petar Jovanovic
92ffece499 [MIPS GlobalISel] Select add i32, i32
Add the minimal support necessary to lower a function that returns the
sum of two i32 values.
Support argument/return lowering of i32 values through registers only.
Add tablegen for regbankselect and instructionselect.

Patch by Petar Avramovic.

Differential Revision: https://reviews.llvm.org/D44304


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@329819 91177308-0d34-0410-b5e6-96231b3b80d8
2018-04-11 15:12:32 +00:00
Petar Jovanovic
406f2e505d [mips] finish removal of unused fields in MipsInstructionSelector
r325916 missed to remove calls in constructor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@325917 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-23 15:47:05 +00:00
Petar Jovanovic
1977d05ab4 [mips] remove unused fields in MipsInstructionSelector
Unused fields cause buildbreak if -Werror,-Wunused-private-field is passed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@325916 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-23 15:34:02 +00:00
Petar Jovanovic
581db4c3f6 [MIPS GlobalISel] Adding GlobalISel
Add GlobalISel infrastructure up to the point where we can select a ret
void.

Patch by Petar Avramovic.

Differential Revision: https://reviews.llvm.org/D43583


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@325888 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-23 11:06:40 +00:00