• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

JuliaLang / julia / #37568

pending completion
#37568

push

local

web-flow
Enable JITLink in aarch64 linux. (#49745)

* Enable JITLink in aarch64 linux.

* Simplify logic to enable JITLink

* Do not enable JITLink on Aarch64 Linux with LLVM < 15

* Add NEWS entry and mention JITLink memory bug in ARM devdocs

---------

Co-authored-by: Sunho Kim <ksunhokim123@gmail.com>

73376 of 84135 relevant lines covered (87.21%)

34426754.99 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

82.61
/stdlib/Base64/src/buffer.jl
1
# This file is a part of Julia. License is MIT: https://julialang.org/license
2

3
# Data buffer for pipes.
4
mutable struct Buffer
5
    data::Vector{UInt8}
6
    ptr::Ptr{UInt8}
7
    size::Int
8

9
    function Buffer(bufsize)
1✔
10
        data = Vector{UInt8}(undef, bufsize)
1✔
11
        return new(data, pointer(data), 0)
1✔
12
    end
13
end
14

15
Base.empty!(buffer::Buffer) = buffer.size = 0
×
16
Base.getindex(buffer::Buffer, i::Integer) = unsafe_load(buffer.ptr, i)
348✔
17
Base.setindex!(buffer::Buffer, v::UInt8, i::Integer) = unsafe_store!(buffer.ptr, v, i)
×
18
Base.firstindex(buffer::Buffer) = 1
×
19
Base.lastindex(buffer::Buffer) = buffer.size
100✔
20
Base.pointer(buffer::Buffer) = buffer.ptr
×
21
capacity(buffer::Buffer) = Int(pointer(buffer.data, lastindex(buffer.data) + 1) - buffer.ptr)
1✔
22

23
function consumed!(buffer::Buffer, n::Integer)
3✔
24
    @assert n ≤ buffer.size
3✔
25
    buffer.ptr += n
3✔
26
    buffer.size -= n
3✔
27
end
28

29
function read_to_buffer(io::IO, buffer::Buffer)
2✔
30
    offset = buffer.ptr - pointer(buffer.data)
2✔
31
    copyto!(buffer.data, 1, buffer.data, offset + 1, buffer.size)
2✔
32
    buffer.ptr = pointer(buffer.data)
2✔
33
    if !eof(io)
2✔
34
        n = min(bytesavailable(io), capacity(buffer) - buffer.size)
1✔
35
        unsafe_read(io, buffer.ptr + buffer.size, n)
1✔
36
        buffer.size += n
1✔
37
    end
38
    return
2✔
39
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc