search for: mipsabiinfo

Displaying 11 results from an estimated 11 matches for "mipsabiinfo".

2012 Oct 23
0
[LLVMdev] ABI: how to let the backend know that an aggregate should be allocated on stack
...d won't pass in registers. > I tried to pass a struct with vector types, but the backend will expand the > struct > See llvm::ComputeValueVTs > // Given a struct type, recursively traverse the elements. > > I tried to use indirect in Clang, it does not work out as I wish. See MipsABIInfo::getPaddingType; a similar sort of approach should work here. (Granted, onstack would be more convenient, but it doesn't exist at the moment.) -Eli
2014 Nov 24
4
[LLVMdev] Proposed patches for Clang 3.5.1
...ding explicit -target * r214025 - [Driver][Mips] Check output of -dynamic-linker arguments by the Clang driver * r214662 - [Mips] Add the `mips64-linux-gnu` target to the test case to check `in128` type handling. * r217147 - [mips] Zero-sized structs cannot be ignored in MipsABIInfo::classifyReturnType() for O32 Proposed llvm patches: * r216920 - Fix left shifts of negative values in MipsDisassembler. * r221408 - [mips64] Fix MIPS64 exception personality encoding * r221453 - [mips] Tolerate the use of the %z inline asm operand modifier with non-imme...
2012 Oct 23
4
[LLVMdev] ABI: how to let the backend know that an aggregate should be allocated on stack
Hi All, I am trying to handle the Homogeneous Aggregate for ARM-VFP according to the spec: C.1.vfp If the argument is a VFP CPRC and there are sufficient consecutive VFP registers of the appropriate type unallocated then the argument is allocated to the lowest-numbered sequence of such registers. C.2.vfp If the argument is a VFP CPRC then any VFP registers that are unallocated are marked as
2014 Nov 24
4
[LLVMdev] Proposed patches for Clang 3.5.1
...ips] Check output of -dynamic-linker arguments > by the Clang driver > > > > * r214662 - [Mips] Add the `mips64-linux-gnu` target to the test case to > check `in128` type handling. > > > > * r217147 - [mips] Zero-sized structs cannot be ignored in > MipsABIInfo::classifyReturnType() for O32 > > These look OK to me you you can merge them to the 3.5 branch yourself, > or if you aren't comfortable with this, I can do it. If you decide > to merge them yourself, make sure you use the merge script so we get a > consistent commit message for...
2015 Sep 23
4
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. · The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 23
2
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. • The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 23
2
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. • The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 23
4
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. • The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 23
3
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. • The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 24
3
The Trouble with Triples
...We construct a TargetMachine and all the other objects using this llvm::Triple. • The architecture was Triple::mips so everything configures for big-endian even though the target was supposed to be little endian. CPU Defaults In LLVM, the default CPU is hardcoded to be MIPS32 (in MipsABIInfo::computeTargetABI()). In Clang, the default CPU for this triple is hardcoded to be MIPS32R2 (in mips::getMipsCPUAndABI()) and clang always passes an explicit CPU to the backend via –target-cpu. On Debian, the default CPU for mipsel-linux-gnu is MIPS-II. On Fedora, the default CPU for mipsel-linux-...
2015 Sep 22
2
The Trouble with Triples
>> Here's the line of thought that I'd like people to start with: >> * Triples don't describe the target. They look like they should, but they >> don't. They're really just arbitrary strings. > >Triples are used as a starting point, but no more. I disagree with this but for now let's assume it's true. The starting point is incorrect because