Page MenuHomePhabricator

nand (Nandor Licker)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 3 2019, 10:12 AM (7 w, 1 d)

Recent Activity

Tue, Aug 13

nand added a comment to D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

The old path-based approach is slow for most operations, while the new pointer-based approach is fast for the most common ones.
For read/write/update operations, it is enough to check the pointer and at most a single descriptor to ensure whether the operation
can be performed. For some operations, such as some pointer comparisons, in the worst case the old-style path can be reproduced by
following the pointers produced through the getBase method, allowing us to implement everything.

Tue, Aug 13, 7:19 AM · Restricted Project
nand added a comment to D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

updated diff, implemented requested changes

Tue, Aug 13, 7:07 AM · Restricted Project
nand updated the diff for D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

Implemented @zygoloid's suggestions

Tue, Aug 13, 7:07 AM · Restricted Project

Sun, Aug 4

nand retitled D64146: [Clang Interpreter] Initial patch for the constexpr interpreter from [ConstExprPreter][WIP] Initial patch for the constexpr interpreter to [Clang Interpreter] Initial patch for the constexpr interpreter.
Sun, Aug 4, 8:23 PM · Restricted Project
nand updated the diff for D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

Implemented suggestions from @rsmith.

Sun, Aug 4, 8:23 PM · Restricted Project

Wed, Jul 31

nand added a comment to D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

I have applied most of the changes you suggested to my HEAD which had significantly more functionality, including a replacement of Opcodes.in with TableGen.
Quite a few of your concerns are answered by the features I have added between submitting the patch and now. The interpreter now stands at ~6k LOC.

Wed, Jul 31, 2:11 PM · Restricted Project
nand updated the diff for D65536: [ConstExprPreter] Overflow-detecting methods use GCC or clang builtins.

removed redundant check

Wed, Jul 31, 1:59 PM · Restricted Project
nand created D65536: [ConstExprPreter] Overflow-detecting methods use GCC or clang builtins.
Wed, Jul 31, 1:32 PM · Restricted Project
nand added inline comments to D65494: [Support] Added overflow checking add, sub and mul..
Wed, Jul 31, 10:10 AM · Restricted Project
nand added a comment to D65494: [Support] Added overflow checking add, sub and mul..

replaced char with signed char

Wed, Jul 31, 9:17 AM · Restricted Project
nand updated the diff for D65494: [Support] Added overflow checking add, sub and mul..

s/char/signed char/

Wed, Jul 31, 9:17 AM · Restricted Project
nand added a comment to D65494: [Support] Added overflow checking add, sub and mul..

Just checked: tests pass with UBSan.

Wed, Jul 31, 7:40 AM · Restricted Project
nand updated the diff for D65494: [Support] Added overflow checking add, sub and mul..

Updated comments about bitcast

Wed, Jul 31, 7:01 AM · Restricted Project
nand added inline comments to D65494: [Support] Added overflow checking add, sub and mul..
Wed, Jul 31, 7:01 AM · Restricted Project

Tue, Jul 30

nand created D65494: [Support] Added overflow checking add, sub and mul..
Tue, Jul 30, 5:39 PM · Restricted Project

Mon, Jul 29

nand added a comment to D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

We can add a separate integer type which tracks all the additional information required by __builtin_constant_p and compile all integers to it in this context. A later patch added an APInt fallback to the interpreter if an integral cannot be mapped to a type supported by the VM - this mechanism could be used to implement the fallback for contexts which cast pointers to integers.

Mon, Jul 29, 1:03 PM · Restricted Project
nand added a comment to D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

How do you intend to represent pointers cast to integer types? Allocating 64 bits of state for a 64-bit integer is insufficient to model that case.

Mon, Jul 29, 10:03 AM · Restricted Project

Jul 8 2019

nand updated the diff for D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

Fixed read of call stack depth

Jul 8 2019, 3:19 PM · Restricted Project

Jul 3 2019

nand added a reviewer for D64146: [Clang Interpreter] Initial patch for the constexpr interpreter: rsmith.
Jul 3 2019, 11:39 AM · Restricted Project
nand updated the diff for D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.

Fixed typo in command line flags

Jul 3 2019, 11:05 AM · Restricted Project
nand retitled D64146: [Clang Interpreter] Initial patch for the constexpr interpreter from [ConstExprPreter] Initial patch for the constexpr interpreter to [ConstExprPreter][WIP] Initial patch for the constexpr interpreter.
Jul 3 2019, 10:33 AM · Restricted Project
nand created D64146: [Clang Interpreter] Initial patch for the constexpr interpreter.
Jul 3 2019, 10:32 AM · Restricted Project