Displaying 20 results from an estimated 39 matches for "ldi".
Did you mean:
edi
2019 Mar 07
5
Writing unit tests - how to test re-orderable blocks...
We have a test that looks like this…
define void @array16_store() {
; CHECK-LABEL: array16_store:
; CHECK: ldi [[REG1:r[0-9]+]], 204
; CHECK: ldi [[REG2:r[0-9]+]], 170
; CHECK: sts int.array+3, [[REG2]]
; CHECK: sts int.array+2, [[REG1]]
; CHECK: ldi [[REG1:r[0-9]+]], 187
; CHECK: ldi [[REG2:r[0-9]+]], 170
; CHECK: sts int.array+1, [[REG2]]
; CHECK: sts int.array, [[REG1]]
; CHECK: ldi [[REG1:r[0-9]+]],...
2019 Mar 08
2
Writing unit tests - how to test re-orderable blocks...
...com> wrote:
>
> On Fri, Mar 8, 2019 at 1:45 AM Carl Peto via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
>>
>> We have a test that looks like this…
>>
>> define void @array16_store() {
>> ; CHECK-LABEL: array16_store:
>>
>> ; CHECK: ldi [[REG1:r[0-9]+]], 204
>> ; CHECK: ldi [[REG2:r[0-9]+]], 170
>> ; CHECK: sts int.array+3, [[REG2]]
>> ; CHECK: sts int.array+2, [[REG1]]
>>
>> ; CHECK: ldi [[REG1:r[0-9]+]], 187
>> ; CHECK: ldi [[REG2:r[0-9]+]], 170
>> ; CHECK: sts int.array+1, [[REG2]]
>...
2010 Dec 24
3
selection of outputs from the function
Hi Dear All,
This is a function which contains Covariance Ratio and Likelihood Distance
values (CVRi, LDi). i want to compute the all row's values, that is run this
function for nrow(X) times. The X and Y matrices are;
X<-matrix(c(1125,920,835,1000,1150,990,840,650,640,583,570,570,510,555,460,275,510,165,244,79,232,268,271,237,192,202,184,200,180,165,151,171,243,147,286,198,196,210,327,334,7160...
2016 Jul 28
2
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...x bd192b8..4aa3362 100644
--- a/CompileOnDemandLayer.h
+++ b/CompileOnDemandLayer.h
@@ -429,6 +429,28 @@ private:
return CalledAddr;
}
+public:
+ TargetAddress updatePointer(std::string FuncName, TargetAddress
FnBodyAddr) {
+ //Find out which logical dylib contains our symbol
+ auto LDI = LogicalDylibs.begin();
+ for (auto LDE = LogicalDylibs.end(); LDI != LDE; ++LDI) {
+ if (auto LMResources =
LDI->getLogicalModuleResourcesForSymbol(FuncName, false)) {
+ Module &SrcM = LMResources->SourceModule->getResource();
+ std::string CalledFnNam...
2020 Jun 25
2
How to implement load/store for vector predicate register
...type(vpr) for vector predicate registers in backend.
Although there is no direct instruction to move vpr to vr or to move vr to vpr, there is a method to work around this. And we have load/store instructions for vr.
move vpr to vr for v32i16 (from vpr0 to vr1):
1 vclr vr0 // clear vr0
2 ldi r5, 0x00010001 // load immediate (compare bit mask for v32i16) to scalar register r5
3 movr2vr.dup vr2, r5 // duplicate content in r5 into vr2,
4 vadd.t.s16 vr1, vr0, vr2, vpr0 //vector add if element compare bit is set, element type is 16 bit signed integer, now we have moved co...
2016 Jul 29
0
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...yer.h
> +++ b/CompileOnDemandLayer.h
> @@ -429,6 +429,28 @@ private:
> return CalledAddr;
> }
>
> +public:
> + TargetAddress updatePointer(std::string FuncName, TargetAddress
> FnBodyAddr) {
> + //Find out which logical dylib contains our symbol
> + auto LDI = LogicalDylibs.begin();
> + for (auto LDE = LogicalDylibs.end(); LDI != LDE; ++LDI) {
> + if (auto LMResources =
> LDI->getLogicalModuleResourcesForSymbol(FuncName, false)) {
> + Module &SrcM = LMResources->SourceModule->getResource();
> +...
2016 Jul 29
2
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...r.h
>> @@ -429,6 +429,28 @@ private:
>> return CalledAddr;
>> }
>>
>> +public:
>> + TargetAddress updatePointer(std::string FuncName, TargetAddress
>> FnBodyAddr) {
>> + //Find out which logical dylib contains our symbol
>> + auto LDI = LogicalDylibs.begin();
>> + for (auto LDE = LogicalDylibs.end(); LDI != LDE; ++LDI) {
>> + if (auto LMResources =
>> LDI->getLogicalModuleResourcesForSymbol(FuncName, false)) {
>> + Module &SrcM = LMResources->SourceModule->getResource();...
2019 Mar 02
3
Legalising seems to lose critical information needed for lowering return values properly?
...32) local_unnamed_addr {
entry:
%1 = call i32 @myExternalFunction1(i32 %0, i32 119)
ret i32 %1
}
declare i32 @myExternalFunction1(i32, i32)
Is being lowered to this assembly language...
setServoAngle3: ; @setServoAngle3
; %bb.0: ; %entry
ldi r18, 119
ldi r19, 0
ldi r20, 0
ldi r21, 0
call myExternalFunction1
mov r18, r22
mov r19, r23
mov r22, r24
mov r23, r25
mov r24, r18
mov r25, r19
ret
Which is clearly wrong. It should just be...
setServoAngle3: ; @setServoAngle3
; %bb.0:...
2016 Jul 29
0
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...@ private:
>>> return CalledAddr;
>>> }
>>>
>>> +public:
>>> + TargetAddress updatePointer(std::string FuncName, TargetAddress
>>> FnBodyAddr) {
>>> + //Find out which logical dylib contains our symbol
>>> + auto LDI = LogicalDylibs.begin();
>>> + for (auto LDE = LogicalDylibs.end(); LDI != LDE; ++LDI) {
>>> + if (auto LMResources =
>>> LDI->getLogicalModuleResourcesForSymbol(FuncName, false)) {
>>> + Module &SrcM = LMResources->SourceModule->...
2020 Jun 26
2
How to implement load/store for vector predicate register
...type(vpr) for vector predicate registers in backend.
Although there is no direct instruction to move vpr to vr or to move vr to vpr, there is a method to work around this. And we have load/store instructions for vr.
move vpr to vr for v32i16 (from vpr0 to vr1):
1 vclr vr0 // clear vr0
2 ldi r5, 0x00010001 // load immediate (compare bit mask for v32i16) to scalar register r5
3 movr2vr.dup vr2, r5 // duplicate content in r5 into vr2,
4 vadd.t.s16 vr1, vr0, vr2, vpr0 //vector add if element compare bit is set, element type is 16 bit signed integer, now we have moved co...
2016 Jul 30
1
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
...return CalledAddr;
>>>> }
>>>>
>>>> +public:
>>>> + TargetAddress updatePointer(std::string FuncName, TargetAddress
>>>> FnBodyAddr) {
>>>> + //Find out which logical dylib contains our symbol
>>>> + auto LDI = LogicalDylibs.begin();
>>>> + for (auto LDE = LogicalDylibs.end(); LDI != LDE; ++LDI) {
>>>> + if (auto LMResources =
>>>> LDI->getLogicalModuleResourcesForSymbol(FuncName, false)) {
>>>> + Module &SrcM = LMResources->...
2014 May 19
2
[LLVMdev] Associate IR instruction with corresponding assembly
Hi,
Compiling for both x86 and ARM with llc aborts after this pass.
I have a simple helloworld.c program.
I am attaching the .ll file created by:
*clang -O3 -g -emit-llvm hello.c -c -o hello.bc*
*llvm-dis hello.bc*
Thanks again for the response!
Shruti
On Mon, May 19, 2014 at 1:28 AM, Tobias Grosser <tobias at grosser.es> wrote:
> On 19/05/2014 00:54, shruti padmanabha wrote:
>
2006 Jul 24
1
[PATCH] vfork() for parisc
...system call number, %rp contains whence we came,
+ * %rp is saved and restored across the syscall, thankfully.
+ *
+ */
+
+ .text
+ .align 64 ; cache-width aligned
+ .globl vfork
+ .type vfork, at function
+vfork:
+ /* pid_t vfork(void) */
+ ble 0x100(%sr2, %r0) ; jump to gateway page
+ nop
+
+ ldi -0x1000,%r19 ; %r19 = -4096
+ sub %r0,%ret0,%r22 ; %r22 = -%ret0
+ cmpb,>>=,n %r19,%ret0,1f ; if %ret0 >= -4096UL
+ ldi -1,%ret0 ; nullified on taken forward
+
+ /* store %r22 to errno... */
+ ldil L%errno,%r1
+ ldo R%errno(%r1),%r1
+ stw %r22,0(%r1)
+1:
+ bv %r0(%rp) ; jump ba...
2007 Nov 17
2
unlink_directory(....Trash.NewFolder) failed: Directory not empty
I noticed the following this week. No idea how long its been happening because I have
not tested deleting folders hardly at all. Steps to reproduce:
1. Create a folder "NewFolder", click on it in thunderbird so an index dir is created:
ls -ldi Maildir/.NewFolder/
1504062 drwx------ 5 mcdouga9 egrstaff 4096 Nov 16 19:44 Maildir/.NewFolder/
ls -ldi Maildir/dovecot/boomhauer/private/indexes/.NewFolder/
4198832 drwx------ 2 mcdouga9 egrstaff 4096 Nov 16 19:44 Maildir/dovecot/boomhauer/private/indexes/.NewFolder/
ls -li Maildir/doveco...
2012 Feb 02
0
[LLVMdev] How to improve code generated for 'getelementptr' ?
...sts of 5 instructions which is already much better
(The optimal would use 4 instructions)
Question: how can we teach llvm to provide code like Init2, for input of Init1 ?
---
.text
.globl _Init1
_Init1: ;; @Init1
;; BB#0: ;; %entry
ldi R1 , 0
ldi R2 , 1
ldi R3 , 100
_BB1_1: ;; %for.body
;; =>This Inner Loop Header: Depth=1
mov R4 , R1
add R1 , 1
mov R5 , R0
sll R4 , 2
cmpne R1 , R3
add R5 , R4
bcc24 _BB1_1
sw R2 , R5, 0
;; BB#2:...
2017 Jul 11
6
RFC: Harvard architectures and default address spaces
...There are different instructions which require different fixups to be
applied depending on whether pointers are located in data space or program
space.
Take the ICALL instruction - it performs an indirect call to the pointer
stored in the Z register.
We must first load the pointer into Z via the ‘ldi’ instruction. If the
pointer is actually a pointer to a symbol, we need to emit a AVR_LO8_LDI_GS
relocation, otherwise we emit a AVR_LO8_LDI relocation. There are a few
other cases, but they’re irrelevant for this discussion.
We can quite easily look at the GlobalValue* that corresponds to the
poi...
2012 Nov 20
1
[LLVMdev] My documentation work
Sean,
Thank your valuable opinion. I am doing the revision history now. I also review my book and find I made a mistake in LDI instruction. According cpu0, this instruction is move immediate value (for example, 5) to register, not add immediate value to register. I need to fix this for reader's feeling. I am an experienced programmer and I am less-experienced book writer. Please correct me if you find anything wrong....
2005 Nov 25
0
Fix syscalls with more than four arguments on parisc
...l __syscall_common
+ .type __syscall_common,@function
+__syscall_common:
+ ldo 0x40(%sp),%sp
+ stw %rp,-0x54(%sp) ; save return pointer
+
+ ldw -0x74(%sp),%r22 ; %arg4
+ ldw -0x78(%sp),%r21 ; %arg5
+
+ ble 0x100(%sr2, %r0) ; jump to gateway page
+ nop ; can we move a load here?
+
+ ldi -0x1000,%r19 ; %r19 = -4096
+ sub %r0,%ret0,%r22 ; %r22 = -%ret0
+ cmpb,>>=,n %r19,%ret0,1f ; if %ret0 >= -4096UL
+ ldi -1,%ret0 ; nullified on taken forward
+
+ /* store %r22 to errno... */
+ ldil L%errno,%r1
+ ldo R%errno(%r1),%r1
+ stw %r22,0(%r1)
+1:
+ ldw -0x54(%sp),%rp ;...
2012 Jan 10
1
[LLVMdev] SelectionDAG
..., i8 %b) {
entry:
%c = sub i8 %a, 5
ret i8 %c
}
with `build/Debug/bin/llc -march=avr llvm.ll -o -` and I receive:
.file "test.ll"
.text
.global foo
.type foo, at function
foo: # @foo
# BB#0: # %entry
MOV r22, r24
LDI r24, -5
ADD r24, r18
RET
.tmp0:
.size foo, .tmp0-foo
While I would like the output as such:
.file "test.ll"
.text
.global foo
.type foo, at function
foo: # @foo
# BB#0: # %entry
SUB r24, 5
RET
.tmp0:
.size foo,...
2014 Jul 04
2
[LLVMdev] MOS6502 target
I suppose that once you've got a 6502 working, adding support for a 4510
shouldn't be too difficult....
(http://c65gs.blogspot.com.au/)
On Fri, Jul 4, 2014 at 10:38 AM, Bruce Hoult <bruce at hoult.org> wrote:
> On Fri, Jul 4, 2014 at 12:02 PM, Edwin Amsler <edwinguy at gmail.com> wrote:
>
>> Well, the stack pointer be a single byte, so pushing things on there