search for: inrang

Displaying 20 results from an estimated 33 matches for "inrang".

Did you mean: inrange
2019 Jul 23
2
[RFC] A new multidimensional array indexing intrinsic
After having spoken to Johannes, I think we had a classic misunderstanding on what "extending" means. 1. The most obvious why for me was changing GEP to allow variable-sized multi-dimensional arrays in the first argument, such as %1 = getelementptr double, double* %ptr, inrange i64 %i, inrange i64 %j (normally GEP would only allow a single index argument for a pointer-typed base pointer). Since %A has variable size, there is not enough information to compute the result, we need to pass at least the stride of the innermost dimension, such as: %1 = getelementptr doub...
2019 Jul 09
2
[LLVM] Infinite loop during LLVM InstructionCombining pass optimization
...gt; > Step 1: (Applied fmul's Y * (-X) => -(X*Y) policy. 1 instruction -> 2 instructions) > > > > [Before] %153 = fmul double %129, fsub (double -0.000000e+00, double bitcast (i64 ptrtoint (i8** getelementptr inbounds ({ [2 x i8*] }, { [2 x i8*] }* @_ZTV5PointILi3EE, i64 0, inrange i32 0, i64 2) to i64) to double)), !dbg !3967 > > > > [After] > > > > %153 = fmul double bitcast (i64 ptrtoint (i8** getelementptr inbounds ({ [2 x i8*] }, { [2 x i8*] }* @_ZTV5PointILi3EE, i64 0, inrange i32 0, i64 2) to i64) to double), %129 > > > > <badref...
2002 Mar 18
1
line breaks
...cripts I have a few functions, using { or ( to wrap commands on the next line. Usually this is fine, but sometimes R appears confused by line wrappings (more likely of course it is me who is confused). I tried ';' to explictly break the line, but no dice. An example (partial function). inrange _ function(v,Y,s,z,mlv,met){ lower _ mean(v[data$yr==Y])-(var(v[data$yr==Y])^.5) upper _ mean(v[data$yr==Y])+(var(v[data$yr==Y])^.5) ML _ mlv[ML$yr==Y & ML$metcode==met] diff _ 0 if (ML<lower) {diff <- lower-ML; # tried with and without ; v <<- v-diff} } gives: > in...
2006 Mar 16
4
excluding factor levels with read.table() and colClasses=
...include missing values coded as "NA". Unfortunately the R code I am using (pasted bellow) includes "NA" as one of the factor levels. Is it possible to remove the "NA" level from a factor with in read.table()? If not what is the most efficient way of doing this? inrange<-read.table("C://...",header=T,sep="|",colClasses=c( id="factor")) Thanks for your help. Peter
2019 Jul 22
3
[RFC] A new multidimensional array indexing intrinsic
...equires an array type, which in LLVM has static size. For dynamically-sized array (In C/C++ language family, this is only supported by C99 VLAs), clang emits the the linearized index expression followed by a single-dimensional GEP. The multi-dimensional GEP instruction has this semantics with the `inrange` modifier, which clang currently does not generate for subscript expressions. Given that there might be code around relying on this behavior, and the C++ standard not containing this paragraph, I am not sure we can change it to undefined behavior, even if the C standard would permit it. I think th...
2019 May 24
2
Delinearization validity checks in DependenceAnalysis
...ger guarantees about their array > dimensions accesses being in range. But this being a flat C array, there is > nothing out-of-bounds going on. > > Hmm...perhaps some information about these guarantees can come from the IR > that the front-ends produce. I'm wondering if the 'inrange' keyword (or > maybe a new keyword) can be used for this purpose? > If the source is C/C++, the inrange keyword cannot be used because of the language's semantics (see below). Also, GetElementPtr will always only work with constant-sized array. A student from last year's GSoC (...
2002 Mar 18
3
function design
I have a, no doubt, simple question. I wish to write a function such that a <- 9 b <- 10 changer _ function(x,y) { if (y>x){ x <<- Y+1}} Of course there are easier ways to accomplish the task above, but I am more interested in how to have the "x <<- Y+1" part of the function to change x in place for purposes of a much larger function. I have been wrestling with
2020 Jul 15
3
How to get information about data dependencies?
Stefanos Baziotis via llvm-dev <llvm-dev at lists.llvm.org> writes: > Well... I tried that and it doesn't seem to be very useful > unfortunately. The C/C++ way that arrays are defined is probably why > DA is not that useful. Namely that a row can alias with another row in > 2D arrays. The theory behind DA is quite powerful if we knew that they > don't alias. Right
2008 Feb 21
3
applying a function to data frame columns
useR's, I want to apply this function to the columns of a data frame: u[u >= range(v)[1] & u <= range(v)[2]] where u is the n column data frame under consideration and v is a data frame of values with the same number of columns as u. For example, v1 <- c(1,2,3) v2 <- c(3,4,5) v3 <- c(2,3,4) v <- as.data.frame(cbind(v1,v2,v3)) uk1 <- seq(min(v1) - .5, max(v1) + .5,
2017 Dec 07
2
devirtualization with new-PM pipeline
...uct.B, align 8   %0 = bitcast %struct.B* %b to i8*   call void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %0) #3   %1 = getelementptr inbounds %struct.B, %struct.B* %b, i64 0, i32 0, i32 0   store i32 (...)** bitcast (i8** getelementptr inbounds ({ [3 x i8*] }, { [3 x i8*] }* @_ZTV1B, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** %1, align 8, !tbaa !2   %call.i = call i32 @_ZN1B5virt1Ev(%struct.B* nonnull %b)   call void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %0) #3   ret i32 %call.i } ... ] clang++ --version clang version 6.0.0 (trunk 319748) (llvm/trunk 319768) Target:...
2017 Jun 06
2
Change undef to poison in a few operations
...ith posion whenever possible. So we propose to change the following from undef to poison: - insertelement/extractelement (element index out of range) - shufflevector (undef elements in shuffle mask) - alloca (allocating zero bytes) ? - load (load value with different type from written value) - GEP inrange - fptrunc/fptoui/fptosi/uitofp/sitofp (overflow) ? - llvm.ctlz.* and friends (is_zero_undef) ? Some of these are no brainers, others may need a bit of discussion. Please let us know if you have thoughts and/or concerns about this. Thanks, Nuno
2017 Dec 14
2
devirtualization with new-PM pipeline
...ct.B* %b to i8* > > call void @llvm.lifetime.start.p0i8(i64 8, i8* nonnull %0) #3 > > %1 = getelementptr inbounds %struct.B, %struct.B* %b, i64 0, i32 0, > i32 0 > > store i32 (...)** bitcast (i8** getelementptr inbounds ({ [3 x i8*] }, > { [3 x i8*] }* @_ZTV1B, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 > (...)*** %1, align 8, !tbaa !2 > > %call.i = call i32 @_ZN1B5virt1Ev(%struct.B* nonnull %b) > > call void @llvm.lifetime.end.p0i8(i64 8, i8* nonnull %0) #3 > > ret i32 %call.i > > } > > ... > > ] clang++ --version &g...
2019 Jul 24
6
[RFC] A new multidimensional array indexing intrinsic
Hi all, On Wed, 24 Jul 2019 at 16:14, Michael Kruse via llvm-dev <llvm-dev at lists.llvm.org> wrote: > Mmmh, looks like Tim Northover is actively working on typeless/opaque > pointers, e.g. https://reviews.llvm.org/D64203 Yep, I'm spending as much time as I can on the project. I think there's not really much chance that it'll be required in this cycle (i.e. when we fork
2016 Dec 23
2
[canonicalization] GEP 0, 0
...* = alloca %struct.A, align 8 %0 = bitcast %struct.A* %a to i8* call void @llvm.lifetime.start(i64 8, i8* nonnull %0) #3 * %1* = getelementptr inbounds %struct.A, %struct.A* %a, i64 0, i32 0 store i32 (...)** bitcast (i8** getelementptr inbounds ({ [3 x i8*] }, { [3 x i8*] }* @_ZTV1A, i64 0, inrange i32 0, i64 2) to i32 (...)**), i32 (...)*** *%1*, align 8, !tbaa !8, !invariant.group !10 call void @_Z1zR1A(%struct.A* nonnull dereferenceable(8) %a) #3 %2 = load i32, i32* @glob, align 4, !tbaa !4 %tobool.i = icmp eq i32 %2, 0 br i1 %tobool.i, label %_Z1gR1A.exit, label %if.then.i if.th...
2019 Jul 22
2
[RFC] A new multidimensional array indexing intrinsic
We could also simply extend the existing inrange mechanism to non-constantexpr GEPs.  It would remove an inconsistency in the semantics, be relatively straight forward, and solve the motivating example. (I didn't read the proposal in full, so there may be other examples it doesn't solve.) Philip On 7/22/19 10:01 AM, Peter Collingb...
2011 Nov 08
2
multi-line query
Hello, I'm using package RpgSQL. Is there a better way to create a multi-line query/character string? I'm looking for less to type and readability. This is not very readable for large queries: s <- 'create table r.BOD("id" int primary key,"name" varchar(12))' I write a lot of code, so I'm looking to type less than this, but it is more readable from
2012 May 12
2
range segment exclusion using range endpoints
Hello, I'm posting this again (with some small edits). I didn't get any replies last time...hoping for some this time. :) Currently I'm only coming up with brute force solutions to this issue (loops). I'm wondering if anyone has a better way to do this. Thank you for your help in advance! The problem: I have endpoints of one x range (x_rng) and an unknown number of s ranges
2016 Dec 19
0
LLVM Weekly - #155, Dec 19th 2016
...nagement (malloc and friends) in C++ code, while performance-type-promotio-in-math-fn will suggest calls to double-precision math.h functions with float arguments be changed to the single-precision version. [r289546](http://reviews.llvm.org/rL289546), [r289627](http://reviews.llvm.org/rL289627). * inrange annotations are now used on vtable getelementptr. This allows the optimiser to split vtable groups. [r289585](http://reviews.llvm.org/rL289585). * You can now set the default linker when building clang through `CLANG_DEFAULT_LINKER`. [r289668](http://reviews.llvm.org/rL289668). * Clang gained a...
2019 Jul 24
3
[RFC] A new multidimensional array indexing intrinsic
Am Di., 23. Juli 2019 um 17:16 Uhr schrieb Kaylor, Andrew <andrew.kaylor at intel.com>: > Do we really have code that uses the suffix of an intrinsic for semantic information? That seems like a bad idea. My understanding was that the suffix was just there to provide a unique name and the function signature took care of everything else. I agree that this is also not my preferred option,
2019 Jul 22
1
[RFC] A new multidimensional array indexing intrinsic
...cray.com>; Michael Kruse <llvm at meinersbur.de>; Tobias Grosser <tobias.grosser at inf.ethz.ch> > Subject: Re: [llvm-dev] [RFC] A new multidimensional array indexing intrinsic > > On 07/22, Philip Reames via llvm-dev wrote: > > We could also simply extend the existing inrange mechanism to > > non-constantexpr GEPs. It would remove an inconsistency in the > > semantics, be relatively straight forward, and solve the motivating example. > > Agreed. I'd very much prefer a GEP extension over an intrinsic solution. > > -- > Johannes > &gt...