search for: popq

Displaying 20 results from an estimated 205 matches for "popq".

Did you mean: pop
2016 May 04
2
OrcLazyJIT for windows
...// 0x42: callq *%rax 0x48, 0x89, 0x45, 0x08, // 0x44: movq %rax, 8(%rbp) 0x48, 0x0f, 0xae, 0x0c, 0x24, // 0x48: fxrstor64 (%rsp) 0x48, 0x81, 0xc4, 0x08, 0x02, 0x00, 0x00, // 0x4d: addq 0x208, %rsp 0x41, 0x5f, // 0x54: popq %r15 0x41, 0x5e, // 0x56: popq %r14 0x41, 0x5d, // 0x58: popq %r13 0x41, 0x5c, // 0x5a: popq %r12 0x41, 0x5b, // 0x5c: popq %r11 0x41, 0x5a,...
2016 May 04
2
OrcLazyJIT for windows
...// 0x44: movq %rax, 8(%rbp) >> >> 0x48, 0x0f, 0xae, 0x0c, 0x24, // 0x48: fxrstor64 (%rsp) >> >> 0x48, 0x81, 0xc4, 0x08, 0x02, 0x00, 0x00, // 0x4d: addq 0x208, %rsp >> >> 0x41, 0x5f, // 0x54: popq %r15 >> >> 0x41, 0x5e, // 0x56: popq %r14 >> >> 0x41, 0x5d, // 0x58: popq %r13 >> >> 0x41, 0x5c, // 0x5a: popq %r12 >> >> 0x41, 0x5b,...
2016 Jun 25
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...o whwn execution returns to main (which is caller of > makewt) > value of *ip is gone from R14 (which sould not) and when main calls makewt > again > then value of *ip (R14) is wrong and result into segmentation fault. > > Assembly code of makewt: > _makewt: > ... > popq %rbx > popq %r12 > popq %r13 > popq %r14 > popq %r15 > popq %rbp > jmp _bitrv2 ## TAILCALL > A very naive solution to this problem come to me is to convert above code to following: _makewt: ... jmp _bitrv2 ## TAILCALL p...
2016 Jun 25
3
Tail call optimization is getting affected due to local function related optimization with IPRA
...ated and here bitrv2 does not preserve R14 so whwn execution returns to main (which is caller of makewt) value of *ip is gone from R14 (which sould not) and when main calls makewt again then value of *ip (R14) is wrong and result into segmentation fault. Assembly code of makewt: _makewt: ... popq %rbx popq %r12 popq %r13 popq %r14 popq %r15 popq %rbp jmp _bitrv2 ## TAILCALL There is one more case of faluire due to local function related optimization. I am analysing that (sorry for taking more time but I am not much good at assembly). I need some hints for...
2016 Jun 26
3
Tail call optimization is getting affected due to local function related optimization with IPRA
...ich is caller of >> makewt) >> value of *ip is gone from R14 (which sould not) and when main calls >> makewt again >> then value of *ip (R14) is wrong and result into segmentation fault. >> >> Assembly code of makewt: >> _makewt: >> ... >> popq %rbx >> popq %r12 >> popq %r13 >> popq %r14 >> popq %r15 >> popq %rbp >> jmp _bitrv2 ## TAILCALL >> > > A very naive solution to this problem come to me is to convert above code > to following: > > _makewt:...
2020 Feb 11
1
[PATCH 08/62] x86/boot/compressed/64: Add IDT Infrastructure
...bx > + pushq %rbp > + pushq %r12 > + pushq %r13 > + pushq %r14 > + pushq %r15 > + > + /* Call handler with pt_regs */ > + movq %rsp, %rdi > + call \function > + > + /* Restore regs */ > + popq %r15 > + popq %r14 > + popq %r13 > + popq %r12 > + popq %rbp > + popq %rbx > + popq %r11 > + popq %r10 > + popq %r9 > + popq %r8 > + popq %rax > + popq %rcx > +...
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...rve R14 so whwn execution returns to main (which is caller of makewt) > value of *ip is gone from R14 (which sould not) and when main calls makewt again > then value of *ip (R14) is wrong and result into segmentation fault. > > Assembly code of makewt: > _makewt: > ... > popq %rbx > popq %r12 > popq %r13 > popq %r14 > popq %r15 > popq %rbp > jmp _bitrv2 ## TAILCALL > > A very naive solution to this problem come to me is to convert above code to following: > > _makewt: > ... > jmp _bitrv2...
2016 Jun 27
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...) >>> value of *ip is gone from R14 (which sould not) and when main calls >>> makewt again >>> then value of *ip (R14) is wrong and result into segmentation fault. >>> >>> Assembly code of makewt: >>> _makewt: >>> ... >>> popq %rbx >>> popq %r12 >>> popq %r13 >>> popq %r14 >>> popq %r15 >>> popq %rbp >>> jmp _bitrv2 ## TAILCALL >>> >> >> A very naive solution to this problem come to me is to convert above code &gt...
2020 Apr 28
0
[PATCH v3 13/75] x86/boot/compressed/64: Add IDT Infrastructure
...6 +33,7 @@ #include <asm/processor-flags.h> #include <asm/asm-offsets.h> #include <asm/bootparam.h> +#include <asm/desc_defs.h> #include "pgtable.h" /* @@ -401,6 +402,10 @@ SYM_CODE_START(startup_64) .Lon_kernel_cs: + pushq %rsi + call load_stage1_idt + popq %rsi + /* * paging_prepare() sets up the trampoline and checks if we need to * enable 5-level paging. @@ -528,6 +533,13 @@ SYM_FUNC_START_LOCAL_NOALIGN(.Lrelocated) shrq $3, %rcx rep stosq +/* + * Load stage2 IDT + */ + pushq %rsi + call load_stage2_idt + popq %rsi + /* * Do the ex...
2020 Feb 11
0
[PATCH 08/62] x86/boot/compressed/64: Add IDT Infrastructure
...m/processor-flags.h> #include <asm/asm-offsets.h> #include <asm/bootparam.h> +#include <asm/desc_defs.h> #include "pgtable.h" /* @@ -358,6 +359,10 @@ SYM_CODE_START(startup_64) movq %rax, gdt64+2(%rip) lgdt gdt64(%rip) + pushq %rsi + call load_stage1_idt + popq %rsi + /* * paging_prepare() sets up the trampoline and checks if we need to * enable 5-level paging. @@ -465,6 +470,16 @@ SYM_FUNC_END_ALIAS(efi_stub_entry) .text SYM_FUNC_START_LOCAL_NOALIGN(.Lrelocated) +/* + * Reload GDT after relocation - The GDT at the non-relocated position + *...
2016 Jun 28
0
Tail call optimization is getting affected due to local function related optimization with IPRA
...is gone from R14 (which sould not) and when main calls >>>> makewt again >>>> then value of *ip (R14) is wrong and result into segmentation fault. >>>> >>>> Assembly code of makewt: >>>> _makewt: >>>> ... >>>> popq %rbx >>>> popq %r12 >>>> popq %r13 >>>> popq %r14 >>>> popq %r15 >>>> popq %rbp >>>> jmp _bitrv2 ## TAILCALL >>>> >>> >>> A very naive solution to this problem com...
2012 Oct 02
18
[PATCH 0/3] x86: adjust entry frame generation
This set of patches converts the way frames gets created from using PUSHes/POPs to using MOVes, thus allowing (in certain cases) to avoid saving/restoring part of the register set. While the place where the (small) win from this comes from varies between CPUs, the net effect is a 1 to 2% reduction on a combined interruption entry and exit when the full state save can be avoided. 1: use MOV
2015 Jul 13
5
[LLVMdev] Poor register allocations vs gcc
...-darwin Host: osx yosemite. The assembly (cut to the essential): LLVM: pushq %rbp movq %rsp, %rbp pushq %r14 pushq %rbx movl %edi, %r14d leal 71(%r14), %eax xorl %ecx, %ecx cmpl $56, %eax movl $92, %ebx cmovnel %ecx, %ebx leaq L_.str(%rip), %rdi callq _puts leal 71(%rbx,%r14), %eax popq %rbx popq %r14 popq %rbp retq and the gcc one: pushq %rbp movl $0, %eax movl $92, %ebp pushq %rbx leal 71(%rdi), %ebx leaq LC1(%rip), %rdi subq $8, %rsp cmpl $56, %ebx cmovne %eax, %ebp call _puts addq $8, %rsp leal 0(%rbp,%rbx), %eax popq %rbx popq %rbp ret As we can se...
2010 Sep 01
5
[LLVMdev] equivalent IR, different asm
...$8, %rsp movq %rsi, %rbx movq %rdi, %r14 movq %rdx, %rdi movq %rcx, %rsi callq __ZN7WebCore4viziEPKNS_20RenderBoxModelObjectEPNS_10StyleImageE movq %rax, %rcx shrq $32, %rcx testl %ecx, %ecx je LBB0_2 ## BB#1: imull (%rbx), %eax cltd idivl %ecx movl %eax, (%r14) LBB0_2: addq $8, %rsp popq %rbx popq %r14 ret $ llc opt-fail.ll -o - .section __TEXT,__text,regular,pure_instructions .globl __ZN7WebCore6kolos1ERiS0_PKNS_20RenderBoxModelObjectEPNS_10StyleImageE .align 4, 0x90 __ZN7WebCore6kolos1ERiS0_PKNS_20RenderBoxModelObjectEPNS_10StyleImageE: ## @_ZN7WebCore6kolos1ERiS0_PKNS_20...
2013 Aug 08
0
[LLVMdev] Address space extension
...t i32 %2 } Note that in loadgs2, the call to toglobal has been inlined and so the back end will just see a bitcast, which SelectionDAG treats as a no-op. The assembly we get from this is: _toglobal: ## @toglobal ## BB#0: pushq %rbp movq %rsp, %rbp movq %rdi, %rax popq %rbp ret load: ## @load ## BB#0: pushq %rbp movq %rsp, %rbp movl (%rdi), %eax popq %rbp ret .globl _loadgs .align 4, 0x90 loadgs: ## @loadgs ## BB#0: pushq %rbp movq %rsp, %rbp movl %gs:(%rdi), %eax popq %rbp ret .globl...
2010 Sep 01
0
[LLVMdev] equivalent IR, different asm
...%rcx, %rsi > callq __ZN7WebCore4viziEPKNS_20RenderBoxModelObjectEPNS_10StyleImageE > movq %rax, %rcx > shrq $32, %rcx > testl %ecx, %ecx > je LBB0_2 > ## BB#1: > imull (%rbx), %eax > cltd > idivl %ecx > movl %eax, (%r14) > LBB0_2: > addq $8, %rsp > popq %rbx > popq %r14 > ret > > > $ llc opt-fail.ll -o - > > .section __TEXT,__text,regular,pure_instructions > .globl __ZN7WebCore6kolos1ERiS0_PKNS_20RenderBoxModelObjectEPNS_10StyleImageE > .align 4, 0x90 > __ZN7WebCore6kolos1ERiS0_PKNS_20RenderBoxModelObjectEPNS_...
2016 Jun 28
2
Tail call optimization is getting affected due to local function related optimization with IPRA
...t) and when main calls makewt again >>>>>> then value of *ip (R14) is wrong and result into segmentation fault. >>>>>> >>>>>> Assembly code of makewt: >>>>>> _makewt: >>>>>> ... >>>>>> popq %rbx >>>>>> popq %r12 >>>>>> popq %r13 >>>>>> popq %r14 >>>>>> popq %r15 >>>>>> popq %rbp >>>>>> jmp _bitrv2 ## TAILCALL >>>>> >>>&g...
2013 Aug 08
4
[LLVMdev] Address space extension
On Aug 7, 2013, at 7:23 PM, Michele Scandale <michele.scandale at gmail.com> wrote: > On 08/08/2013 03:52 AM, Pete Cooper wrote: >>> Why a backend should be responsible (meaning have knowledge) for a >>> mapping between high level address spaces and low level address spaces? >> Thats true. I’m thinking entirely from the persecutive of the backend >> doing
2013 Aug 08
2
[LLVMdev] Address space extension
...the call to toglobal has been inlined and so the back end will just see a bitcast, which SelectionDAG treats as a no-op. The assembly we get from this is: > > _toglobal: ## @toglobal > ## BB#0: > pushq %rbp > movq %rsp, %rbp > movq %rdi, %rax > popq %rbp > ret > load: ## @load > ## BB#0: > pushq %rbp > movq %rsp, %rbp > movl (%rdi), %eax > popq %rbp > ret > > .globl _loadgs > .align 4, 0x90 > loadgs: ## @loadgs > ## BB#0: > pushq...
2019 Feb 05
2
clang emits calls to consexpr function.
...%rsp, %rbp .cfi_def_cfa_register %rbp subq $16, %rsp movl $0, -4(%rbp) callq _Z7productv //here you can see the calls to product function xorl %ecx, %ecx movl %eax, -8(%rbp) movl %ecx, %eax addq $16, %rsp popq %rbp .cfi_def_cfa %rsp, 8 retq while g++ do not emits calls to constexpr function $g++ test.cpp -std=c++11 $cat test.s main: .LFB1: .cfi_startproc pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_...