search for: global_st

Displaying 11 results from an estimated 11 matches for "global_st".

Did you mean: global's
2008 Sep 23
2
[LLVMdev] Store patterns accepting i32 only?
...32, however, when tablegen generates the code, it only generates the code for i32 only. def ADDR : ComplexPattern<i32, 2, "SelectADDR", [], []>; def MEM : Operand<i32> { let PrintMethod = "printMemOperand"; let MIOperandInfo = (ops GPR, GPR); } def global_st : SDNode<"AMDILISD::GLOBAL_STORE", SDTStore, [SDNPHasChain, SDNPMayLoad, SDNPMemOperand]>; def global_store : PatFrag<(ops node:$val, node:$ptr), (st node:$val, node:$ptr), [{ return isGlobalStore(dyn_cast<StoreSDNode>(N)); }]>; def GLOBALS...
2013 Sep 13
0
[LLVMdev] llvm.meta (was Rotated loop identification)
...e_aligned and this > scheme is the control dependencies. In gcc, it is the return value of the > intrinsic that carries the alignment guarantee, and I think that this makes > a lot of sense. Consider something like this: > > void foo(double *x) { > if (check_if_x_is_special(&global_state)) { > y = __builtin_assume_aligned(x, 16); > do_something(y); > } else > do_something_else(x); > } > > with this scheme, there is never a danger that the alignment assumption > can be lifted and incorrectly applied to x in an inlined > do_something_else(x...
2008 Sep 23
0
[LLVMdev] Store patterns accepting i32 only?
...ates the code, it only generates the > code for i32 only. > > def ADDR : ComplexPattern<i32, 2, "SelectADDR", [], []>; > def MEM : Operand<i32> { > let PrintMethod = "printMemOperand"; > let MIOperandInfo = (ops GPR, GPR); > } > def global_st : SDNode<"AMDILISD::GLOBAL_STORE", SDTStore, > [SDNPHasChain, SDNPMayLoad, SDNPMemOperand]>; > > def global_store : PatFrag<(ops node:$val, node:$ptr), > (st node:$val, node:$ptr), [{ > return isGlobalStore(dyn_cast<StoreSDNode>(N)); >...
2013 Sep 12
2
[LLVMdev] llvm.meta (was Rotated loop identification)
...erns me about __builtin_assume_aligned and this scheme is the control dependencies. In gcc, it is the return value of the intrinsic that carries the alignment guarantee, and I think that this makes a lot of sense. Consider something like this: void foo(double *x) { if (check_if_x_is_special(&global_state)) { y = __builtin_assume_aligned(x, 16); do_something(y); } else do_something_else(x); } with this scheme, there is never a danger that the alignment assumption can be lifted and incorrectly applied to x in an inlined do_something_else(x). If we simply have the intrinsic not retur...
2017 Apr 19
4
[PATCH v2 0/2] daemon: Move the useful 'is_zero' function into common code.
v1 -> v2: The first patch is the same (the pure refactoring), but in the second patch I implement Eric Blake's suggested version. Rich.
2017 Apr 19
2
[PATCH] daemon: Move the useful 'is_zero' function into common code.
...verflow.com/questions/1493936/faster-means-of-checking-for-an-empty-buffer-in-c/1493989#1493989 - */ -static inline int -is_zero (const unsigned char *buffer, size_t size) -{ - size_t i; - - for (i = 0; i < size; ++i) { - if (buffer[i] != 0) - return 0; - } - - return 1; -} - struct global_state { /* Current iterator. Threads update this, but it is protected by a * mutex, and each thread takes a copy of it when working on it. @@ -681,7 +663,7 @@ worker_thread (void *vp) /* Don't write if the block is all zero, to preserve output file * sparseness. However...
2023 Aug 09
8
[PATCH -next 0/7] drm: Remove many unnecessary NULL values
The NULL initialization of the pointers assigned by kzalloc() or kunit_kzalloc() first is not necessary, because if the kzalloc() or kunit_kzalloc() failed, the pointers will be assigned NULL, otherwise it works as usual. so remove it. Ruan Jinjie (7): drm/amdkfd: Remove unnecessary NULL values drm/amd/display: Remove unnecessary NULL values drm/msm: Remove unnecessary NULL values
2013 Sep 09
0
[LLVMdev] llvm.meta (was Rotated loop identification)
On Sep 7, 2013, at 7:41 AM, Hal Finkel <hfinkel at anl.gov> wrote: >> On Feb 7, 2013, at 10:58 PM, Hal Finkel < hfinkel at anl.gov > wrote: >> >> >> >> >> As long as this is brainstorming time, I actually like the idea of >> an >> llvm.invariant intrinsic that the optimizers know to ignore. I >> like >> it for other
2013 Sep 07
2
[LLVMdev] llvm.meta (was Rotated loop identification)
----- Original Message ----- > > > > On Aug 19, 2013, at 8:06 PM, Hal Finkel < hfinkel at anl.gov > wrote: > > > > ----- Original Message ----- > > > > On Feb 22, 2013, at 6:28 AM, Hal Finkel < hfinkel at anl.gov > wrote: > > > > ----- Original Message ----- > > > From: "Andrew Trick" < atrick at
2016 Mar 06
8
[PATCH 0/5] Use less stack.
Various changes/fixes to use smaller stack frames. Rich.
2016 Mar 07
2
[PATCH v2] Use less stack.
...strm.avail_in); + n = read (fd, buf, strm.avail_in); if (n == -1) unix_error (errno, (char *) "read", filenamev); @@ -454,12 +459,17 @@ iter_blocks (lzma_index *idx, unsigned nr_threads, value filenamev, int fd, value outputfilev, int ofd) { struct global_state global; - struct per_thread_state per_thread[nr_threads]; - pthread_t thread[nr_threads]; + CLEANUP_FREE struct per_thread_state *per_thread = NULL; + CLEANUP_FREE pthread_t *thread = NULL; unsigned u, nr_errors; int err; void *status; + per_thread = malloc (sizeof (struct per_th...