Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] mips16 llvm almost at 100% pass rate in test-suite"
2013 Mar 14
0
[LLVMdev] initial putback for implementing mips16/nomips16 attributes - please review
I added one method which clears the list of register classes.
Then there is a change to mips16 code which simulates switching from
mips32 to mips16 mode in the same module. It seems to work fine in that
I can run this version of llvm for mips16 and it works identical to the
one without this code. Beyond the "make check" I have run test-suite
against this version.
We could just
2012 Oct 02
0
[LLVMdev] possible target inpdependent changes to support mips16 and arm thumb
I'm starting to look more seriously at the problem of being able to
running TargetLowering on a per function basis.
In particular, I want to be able to compile functions as mips16 or
mips32 , mixing them within a single compilation unit.
It would be great if some more experienced people in this overall
structure of the compiler would give their 2c because I'd hate to spend
a lot of
2012 Jan 24
3
[LLVMdev] mips16
I'm working on the mips16.
Mips16 is a mode of the Mips32 (or Mips64) processor. For the most part,
it is a compressed form of the MIPS32 instruction set, though not all
instructions are supported. Most of the same opcodes and formats are
present though sometimes with some restriction. (The micro mips
architecture is a true 16 bit compressed form of MIps32 though also with
some
2012 Jul 27
0
[LLVMdev] mips16 floating point
Mips16 mode has no floating point instructions.
(Remember that mips16 is just an alternate decoder mode for the
processor, mips32 or mips64
is the base processor).
Currently with gcc for mips16, when there is floating point it generates
a function call to emulate each floating point instruction.
For mips 16 in llvm I want to just compile any function that has
floating point, in mips32 mode.
2012 Jan 25
0
[LLVMdev] mips16
On Jan 24, 2012, at 1:46 AM, Reed Kotler wrote:
> Mips16 is a mode of the Mips32 (or Mips64) processor. For the most part,
> it is a compressed form of the MIPS32 instruction set, though not all
> instructions are supported. Most of the same opcodes and formats are
> present though sometimes with some restriction. (The micro mips
> architecture is a true 16 bit compressed form
2013 Jan 05
0
[LLVMdev] mips16 hard float puzzle
On Fri, Jan 4, 2013 at 4:08 PM, reed kotler <rkotler at mips.com> wrote:
> I'm working on mips16 hard float which at a first approximation is just soft
> float but calls different library routines. Those different library routines
> are just an implementation (in mips32 mode) of soft float using mips32
> hardware instructions. This part is already done. (mips16 mode has no
2013 Jan 08
2
[LLVMdev] mips16 hard float puzzle
For example:
/home/rkotler/llvm/install/bin/llc -mcpu=mips16 hf16_2.ll -march=mipsel
-relocation-model=pic -o hf16_2.s -O3 -mips16-hard-float -soft-float
On 01/04/2013 07:45 PM, Eli Friedman wrote:
> On Fri, Jan 4, 2013 at 6:28 PM, reed kotler <rkotler at mips.com> wrote:
>> On 01/04/2013 06:08 PM, Eli Friedman wrote:
>>> On Fri, Jan 4, 2013 at 4:08 PM, reed kotler
2013 Aug 09
0
[LLVMdev] unofficially mips16 llvm now passes all of test-suite in pic mode
I have to look at some issues in static but the initial port is pic and
all of test-suite now passes.
Even the crazy mips16 hard-float and interoperability with mips32 is
working in test-suite.
People that have experience with this in gcc mips16 can attest to the
complexity there.
More testing and other work but at least the base port is there.
Reed
2013 Jan 05
2
[LLVMdev] mips16 hard float puzzle
I'm working on mips16 hard float which at a first approximation is just
soft float but calls different library routines. Those different library
routines are just an implementation (in mips32 mode) of soft float using
mips32 hardware instructions. This part is already done. (mips16 mode
has no floating point instructions).
The next level of this that I am working on now is the ability to
2012 Jan 20
0
[LLVMdev] various mips16 and micro mips issues
On Fri, Jan 20, 2012 at 1:59 PM, reed kotler <rkotler at mips.com> wrote:
> We are starting to look at the mips16 and micro mips ports.
>
> There are various design issues that people may have some good input on.
> Especially in how to structure the TD files and other optimizer issues.
>
> Mips16 is sort of like thumb and Micro Mips like thumb2 as far as I
> understand.
2013 Jan 08
0
[LLVMdev] mips16 hard float puzzle
On Mon, Jan 7, 2013 at 4:16 PM, reed kotler <rkotler at mips.com> wrote:
> On 01/04/2013 07:45 PM, Eli Friedman wrote:
>>
>> On Fri, Jan 4, 2013 at 6:28 PM, reed kotler <rkotler at mips.com> wrote:
>>>
>>> On 01/04/2013 06:08 PM, Eli Friedman wrote:
>>>>
>>>> On Fri, Jan 4, 2013 at 4:08 PM, reed kotler <rkotler at mips.com>
2012 Jan 20
4
[LLVMdev] various mips16 and micro mips issues
We are starting to look at the mips16 and micro mips ports.
There are various design issues that people may have some good input on.
Especially in how to structure the TD files and other optimizer issues.
Mips16 is sort of like thumb and Micro Mips like thumb2 as far as I
understand.
Mips16 or Micro Mips can live inside of either MIPS32 or MIPS64.
In gcc, it's possible using attributes to
2012 Jan 25
1
[LLVMdev] more mips16 puzzles
1. mips16 instructions (except for move) have a different encoding from
normal mips32 instructions for two registers.
however in the move register 2 operand instruction, one register takes
the mips16 encoding and the other the mips32 encoding (so that gives
mips16 access to the full register set).
how does one deal with multiple encodings of the same register? can you
change it on an
2013 Jan 08
2
[LLVMdev] mips16 hard float puzzle
On 01/04/2013 07:45 PM, Eli Friedman wrote:
> On Fri, Jan 4, 2013 at 6:28 PM, reed kotler <rkotler at mips.com> wrote:
>> On 01/04/2013 06:08 PM, Eli Friedman wrote:
>>> On Fri, Jan 4, 2013 at 4:08 PM, reed kotler <rkotler at mips.com> wrote:
>>>> I'm working on mips16 hard float which at a first approximation is just
>>>> soft
2013 Jan 05
0
[LLVMdev] mips16 hard float puzzle
On Fri, Jan 4, 2013 at 6:28 PM, reed kotler <rkotler at mips.com> wrote:
> On 01/04/2013 06:08 PM, Eli Friedman wrote:
>>
>> On Fri, Jan 4, 2013 at 4:08 PM, reed kotler <rkotler at mips.com> wrote:
>>>
>>> I'm working on mips16 hard float which at a first approximation is just
>>> soft
>>> float but calls different library
2012 Sep 21
0
[LLVMdev] mips16 puzzle
Reed,
It's not clear to me that you need to do anything special here. If you define your MIPS16 register class as not containing SP, then any MIPS16 instructions that get selected and want to read from SP should get a COPY inserted from SP to a MIPS16 vreg. The coalescer should, ideally, get rid of extraneous copies for you.
--Owen
On Sep 20, 2012, at 10:48 PM, Reed Kotler <rkotler at
2013 Apr 01
0
[LLVMdev] proposed change to class BasicTTI and dual mode mips16/32 working
On 04/01/2013 12:31 PM, Chandler Carruth wrote:
> On Thu, Mar 28, 2013 at 12:22 PM, Nadav Rotem <nrotem at apple.com
> <mailto:nrotem at apple.com>> wrote:
>
> IMHO the right way to handle target function attributes is to
> re-initialize the target machine and TTI for every function (if
> the attributes changed). Do you have another solution in mind ?
2012 Oct 12
0
[LLVMdev] another mips16 puzzle
Usually we do all the accessing of stack variables via the SP register.
When the stack size is dynamic we need a frame pointer, FP.
There is a traditional FP register for MIPS, but FP is not a mips16
register so in general it has little use for mips16 because you can't
directly address it except in the move instruction when moving from/to
mips16 to mips32 register.
There are several ways
2013 Jan 05
4
[LLVMdev] mips16 hard float puzzle
On 01/04/2013 06:08 PM, Eli Friedman wrote:
> On Fri, Jan 4, 2013 at 4:08 PM, reed kotler <rkotler at mips.com> wrote:
>> I'm working on mips16 hard float which at a first approximation is just soft
>> float but calls different library routines. Those different library routines
>> are just an implementation (in mips32 mode) of soft float using mips32
>>
2012 Sep 24
0
[LLVMdev] mips16 puzzle
On Sep 20, 2012, at 11:44 PM, Reed Kotler <rkotler at mips.com> wrote:
> Actually, SP is already not in the mips 16 register class but there is some C++ code that is common to mips32, mips64 and mips16 that is wanting to use SP. It's kind of awkward but does work except in this case of load/store haflword and byte to stack objects.
>
ARM has a similar problem. The InstrInfo