Hendiadyoin1
73f347b75c
LibJS: Create static unwind mappings for BasicBlock
s
...
This is currently only used in the bytecode dump to annotate to where
unwinds lead per block, but will be hooked up to the virtual machine in
the next commit.
2023-10-30 13:10:08 +01:00
Tobias Christiansen
647f0ccd3f
LibWeb: Add rendering support for 'object-position'
...
Images now get rendered correctly according to the 'object-position'
property.
2023-10-30 10:40:30 +00:00
Tobias Christiansen
d00c7e55a5
LibWeb: Add plumbing for the new 'object-position' property
...
Now, the 'object-position' property gets properly parsed and is
provided to the rest of the ecosystem.
In the parser we use the same parsing as for the background-position,
which is not entirely correct but almost a <position>.
2023-10-30 10:40:30 +00:00
Tobias Christiansen
7e11de272f
LibWeb: Add 'object-position' property and 'position' enum
...
This patch adds the 'object-position' CSS property description to the
json for code generation.
Also the 'position' enum is added. The values of this enum are the
valid inputs to the object-position property from CSS Values-4.
2023-10-30 10:40:30 +00:00
Tobias Christiansen
6602b1ddb1
LibWeb: Rename "position" enum to "positioning"
...
The postitioning enum values are used by the position CSS property.
Unfortunately, the prior naming clashes with the CSS Values-4 type
named position, which will be implemented in a later commit.
2023-10-30 10:40:30 +00:00
Gurkirat Singh
ab2d8c092e
LibCore: Implement handler for Vector<String>
positional arguments
2023-10-30 10:39:59 +00:00
Gurkirat Singh
da8a3f9ff2
LibMarkdown: Render slugified anchor tag in heading
...
Because slugify function accepts AK::String, which can hold unicode
code_points as well, heading text is normalised to ensure with NFD
form to ensure same binary respresentation of a particular string.
2023-10-30 10:39:59 +00:00
Andreas Kling
0c6d094a7e
LibJS/JIT: Stop logging JIT success by default (but still log failure)
2023-10-30 07:11:43 +01:00
Zaggy1024
dfaf645302
LibJS: Add an inline JIT fast path when ToNumeric
has nothing to do
...
In most cases, this op will do nothing, as it is running on an the
accumulator while it already contains a number. Let's avoid doing that
native call.
2023-10-30 07:10:54 +01:00
Simon Wanner
a2b0154661
LibJS/JIT: Compile the AsyncIteratorClose instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
ac59e982a9
LibJS/JIT: Compile the CopyObjectExcludingProperties instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
9494fbe670
LibJS/JIT: Compile the PutByValueWithThis instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
847889343f
LibJS/JIT: Compile the New##ErrorName instructions
2023-10-30 07:10:24 +01:00
Simon Wanner
fd059d4e4a
LibJS/JIT: Compile the JumpUndefined instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
a16082c6a5
LibJS/JIT: Compile the HasPrivateId instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
712c89dacf
LibJS/JIT: Compile the GetNewTarget instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
19045d6431
LibJS/JIT: Compile the GetMethod instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
06ea4cfc4f
LibJS/JIT: Compile the DeleteVariable instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
cd18bc9d55
LibJS/JIT: Compile the GetImportMeta instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
c0c40110c1
LibJS/JIT: Compile the ImportCall instruction
2023-10-30 07:10:24 +01:00
Simon Wanner
ac43d3f6db
LibJS/JIT: Compile the PutPrivateById instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
81697549b7
LibJS/JIT: Compile the PutByIdWithThis instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
38d5d7979b
LibJS/JIT: Compile the DeleteByIdWithThis instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
b53277110e
LibJS/JIT: Compile the GetByValueWithThis instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
569ca57e22
LibJS/JIT: Compile the GetByIdWithThis instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
ad81f49b02
LibJS/JIT: Compile the ResolveSuperBase instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
4e9edb8c53
LibJS/JIT: Compile the GetPrivateById instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
4ce2878394
LibJS/JIT: Compile the GetObjectPropertyIterator instruction
2023-10-29 22:57:19 +01:00
Simon Wanner
ad81bf47bb
LibJS: Move GetObjectPropertyIterator impl to CommonImplementations
2023-10-29 22:57:19 +01:00
Tim Schumacher
25642dfe87
LibCompress: Implement correct validation of last filters
2023-10-29 22:00:59 +01:00
Tim Schumacher
786e654dfd
LibCompress: Implement the XZ delta filter
2023-10-29 22:00:59 +01:00
Tim Schumacher
f0b08e9dea
LibCompress: Process XZ filters in reverse order
...
XZ writes filters in the order that they are used during compression, so
we need to process them in the reverse order while decompression.
This wasn't noticed earlier because we only supported the LZMA2 filter.
2023-10-29 22:00:59 +01:00
Jakub Berkop
6a7b9b85a4
LibJS/JIT: Compile the DeleteByValueWithThis instruction
2023-10-29 21:51:46 +01:00
Jakub Berkop
0776404e03
LibJS/JIT: Compile the DeleteByValue instruction
2023-10-29 21:51:46 +01:00
Jakub Berkop
f5fcd4596c
LibJS/JIT: Compile the DeleteById instruction
2023-10-29 21:51:46 +01:00
Bastiaan van der Plaat
0104225d9b
LibWeb: Add TextEncoder encodeInto
2023-10-29 21:44:53 +01:00
Bastiaan van der Plaat
f1ead552ce
LibWeb: Add constructor options to TextDecoder
2023-10-29 21:44:53 +01:00
Tim Ledbetter
9ed8c0b183
LibGfx/JPEG: Propagate errors when creating JPEGLoadingContext
...
This allows the JPEG fuzzer to make progress.
2023-10-29 21:39:29 +01:00
Hendiadyoin1
a42d849ec1
LibJIT: Widen allowed argument range for add32 and use REX if necessary
...
The REX prefix is elided when it is not needed, so no change in code
size is to be expected
2023-10-29 20:28:04 +01:00
Hendiadyoin1
248782461c
LibJIT: Introduce and use REX prefix helper
...
This makes the code a bit more readable and in conjunction with the
ModRM helper should prevent some operand ordering bugs.
This also includes one incidental bugfix:
`sign_extend_32_to_64_bits`, was not setting the `REX.R` bit when
appropriate,
And one size obvious optimization:
We may now elide the REX prefix on `xor eax, eax` as storing to a 32 bit
register clears the upper 32 bit of said register, which is wanted here.
2023-10-29 20:28:04 +01:00
Hendiadyoin1
540963fbe3
LibJIT: Use ModRM helpers where applicable
...
This also widens the argument coverage of some helpers, to allow
memory offsets, this also consolidates the displacement size choosing.
This also stops us from some out argument ordering bugs, as we now just
need to look up the correct calling convention and call the correct
function.
2023-10-29 20:28:04 +01:00
Hendiadyoin1
b46c5545f1
LibJIT: Add ModRM helpers for argument encoding
2023-10-29 20:28:04 +01:00
Andrew Kaster
86ce502ae2
LibGfx+Utilities: Add helpers to load vector fonts from Core::Resources
2023-10-29 13:12:28 -06:00
Andrew Kaster
286dc6df7f
LibGfx: Remove ability to load fonts directly from a file path
...
Users must now either pass a Core::Resource, a resource:// URI, or
a Core::MappedFile
2023-10-29 13:12:28 -06:00
Andrew Kaster
1567332e34
Userland+Tests: Remove uses of direct file loading for BitmapFont
...
Route them through Core::Resource APIs instead.
2023-10-29 13:12:28 -06:00
Andrew Kaster
d587bd0a04
LibGfx: Add helpers to load BitmapFont from Core::Resource
2023-10-29 13:12:28 -06:00
Andrew Kaster
897f4d05eb
LibGfx: Add abstraction to load BitmapFont from a FixedMemoryStream
...
We'll use this to load from a Core::Resource in a later commit.
2023-10-29 13:12:28 -06:00
Andrew Kaster
a4c7d9a374
LibCore: Add helper to load a possibly-relative path into a Resource
2023-10-29 13:12:28 -06:00
FalseHonesty
2285dfb80e
LibWeb: Resolve block max-width percentage against containing block
2023-10-29 19:35:02 +01:00
Simon Wanner
40064d872f
LibJS/JIT: Compile the Append instruction
2023-10-29 17:36:09 +01:00